本篇说明
什么是机器学习?
要定义一个宽泛的概念,就要抓住其本质的内容。机器学习所研究的是关于在计算机上从数据中产生 模型 的算法,即 学习算法 。可以说机器学习就是研究学习算法的一门学科。
基本术语
机器学习从根源上讲还是一门数学的学科,严谨的形式化语言对数学来说是必要的。为此我们先定义机器学习中的基本术语和表示方法,为之后的理论推导做下符号基础:
- 样本/示例:一个事物或对象的描述的单条数据。
- 数据集:由若干样本组成的数据集合。
- 属性/特征:反映事物或对象在某方面的表现或性质的事项。
- 属性值/特征值:属性/特征上的取值。
- 属性空间/样本空间/输入空间:由属性张成的多维空间,其中多维空间中的每一个点代表一个样本。
- 特征向量:属性空间中每一个样本点所对应的坐标向量。
- 学习/训练:通过某一学习算法从数据中学得模型的过程。
- 训练样本:训练过程中使用数据中的每一个样本。
- 训练数据集:训练过程中使用的数据样本集合。
- 测试样本:使用模型进行预测时的单条样本。
- 假设:模型从数据上学习得到的关于数据的某种潜在的规律。
- 假设空间:由所有可能学习到的规律组成的假设组成的集合。
- 版本空间:多个或一个与训练集一致的假设组成的集合。
- 真相:真实数据的潜在规律本身。
- 标记:样本对应的结果信息。
- 样例:带有标签信息的示例。
- 标记空间/输出空间:由所有标记组成的集合。
- 分类:最终我们需要模型预测离散值的学习任务。
- 二分类:只涉及到两个类别的分类,其中两个分别叫正类和负类。
- 多分类:涉及到多个类别的分类。
- 回归:最终我们需要模型预测连续值的学习任务。
- 有监督学习:通过对由样例组成的数据集学习,建立从输入空间到输出空间映射的学习任务。
- 无监督学习:从不含有标记信息的数据集本身学习得一些模型的学习任务,例如聚类、降维。
- 泛化能力:学得模型适用于新样本的能力。
- 独立同分布(i.i.d.):我们通常假设样本空间中的全体样本服从一个未知“分布” ,同时我们获得的每一个样本都是独立地从这个分布中采样获得的。
其形式化描述为: 数据集 中包含 个样本,每一个样本由 个属性描述 ,是样本空间 中的一个向量 。其中 是 在第 个属性上的取值, 称为 的维数。而对于由样例组成的数据集是 ,其中 是 的标记, 是标记空间。
归纳偏好
归纳是从特殊到一般的“泛化”过程,“从样例中学习”又称为“归纳学习”。事实上,通过学习得到的模型对应了假设空间中的一个假设,但是版本空间的存在可能使得多个假设都在一定程度上满足。那么我们应该选取什么样的模型呢?
数据 -> 学习算法 -> 模型的过程要求了必须要产生一个模型,这时其中的学习算法起到了关键作用。学习算法本身具有一定的 偏好 ,即对某种类型的假设偏好,称为 “归纳偏好” 。
Tip
任何一个有效的机器学习算法必有其归纳偏好。 例如: 1.在线性回归中我们认为数据满足简单的线性关系。 2.在决策树中我们认为简单、短、浅的树更好。 3.在CNN中我们认为像素的关系具有局部性、特征具有平移不变性、池化的平稳性。
在众多的假设中,”奥卡姆剃刀“ 原则为我们提供了一种选择的策略:”若有多个假设与观察一致,则选择最简单的那个“。
没有免费的午餐(NFL定理)
在所有”问题“出现的概率机会相同、或所有的问题等同重要的情况下,无论学习算法多聪明或多笨拙,它们的期望性能相同。 这让我们认识到:脱离具体问题,空泛地谈论”什么学习算法更好“毫无意义。
结语