人工智能导论期末重点(大概)
人工智能导论重点
第一章:绪论
图灵测试与人工智能
图灵测试:如果一台机器能够与人类展开对话(通过电传设备)而不被辨别出其机器身份,那么称这台机器具有智能。
图灵测试用于判断机器是否具有智能的想法。
\(2014\) 年,“尤金·古斯特曼”聊天程序首次通过图灵测试。
罗德尔·布鲁克斯提出了新图灵测试方法:机器人伴侣需要一种体现在身体上的智能,并且这个机器人必须完成对人类而言仅需少量训练就能完成,但对机器人而言目前无法完成的任务。
人工智能的定义
- 定义1.1(智能机器(intelligent machine))
能够在各类环境中自主地或交互地执行各种拟人任务(anthropomorphic task)的机器。 - 定义1.2(人工智能(学科))
人工智能(学科)是计算机科学中涉及研究、设计和应用的智能机器的一个分支。其近期的主要目标在于研究用机器来模仿和执行人脑的某些智力能力,并开发相关的理论和技术。 - 定义1.3(人工智能(能力))
人工智能(能力)是智能机器所执行的通常与人类智能有关的智能行为,如判断、推理、证明、识别、感知、理解、通信、设计、思考、规划、学习和问题求解等思维活动。 - 定义1.4
人工智能是一种使计算机能够思维、使机器具有智力的激动人心的新尝试(Haugeland, 1985)。 - 定义1.5
人工智能是那些与人的思维、决策、问题求解和学习等有关活动的自动化(Bellman, 1978)。 - 定义1.6
人工智能是用计算模型进行研究的智力行为(Charniak 和 McDermott, 1985)。 - 定义1.7
人工智能是研究那些使理解、推理和行为成为可能的计算(Winston, 1992)。 - 定义1.8
人工智能是一种能够执行需要人的智能的创造性机器的技术(Kurzweil, 1990)。 - 定义1.9
人工智能是研究如何通过使计算机做事而让人过得更好(Rich 和 Knight, 1991)。 - 定义1.10
人工智能是一门通过计算过程力图理解和模仿智能行为的学科(Schalkoff, 1990)。 - 定义1.11
人工智能是计算机科学中智能行为的自动化有关的一个分支(Luger 和 Stubblefield, 1993)。
国际人工智能发展历史
- \(1936\) 年图灵发明通用图灵机(UTM),通用图灵机是一种理论上的计算机模型。
- \(1940\) 年,Heath Robinson 计算机诞生,破解德军密码。
- \(1941\) 年,第一台可编程计算机 Z-3 诞生。
- \(1937\) 年 ~ \(1941\) 年,约翰·文森特·阿塔纳索夫和克利夫·贝里开发了第一台电子计算机阿塔纳索夫-贝里计算机(ABC)。
- \(1943\) 年,沃伦·麦卡洛克与沃尔特·皮茨提出了人类历史上第一个人工神经元模型——麦卡洛克-皮茨模型(MP 模型)。
- 约翰·冯·诺依曼提出了现代可编程数字电子计算机,并在 \(1946\) 年在工程上实现。
- \(1948\) 年,诺伯特·维纳提出控制论。
- \(1949\) 年,唐纳德·赫布提出赫布学习规律。
- \(1951\) 年,第一个人工神经网络计算机 SNARC 诞生,由 Minsky 和 Edmonds 建造。
- \(1952\) 年,IBM 科学家亚瑟·塞缪尔开发了跳棋程序,创造了 “机器学习”(ML) 的概念。
- \(1956\) 年,约翰·麦卡锡在达特茅斯夏季研究会首次提出“人工智能”这一概念。
- \(1957\) 年 ~ \(1969\) 年,人工智能符号主义学派发展。
- \(20\) 世纪 \(70\) 年代初期,约翰·霍兰德创建了以达尔文进化论思想为基础的计算模型,称为遗传算法,并开创“人工生命”这一新领域。
- \(1974\) 年,保罗·韦伯斯提出了反向传播算法(BP算法)。
- \(1976\) 年,西蒙和纽厄尔提出了物理符号系统假设。
- \(1977\) 年,爱德华·费根鲍姆提出“知识工程”概念。
- \(1982\) 年,霍普菲尔德提出了 Hopfield 神经网络模型。
- \(1986\) 年,BP 神经网络算法的发明与应用。
- \(1987\) 年,国际人工神经网络学会成立,标志着人工神经网络进入快速发展时期。
- \(20\) 世纪 \(90\) 年代,罗德尼·布鲁克斯创建了行为主义学派,同时符号主义人工智能日渐衰落。
- \(1995\) 年,科琳娜·科尔特斯和弗拉基米尔·万普尼克提出软边距的非线性支持向量机(SVM)。
- \(1997\) 年,“深蓝”国际象棋计算机战胜国际象棋世界冠军。
- \(2010\) 年,李飞飞创建了 ImageNet 大型数据库。
- \(2012\) 年,辛顿和亚历克斯·克里热夫斯基利用 \(8\) 层的卷积神经网络 AlexNet 夺得 ImageNet 挑战赛。
- \(2015\) 年,何恺明等人使用了 \(152\) 层的残差网络 ResNet 参赛。
- \(2016\) 年,DeepMind 公司开发的 AlphaGo 战胜人类棋手冠军李世石。
- \(2020\) 年,AlphaFold 解决了“蛋白质折叠”的难题。
- 现阶段是联结主义人工智能对符号主义人工智能的胜利,联结主义发展迅猛。
由 MP 模型发展而来的一种重要的人工智能技术是人工神经网络(ANN),MP 模型就是人工神经网络的最初起源。
SNARC使用了赫布学习规律。
ENIAC:第一台通用目的数字电子计算机
符号主义学派的核心思想:智能或认知就是对有意义的表示符号进行推导计算,也是一种对人类认知的初级模拟形式。
BP 算法是如今人工神经网络和深度学习的基础学习训练算法。
杨立昆开发了模拟动物视觉皮层的卷积神经网络(CNN)。
知识图谱是一种实现机器认知智能的知识库,是符号主义持续发展的产物。
联结主义是从结构的角度模拟人类的智能,即利用人工神经网络模拟人脑神经网络以实现人工智能。符号主义是从功能角度模拟人类的智能,将智能看作大脑对各种符号进行处理的功能。行为主义通过模拟从昆虫到四足动物以及人类等各种对象创建各种智能机器人。
人工智能实现方法
传统实现方法
- 符号主义方法
分为逻辑学派与认知学派。逻辑学派主张用逻辑来研究人工智能,认知学派利用计算机进行人类宏观智能模拟。
- 联结主义方法
以模拟人脑神经网络结构形成人工神经网络,是联结主义的核心方法。
- 行为主义方法
通过行为模拟实现智能,可以成为“无脑”智能。
数据驱动方法
算法、大数据、计算能力(算力)被认为是推动人工智能发展的三大引擎。
大数据的 \(4\) 个特征:
- 数据规模大
- 数据种类多
- 处理速度快
- 数据价值密度低
人工智能主要研究方向
计算智能
- 自然计算
- 数据挖掘
感知智能
- 机器视觉
- 模式识别
认知智能
- 问题求解
- 逻辑推理与定理证明
- 知识图谱
- 决策系统
- 机器学习
- 自然语言处理
行为智能
机器人、机器动物
群体智能
- 群体智能算法
- 多智能体
混合智能
- 人机融合
- 人机互动
情感智能
- 情感计算
- 感性工学
类脑智能
- 人工神经网络
- 类脑计算
第二章:人工智能哲学观
人工智能的本质
约翰·塞尔 提出了 “中文屋”思想实验来反对计算机可以通过程序设计产生智能的观点。
-
一元论与人工智能基本问题
计算机本质上是一种由硅制作而成的机器。
弱人工智能在一定程度上已经证明智能的实现依赖于实体物质。
有意识的智能是否与大脑可分离并可在无机物质中产生是人工智能的最基本问题。 -
人工智能是有限理性智能工具
-
人工智能是人类存在价值的镜像参照
人工智能的局限性
-
主观能动性方面
现阶段,基于弱人工智能技术的机器智能都没有意向性,即不能像人一样意识到自己的存在,不能意识到同自己有不可分割的联系的周围环境和对象,不能意识到自己同周围环境和对象的关系,不能对行为进行判断、评价、调整等,不具有人类智能所特有的目的性,无法实现目的和结果的统一。
-
复杂场景适应性方面
现阶段,弱人工智能技术实现的机器智能只善于处理特定问题,可以在某一特定任务上展现其卓越的性能,但只要任务或训练数据稍有变化,其性能就会严重下降。
-
思想和独立决策能力方面
基于弱人工智能技术的机器智能缺乏人类心智所表现出来的内在性特征。机器只能模拟人类的行为和智能的外在表现,而不会真的懂得思考,尤其是在情感、意志和审美等非理性能力。
-
社会性方面
现阶段的机器智能,根本不可能像人一样具有复杂的社会生活经历和社会经验基础。
第四章:人工神经网络
如何构建人工神经网络
人工神经网络主要从两方面粗略模拟大脑:
- 人工神经网络获取的知识是从外界环境中学习得来的
- 内部神经元的强度,即突触权值,用于存储获取的知识。
神经元模型
MP 模型图以课本为主(第二版 \(69\) 页图 \(4.2\))

