人工智能是一个领域,是一个目标,而机器学习是实现这一目标的一类方法,深度学习只是机器学习这一类方法中的一种。
使一部机器像人一样进行感知、认知、决策、执行的人工程序或系统。
知识工程vs机器学习
知识工程:
机器学习:
最常用定义:计算机系统能够利用经验提高自身的性能
可操作定义:机器学习本质是一个基于经验数据的函数估计问题
统计学定义:提取重要模式、趋势,并理解数据,即从数据中学习
总之,机器学习就是一个从数据中自动提取知识的方法。
(1)模型
对要学习问题映射的假设(问题建模,确定假设空间)
模型分类:
根据数据标记,分为监督学习模型、半监督学习模型、无监督学习模型、强化学习模型。
根据数据分布,分为参数模型和非参数模型。
根据建模对象,分为判别模型和生成模型。
a.监督学习模型:监督学习的样本具有标记,监督学习从数据中学习标记分界面(输入-输出的映射函数),适用于预测数据标记。
b.无监督学习模型:无监督学习的样本没有标记,从数据中学习模式,适用于描述数据。
c.半监督学习模型:部分数据标记已知,适用于标记样本难以获取、无标记样本相对廉价,未标记样本与标记样本独立同分布的情况。
d.强化学习模型:数据标记未知,但知道与输出目标相关的反馈,适用于决策类问题。
e.参数模型:对数据分布进行假设,待求解的数据模式或映射可以用一组有限且固定数目的参数进行刻画。(线性回归、逻辑回归、感知机、K均值聚类)
f.非参数模型:不对数据分布进行假设,数据的所有统计特性都来源于数据本身。(K近邻、SVM、决策树、随机森林)
参数模型 | 非参数模型 | |
优点 | 数据需求少、训练快速 | 对数据适应性强,可拟合不同的函数形式 |
缺点 | 模型复杂度有限,与真实目标函数拟合度小 | 数据需求大、容易过拟合 |
g.判别模型:对已知输入X条件下输出Y的条件分布P(Y|X)建模,直接学习P(Y|X)。
h.生成模型:对输入X和输出Y的联合分布P(X,Y)建模,先从数据中学习联合概率分布,再利用贝叶斯公式求条件概率分布。
(2)策略
从假设空间中学习/选择最优模型的准则(确定目标函数)
(3)算法
根据目标函数求解最优模型的具体计算方法(求解模型参数)
(1)算法输出不稳定,容易被“攻击”;
(2)模型复杂度高,难以纠错和调试;
(3)模型层级复合程度高,参数不透明;
(4)端到端训练方式对数据依赖性强,模型增量性差;
(5)专注直观感知类问题,对开放性推理问题无能为力;
(6)人类知识无法有效引入进行监督,机器偏见难以避免。
激活函数表示的是神经元继续传递信息,产生新连接的概率(超过阈值被激活,但不一定传递)。
没有激活函数相当于矩阵相乘,多层神经网络与一层神经网络一样,只能拟合线性函数。
激活函数举例:
如果一个隐层包含足够多的神经元,三层前馈神经网络(输入-隐层-输出)能以任意精度逼近任意预定的连续函数。
线性分类任务组合后可以解决非线性分类任务。
当隐层足够宽时,双隐层感知器(输入-隐层1-隐层2-输出)可以逼近任意非连续函数:可以解决任何复杂的分类问题。
神经网络学习如何利用矩阵的线性变换加激活函数的非线性变换,将原始输入空间投影到线性可分的空间去分类/回归。
增加节点数:增加维度,即增加线性转换能力。
增加层数:增加激活函数的次数,即增加非线性转换次数。
那么对于同一问题应该选择更宽的网络还是更深的网络呢?
在神经元总数相当的情况下,增加网络深度可以比增加宽度带来更强的网络表示能力:产生更多的线性区域。深度和宽度对函数复杂度的贡献是不同的,深度的贡献是指数增长的,而宽度的贡献是线性的。
(1)误差反向传播
(2)梯度和梯度下降
梯度:多元函数f(x,y)在每个点可以有多个方向,每个方向都可以计算导数,称为方向导数。梯度是一个向量,方向是最大方向导数的方向,模为方向导数的最大值。
(3)梯度消失
增加深度会造成梯度消失,误差无法传播;
多层网络容易陷入局部极值,难以训练;
预训练、新激活函数使深度成为可能。
没有新的激活函数、没有dropout等优化技术下,逐层无监督预训练使得深度网络的训练有了可能,但是逐层预训练无法本质上解决梯度消失的问题。