第1章 绪论
1.1 引言
机器学习所研究的主要内容,是关于在计算机上从数据中产生"模型"(model)的算法,即"学习算法"(learning algorithm)。有了学习算法,我们把经验数据提供给它,它就能基于这些数据产生模型;在面对新的情况时,模型会给我们提供相应的判断。
1.2 基本术语
术语 | 解释 |
---|---|
示例 / 样本(instance / sample) | 关于一个事件或对象的描述 |
数据集(data set) | 示例或样本的集合 |
属性 / 特征(attribute / feature) | 反映事件或对象在某方面的表现或性质的事项 |
属性值 (attribute value) | 属性上的取值 |
属性空间 / 样本空间 / 输入空间 (attribute space / sample space) | 属性张成的空间 |
特征向量(feature vector) | 空间中的每个点对应的坐标向量 (示例的别称) |
维数(dimensionality) | 描述示例的属性个数 |
学习 / 训练(learning / training) | 从数据中学得模型的过程 |
训练数据(training data) | 训练过程中使用的数据 |
训练样本(training sample) | 训练数据中的每一个样本 |
训练集(training set) | 训练样本组成的集合 |
假设(hypothesis) | 学得模型对应了关于数据的某种潜在的规律 |
真相 / 真实(ground-truth) | 潜在规律自身 |
学习器(learner) | 学习算法在给定数据和参数空间上的实例化 (模型的别称) |
标记(label) | 关于示例结果的信息 |
样例(example) | 拥有标记信息的示例 |
标记空间 / 输出空间(label space) | 所有标记得集合 |
分类(classification) | 欲预测的是离散值的学习任务, 监督学习的代表 |
回归(regression) | 欲预测的是连续值的学习任务, 监督学习的代表 |
二分类(binary classification) | 只涉及两个类别的分类任务 |
多分类(multi-class classification) | 涉及多个类别的分类任务 |
正类(positive class) | 二分类中的一个类 |
反类(negative class) | 二分类中的另一个类 |
测试(testing) | 使用学得模型进行预测的过程 |
测试样本 / 测试示例 / 测试例(testing sample) | 被预测的样本 |
聚类(clustering) | 将训练集中的数据分成若干组, 无监督学习的代表 |
簇(cluster) | 训练集中的每个组 |
监督学习(supervised learning) | 训练数据拥有标记信息的学习任务 |
无监督学习(unsupervised learning) | 训练数据没有标记信息的学习任务 |
泛化(generalization)能力 | 学得模型适用于新样本的能力 |
独立同分布(independent and identically distributed) | 假设样本空间中全体样本服从一个未知分布, 我们的每个样本独立地从这个分布上采样获得 |
1.3 假设空间
- 归纳(induction) 从特殊到一般的“泛化”(generalization)过程,即从具体的事实归结出一般性规律;
- 演绎(deduction) 从一般到特殊的“特化”(specialization)过程,即从基础原理推演出具体状况。
- 归纳学习(inductive learning) 从样例中学习(广义的归纳学习)。
- 概念学习 / 概念形成 从训练数据中学得概念(concept)(狭义的归纳学习)。
我们可以把学习过程看作一个在所有假设(hypothesis)组成的空间中进行搜索的过程,搜索目标是找到与训练集“匹配”(fit)的假设。假设的表示一旦确定,假设空间及其规模大小就确定了。
可以有许多策略对假设空间进行搜索,如自顶向下、从一般到特殊,或是自底向上、从特殊到一般,搜索过程中不断删除与正例不一致的假设、和(或)与反例一致的假设,最终获得与训练集一致(即对所有训练样本能够进行正确判断)的假设,这就是我们学得的结果。
- 版本空间(version space) 与训练集一致的多个假设的集合。
1.4 归纳偏好
- 归纳偏好(inductive bias,简称偏好) 机器学习算法在学习过程中对某种类型假设的偏好,可看作学习算法自身在一个可能很庞大的假设空间中对假设进行选择的启发式或“价值观”。
- 奥卡姆剃刀(Occam’s razor) 一种常用的、自然科学研究中最基本的原则,即“若有多个假设与观察一致,则选最简单的那个”。
- “没有免费的午餐”定理(No Free Lunch Theorem,简称NFL定理) 无论学习算法a多聪明、学习算法b多笨拙,它们的期望性能相同。
很明显,脱离具体问题来谈论算法的优劣性毫无意义。学习算法自身的归纳偏好与问题是否相配,往往起到决定性作用。
1.5 发展历程
时间 | 发展概况 | 代表性工作 |
---|---|---|
1950年 | —— | 图灵在关于图灵测试的文章中,提到了机器学习的可能 |
二十世纪五十年代初 | 已有机器学习的相关研究 | A.Samuel著名的跳棋程序 |
五十年代中后期 | 基于神经网络的“连接主义” (connectionism)学习开始出现 | F.Rosenblatt的感知机(Perceptron)、B.Widrow的Adaline等 |
六七十年代 | 基于逻辑表示的“符号主义” (symbolism)学习技术蓬勃发展 | P.Winston的“结构学习系统”、R.S.Michalski等人的 “基于逻辑的归纳学习系统”、E.B.Hunt等人的“概念学习系统”等 |
六七十年代 | 以决策理论为基础的学习技术以及 强化学习技术等也得到发展 | N.J.Nilson的“学习机器”等 |
八十年代 | 机器学习成为一个独立的学科领域、 各种机器学习技术百花初绽 | 《策略分析与信息系统》连出三期机器学习专辑、 Machine Learning创刊等 |
八十年代以来 | 被研究最多、应用最广的是“从样例中学习” (即广义的归纳学习) | —— |
时间 | 发展概况 | 代表 |
---|---|---|
二十世纪八十年代 | 一大主流是符号主义学习 | 决策树(decision tree)和基于逻辑的学习 |
二十世纪九十年代中期之前 | 另一主流技术是基于神经网络的连接主义学习 | D.E.Rumelhart等人重新发明了BP算法 |
二十世纪九十年代中期 | “统计学习”(statistical learning) 闪亮登场并迅速占据主流舞台 | 支持向量机(Support Vector Machine,简称SVM) 以及更一般的“核方法”(kernel methods) |
二十一世纪初 | 连接主义学习卷土重来,掀起以“深度学习”为名的热潮 | —— |
1.6 应用现状
- 计算机科学的诸多分支学科领域
多媒体、图形学、网络通信、软件工程、体系结构、芯片设计等,尤其是计算机视觉、自然语言处理等; - 为许多交叉学科提供重要技术支撑
生物信息学的研究、基因组计划的实施以及基因药物的研发等; - 人类社会的政治生活
如2012年美国大选期间,奥巴马麾下的机器学习团队为他提示竞选行动; - 生活中的方方面面
天气预报、能源勘探、环境监测、搜索引擎、自动驾驶汽车等; - ……