人工智能导论
2024-08-02 12:42:48 11 举报
AI智能生成
《人工智能导论》是一份综合性文档,全面介绍了人工智能的基本概念、发展历史、核心算法和应用场景。它详细阐述了机器学习、深度学习、自然语言处理等人工智能领域的关键技术,并分析了其在图像识别、语音识别、无人驾驶等实际应用中的表现。此外,它还探讨了人工智能对社会、法律和伦理方面的影响,以及未来的发展趋势和挑战。《人工智能导论》是一份适合对AI感兴趣的初学者、研究人员和行业从业者的参考文件。
作者其他创作
大纲/内容
第1章 人工智能概述
1.1 人工智能简介
1. 人工智能的定义
2. 人工智能的特点
3. 人工智能的分类
1.2 人工智能的起源与发展
1. 人工智能的历史
2. 我国的人工智能发展现状
1.3 人工智能的研究内容
1. 认知建模
2. 知识表示
3. 知识应用
4. 推理
5. 机器感知
6. 机器思维
7. 机器学习
8. 机器行为
1.4 人工智能领域的著名专家与代表性人物
1. 艾伦 图灵
2. 斯图尔特 罗素
3. 斯蒂芬 霍金
4. 贾斯汀 卡塞尔
5. 约翰 麦卡锡
6. 吴恩达
7. 德米什 哈萨比斯
1.5 人工智能研究的主要学派
1. 符号主义
2. 连接主义
3. 行为主义
1.6 人工智能的应用
1. 专家系统
2. 自然语言处理
3. 博弈
4. 搜索
5. 感知问题
6. 模式识别
7. 机器人学
1.7 小结
(1)人工智能是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
(2)人工智能学科有着十分广泛和极其丰富的研究内容,不同的人工智能研究者从不同的角度对人工智能的研究内容进行了分类。
(3)对人工智能研究影响较大的主要有符号主义、连接主义和行为主义三大学派。
第2章 人工智能基础知识
2.1 人工智能的数学基础
1. 微积分
微积分又称为“初等数学分析”,它是一门纯粹的数学理论,也是现代数学的基础,在商学、科学和工程学领域有广泛的应用,主要用来解决那些仅依靠代数学和几何学不能有效解决的问题。
对于机器学习而言,微积分的主要作用如下
(1)求解函数的极值。
(2)分析函数的性质。
2. 线性代数
线性代数研究的是向量空间以及将一个向量空间映射到另一个向量空间的函数。
在人工智能中,线性代数是计算的根本,因为所有的数据都是以矩阵的形式存在的,任何一步操作都是在进行矩阵相乘、相加等。
线性代数在人工智能领域的主要应用如下
(1)搜索引擎的排名。
(2)线性规划。
(3)纠错码。
(4)信号分析。
(5)面部识别。
(6)量子计算。
3. 概率论与数理统计
概率论是研究随机现象数量规律的数学分支,是一门研究事情发生的可能性的学问。
数理统计以概率论为基础,研究大量随机现象的统计规律性。
机器学习除了处理不确定量之外,也需处理随机量,而不确定性和随机性可能来自多个方面,从而可以使用概率论来量化不确定性
在人工智能算法中无论是对于数据的处理还是分析,数据的拟合还是决策等,概率与统计都可以为其提供重要的支持。
4. 最优化理论
最优化理论是关于系统的最优设计、最优控制、最优管理问题的理论与方法。
最优化就是在一定的约束条件下,使系统具有所期待的最优功能的组织过程,是从众多可能的选择中做出最优选择,使系统的目标函数在约束条件下达到最大或最小。
5. 形式逻辑
形式逻辑是研究人的认识知性阶段思维规律的学说,狭义指演绎逻辑,广义上还包括归纳逻辑。形式逻辑的思维规律也是思维形式和思维内容的统一,形式逻辑靠概念、判断、推理(主要包括归纳推理与演绎推理)来反映事物的实质。
2.2 人工智能的常用工具
1. TensorFlow
TensorFlow是谷歌出品的开源人工智能工具,它提供了一个使用数据流图进行数值计算的库。
在结构上,TensorFlow拥有多层级结构,可部署于各类服务器、PC终端和网页,且支持图形处理器(Graphics Processing Unit,GPU)和张量处理器(Tensor Processing Unit,TPU)高性能数值计算,因而被广泛应用于谷歌内部的产品开发和各领域的科学研究。
TensorFlow具有强大的灵活性、真正的可移植性、自动微分功能,并支持Python和C++。
2. Mahout
提供了一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更方便快捷地创建智能应用程序。
Mahout包含许多实现方式,如聚类、分类、推荐过滤、频繁子项挖掘等
3. Torch
Torch是一个用于科学和数值的开源机器学习库,主要采用C作为编程语言,它基于Lua的库,通过提供大量的算法而深入学习研究,提高了效率和速度。
Torch有一个强大的n维数组,可以方便地进行切片和索引等操作。除此之外,它提供了线性代数程序和神经网络模型。
4. Spark MLlib
Spark MLlib是Spark的机器学习库,旨在简化机器学习的工程实践工作,并方便扩展到更大规模。
一些通用的学习算法和工具组成,包括分类、回归、聚类、协同过滤、降维等,同时包括底层的优化原语和高层的管道API。
5. Keras
Keras是一个由Python编写的开源人工神经网络库,可以作为人工智能工具的高阶应用程序接口,进行深度学习模型的设计、调试、评估、应用和可视化。
Keras支持现代人工智能领域的主流算法,包括前馈结构和递归结构的神经网络,也可以通过封装参与构建统计学习模型。
在硬件和开发环境方面,Keras支持多操作系统下的多GPU并行计算,可以根据后台设置转化为TensorFlow、Microsoft-CNTK等系统下的组件。
6. CNTK
CNTK是微软出品的开源深度学习工具包,支持在CPU和GPU上运行。
2.3 数据采集
1. 数据采集的概念
数据采集是人工智能与大数据应用的基础,研究人工智能离不开大数据的支撑,而数据采集是大数据分析的前提。
数据采集作为大数据生命周期的第一个环节,是指通过传感器、摄像头、射频识别(Radio Frequency Identification,RFID)数据以及互联网等方式获取各种结构化、半结构化与非结构化的数据。
2. 数据采集的常见方法
1.日志数据采集
日志采集系统的主要工作就是收集业务日志数据,供离线和在线的分析系统使用。
2.网络数据采集
网络数据采集是指利用互联网搜索引擎技术实现有针对性、行业性、精准性的数据抓取,并按照一定规则和筛选标准进行数据归类,形成数据库文件的一个过程。
3.数据库采集
数据库采集是将实时产生的数据以记录的形式直接写入企业的数据库,并使用特定的数据处理系统进行进一步分析。
4.其他数据采集方法
2.4 数据存储
1. 数据存储的概念
数据存储指将数量巨大,难于收集、处理、分析的数据集持久化到计算机中。
2. 数据存储的方式
1.分布式存储
分布式存储包含多个自主的处理单元,通过计算机网络互连来协作完成分配的任务,其分而治之的策略能够更好地处理大规模数据分析问题。
分布式存储主要包括分布式文件系统(Hadoop Distributed File System,HDFS)和分布式键值系统。
2.NoSQL数据库
NoSQL又叫作非关系型数据库,它是英文“Not Only SQL”的缩写,即“不仅仅是SQL”。
典型的NoSQL包括以下几种:键值数据库、列族数据库、文档数据库和图形数据库。
NoSQL也存在一些缺点,如缺乏较为扎实的数学理论基础,在查询复杂数据时性能不强;很难实现事务强一致性和数据完整性;技术尚不成熟,缺乏专业团队的技术支持,维护较为困难等。
3.NewSQL数据库
NewSQL数据库是指各种新的可扩展/高性能数据库,它是一种相对较新的形式,旨在使用现有的编程语言和以前不可用的技术来结合SQL和NoSQL。这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库支持ACID和SQL等的特性。
4.云数据库
云数据库是指被优化或部署到一个虚拟计算环境中的数据库
云数据库具有高可扩展性、高可用性、采用多租形式和支持资源有效分发等特点,可以实现按需付费和按需扩展。
2.5 数据清洗
1. 数据清洗的概念
采集到的众多数据中总是存在着许多脏数据,即不完整、不规范、不准确的数据,数据清洗就是指把脏数据清洗干净,从而提高数据质量,具体操作包括检查数据一致性,处理无效值和缺失值等。
在数据仓库环境下,数据清洗是抽取“转换”装载过程的一个重要部分,要考虑数据仓库的集成性与面向主题的需要(包括数据的清洗及结构转换)。
在机器学习领域中,数据清洗则被定义为对特征数据和标注数据进行处理,如样本采样、样本调权、异常点去除、特征归一化处理、特征变化、特征组合等。
2. 数据清洗的原理
数据清洗的原理如下:利用相关技术,如统计方法、数据挖掘方法、模式规则方法等将脏数据转换为满足数据质量要求的数据。
按照实现方式与范围分类
1.手工清洗
2.自动清洗
3. 数据清洗的应用领域
数据仓库
在数据仓库领域,一般在几个数据库合并时或多个数据源进行集成时进行数据清洗。
数据清洗在数据仓库中的应用并不是简单地清洗合并记录,它还涉及数据的分解与重组。
数据挖掘
在数据挖掘领域,经常会遇到挖掘出来的特征数据存在各种异常的情况,如数据缺失、数据值异常等。对于这些情况,如果不加以处理,则会直接影响到最终挖掘模型建立后的使用效果,甚至是使得最终的模型失效,导致任务失败。
数据质量管理
数据质量管理覆盖了质量评估、数据去噪、数据监控、数据探查、数据清洗、数据诊断等方面。在此过程中,数据清洗为提高数据质量提供了重要的保障。
4. 数据清洗的评估
数据清洗的评估实质上是对清洗后的数据质量进行评估,而数据质量的评估过程是一种通过测量和改善数据综合特征来优化数据价值的过程。
数据质量的评估和方法研究的难点在于数据质量的含义、内容、分类、分级、评价指标等。
两方面的基本评价指标
1.数据可信性
(1)精确性:描述数据是否与其对应的客观实体的特征相一致。
(2)完整性:描述数据是否存在缺失记录或缺失字段。
(3)一致性:描述同一实体的同一属性的值在不同的系统中是否一致。
(4)有效性:描述数据是否满足用户定义的条件或在一定的阈值范围内。
(5)唯一性:描述数据是否存在重复记录。
2.数据可用性
(1)时间性:描述数据是当前数据还是历史数据。
(2)稳定性:描述数据是否稳定,是否在其有效期内。
2.6 数据分析
1. 大数据分析概述
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。
大数据分析是大数据价值链中的一个重要环节,其目标是提取海量数据中的有价值的内容,找出内在的规律,从而帮助人们做出最正确的决策。
2. 大数据分析的主要类型
1.描述性统计分析
描述性统计分析是指运用制表、分类、图形以及计算概括性数据来描述数据特征的各项活动。
2.探索性数据分析
对已有的数据(特别是调查或观察得来的原始数据)在尽量少的先验假定下进行探索,通过作图、制表、方程拟合、计算特征量等手段探索数据的结构和规律的一种数据分析方法。
3.验证性数据分析
验证性数据分析注重对数据模型和研究假设的验证,侧重于已有假设的证实或证伪。假设检验是根据数据样本所提供的证据,肯定或否定有关总体的声明。
3. 数据挖掘
1.数据挖掘的概念
数据挖掘是指在大量的数据中挖掘出有用信息,通过分析来揭示数据之间有意义的联系、趋势和模式。
数据挖掘首先是搜集数据,数据越丰富越好,数据量越大越好,只有获得足够大量的高质量的数据,才能获得确定的判断,才能产生认知模型,这是从量变到质变的过程。
数据挖掘可以分为两类
(1)直接数据挖掘
直接数据挖掘的目标是利用可用的数据建立一个模型,利用这个模型对剩余的数据或对一个特定的变量进行描述。
(2)间接数据挖掘
间接数据挖掘的目标中没有选出某一具体的变量,也不是用模型进行描述,而是在所有的变量中建立起某种关系。
注意点
(1)数据源必须是真实的、大量的、含有噪声的、用户感兴趣的数据。
(2)挖掘知识的方法可以是数学的方法,也可以是非数学的方法;可以是演绎的方法,也可以是归纳的方法。
(3)挖掘的知识具有应用的价值,可以用于信息管理、查询优化、决策支持和过程控制等,还可以用于数据自身的维护。
2.数据挖掘技术
根据挖掘任务可将数据挖掘技术分为预测模型发现、聚类分析、分类与回归、关联分析、序列模式发现、依赖关系或依赖模型发现、异常和趋势发现、离群点检测等类型。
根据挖掘对象可将数据挖掘技术分为关系型数据库、面向对象数据库、空间数据库、时态数据库、文本数据库、多媒体数据库、异质数据库以及遗产数据库等类型。
根据挖掘方法可将数据挖掘技术分为机器学习方法、统计方法、神经网络方法和数据库方法等类型。
在机器学习方法中,可细分为归纳学习方法(决策树、规则归纳等)、基于范例学习、遗传算法等;
在统计方法中,可细分为回归分析(多元回归、自回归等)、判别分析(贝叶斯判别、Fisher判别和非参数判别等)、聚类分析(系统聚类、动态聚类等)、探索性分析(主元分析法、相关分析法等)等;
在神经网络方法中,可细分为前向神经网络(反向传播算法等)、自组织神经网络(自组织特征映射、竞争学习等)等
4. 数据可视化
2.7 小结
(1)人工智能实际上是一个将数学、算法理论和工程实践紧密结合起来的领域。人工智能实际上就是算法,也就是微积分、概率论、统计学等各种数学理论的体现。
(2)人工智能的学习与应用离不开各种工具,如Tensor Flow、Mahout、Torch、Spark MLlib、Keras及CNTK等。
(3)数据采集是人工智能与大数据应用的基础,研究人工智能离不开大数据的支撑,而数据采集是大数据分析的前提。
(4)数据存储是将数量巨大且难于收集、处理、分析的数据集持久化到计算机中。在人工智能时代,存储的数据通常以GB、TB乃至PB作为量级。
(5)数据的不断剧增是大数据时代的显著特征,大数据必须经过清洗、分析、建模、可视化才能体现其潜在的价值。由于在采集到的众多数据中总是存在着许多脏数据,即不完整、不规范、不准确的数据,因此数据清洗就是指把脏数据清洗干净。
(6)数据分析是大数据价值链中的一个重要环节,其目标是提取海量数据中的有价值的内容,找出内在的规律,从而帮助人们做出最正确的决策。
第3章 机器学习
3.1 机器学习概述
1. 机器学习简介
机器学习,通俗地讲就是让机器拥有学习的能力,从而改善系统自身的性能。
这里的“学习”指的是从数据中学习,从数据中产生模型的算法,即学习算法。有了学习算法,只要把经验数据提供给它,它就能够基于这些数据产生模型,在面对新的情况时,模型能够提供相应的判断,进行预测。
机器学习实质上是基于数据集的,它通过对数据集进行研究,找出数据集中数据之间的联系和数据的真实含义。
机器学习原理
图片
2. 机器学习的发展
3. 机器学习的应用前景
1.数据分析与挖掘
数据挖掘是“识别出巨量数据中有效的、新颖的、潜在有用的、最终可理解的模式的过程”
数据分析则通常被定义为“指用适当的统计方法对收集来的大量第一手资料和第二手资料进行分析,以求最大化地开发数据资料的功能,发挥数据的作用,是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程”。
2.模式识别
模式识别研究主要集中在两个方面:一是研究生物体(包括人)是如何感知对象的,属于认识科学的范畴;二是在给定的任务下,如何用计算机实现模式识别的理论和方法,这些是机器学习的长项
模式识别的应用领域广泛,包括计算机视觉、医学图像分析、光学文字识别、自然语言处理、语音识别、手写识别、生物特征识别、文件分类、搜索引擎等,而这些领域也正是机器学习大展身手的舞台,因此模式识别与机器学习的关系越来越密切
3.更广阔的领域
研究和应用机器学习的最终目标是全面模仿人类大脑,创造出拥有人类智慧的机器大脑。
当今互联网科技的三大挑战:大数据、人工智能和人机互动。
4. 机器学习的未来
3.2 机器学习的分类
1. 监督学习
监督学习是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。
1.监督学习概述
监督学习表示机器学习的数据是带标记的,这些标记可以包括数据类别、数据属性及特征点位置等。
具体实现过程是通过大量带有标记的数据来训练机器,机器将预测结果与期望结果进行比对;之后根据比对结果来修改模型中的参数,再一次输出预测结果;再将预测结果与期望结果进行比对,重复多次直至收敛,最终生成具有一定鲁棒性的模型来达到智能决策的能力。
常见的监督学习有分类(Classification)和回归(Regression),分类是将一些实例数据分到合适的类别中,其预测结果是离散的;回归是将数据归到一条“线”上,即为离散数据生产拟合曲线,因此其预测结果是连续的。
2.监督学习的应用
判断邮件是否为垃圾邮件
2. 无监督学习
根据类别未知(没有被标记)的训练样本解决模式识别中的各种问题,称为无监督学习。
1.无监督学习概述
无监督学习的训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律。
无监督学习表示机器从无标记的数据中探索并推断出潜在的联系。
常见的无监督学习有聚类(Clustering)和降维(Dimensionality Reduction)两种。
在聚类工作中,由于事先不知道数据类别,因此只能通过分析数据样本在特征空间中的分布,如基于密度或基于统计学概率模型,从而将不同数据分开,把相似数据聚为一类。
降维是将数据的维度降低,由于数据本身具有庞大的数量和各种属性特征,若对全部数据信息进行分析,则会增加数据训练的负担和存储空间。因此可以通过主成分分析等其他方法,考虑主要因素,舍弃次要因素,从而平衡数据分析的准确度与数据分析的效率。在实际应用中,可以通过一系列的转换将数据的维度降低
2.无监督学习的应用
数据挖掘,用于在大量无标签数据中寻找信息。
3.监督学习与无监督学习的区别
(1)监督学习是一种目的明确的训练方式;而无监督学习是没有明确目的的训练方式。
(2)监督学习需要给数据打标签;而无监督学习不需要给数据打标签。
(3)监督学习由于目的明确,因此可以衡量效果;而无监督学习几乎无法衡量效果如何。
3. 半监督学习
机器学习的核心是从数据中学习,从数据出发得到未知规律,利用规律对未来样本进行预测和分析。
监督学习需要大量已标记类别的训练样本来保证其良好的性能;无监督学习不使用先验信息,利用无标签样本的特征分布规律,使得相似样本聚到一起,但模型准确性难以保证。
获取大量无标记样本相当容易,而获取大量有标记样本则困难得多,且人工标注需要耗费大量的人力和物力。如果只使用少量的有标记样本进行训练,往往导致学习的泛化性能低下,且浪费大量的无标记样本数据资源。
使用少量标记样本作为指导,利用大量无标记样本改善学习性能的半监督学习成为研究的热点。
半监督学习包括半监督聚类、半监督分类、半监督降维和半监督回归4种学习场景。
常见的半监督分类代表算法包括生成式方法、半监督支持向量机(Semi-supervised Support Vector Machines,S3VMs)、基于图的半监督图方法和基于分歧的半监督方法共4种算法。
常见的假设模型有混合高斯模型、混合专家模型、朴素贝叶斯模型,采用极大似然方法作为参数估计的优化目标,选择最大期望(Expectation-Maximization,EM)算法进行参数的优化求解。
常见的S3VMs方法有直推式支持向量机(Transductive Support Vector Machine,TSVM)、拉普拉斯支持向量机(Laplacian Support Vector Machine,Laplacian SVM)、均值标签半监督支持向量机(Mean Semi-supervised Support Vector Machine,MeanS3VM)、安全半监督支持向量机(Safe Semi-supervised SVM,S4VM)、基于代价敏感的半监督支持向量机(Cost-sensitive Semi-supervised SVM,CS4VM)。
基于图的半监督方法是利用有标签和无标签样本之间的联系得到图结构,利用图结构进行标签传播。典型的基于图的半监督方法有标签传播算法、最小割算法以及流形正则化算法。
4. 迁移学习
迁移学习是运用已存有的知识对不同但相关领域的问题进行求解的一种新的机器学习方法。
按照迁移学习方法采用的技术划分,可以把迁移学习方法分为3类:基于特征选择的迁移学习、基于特征映射的迁移学习和基于权重的迁移学习。
根据源领域和目标领域中是否有标签样本,可将迁移学习方法划分为3类:目标领域中有少量标注样本的归纳迁移学习(Inductive Transfer Learning)、只有源领域中有标签样本的直推式迁移学习(Transductive Transfer Learning)、源领域和目标领域都没有标签样本的无监督迁移学习。
根据源领域中是否有标签样本,把归纳迁移学习方法分为2类:多任务迁移学习和自学习。
5. 强化学习
强化学习(Reinforcement Learning,RL)又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体在与环境的交互过程中,通过学习策略以达成回报最大化或实现特定目标的问题。
强化学习主要包括智能体、环境状态、奖励和动作4个元素以及一个状态。
强化学习的模型
图片
强化学习是带有激励机制的,即如果机器行动正确,则施予一定的“正激励”;如果机器行动错误,则会给出一定的惩罚,也可称为“负激励”。在这种情况下,机器将会考虑在一个环境中如何行动才能达到激励的最大化,具有一定的动态规划思想。
强化学习的应用
机械狗
AlphaGo Zero
3.3 机器学习常用算法
1. 回归算法
回归算法是一种应用极为广泛的数量分析方法。该算法用于分析事物之间的统计关系,侧重考察变量之间的数量变化规律,并通过回归方程的形式描述和反映这种关系,以帮助人们准确把握变量受其他一个或多个变量影响的程度,进而为预测提供科学依据。
回归算法的分类
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
多项式回归(Polynomial Regression)
逐步回归(Step-wise Regression)
岭回归(Ridge Regression)
套索回归(Lasso Regression)
弹性回归(Elastic Net Regression)
2. 聚类算法
聚类就是将相似的事物聚集在一起,将不相似的事物划分到不同类别的过程,是数据挖掘中一种重要的方法。聚类算法的目标是将数据集合分成若干簇,使得同一簇内的数据点相似度尽可能大,而不同簇间的数据点相似度尽可能小。聚类能在未知模式识别问题中,从一堆没有标签的数据中找到其中的关联关系。
1.聚类算法概述
聚类技术是一种无监督学习,是研究样本或指标分类问题的一种统计分析方法。聚类与分类的区别是其要划分的类是未知的。常用的聚类分析方法有系统聚类法、有序样品聚类法、动态聚类法、模糊聚类法、图论聚类法和聚类预报法等。
聚类分析注意点
(1)可伸缩性
(2)处理不同类型属性的能力
(3)发现任意形状的聚类
(4)输入参数的选择
(5)处理“噪声”数据的能力
(6)对于输入记录的顺序不敏感
(7)高维度
(8)基于约束的聚类
(9)可解释性和可用性
2.聚类算法的分类
(1)基于划分的聚类算法
K-Means算法
K-Medoids算法
CLARANS算法
(2)基于层次的聚类算法
BIRCH算法
CURE算法
Chameleon算法
(3)基于密度的聚类算法
DBSCAN算法
OPTICS算法
DENCLUE算法
(4)基于网格的聚类算法
STING算法
CLIQUE算法
Wave-Cluster算法
(5)基于模型的聚类算法
统计的方法
神经网络的方法
(6)传递闭包法、布尔矩阵法、直接聚类法、相关性分析聚类法
3. 降维算法
1.降维算法概述
降维就是一种针对高维度特征进行的数据预处理方法,是应用非常广泛的数据预处理方法。
降维算法指对高维度的数据保留下最重要的一些特征,去除噪声和不重要的特征,从而实现提升数据处理速度的目的。在实际的生产和应用中,在一定的信息损失范围内,降维可以节省大量的时间和成本。
机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。
2.降维算法的分类
主成分分析(Principal Component Analysis,PCA)法
试图在保证数据信息丢失最少的原则下,对多个变量进行最佳综合简化,即对高维变量空间进行降维处理。其
因子分析(Factor Analysis,FA)法
因子分析法是从假设出发。
因子分析法有几个主要目的:一是进行结构的探索,在变量之间存在高度相关性的时候希望用较少的因子来概括其信息;二是把原始变量转换为因子得分后,使用因子得分进行其他分析,从而简化数据,如聚类分析、回归分析等;三是通过每个因子得分计算出综合得分,对分析对象进行综合评价。
3.降维算法的应用场景
降维算法通常应用于数据压缩与数据可视化中。
4. 决策树算法
典型的决策树示例
图片
5. 贝叶斯算法
贝叶斯算法是对部分未知的状态进行主观概率估计,并使用贝叶斯公式对发生概率进行修正,最后利用期望值和修正概率做出最优决策。
6. 支持向量机算法
支持向量机算法是一种支持线性分类和非线性分类的二元分类算法。经过演进,其现在也支持多元分类,被广泛地应用在回归以及分类当中。
支持向量机算法在垃圾邮件处理、图像特征提取及分类、空气质量预测等多个领域都有应用,已成为机器学习领域中不可缺少的一部分。
7. 关联规则算法
关联规则算法常用来描述数据之间的相关关系,关联规则模式属于描述型模式。
8. 遗传算法
遗传算法是一种启发式的寻优算法,该算法是以进化论为基础发展出来的。它是通过观察和模拟自然生命的迭代进化,建立起一个计算机模型,通过搜索寻优得到最优结果的算法。
3.4 小结
(1)机器学习,通俗地讲就是让机器来实现学习的过程,让机器拥有学习的能力,从而改善自身的性能。
(2)监督学习表示机器学习的数据是带标记的,这些标记包括数据类别、数据属性及特征点位置等。
(3)无监督学习的训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律。
(4)半监督学习突破了传统方法只考虑一种样本类型的局限性,综合利用了有标签与无标签样本,是在监督学习和无监督学习的基础上进行的研究。
(5)迁移学习是运用已存有的知识,对不同但相关领域的问题进行求解的一种新的机器学习方法。迁移学习放宽了传统机器学习中的两个基本假设,目的是迁移已有的知识来解决目标领域中仅有少量(甚至没有)有标签样本数据的学习问题。
(6)强化学习又称为再励学习、评价学习,是一种重要的机器学习方法,在智能控制机器人及分析预测等领域有许多应用。强化学习主要包含智能体、环境状态、奖励和动作4个元素。
(7)回归算法是一种应用极为广泛的数量分析方法,该算法用于分析事物之间的统计关系,侧重考察变量之间的数量变化规律,并通过回归方程的形式描述和反映这种关系,以帮助人们准确把握变量受其他一个或多个变量影响的程度,进而为预测提供科学依据。
(8)聚类就是将相似的事物聚集在一起,将不相似的事物划分到不同类别的过程。
(9)降维算法可将数据的维度降低,它通过主成分分析等其他方法,考虑主要因素,舍弃次要因素,从而平衡数据分析准确度与数据分析效率。
(10)决策树通过把实例从根节点排列到某个叶子节点来分类实例,叶子节点即为实例所属的分类。
(11)贝叶斯算法是一种使用先验概率进行处理的算法,其最后的预测结果就是具有最大概率的那个类。
(12)支持向量机算法是一种支持线性分类和非线性分类的二元分类算法,也支持多元分类。
(13)关联规则算法常用来描述数据之间的相关关系,关联规则模式属于描述型模式。
(14)遗传算法是一种启发式的寻优算法,该算法是以达尔文进化论为基础发展出来的。它是通过观察和模拟自然生命的迭代进化,建立起一个计算机模型,通过搜索寻优得到最优结果的算法。
第4章 深度学习
4.1 神经网络
1. 神经网络简介
神经网络(Neural Network,NN)亦称为人工神经网络(Artificial Neural Network,ANN),是由大量神经元(Neurons)广泛互连而成的网络,是对人脑的抽象、简化和模拟,应用了一些人脑的基本特性。
神经网络与人脑的相似之处可概括为两方面,一是通过学习过程利用神经网络从外部环境中获取知识,二是内部神经元用来存储获取的知识信息。
神经网络的信息处理是由神经元之间的相互作用实现的,知识与信息的存储主要表现为网络元件互相连接的分布式物理联系。
人工神经网络具有很强的自学习能力,它可以不依赖于“专家”的头脑,自动从已有的实验数据中总结规律。
人工神经网络擅长处理复杂的多维的非线性问题,不仅可以解决定性问题,还可以解决定量问题,同时具有大规模并行处理和分布信息存储能力,具有良好的自适应性、自组织性、容错性和可靠性。
2. 神经网络发展历史
3. 单个神经元
4. 神经网络的结构
神经网络会将多个单一神经元连接在一起,将一个神经元的输出作为下一个神经元的输入
神经网络的结构大致可以分为以下5类
(1)前馈式网络:该网络结构是分层排列的,每一层的神经元输出只与下一层的神经元连接。
(2)输出反馈的前馈式网络:该网络结构与前馈式网络的不同之处在于,其中存在着一个从输出层到输入层的反馈回路。
(3)前馈式内层互连网络:在该网络结构中,同一层的神经元之间相互关联,它们有相互制约的关系。但从层与层之间的关系来看,它仍然是前馈式的网络结构,许多自组织神经网络大多具有这种结构。
(4)反馈型全互连网络:在该网络结构中,每个神经元的输出都和其他神经元相连,从而形成了动态的反馈关系,该网络结构具有关于能量函数的自寻优能力。
(5)反馈型局部互连网络:在该网络结构中,每个神经元只和其周围若干层的神经元发生互连关系,形成局部反馈,从整体上看是一种网状结构。
5. 神经网络的学习
神经网络的学习也称为训练,指的是通过神经网络所在环境的刺激作用调整神经网络的自由参数,使神经网络以一种新的方式对外部环境做出反应的一个过程。
神经网络最大的特点是能够从环境中学习,以及在学习中提高自身性能。经过反复学习,神经网络对其环境会越来越了解。
6. 激活函数
激活函数(Activation Functions)对于人工神经网络模型以及卷积神经网络模型学习理解非常复杂和非线性的函数来说具有十分重要的作用。
7. 损失函数
损失函数是模型对数据拟合程度的反映,拟合得越差,损失函数的值就越大。与此同时,当损失函数比较大时,其对应的梯度也会随之增大,这样就可以加快变量的更新速度。
4.2 感知机
1. 感知机简介
感知机被称为深度学习领域最为基础的模型。虽然感知机是最为基础的模型,但是它在深度学习的领域中有着举足轻重的地位,它是神经网络和支持向量机学习的基础。
感知机学习的目标就是求得一个能够将训练数据集中正、负实例完全分开的分类超平面,为了找到分类超平面,即确定感知机模型中的参数w和b,需要定义一个基于误分类的损失函数,并通过将损失函数最小化来求解w和b。
2. 多层感知机
多层感知机(MLP)也叫作前馈神经网络,是深度学习中最基本的网络结构。
4.3 卷积神经网络
1. 卷积神经网络简介
卷积神经网络(Convolutional Neural Network,CNN),顾名思义,指在神经网络的基础上加入了卷积运算,通过卷积核局部感知图像信息提取其特征,多层卷积之后能够提取出图像的深层抽象特征,凭借这些特征来达到更准确的分类或预测的目标。卷积神经网络与一些传统的机器学习方法相比,能够更加真实地体现数据内在的相关特征,因此,目前卷积神经网络是图像、行为识别等领域的研究热点。
2. 卷积神经网络的结构
卷积神经网络的结构
图片
卷积神经网络是多层感知机的变体,根据生物视觉神经系统中神经元的局部响应特性设计,采用局部连接和权值共享的方式降低模型的复杂度,极大地减少了训练参数,提高了训练速度,也在一定程度上提高了模型的泛化能力。
3. 常用的卷积神经网络
1.VGG
2.GoogLeNet
3.ResNet
4.4 循环神经网络
1. 循环神经网络简介
循环神经网络(Recurrent Neural Network,RNN)是深度学习领域中一类特殊的内部存在自连接的神经网络,可以学习复杂的矢量到矢量的映射。
循环神经网络是一种以序列(Sequence)数据为输入,在序列的演进方向进行递归(Recursion),且所有节点(循环单元)按链式连接形成闭合回路的递归神经网络(Recursive Neural Network)。
循环神经网络是为了刻画一个序列当前的输出与之前信息的关系。从网络结构上看,循环神经网络会记忆之前的信息,并利用之前的信息影响后面节点的输出。
循环神经网络的隐藏层之间的节点是有连接的,隐藏层的输入不仅包括输入层的输出,还包括上一时刻隐藏层的输出。对于每一个时刻的输入,循环神经网络会结合当前模型的状态给出一个输出,其可以看作同一神经网络被无限复制的结果。
闭合回路连接是循环神经网络的核心部分。循环神经网络对于序列中每个元素都执行相同的任务,输出依赖于之前的计算(即循环神经网络具有记忆功能),记忆可以捕获迄今为止已经计算过的信息。循环神经网络在语音识别、语言建模、自然语言处理(Natural Language Processing,NLP)等领域有着重要的应用。
2. 循环神经网络的结构
3. 常用的循环神经网络
1.长短期记忆网络(Long Short-Term Memory,LSTM))
2.门控循环单元神经网络(Gated Recurrent Unit,GRU)
4.5 生成对抗网络
1. 生成对抗网络简介
生成对抗网络(Generative Adversarial Networks,GAN)的基本思想是学习训练样本的概率分布
生成对抗网络独特的对抗性思想使得它在众多生成网络模型中脱颖而出,被广泛应用于计算机视觉、机器学习和语音处理等领域。
GAN过程描述
GAN让两个网络(生成网络G和判别网络D)相互竞争,G不断捕捉训练集中真实样本xreal的概率分布,并通过加入随机噪声将其转变成赝品xfake。D观察真实样本xreal和赝品xfake,判断这个xfake到底是不是xreal。整个对抗过程是先让D观察(机器学习)一些真实样本xreal,当D对xreal有了一定的认知之后,G尝试用xfake来欺骗D,让D相信xfake是xreal。有时候G能够成功骗过D,但是随着D对xreal了解的加深(即学习的样本数据越来越多),G发现越来越难以欺骗D,因此G在不断提升自己仿制赝品xfake的能力。如此往复多次,不仅D能精通xreal的鉴别,G对xreal的伪造技术也会大为提升。这便是GAN的生成对抗过程。
GAN优点的简单总结
(1)能学习真实样本的分布,探索样本的真实结构。
(2)具有更强大的预测能力。
(3)样本的脆弱性在很多机器学习模型中普遍存在,而GAN对生成样本的鲁棒性强。
(4)通过GAN生成以假乱真的样本,缓解了小样本机器学习的困难。
(5)为指导人工智能系统完成复杂任务提供了一种全新的思路。
(6)与强化学习相比,对抗式学习更接近人类的学习机理。
(7)GAN与传统神经网络的一个重要区别是,传统神经网络需要人工精心设计和建构一个损失函数,而GAN可以学习损失函数。
(8)GAN解决了先验概率难以确定的难题。
2. 生成对抗网络的结构
GAN模型结构示意图
图片
1.生成网络
生成网络本质上是一个可微分函数,生成网络接收随机变量z的输入,经生成器G生成假样本G(z)。
生成网络理论上可以逐渐学习任何概率分布,经训练后的生成网络可以生成逼真图像,但又不会和真实图像完全一样,即生成网络实际上是学习了训练数据的一个近似分布,这在数据增强应用方面尤为重要。
2.判别网络
在GAN中,判别网络的主要目的是判断输入是否为真实样本,并提供反馈以指导生成网络训练。
判别网络和生成网络组成零和博弈的两个玩家,为取得游戏的胜利,判别网络和生成网络通过训练不断提高自己的判别能力和生成能力,游戏最终会达到一个纳什均衡状态。
3. 常用的生成对抗网络
1.条件生成对抗网络
条件生成对抗网络(Conditional GAN,CGAN)在原始GAN的基础上增加了约束条件,控制了GAN过于自由的问题,使网络朝着既定的方向生成样本。
2.深度卷积生成对抗网络
深度卷积生成对抗网络(Deep Convolutional GAN,DCGAN)的提出对GAN的发展有着极大的推动作用,它将CNN和GAN结合起来,使得生成的图片质量和多样性得到了保证。
3.循环一致性生成对抗网络
循环一致性生成对抗网络(Cycle-consistent Generative Adversarial Networks,CycleGAN),CycleGAN可以让两个域的图像互相转换且不需要成对的图像作为训练数据。
4.6 深度学习的应用
深度学习技术目前在人工智能领域占有绝对的统治地位,因为相比于传统的机器学习算法而言,深度学习在某些领域展现出了最接近人类所期望的智能效果,同时在悄悄地走进人们的生活,如刷脸支付、语音识别、智能翻译、自动驾驶、棋类人机大战等。
1. AlphaGo Zero
2. 自动驾驶
4.7 小结
(1)神经网络亦称为人工神经网络,是由大量神经元广泛互连而成的网络,是对人脑的抽象、简化和模拟,神经网络应用了一些人脑的基本特性。
(2)感知机被认为是具有实用价值的重要分类算法之一。
(3)卷积神经网络在神经网络的基础上加入了卷积运算,通过卷积核局部感知图像信息提取其特征,多层卷积之后能够提取出图像的深层抽象特征,凭借这些特征来达到更准确的分类或预测的目标。
(4)循环神经网络是一种以序列数据为输入,在序列的演进方向进行递归,且所有节点(循环单元)按链式连接形成闭合回路的递归神经网络。
(5)生成对抗网络的网络结构由生成网络和判别网络共同构成。生成网络和判别网络可以看作博弈中的两个玩家,在模型训练的过程中,生成网络和判别网络会各自更新自身的参数以使损失最小,通过不断迭代优化,最终达到纳什均衡状态。
第5章 计算机视觉
5.1 计算机视觉概述
1. 计算机视觉简介
计算机视觉(Computer Vision,CV)是机器认知世界的基础,最终的目的是使得计算机能够像人类一样“看懂世界”。
计算机视觉是从图像或视频中提出符号或数值信息,分析计算该信息以进行目标的识别、检测和跟踪等。更形象地说,计算机视觉就是让计算机像人类一样能看到并理解图像。
计算机视觉是一门涉及图像处理、图像分析、模式识别和人工智能等多种技术的新兴交叉学科,具有快速、实时、经济、一致、客观、无损等特点。
1.计算机视觉的概念
计算机视觉技术的基本原理是利用图像传感器获得目标对象的图像信号,并传输给专用的图像处理系统,将像素分布、颜色、亮度等图像信息转换成数字信号,并对这些信号进行多种运算与处理,提取出目标的特征信息进行分析和理解,最终实现对目标的识别、检测和控制等。
2.计算机视觉的特点
首先,计算机视觉是一个全新的应用方向,而非像预测分析那样只是对原有解决方案的一种改进。
其次,计算机视觉能够以无障碍的方式改善人类的感知能力。
最后,计算机视觉能够以远超其他人工智能工具的速度收集训练数据。
2. 计算机视觉的发展历史
3. 计算机视觉研究的意义
在采集图像、分析图像、处理图像的过程中,计算机视觉的灵敏度、精确度、快速性都是人类视觉所无法比拟的,它克服了人类视觉的局限性。
4. 计算机视觉的应用及面临的挑战
1.智慧医疗领域的应用
2.公共安全领域的应用
3.无人机与自动驾驶领域的应用
4.工业领域的应用
5.其他领域的应用
6.计算机视觉面临的挑战
(1)有标注的图像和视频数据较少,机器在模拟人类智能进行认知或感知的过程中,需要大量有标注的图像或视频数据指导机器学习其中的一般模式。当前,海量的图像视频数据主要依赖人工标注,不仅费时费力,还没有统一的标准,可用的有标注的数据有限,导致机器的学习能力受限。
(2)计算机视觉技术的精度有待提高,如在物体检测任务中,当前最高的检测正确率为66%,只能在对正确率要求不是很高的场景下应用。
(3)计算机视觉技术的处理速度有待提高,图像和视频信息需要借助高维度的数据进行表示,这是让机器看懂图像或视频的基础,对机器的计算能力和算法的效率要求很高。
5.2 图像分类
1. 图像分类简介
图像分类是根据不同类别的目标在图像信息中所反映的不同特征,将它们区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或其中的每个像素或区域划分为若干个类别中的某一种,以代替人的视觉判断。
图像分类的任务就是输入一张图像,正确输出该图像所属的类别。
图像分类就是寻找一个函数关系,这个函数关系能够将这些像素的数值映射为一个具体的类别(类别可以用某个数值表示)。
图像分类的核心任务是分析一张输入的图像并得到一个给图像分类的标签,标签来自预定义的可能类别集。
2. 图像分类算法
1.传统图像分类算法
完整建立图像识别模型一般包括底层特征提取、特征编码、空间约束、分类器分类等几个阶段。
传统图像分类流程
图片
2.基于深度学习的图像分类算法
基于深度学习的图像分类算法的原理是输入一个元素为像素值的数组,并给它分配一个分类标签。
基于深度学习的图像分类算法流程
图片
输入是包含N张图像的集合,每张图像的标签是K种分类标签中的一种。这个集合称为训练集。
学习即让分类器使用训练集来学习每个类的特征,也叫作训练分类器。
评价即让分类器来预测它未曾见过的图像的分类标签,对分类器预测的标签和图像真正的分类标签进行对比,并以此来评价分类器的质量。分类器预测的分类标签和图像真正的分类标签一致的情况越多,分类器的质量越好。
常用的3类深度学习模型
(1)VGG模型
(2)GoogLeNet模型
(3)残差网络模型
5.3 目标检测
1. 目标检测简介
目标检测需要定位出图像目标的位置和相应的类别。由于各类物体有不同的外观、形状、姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具有挑战性的问题。
目标检测的任务是在图像中找出所有感兴趣的目标(物体),并确定它们的位置和大小,是计算机视觉领域的核心问题之一。
图像分类任务关心整体,给出的是整张图像的内容描述;而目标检测关注特定的物体目标,要求同时获得该目标的类别信息和位置信息。相比于图像分类,目标检测给出的是对图像前景和背景的理解,算法需要从背景中分离出感兴趣的目标,并确定这一目标的描述(类别和位置)。
目标检测需要解决目标可能出现在图像的任何位置、目标有不同的大小以及目标可能有不同的形状这3个核心问题。
2. 目标检测框架模型
深度学习是具有更多隐藏层数的神经网络,它可以学习到机器学习等算法不能学习到的更加深层次的数据特征,能够更加抽象并且准确地表达数据。因此,基于深度学习的各类算法被广泛地应用于目标检测中。
1.R-CNN
R-CNN采用的是选择性搜索(Selective Search)算法,使用聚类的方法对图像进行分组,得到多个候选框的层次组。
2.SPP-NET
SPP-NET是在R-CNN的基础上提出的,由于R-CNN只能接收固定大小的输入图像,若对图像进行裁剪以符合要求,则会导致图像信息不完整;若对原始图像进行比例缩放,则会导致图像发生形变。
3.Fast R-CNN
4.Faster R-CNN
5.Mask R-CNN
6.YOLO
7.YOLO v2
8.SSD
5.4 图像分割
1. 图像分割简介
图像分割是图像分析的第一步,是计算机视觉的基础,是图像理解的重要组成部分,也是图像处理中最困难的问题之一。
图像分割指利用图像的灰度、颜色、纹理、形状等特征,把图像分成若干个互不重叠的区域,并使这些特征在同一区域内呈现相似性,在不同的区域之间存在明显的差异性。此后,可以将分割的图像中具有独特性质的区域提取出来用于不同的研究。简单地说,图像分割就是在一幅图像中,把目标从背景中分离出来。对于灰度图像来说,区域内部的像素一般具有灰度相似性,而在区域的边界上一般具有灰度不连续性。
2. 图像分割算法
1.基于阈值的图像分割算法
这种算法具有易于操作、功能稳定、计算简单高效等优点。其基本原理是根据图像的整体或部分信息选择阈值,依据灰度级别划分图像。
2.基于边缘检测的图像分割算法
这种算法的基本原理是通过检测边界来把图像分割成不同的部分。在一张图像中,不同区域的边缘通常是灰度值剧烈变化的地方,这种算法就是根据灰度突变来进行图像分割的。其按照执行顺序的差异可分为两种,即串行边缘分割法和并行边缘分割法。其重点是如何权衡检测时的抗噪性能和精度。若提高检测精度,则噪声引起的伪边缘会导致过分割;然而,若提高抗噪性能,则会使得轮廓处的结果精度不高。
3.基于区域的图像分割算法
这种算法的基本原理是连通含有相似特点的像素点,最终组合成分割结果。其主要利用图像局部空间信息,能够很好地避免其他算法图像分割空间小的缺陷。
4.基于神经网络的图像分割算法
这种算法的基本原理是以样本图像数据来训练多层感知机,得到决策函数,进而用获得的决策函数对图像像素进行分类,得到分割的结果。
5.5 小结
(1)计算机视觉是从图像或视频中提出符号或数值信息,分析计算该信息以进行目标的识别、检测和跟踪等。
(2)图像分类是根据不同类别的目标在图像信息中所反映的不同特征,将它们区分开来的图像处理方法。
(3)目标检测的任务是在图像中找出所有感兴趣的目标(物体),并确定它们的位置和大小。
(4)图像分割是利用图像的灰度、颜色、纹理、形状等特征,把图像分成若干个互不重叠的区域,并使这些特征在同一区域内呈现相似性,在不同的区域之间存在明显的差异性。
第6章 自然语言处理
6.1 自然语言处理简介
1. 自然语言处理的定义
语言是人类智慧的结晶,自然语言处理是指利用计算机对自然语言的形、音、义等信息进行处理,它是计算机科学领域和人工智能领域的一个重要的研究方向。
自然语言处理(Natural Language Processing,NLP)
自然语言是指人们日常使用的语言,它是随着人类社会不断发展演变而来的,是人类沟通、交流的重要工具,也是人类区别于其他动物的根本标志,没有语言,人类的思维无从谈起。
自然语言处理是指利用计算机对自然语言的形、音、义等信息进行处理,即对字、词、句、篇章的输入、输出、识别、分析、理解、生成等的操作和加工。它是计算机科学领域和人工智能领域的一个重要的研究方向,研究用计算机来处理、理解以及运用人类语言,可以实现人与计算机的有效交流。
自然语言处理的具体表现形式包括机器翻译、文本摘要、文本分类、文本校对、信息抽取、语音合成、语音识别等。
2. 自然语言处理的发展历程
3. 自然语言处理的研究方向
(1)文字识别
文字识别借助计算机系统自动识别印刷体或者手写体文字,将其转换为可供计算机处理的电子文本。对于普通的文字识别系统,主要研究字符的图像识别;而对于高性能的文字识别系统,往往需要同时研究语言理解技术。
(2)语音识别
语音识别又称自动语音识别,目标是将人类语音中的词汇内容转换为计算机可读的输入。语音识别技术的应用包括语音拨号、语音导航、室内设备控制、语音文档检索、简单的听写数据录入等。
(3)机器翻译
(4)自动文摘
(5)句法分析
(6)文本分类
(7)信息检索
(8)信息获取
(9)信息过滤
(10)自然语言生成
(11)中文自动分词
(12)语音合成
(13)问答系统
4. 自然语言处理的一般工作原理
计算机处理自然语言的整个过程一般可以概括为4部分:语料预处理、特征工程、模型训练和指标评价。
1.语料预处理
(1)语料清洗,即保留有用的数据,删除噪声数据,常见的清洗方式有人工去重、对齐、删除、标注等。
(2)分词,即将文本分成词语,如通过基于规则的、基于统计的分词方法进行分词。
(3)词性标注,即给词语标上词类标签,如名词、动词、形容词等。常用的词性标注方法有基于规则的、基于统计的算法,如最大熵词性标注、HMM词性标注等。
(4)去停用词,即去掉对文本特征没有任何贡献作用的字词,如标点符号、语气词、助词等。
2.特征工程
3.模型训练
4.指标评价
6.2 自然语言处理的组成
1.自然语言理解
2.自然语言生成
6.3 自然语言理解
1. 自然语言理解的层次
从微观上讲,自然语言理解是指从自然语言到机器内部的映射;
从宏观上看,自然语言是指机器能够执行人类所期望的某些语言功能。
自然语言理解中至少有3个主要问题
第一,计算机需要具备大程序量的人类知识,语言动作描述的是复杂世界中的关系,这些关系的知识必须是理解系统的一部分;
第二,语言是基于模式的,音素构成单词,单词组成短语和句子,音素、单词和句子的顺序不是随机的,没有对这些元素的规范使用,就不可能达成交流;
第三,语言动作是主体的产物,主体或者是人,或者是计算机,主体处在个体层面和社会层面的复杂环境中,语言动作都是有其目的的。
自然语言的理解和分析是一个层次化的过程
1.语音分析
2.词法分析
3.句法分析
4.语义分析
5.语用分析
2. 词法分析
词法分析是理解单词的基础,其主要目的是从句子中切分出单词,找出词汇的各个词素,从中获得单词的语言学信息并确定单词的词义
3. 句法分析
句法是语言在长期发展过程中形成的、全体成员必须共同遵守的规则。
句法分析也称语法解析,是对句子和短语的结构进行分析,找出词、短语等的相互关系及各自在句子中的作用等,并以一种层次结构加以表达。层次结构可以反映从属关系、直接成分关系,也可以反映语法功能关系。
4. 语义分析
句法分析完成后,不等于计算机已经理解了该语句,还需要对语义进行解释。语义分析的任务是把分析得到的句法成分与应用领域中的目标表示相关联,从而确定语言所表达的真正含义或概念
6.4 信息检索
1. 信息检索简介
2. 信息检索的发展历程
3. 信息检索的特点
4. 信息检索的基本原理
5. 信息检索的类型
6. 信息检索的应用
6.5 机器翻译
1. 机器翻译的基本模式
2. 统计机器翻译
3. 机器翻译的应用
6.6 情感分析
1. 情感分析概述
2. 情感分析的定义
3. 情感分析的任务
4. 情感分析的应用
5. 情感分析面临的困难与挑战
6.7 语音识别
1. 语音识别的定义
2. 语音识别的发展历程
3. 语音识别的基本原理
图片
4. 语音识别的应用
6.8 自然语言处理面临的问题和展望
1. 自然语言处理面临的问题
1.缺乏有效的知识表示和利用手段
2.缺乏未知语言现象的处理能力
3.模型缺乏解释性和举一反三的能力
4.缺乏交互学习和自主进化的能力
5.单一模态信息处理的局限性
2. 自然语言处理的展望
(1)与神经科学密切结合,探索人脑理解语言的神经基础,构建更加精准、可解释、可计算的语义表征和计算方法。
(2)构建高质量的基础资源和技术平台。
(3)打通不同模态信息处理的壁垒,构建多模态信息融合的处理方法和模型。
6.9 小结
(1)自然语言处理是指利用计算机对自然语言的形、音、义等信息进行处理,即对字、词、句、篇章的输入、输出、识别、分析、理解、生成等的操作和加工。
(2)计算机处理自然语言的整个过程一般可以概括为语料预处理、特征工程、模型训练和指标评价4部分。
(3)自然语言理解是指让计算机能够理解自然语言文本的意义,它可以分为语音分析、词法分析、句法分析、语义分析和语用分析5个层次。
(4)自然语言生成是指让计算机按照一定的语法和语义规则生成自然语言文本,通俗来讲,它指对语义信息以人类可读的自然语言形式进行表达。
(5)词法分析的主要目的是从句子中切分出单词,找出词汇的各个词素,从中获得单词的语言学信息并确定单词的词义。
(6)句法分析的作用是确定构成句子的各个词、短语之间的关系以及各自在句子中的作用等,并将这些关系用层次结构加以表达,并规范句法结构。
(7)语义分析的任务是把分析得到的句法成分与应用领域中的目标表示相关联,从而确定语言所表达的真正含义或概念。语义分析的方法主要有语义文法和格文法。
(8)信息检索是信息按一定的方式进行加工、整理、组织并存储起来,并根据用户特定的需要将相关信息准确地查找出来的过程。
(9)机器翻译是让计算机自动将源语言表示的语句转换为目标语言表示语句的过程,它有直译式翻译、中间语言式翻译和转换式翻译3种基本模式。统计机器翻译是目前主流的机器翻译方法,分为基于词的统计机器翻译和基于短语的统计机器翻译两种。
(10)情感分析是从评论的文本中提取出评论的实体,以及评论者对该实体所表达的情感倾向和观点。根据处理文本颗粒度的不同,情感分析大致可以分为篇章级、句子级和属性级3个级别的任务。
(11)语音识别是将人类语音中的词汇内容转换为计算机可读的输入,一般为可以理解的文本内容或者字符序列。语音识别的基本原理如下:先将经过预处理后的语音信号送入特征提取模块,再利用声学模型和语言模型对语音信号进行特征识别,最后输出识别结果。
第7章 知识图谱
7.1 知识图谱简介
1. 知识图谱的定义
知识图谱(Knowledge Graph)是一种揭示实体之间关系的语义网络。2012年5月17日,谷歌正式提出了知识图谱的概念,其初衷是优化搜索引擎返回的结果,增强用户搜索质量及体验。
知识图谱以结构化的形式描述客观世界中的概念、实体及其关系,将互联网的信息表达成更接近人类认知世界的形式,提供了一种更好地组织、管理和理解互联网海量信息的能力。
知识图谱给互联网语义搜索带来了活力,同时在问答系统中显示出了强大作用,已经成为互联网知识驱动的智能应用的基础设施。知识图谱与大数据和深度学习一起,成为推动互联网和人工智能发展的核心驱动力之一。
知识图谱不是一种新的知识表示方法,而是知识表示在工业界的大规模知识应用,它对互联网中可以识别的客观对象进行关联,以形成客观世界实体和实体关系的知识库,其本质上是一种语义网络,其中的节点代表实体或者概念,边代表实体/概念之间的各种语义关系。
知识图谱的架构包括知识图谱自身的逻辑结构,以及构建知识图谱所采用的技术(体系)架构。
2. 知识图谱的发展历史
3. 知识图谱的类型
1.事实知识
在描述实体的特定属性或者关系
2.概念知识
概念知识分为两类:一类是实体与概念之间的类属关系,另一类是子概念与父概念之间的子类关系。一个概念可能有子概念也可能有父概念,这使得全体概念构成层级体系。概念之间的层级关系是本体定义中最重要的部分,是构建知识图谱的第一步模式设计的重要内容。
3.词汇知识
词汇知识主要包括实体与词汇之间的关系(实体的命名、称谓、英文名等)以及词汇之间的关系(同义关系、反义关系、缩略词关系、上下位词关系等)。
4.常识知识
常识是人类通过身体与世界交互而积累的经验与知识,是人们在交流时无须言明就能理解的知识。
常识知识的获取是构建知识图谱时的一大难点。常识的表征与定义、常识的获取与理解等问题一直都是人工智能发展的瓶颈问题。
4. 知识图谱的重要性
1.知识图谱是人工智能的重要基石
2.知识图谱推动智能应用
3.知识图谱是强人工智能发展的核心驱动力之一
尽管人工智能依靠机器学习和深度学习取得了快速进展,但是由于严重依赖人类的监督以及大量的标注数据,仍属于弱人工智能范畴,离强人工智能具有较大差距。
强人工智能的实现需要机器掌握大量的常识性知识,将信息中的知识或者数据加以关联,同时以人类的思维模式和知识结构来进行语言理解、视觉场景解析和决策分析。
知识图谱技术是由弱人工智能发展到强人工智能的必要条件,对于实现强人工智能有着重要的意义
7.2 知识表示和知识建模
1. 知识表示
知识表示学习主要是面向知识图谱中的实体和关系进行表示学习,使用建模方法将实体和向量表示在低维稠密向量空间中,并进行计算和推理。
知识表示方法主要分为基于符号的知识表示方法与基于表示学习的知识表示方法。
2. 知识建模
目前,知识建模的实际操作过程可分为手工建模方式和半自动建模方式。手工建模方式适用于容量小、质量要求高的知识图谱,但是无法满足大规模的知识构建,是一个耗时、昂贵、需要专业知识的任务;半自动建模方式将自然语言处理与手工方式结合,适用于规模大且语义复杂的知识图谱。
7.3 知识抽取
0.概述
知识抽取指从不同来源、不同结构的数据中进行知识提取,形成知识的过程。
为了提供令用户满意的知识服务,知识图谱不仅要包含其涉及领域已知的知识,还要能及时发现并添加新的知识。
知识的完整性及准确性决定了知识图谱所能提供的知识服务的广度、深度和精度。因此,知识抽取在知识图谱的构建过程中显得尤为重要。
知识抽取往往采用一些自动化的抽取方法从结构化、半结构化和非结构化的信息源中提取出实体、关系、属性等信息,形成三元组或多元组关系。知识抽取的关键技术包括实体抽取、关系抽取和属性抽取。
知识抽取示意图
图片
1. 实体抽取
实体抽取也被称为命名实体识别(Named Entity Recognition,NER),指从原始数据中自动识别出命名实体。由于实体是知识图谱中最基础的知识要素,关系和属性都与实体息息相关,因此实体的抽取质量直接影响了图谱中知识的质量。
实体抽取的方法主要有基于规则与词典的方法、基于机器学习的方法以及面向开放域的方法。
基于规则与词典的方法主要利用用户手工制定的实体规则和词典,通过匹配的方式在信息源中标记出实体;
基于机器学习的方法主要利用统计机器学习的方式对原始数据进行训练,利用训练完成的模型进行实体的识别;
面向开放域的方法则主要对海量的Web数据中的实体进行分类与聚类。
2. 关系抽取
关系抽取的目标是抽取语料中命名实体的语义关系。实体抽取技术会在原始的语料上标记一些命名实体。为了形成知识结构,还需要从中抽取命名实体间的关联信息,从而利用这些信息将离散的命名实体连接起来,这就是关系抽取技术。
3. 属性抽取
实体的属性可以使实体对象更加丰满。属性抽取的目的是从多种来源的数据中抽取目标实体的属性内容。实体的属性可以看作连接实体与属性值的关系,因此,在实际应用中,一些学者将属性抽取问题转换为关系抽取问题。
7.4 知识存储
1. 知识存储概述
知识存储是针对知识图谱的知识表示形式设计底层存储方式,完成各类知识的存储,以支持对大规模数据的有效管理和计算。
知识存储的对象包括基本属性知识、关联知识、事件知识、时序知识和资源类知识等。知识存储方式的质量直接影响了知识图谱中知识查询、知识计算及知识更新的效率。
2. 知识存储方式
知识存储方式的类型
图片
3. 知识存储工具
1.关系数据库
2.图数据库
7.5 知识融合
1. 知识融合概述
知识融合即合并两个知识图谱(本体),基本的问题是研究将来自多个来源的关于同一个实体或概念的描述信息融合起来的方法。
2. 知识融合过程
图片
7.6 知识推理
1. 知识图谱的表示
2. 并行知识推理
基于符号的知识图谱推理一般是应用推理规则到知识图谱上,通过触发规则的前件来推导出新的实体关系,这里的推理规则可能是知识表示语言所有的,也可能是人工设定或者通过机器学习技术获取的。基于符号的推理虽然有能够提高推理效率的各种优化方法,但是还是跟不上数据增长的速度,特别是在数据规模大到目前基于内存的服务器无法处理的情况下。为了应对这一挑战,研究人员开始对描述逻辑和RDFS的推理进行并行推进以提升推理的效率和可扩展性,并且取得了很多成果。
并行推理工作所借助的并行技术分为单机环境下的多核、多处理器技术(多线程、GPU技术等)和多机环境下基于网络通信的分布式技术(MapReduce计算框架、Peer-To-Peer网络框架等)两大类技术。
3. 实体关系知识推理
实体关系知识推理的目的是通过统计方法或者神经网络方法,学习知识图谱中实体之间的关系。
基于表示学习的方法将知识图谱中的实体与关系统一映射至低维连续向量空间,以此来刻画它们的潜在语义特征。通过比较、匹配实体与关系的分布式表示,可以得到知识图谱中潜在成立的实体间的关系。此类方法灵活自由,通常具有较高的计算效率,但可解释性较差,对于困难的推理问题往往精度不足。
基于图特征的方法利用从知识图谱中观察到的图特征来预测一条可能存在的边,代表性工作包括归纳逻辑程序设计、关联规则挖掘、路径排序算法等。此类方法在推理的同时能从知识图谱中自动挖掘推理规则,具备明确的推理机理。然而,图特征的提取效率较低,对于超大规模的知识图谱更是如此。提高效率是基于图特征的方法亟待突破的壁垒。
4. 模式归纳知识推理
模式归纳知识推理是从知识图谱中学习本体的模式层信息或丰富已有本体,包括对概念层次、属性层次、不相交公理、属性的值域与定义域和属性或概念的约束等公理的学习。
7.7 知识图谱的应用
1. 语义搜索
语义搜索是指搜索引擎的工作不再拘泥于用户所输入请求语句的字面本身,而是透过现象看本质,准确地捕捉到用户的真实意图,并依此来进行搜索,从而更准确地向用户返回最符合其需求的搜索结果。
2. 问答系统
问答系统需要理解查询的语义信息,将输入的自然语言转换为知识库中的实体和关系的映射。
7.8 小结
(1)知识图谱以结构化的形式描述客观世界中的概念、实体及其关系。
(2)知识表示方法主要分为基于符号的知识表示方法、基于表示学习的知识表示方法。
(3)知识抽取指从不同来源、不同结构的数据中进行知识提取,形成知识的过程。
(4)知识存储是针对知识图谱的知识表示形式设计底层存储方式,完成各类知识的存储,以支持对大规模数据的有效管理和计算。
(5)知识融合的目标是产生新的知识,对松耦合来源中的知识进行集成,构成一个合成的资源,以补充不完全的知识和获取新知识。
(6)知识图谱的推理首先需要考虑的是知识如何表达的问题,即知识图谱的知识表示,它包括基于图结构的表示和相应的逻辑基础,以及基于张量的表示。
(7)语义搜索是指搜索引擎的工作不再拘泥于用户所输入请求语句的字面本身,而是透过现象看本质,准确地捕捉到用户的真实意图,并依此来进行搜索,从而更准确地向用户返回最符合其需求的搜索结果。
(8)知识库问答系统在回答用户问题时,需要正确理解用户所提出的自然语言问题,抽取其中的关键语义信息,在已有单个或多个知识库中通过检索、推理等手段获取答案并返回给用户。
第8章 人工智能技术应用场景
8.1 智慧交通
1. 智慧交通的概念
2. 智慧交通中的人工智能应用
3. 智慧交通中的核心技术
8.2 智慧电商
1. 智慧电商的概念
2. 智慧电商中的人工智能应用
3. 智慧电商案例分析
8.3 智能医学
1. 智能医学的概念
2. 智能医学的发展历程
3. 智能医学涵盖的内容
4. 医学中的人工智能应用
5. 智能医学的发展
8.4 智能制造
1. 智能制造的概念
2. 智能制造的特征
3. 智能制造中的人工智能应用
4. 智能制造的发展
第9章 智能机器人
9.1 智能机器人概述
1. 机器人简介
2. 认识智能机器人
3. 智能机器人的发展现状
4. 智能机器人的前景
9.2 智能机器人的核心技术
1. 定位导航
2. 人机交互
9.3 智能机器人的应用
第10章 人工智能的挑战与未来
10.1 人工智能的挑战
1. 数据
2. 算法模型可解释性
3. 业务场景理解
4. 服务方式
5. 投入产出比
10.2 人工智能对社会的影响
1. 人工智能对教育与就业的影响
2. 人工智能对隐私与安全的影响
10.3 人工智能的未来
1. 人工智能未来的发展趋势
2. 人工智能未来的技术发展方向
3. 人工智能未来的应用趋势
0 条评论
下一页