机器学习
概论
人工智能完成日常生活中的任务(Formal tasks, Expert tasks, Mundane tasks, Human tasks)所要做的工作是:
- 感知环境
- 特征提取
- 机器学习
- 推理
- 采取行动
*机器学习只是人工智能的一个子集,而深度学习又是机器学习的一个子集,或者说,是机器学习中神经网络的一种延伸。
观察人工智能发展的四个阶段:
- 初期阶段
- 通用问题求解、机器翻译、定理证明、博弈、游戏
- 知识时代
- 专家系统、知识工程、知识表示、(不确定性)推理
- 特征时代
- 统计机器学习方法、优化技术、特征映射(浅层)、特征工程
- 数据时代
- 深度学习、表示学习、自动特征抽取、不同层次的抽象特征、抽象映射(深层)
在初期阶段,输入和输出之间,程序是由人来实现的,计算机只是作为一个执行者。
到了特征时代,输入输出间,特征是人为提供的,但是特征映射是由机器自动实现的。
而在数据时代,输入输出间,特征、特征分析、特征映射完全都由机器自己实现,人为介入的成分越来越少。
传统机器学习和深度学习对比:
传统的机器学习中,特征提取和分类是分成两个步骤分别实现的。
而在深度学习下,原有的两部分合二为一。对深度神经网络给出输出,可以直接得到结果。
深度神经网络的性能:
研究表明,随着数据量的增大,深度神经网络的性能会越来越好。在数据规模较小的时候,传统算法(如决策树等)和神经网络的性能相差无几。数据规模变大后,深度神经网络的性能要明显优于传统算法。对于神经网络而言,其规模越大,对于大数据的处理性能越好。
分类
机器学习很有多种分类标准,最常见的一种,将机器学习分为三类:
- 有监督学习(Supervised Learning):给定带标签的数据,让机器学习。
- 无监督学习(Unsupervised Learning):给定无标签的数据,让机器学习数据的内在特征。
- 强化学习(Reinforcement Learning):使得机器选择最大化收益。
对上述三类学习,Yann Lecun提出了两版“学习蛋糕”模型。第一版中将“纯”强化学习比作蛋糕上点缀的樱桃,监督学习比作蛋糕外的一层奶油,无监督学习比作蛋糕中间的糕体。第二版中则将无监督学习替换成了自监督学习。
自监督学习:通过输入的一部分来预测剩下(输入以外)的部分
- 从过去预测将来
- 从最近的过去预测将来
- 从现在预测(倒推)过去
- 从底部预测顶部
- 从可见的部分预测不可见的部分
数据驱动的机器学习方法:有监督学习的过程
- 收集数据集和标签
- 设计并且训练模型
- 用测试集评估模型
数据分类:结构化数据 vs. 非结构化数据
- 结构化数据:如房价预测
- 非结构化数据:图像、音频等
回归(Regression) vs. 分类(Classification)的区分方法:
- 回归:输出是连续的(如房屋价格预测)
- 分类:输出是离散的(如图像分类)
有监督学习的基本框架:
这样一个模型实质是为了建立一个输入输出之间的关系,可以将其描述为 y = f ( x ) y=f(x) y=f(x),其中 y y y是输出, f f f是预测函数, x x x是输入。
这样,训练(或学习)就是指:给定带标签的训练集 { ( x 1 , y 1 ) , ⋯ , ( x N , y N ) } \{(x_1,y_1),\cdots,(x_N,y_N)\} { (x1,y1),⋯,(xN,yN)},实例化一个预测函数 f f f。测试(或推理)就是指:将 f f f作用于一个新的测试样例 x x x上,并得到输出的预测值 y = f ( x ) y=f(x) y=f(x)。
那么,训练数据和测试数据之间又有什么联系呢?- 将问题形式化:
给定训练数据 { ( x i , y i ) , i = 1 , ⋯ , n } i . i . d . \{(x_i,y_i),i=1,\cdots,n\}\quad \mathrm{i.i.d.} { (xi,yi),i=1,⋯,n}i.i.d.来自同一分布 D D D
找到 y = f ( x ) ∈ H y=f(x)\in \mathscr{H} y=f(x)∈H
s . t . f \mathrm{s.t.}\quad f s.t.f能在测试集( i . i . d . \mathrm{i.i.d.} i