(注:这里从网上找了个图)
基本思想:仿照生物神经元接受多个输入信号,所有输入信号在权值下累加求和,并在一定阈值的作用下产生输出信号,权值用于模拟神经元中的兴奋和抑制作用,这些权值决定了整体活跃性。
权值是一个 \(-1\) ~ \(1\) 的随机小数,权值为正会有激发作用,即神经元的输入与输出之间可以传输信号,如果为负,则会有抑制作用,即神经元的输入与输出之间没有传输信号。
在 MP 模型中,来自第 \(i\) 个神经元的输入信号 \(x_i\) 进入神经元后,与权值 \(w_i\) 相乘(加权),所有输入信号经加权求和后得到信号 \(u\)(这张图上为 \(v\))。
利用激活函数可以拟合神经元的非线性,决定神经元的信号输出,神经元是否被激活,取决于 \(u\) 是否超过某一阀值 \(\theta\),如果激活函数是一个阶跃函数,则激活时会产生一个值为 \(1\) 的输出信号,否则输出一个 \(0\)。激励值是一个浮点数,可正可负。
可以整理一下,再加一维度,令 \(x_0 = -1, w_0 = \theta\)。
这样其实就变成了上面那张没有阈值的图了。
这里还是以课本的图为主!
感知机模型
单层感知机
感知机模型是一个只有单层计算单元的前馈神经网络,称为单层感知机,在输入层与输出层的神经元之间建立起连接关系,同一层神经元之间不连接,这个模型有功能函数 \(g(\cdot)\),与 \(f(\cdot)\) 激活函数差不多。
这个权值,我们很难直接凭经验给出正确权值,需要利用一些方法或算法找到它,这个过程就是“学习”,又称“训练”。
不管是传统的神经网络还是深度神经网络,核心的工作都是找合适的权值 \(w\)。
单层感知机的训练:
- 设置权值的初值为较小的随机非零值。
- 给定输入/输出样本 \(\{a_q, t_q\}\),其中\[t_q=\begin{cases} +1, u_q \in O\\ -1, u_q \in X\\ \end{cases} \]\(O\) 为感知机输出为 \(1\) 时输入加权值的集合,\(X\) 为输出为 \(-1\) 的集合。
- 求感知机的输出。
- 第 \(k + 1\) 次调整权值可得\[ w_j(k+1)=w_j(k)+\alpha[t_q-y_q(k)]\alpha_{jq} \]\(\alpha\) 表示学习率,\(\alpha \in (0, 1)\),负责控制权值调整速度。
- 若 \(y_q(k)=t_q\),则学习结束,否则重复步骤 \(4\)。
多层感知机
单层感知机不能表达的问题被称为线性不可分问题。在输入层和输出层之间加入一层或多层处理单元,就构成了多层感知机。
设置偏置节点 \(b^{(1)}, b^{(2)}\),公式为:
BP 算法
BP 算法的通用学习规则本质就是梯度下降,即找到一个函数的局部极小值。
选择激活函数,要求函数连续可导,确定参数和数据,计算隐藏层和输出层数据,计算损失函数P。
某一层的一个神经元的误差项是后面所有与该神经元相连的一层的神经元的误差项乘以权值再求和,然后乘以该神经元的梯度。
以课本为主。
卷积神经网络原理
核心思想是通过深层网络对图像的低级特征进行提取,随着网络层数的加深,将低级特征不断地向高级特征映射,在最后的高级映射特征中完成分类识别等工作。
\(1998\) 年,杨立昆提出了一种基于 CNN 模型,即 LeNet-5 模型。
CNN 重要思想:
- 稀疏连接
- 权值共享
卷积层:将特征图叠在一起就得到了卷积层输出的结果,在图像预处理、特征提取、边缘检测等得到广泛应用。
池化层:降低卷积层输出的特征向量维数,有最大池化、平均池化、随机池化。
全连接层:可以整合卷积层或者池化层中具有类别区分性的局部信息。
激活函数层:能够富裕模型更强的特征提取能力,常见的有 ReLU、Sigmoid、Leaky ReLU。
损失函数:估计预测值与实际值差距的函数,常见的有 0-1 损失函数、绝对值损失函数、平方损失函数、对数损失函数。
CNN 算法:前向传播,从左至右,传播数据信息,反向传播,从右至左,传播误差。
循环神经网络
广义上,递归神经网络分为结构递归神经网络和时间递归神经网络。狭义上,递归神经网络是指结构递归神经网络,而时间递归神经网络则称为循环神经网络,两者最主要的差别是循环神经网络在时间维度展开,递归神经网络在空间维度展开。
循环神经网络使网络可以对早先输入的信息进行记忆,并将记忆中的有用信息应用到后续输出的计算过程中,隐藏层之间的节点不再是无连接的了,隐藏层的输入不仅包括输入层的输出,还包括前一时刻隐藏层的输出。
时间反向传播算法(BPTT)是常用的循环神经网络训练方法,本质还是 BP 算法,主要应用梯度下降法。
长短时记忆网络
LSTM 还增加了记忆细胞,并设置了输入门、输出门和遗忘门,进而决定让哪些历史信息加入记忆细胞状态。
\(c_i\): 长期记忆
\(h_i\): 短期记忆,或者是 \(c_i\) 的信息摘要。
遗忘门 \(f_t = \sigma(W_f[h_{t-1}, x_t] + b_f)\)
输入门 \(i_t = \sigma(W_i[h_{t-1}, x_t] + b_i)\)
备选值 \(\widetilde{c_t}=\tanh(W_c[h_{t-1}, x_t] + b_c)\)
更新 \(c_t = f_tc_{t-1} + i_t\widetilde{c_t}\)
其中 \(f_t, i_t \in (0, 1)\),等于 \(0\) 时代表没有信息通过,等于 \(1\) 时代表所有信息通过。
输出 \(o_t = \sigma(W_o[h_{t-1}, x_t] + b_o)\)
\(h_t = o_t \tanh(c_t)\)
受限玻尔兹曼机
生成模型是指一类概率生成模型,目前使用较多的包括深度玻尔兹曼机 (DBM)、深度置信网络 (DBN)、生成对抗网络 (GAN) 和变分自编码器 (VAE)。
受限玻尔兹曼机 (RBM) 是玻尔兹曼机 (BM) 的一种特殊拓扑结构。
RBM 本质上是一个基于能量的概率分布模型,由二值神经元构成。
RBM 堆叠起来就是 DBM,加上一个分类器就是 DBN。
第五章:机器学习
机器学习的定义:不需要确定性编程就可以赋予机器某项技能。
满足下列条件,机器就可以达到人类的智能程度:
- 具备自主或主动获取和处理知识的能力
- 具备主动识别事物和模式分类能力
- 具备通过少量数据、样本进行抽象、概括、归纳,并从中发现关系、规律、模式等的能力。
- 具备常识学习能力
机器学习的目的就是专门研究机器怎样模拟或实现学习能力,以获取新的知识或技能,重新组织已有的知识结构,不断改善自身的性能,从而实现机器智能。
机器学习模型的类型和应用
类型:
- 按方法划分,可以分为线性模型和非线性模型。线性模型是非线性模型的基础,非线性模型又可以分为传统机器学习模型(SVM、k-最近邻、决策树)和深度学习模型。
- 按学习理论划分,分为监督学习、半监督学习、无监督学习、迁移学习和强化学习等。
- 按任务划分,分为回归模型、分类模型和结构化学习模型。回归模型又称为预测模型,分类模型又可分为二分类模型和多分类模型。
- 按求解的算法划分,分为生成模型和判别模型。生成模型对联合概率建模,判别模型对条件概率建模。
常见的生成模型有贝叶斯分类器、高斯混合模型、隐马尔可夫模型、RBM、生成对抗网络等,典型的判别模型有决策树、k-最近邻算法、人工神经网络、SVM、logistic 回归和 AdaBoost 算法等。
应用:
- 模式识别
- 数据挖掘
- 统计学习
- 计算机视觉
- 自然语言处理
- 语音识别
监督学习与无监督学习
机器学习中的监督学习,须事先通过人工方式把数据分成不同的类别,通俗来说就是首先拿已经分好类的样本对机器学习模型进行训练,确定模型参数,然后把待分类的样本输入经过训练的机器学习模型中进行分类。
实际应用中机器学习主要以监督学习为主。
常见的无监督学习算法称为聚类。
单层感知机、CNN和循环神经网络的网络模型训练都属于监督学习,而 DBN 是基于概率的“生成模型”,预训练过程是无监督学习。
k-最近邻分类
对于给定的训练数据,通过搜索整个数据集中 k 哥最相似的实例(邻居),并汇总这 k 个实例的输出变量,就可以预测新的数据点了。
对于回归问题输出的可能是平均值,对于分类问题输出的可能是模式类别值。
使用 k-最近邻分类的关键在于确定数据实例之间的相似性。
主要过程:
- 计算训练样本和测试样本中每个样本点与新数据点的距离(常见的有欧氏距离、曼哈顿距离、明氏距离、切氏距离等)
- 对所有距离进行排序
- 选取前 \(k\) 个距离最小的样本
- 根据这 \(k\) 个样本,选取出现频率最高的类别,并将其作为测试数据的预测分类结果。
k 尽量取级数,偶数可能会出现数量相等的情况。
SVM
支持向量机 (SVM) 实际上是一种线性分类器。在二维空间内,超平面可被视为一条直线,假设所有的输入点都可以被该直线完全分开,两类边界由超平面式决定。
法向量 \(\boldsymbol{w}\) 和阈值 \(w_0\) 由标记的训练数据决定。SVM 的目标是找到一组分割系数,也就是法向量 \(\boldsymbol{w}\),使得一个超平面能够对不同类别的数据 \(\boldsymbol{x}(x_1, x_2)\) 进行最佳分割,即能将两类正确分开(训练错误率为 \(0\)),且分类间隔最大。
分类超平面的确定仅取决于支持向量,两条虚线之间的距离为 \(r\),则支持向量到分类超平面的距离则为 \(\dfrac{r}{2}\),这个值为分类间隔,所以就是找一组分割系数 \(\boldsymbol{w}\),使 \(dfrac{r}{2}\) 最大。
SVM 主要优点为可以解决高维问题,即大型特征空间;可以解决小样本下的机器学习问题;处理非线性特征的相互作用,克服局部极小值问题;无须依赖整个数据;泛化能力比较强。
朴素贝叶斯分类器
k-均值聚类算法
聚类是根据相似性将相似数据点分组在一起的过程。
无监督学习算法,该算法将 \(n\) 个对象根据他们的特征分为 \(k\) 个部分,\(k < n\),可以使用一个随机特征向量来对一个聚类进行初始化,然后将其他样本添加到其最近邻的聚类中,随着聚类所添加的样本越来越多,其形心会重新计算,然后该算法会重新检查一次样本,确保它们都在最近邻的聚类中,直到没有样本需要改变所属聚类为止。
随机森林算法
随机森林算法是一种套袋集成技术,有许多被称为决策树的分类器组成并利用套袋算法进行训练。
决策树 (DT) 是一种经典的机器学习分类方法,是一种树形结构,每个节点表示一个特征分类测试,且仅能存放一个类别,分支代表输出,从决策树的根节点开始,选择树的其中一个分支,并沿着选择的分支一路向下直到树叶,将叶节点存放的类别作为决策结果。
在随机森林算法中,首先输入变量穿过森林中的每棵树,然后每棵树会预测一个输出类别,即树为输出类型“投票”,最后森林选择树投票最多的类别作为它的输出。
获得所有决策树的方式:
- 对原始训练数据集进行 \(n\) 次有放回的采样以获得样本,并构建 \(n\) 个决策树。
- 使用样本数据集生成决策树:从根节点开始,在后续的各个节点处,随机选择一个由 \(m\) 个输入变量构成的子集,在对这 \(m\) 个输入变量进行测试的过程中,将样本分为两个单独类别,对每棵树都进行这样的分类,直到该决策树的所有训练样本都属于同一类。
- 将生成的多棵决策树组成随机森林,用随机森林分类器将新的数据进行分类,通过多棵树分类器投票决定最终的分类结果。
集成学习
- 套袋算法:先进行数据集放回抽样,产生子训练集,然后训练 \(m\) 个分类器,每个分类器对应一个新产生的训练集,通过 \(m\) 个分类器对新的输入进行分类,选择获得“投票”最多的类别,即大多数分类器选择的类别。
- 提升算法:一种框架算法,首先对训练集进行转化后重新训练出分类器,即通过对样本集进行操作获得样本子集,然后用弱分类算法在样本子集上训练生成一系列的分类器,从而对当前分类器不能很好分类的数据点实现更好的分类。
深度学习
浅度学习与深度学习
浅层学习模型针对复杂分类问题其泛化能力受限。
“深度”取决于隐藏层的数量。
大数据的核心是利用数据的价值,深度学习是利用数据价值的关键技术。
深度学习的应用——图像描述
一般情况下,编码器使用 CNN 提取图像特征,并将它们组成固定长度的特征向量,解码器使用改进的循环神经网络,才用 LSTM 等将图像特征向量转化成了图像对应描述的词语序列。
算法训练的最终结果是找到一组参数,在该组参数下图像描述的“生成模型”使用适合的词语去描述图像特征,最终生成描述文本。
基于编码—解码结构的方法将图像描述看做一个广义的翻译任务,将图像翻译成自然语言。
生成对抗网络
生成对抗网络是一种由生成网络和判别网络组成的深度神经网络。在生成网络和判别网络之间进行多次循环,使两个网络进行相互对抗。
生成网络尝试生成与真实图像相似且同分布的假图像,判别网络试图区分生成的假图像和真实图像。
生成网络
生成网络和判别网络一般使用生成器和判别器。基于神经网络的生成器就是一种典型的生成网络模型。
生成器是一类使用现有数据生成新数据的模型。生成网络的核心任务是从随机生成的由数字构成的向量(“潜在空间”)中生成数据。生成器本质上是一个基于概率分布的生成模型。
对于生成对抗网络,生成模型要尽量让判别模型将自己生成的样本判定为真实样本,因此对于生成模型来说,他需要最小化目标函数 \(\ln(1-D(G(z)))\),\(G(z)\) 为最终的图片输出,\(D()\) 为判别器接受生成器输出的假图像并给出一个介于 \(\left[0, 1\right]\) 之间的概率值。
判别网络
判别网络与生成网络相对应,感觉生成器生成的假图像与真实图像进行判别,得出一个概率值 \(p = D(G(z), i)\)。
一般判别器的结构是一个用于分类问题的神经网络,用于区分样本是生成模型产生的还是真实样本,是一个二分类问题,判别模型的映射函数 \(D(x, \theta_d)\)。
判别器是一种基于概率分布的判别模型,判别器的网络结构与生成器的网络结构恰恰是相反的。生成器的输入是噪声向量,输出的是图像,而判别器的输入是图像,输出是噪声向量。
生成对抗网络训练采用分阶段优化策略进行优化。
训练算法:
循环:
-
第一阶段:训练判别数据
循环,\(i = 1, 2, ..., k\)- 根据噪声服从的概率分布 \(p_g(z)\) 产生 \(m\) 个真实样本 \(z_1, z_2, ..., z_m\)
根据样本数据服从的概率分布 \(p_{date}(x)\) 采样出 \(m\) 个样本 \(x_1, x_2, ..., x_m\)
用随机梯度上升法更新判别模型。
结束循环。
- 根据噪声服从的概率分布 \(p_g(z)\) 产生 \(m\) 个真实样本 \(z_1, z_2, ..., z_m\)
-
第二阶段:训练生成模型
根据噪声分布产生 \(m\) 个样本 \(z_1, z_2, ..., z_m\)
随机梯度下降法更新生成模型。
结束循环。
从实际看,生成对抗网络就是同时训练两个神经网络,生成模型和判别模型是一起训练的,每一轮迭代时,生成模型训练一次,判别模型训练多次。
迁移学习
迁移学习是指利用数据、任务或模型之间的相似性,将在旧领域学习过的模型应用于新领域的一种学习过程。
按照学习方法的分类方式。可以将迁移学习分为基于样本的迁移学习方法、基于特征的迁移学习方法、基于模型的迁移学习方法和基于关系的迁移学习方法。
- 基于样本的迁移学习方法:根据一定的权值生成规则,对数据样本进行重用,以实现迁移学习。
- 基于特征的迁移学习方法:通过特征变换的方式互相迁移,来减少源域和目标域之间的差距,或者将源域与目标域的数据特征变换到统一特征空间中,然后利用传统的机器学习方法进行分类识别,以实现迁移学习。
- 基于模型的迁移学习方法:从源域和目标域中找到他们之间共享的参数信息,以实现迁移学习。
- 基于关系的迁移学习方法:假设两个域是相似的,它们之间会共享某种相似的关系,这样就可以将源域中的逻辑关系应用到目标域上来进行迁移。
强化学习
强化学习是一种通过模拟大脑神经细胞中的奖励信号来改善行为的机器学习方法,目标是学习一个最优策略,以使智能体通过接收奖励信号并将其作为回报(一般这个过程是将状态映射为动作),进而获得一个整体度量的最大化奖励。
强化学习的主要特点:试错学习、延迟反馈、时间是强化学习的一个重要因素、当前的行为影响后续接收到的数据。
主要历史:
- Value Based (值函数)
- Policy Based (策略搜索)
- Actor-Critic (演员-评论家)架构
- 时间差分学习 (TD)
- 策略梯度方法
- Q-learning 算法
- DQN 深度 Q 网络
应用:
- AlphaGo 和 AlphaGo Zero
- 游戏训练
- 机器人控制中的应用
第六章:感知智能
图像处理技术
图像处理是指对图像信号进行分析、加工和处理以将其转化成数字信号,也就是利用计算机对图像信号进行分析。
图像处理包括空域法和频域法两种方法。
图像的频率是表征图像中灰度变化剧烈程度的指标。
灰度图像二维矩阵元素取值范围通常为 \([0, 255]\),\(0\) 表示纯黑色,\(255\) 表示纯白色。也可以用双精度数据类型表示,值域为 \([0, 1]\),\(0\) 代表黑色,\(1\) 代表白色。
RGB (红绿蓝) 彩色图像。
- 灰度直方图
灰度直方图是一种对数字图像中的所有像素,按照灰度值的大小,统计它们出现的频率的图。灰度直方图校正具有增强图像、调节对比度等作用。
- 彩色空间变化
\(Y = AVG(RGB) = \dfrac{R + G + B}{3}\)
\(Y = w_r \times R + w_g \times G + w_b \times B\) - 图像平滑处理(图像滤波)
对图像实施低通滤波,去除其中的高频信息,保留低频信息,常用方法:邻域平均法、中值滤波法、高斯滤波法等。
- 图像边缘检测
边缘不随光照和视角的变化而变化,只考虑强度大的边缘像素,足够理解图像,切大大减少图像数据量。
- 图像金字塔
以多分辨率来解释图像的有效但概念简单的结构,金字塔的底部是待处理图像的高分辨率表示,顶部是低分辨率近拟。主要用于图像分割和图像压缩。
- 图像分割
图像分割是指根据灰度、颜色、纹理和形状等特征,把图像化分成若干互不重叠的区域,并使这些特征在同一区域内呈现出相似性,在不同区域内呈现出明显的差异性,从而提取有效特征部分。
图像分割是进行图像识别、分析和理解的基础。主要有两种方法:基于像素的分割方法与基于不同类型的区域在图像中的不连续性来进行分割。 - 图像锐化
主要用于增强图像的边缘及灰度变化剧烈的位置,以增加图像的清晰度,常用方法有高通滤波法和空域微分法。前者可以让高频分量通过,适当抑制中低频分量,使图像细节更清晰,后者利用方向导数在边缘法线方向上取得局部最大值。
- 图像特征提取
利用算法提取图像信息,进而决定每个图像像素是否属于一个图像特征,特征提取的结果是把图像上的像素分到不同的子集,特征提取最重要的特征就是“可重复性”,即算法检查图像的每一个像素来确定该像素是否代表一个特征。
- 图像分析
从图像中抽取有用的度量、数据和信息,以得到某种数值结果,主要过程:分割 \(\longrightarrow\) 识别或分类 \(\longrightarrow\) 描述
计算机视觉与机器视觉
- 计算机视觉
信息处理过程:图像预处理 \(\longrightarrow\) 图像分析与理解
- 机器视觉
模式识别
模式识别是一种从大量信息和数据出发,在专家经验和已有认识的基础上,利用计算机和数学推理的方法对形状、信号、数字、字符和图形自动完成识别的过程。
模式识别包括相互关联的两个阶段,即学习阶段和实现阶段。前者还是对样本进行特征选择并寻找分类的规律,后者是根据分类规律对未知样本集进行分类和识别。
模式识别方法
- 统计模式识别
- 主要是利用贝叶斯决策规则来解决最优分类器问题的。提取一组特征的度量,构成特征向量,然后采用划分特征空间的方式进行分类。
- 结构模式识别
- 通过采用一些比较简单的子模式组成多级结构来描述一个复杂的模式。基本思路是先将模式分为若干个子模式,再将子模式分解成简单的子模式,又将简单的子模式继续分解,直到满足研究需要为止。结构模式识别就是利用模式与子模式分层结构的树状信息来完成模式识别工作的。
- 模糊模式识别
- 以模糊理论和模糊集合数学为支撑的一种模式识别方法,主要用于解决不确定性问题。
- 人工神经网络模式识别
- 集成学习模式识别
模式识别过程
一般来说,一个完整的模式识别过程包括学习模块、测试模块和验证模块三个主要部分。
学习模块主要完成对模型的构建和训练,验证模块主要完成对模型的验证,测试模块主要完成模型性能的测试。
具体实现:首先构建模型,同时将样本按照一定的比例分成训练集、验证集以及测试集;然后采用训练集中的训练样本对模型进行训练,每次训练完成一轮后再在验证集上测试一轮,一直到所有样本均训练完成;最后在测试集上测试模型的准确率和误差变化。
深度学习与图像分类
深度卷积神经网络及其图像分类方法
- ResNet
- Xception
- EfficientNet
目标检测与识别
YOLO 是一个用于目标检测的神经网络,这是一种新的目标检测方法,其特点是能够在实现快速检测目标的同时达到较高的准确率。
YOLO算法思想:将原始图片分割成互不重叠的小方块,然后通过卷积操作获得 \(2 \times 2\) 大小的特征图像,特征图像上的每个元素对应原始图片中的一个小方块,用这些元素可以预测那些中心店在该小方格内的目标。
步骤:
- 该模型将输入对象划分为一个 \(S \times S\) 的网格,如果一个目标落入其中一个网格单元中,则该网格就负责检测目标。
- 对每个网格都预测 \(B\) 个边框和置信度,置信度分数反映了预测的边框是否包含目标和预测边框的准确度。(这里详细看课本P134)
- 该网络可以预测出 \(7 \times 7 \times 30\) 大小的目标窗口,然后根据俄阈值去除可能性较低的目标窗口,利用非极大值抑制,选取置信度较高的边界框作为最终选取的检测结果。
第七章:认知智能
认知智能即通过对人类深思熟虑的行为进行模拟而实现的机器智能,机器认知智能的核心在于机器的主动学习、辨识、理解和思考。
传统的符号主义人工智能可以概括为符号表达、逻辑推理、启发式编程或者称之为对“深思熟虑”的思维的模拟。
逻辑推理
命题与推理
描述逻辑推理的一个基本概念就是命题,命题是描述事件的陈述句,只有陈述句才能表达命题,一个推理就是一个陈述句集合。对命题内容的判断分为真、假两种。
如果用一个陈述句集合来表达推理,那么可以把作为该集合元素的语句区分成两部分,即前提和结论。
推理实际上描述的是作为前提的命题同作为结论的命题的逻辑关联性。
内容是指命题和推理所具体表述的东西,形式则是指命题和推理表达所具有的特定语言结构。
推理类型
按照逻辑基础分类:
- 演绎推理:从一般到个别的推理方法。三段论:大前提、小前提、结论。
- 归纳推理:从个别到一般。数学归纳法。
归纳推理从特殊事例考察范围看可以分为完全归纳推理和不完全归纳推理,从使用的方法看可以分为枚举归纳推理、类比归纳推理等等。
- 默认推理:又称缺省推理,是在知识不完全的情况下假设某些条件已经具备所进行的推理。反证法。
按照所用知识的确定性分类:
- 确定性推理
- 不确定性推理
模糊推理
模糊性是指事物具有的不明确类属特征,本质是指对象资格程度的渐变性和事物类属的不明确性。
模糊逻辑是一种连续逻辑。
知识表示
知识表示就是按照人类对概念的分类、对知识的定义,以及对各种知识的归纳,以一定的方式或规则将知识表示成适合机器处理的数据结构。
知识库大致分为两类:常识知识库、百科类知识库。
知识表示技术可以分为符号主义和联结主义。
谓词逻辑表示法
谓词逻辑表示法是指各种基于形式逻辑的知识表示方式,各种表示事物的状态、属性、概念等事实性知识,也可以用来表示事物间具有确定因果关系的规则性知识。
基本组成:基本组成部分是谓词符号、变量符号、函数符号和常量符号,它们之间用圆括号 ()、方括号 []、花括号 {} 和逗号 , 分隔,以表示论域内的关系。
原子公式是由若干谓词符号和项组成的,只有当其对应的语句在定义域内为真时,才具有值真(T),而当其对应的语句为假时,它具有值假(F)。
| 组成部分 | 符号 | 含义 | 示例 |
|---|---|---|---|
| 个体常量 | a, b, c | 具体对象 | 张三:ZhangSan |
| 个体变量 | x, y, z | 可变对象 | x:某人 |
| 谓词 | P, Q, R | 属性/关系 | Teacher(x):x是老师 |
| 量词 | $\forall \ \exists $ | 全称/存在 | \(\forall x\):对所有 \(x\) |
| 连接词 | \(\wedge, \vee, \neg, \rightarrow, \leftrightarrow\) | 与 或 非 蕴含 等价 | A ∧ B:A且B |
| 函数 | f, g, h | 对象映射 | father(x):x的父亲 |
这里以课本为主吧,书上讲得好。
语义网络表示法
语义网络是一种通过概念及其语义联系来表示知识的有向图,节点和弧必须带有标注。
在语义网络中,节点还可以是一个语义子网络,弧是有方向的、有标注的。标注用来表示各种语义联系,指明它所连接的节点间的某种语义关系。
常见的类属关系:
- ISA (Is-a): 表示一个事物是另一个事物的实例。
- AKO (A-Kind-of): 表示一个事物是另一个事物的一种类型。
- AMO (A-Member-of): 表示一个事物是另一个事物的成员。
这里课本P148页图挺形象的。
语义网络表示知识的问题求解系统主要由两部分组成,一部分是由语义网络构成的知识库,另一部分是用于求解问题的推理机。
语义网络的推理有两种,一种是继承,另一种是匹配。
搜索技术
搜索方法主要有盲目搜索和启发式搜索。前者只会按照预先规定的搜索控制策略进行搜索,后者则会根据问题本身的特性或搜索过程中产生的一些信息来不断改变和调整搜索的方向。
盲目搜索
主要有广度优先搜索 (bfs) 和深度优先搜索 (dfs)。
详细见 OI-wiki。
启发式搜索
- A*算法
- 估价函数 \(f\) 是从起始节点 S 通过节点 n 到达目标节点的最小代价路径的一个估算代价,希望越大,f 越小。\(f(n) = g(n) + h(n)\),\(g(n)\) 是到目前为止搜索算法找到的从 S 到 n 的最小路径代价,\(h(n)\) 是依赖于有关问题的领域的启发信息。例子见课本八数码难题。
- 爬山算法
- 又称贪婪局部搜索算法,该算法每次都会从当前解的临近解空间中选择一个最优解并将其作为当前最优解,直到获得一个局部最优解。这个算法容易被卡!
- 模拟退火
- 模拟退火是对爬山算法的一个改进,相对于爬山算法,模拟退火解决没有找到最优解之前搜索就停止的办法是以一定概率选择这个封顶周围的地方,这样虽然不是局部最优解,但有一定概率找到更高的山峰。
蒙特卡思规划方法
将可能出现的状态转移过程用状态树建立并表示出来,并存储,主要有四个步骤:
- 选择
- 从根节点出发,直到找到一个当前最为紧迫的可扩展节点,这个节点是非停止状态且拥有未被访问过的子状态才可以被扩展。
- 扩展
- 添加一个或多个子节点(为没走过的路径设立新节点)。
- 模拟
- 根据默认的策略在扩展出来的一个或多个子节点上执行蒙特卡罗棋盘模拟,确定节点估计值。
- 回溯
- 根据模拟结果向上更新祖先节点的估计值,更新其状态。
知识图谱
知识图谱是一种描述客观世界的概念、实体、事件及其相互之间的关系的方法。知识图谱本质上就是一个大规模语义网络。
知识图谱与认知智能
知识图谱是实现认知智能的知识库,是认知智能机器人的大脑,这是知识图谱与认知智能的本质联系。
知识图谱可以实现机器认知智能的两个核心能力:“理解”和“解释”
知识图谱基本技术
知识图谱的基本单位就是 “实体-关系-实体” 构成的三元组,这就是知识图谱技术的核心。一般来说,知识图谱的原始数据类型包括结构化、半结构化、非结构化。大多数知识图谱用资源描述框架表示实体与实体的关系,关系有两类:属性关系、外部关系。
知识图谱的搭建
分为四个步骤:
- 数据获取
- 信息抽取,提取成“实体-关系-实体”三元组。
- 知识融合
- 知识加工
认知计算
认知计算是一种运用认知科学中的知识来构建能够模拟人类思维过程的系统方法。
第八章:语言智能
自然语言处理
语言理解的判别标准:
- 能成功回答语言材料中的相关问题
- 在给予大量材料之后,有产生摘要的能力
- 能够用自己的语言,即不同的词语来复述材料。
- 能将一种语言翻译为另一种语言
应用:
- 机器翻译
- 自动摘要
- 信息检索
- 文本分类
- 问答系统
- 信息过滤
- 信息抽取
- 文本挖掘
- 舆情分析
- 隐喻计算
- 文字编辑和自动校对
- 字符识别
- 语音识别
- 说话人识别、认证、验证
- 文语转换
- 自然语言生成
自然语言处理技术:
- 词法分析
- 包括词性、词汇两方面。
- 句法分析
- 基本方法有线图分析、短语结构分析、完全句法分析、局部句法分析、依存句法分析。
- 语义分析
- 语用分析
- 语境分析
- 简单句的理解方法
- 需要两项工作:
- 理解语句中的每一个词
- 以这些词为基础组成一个可以表达整个语句意义的结构。这项工作还有三个步骤:句法分析、语义分析、语用分析
- 需要两项工作:
语音识别
分类:
- 孤立和连续语音识别系统
- 特定人和非特定人语音识别系统
- 大词汇量和小词汇量语音识别系统
- 嵌入式和服务器模式语音识别系统
语音识别系统
一个完整的语音识别系统分为三部分:
- 语音特征提取
- 声学模型与模式匹配(隐马尔可夫模型是目前使用较为广泛的建模技术)
- 语音模型与语义理解
语音识别过程
语音识别其实就是模式识别匹配的过程。
语音识别系统一般有以下三种:
- 小词汇量的语音识别系统
- 中等词汇量的语音识别系统
- 大词汇量的语音识别系统
语音识别系统一般分为前端处理和后端处理,前段包括语音信号的输入、预处理、特征提取。后端分为训练和识别,训练包括模型评估、模型匹配、优化,识别是获得前端数据后对声学模型、语言模型、字典进行相似性度量匹配。
具体过程:计算机先根据人的语音特点建立语音模型,对输入的语音信号进行分析,并抽取所需要的特征,在此基础上建立语音识别所需要的模版;在识别过程中,计算机根据语音识别的整体模型,将计算机中已经存在的语音模版与输入的语音信号的特征进行比较,并根据一定的搜索和匹配策略找出一系列最优的、与输入语音匹配的模版,通过查表和判决算法给出识别结果。
声学模型是语音识别模型的底层模型,并且是语音识别系统中最关键的一部分。
第九章:机器人
机器人与行为智能
机器人的定义:一种可编程和多功能的,用来搬运材料、零件、工具的操作机,或是为了执行不同的任务而具有可改变和可编程动作的专门系统。
机器人的基本组成
- 机械系统
- 驱动系统
- 控制系统
- 感知系统
- 机器人——环境交互系统
- 人机交互系统
移动机器人
移动机器人按其移动方式的不同分为轮式移动机器人、履带式移动机器人、足式移动机器人和混合移动机器人等。

浙公网安备 33010602011771号