一.人工智能与机器学习
人工智能发展历程:
人工智能从1956年正式成为一个学科(达特茅斯会议) 机器学习是人工智能的核心研究领域(之一)
二.什么是机器学习?
就是利用经验改善系统自身的性能。如果把P用来评估计算机程序在某任务类T上的性能,若一个程序通过利用经验E在T中任务上获得了性能改善,则我们就说关于T和P,该程序对E进行了学习。
机器学习致力于研究如何通过计算的手段,利用经验来改善 系统自身的性能,从而在计算机上从数据中产生"模型", 用于对新的情况给出判断。
**经典的机器学习算法过程:**通过使用学习算法从训练数据中训练模型学习通过特征判定类别的经验规律,然后让模型对新的数据样本的类别进行判别。
注意机器学习并非"一切皆可学",比如要看训练数据的样本够不够,重要特征信息有没有获得,标记信息够不够。
机器学习有坚实的理论基础,最重要的理论模型: PAC(Probably Approximately Correct, 概率近似正确)

三.基本术语
通过一个贯穿始终的例子------根据水果的颜色、重量等特征识别水果种类,介绍机器学习中常见的 17 个基本术语。
一、学习方式
1. 监督学习与无监督学习
监督学习(Supervised Learning)
监督学习是指训练数据中不仅包含输入信息,还包含对应的正确答案,即标记(Label)。
例如,我们向计算机提供以下数据:
| 颜色 | 重量 | 正确类别 |
|---|---|---|
| 红色 | 180g | 苹果 |
| 橙色 | 160g | 橙子 |
| 绿色 | 150g | 苹果 |
| 橙色 | 200g | 橙子 |
计算机通过这些带有正确答案的数据,学习水果特征与类别之间的关系。
当出现一颗新的水果时,模型就可以根据它的特征预测类别。
无监督学习(Unsupervised Learning)
无监督学习则不同,训练数据中没有提供正确的类别标记。
例如,我们向计算机提供 100 颗水果的颜色、重量等数据,却不告诉它哪些是苹果、哪些是橙子。
计算机可能通过聚类算法将这些水果分成不同的组:
-
第一组:颜色偏红、重量集中在某些范围。
-
第二组:颜色偏橙、重量集中在另一些范围。
需要注意的是,计算机并不知道这些组对应苹果还是橙子,它只是发现了数据之间的某种结构。
简单理解:监督学习是带着答案学习,无监督学习是自己寻找规律。
2. 数据集、训练与测试
数据集(Dataset)
数据集是用于机器学习的一组数据。
例如,我们收集了 1000 颗水果的信息,包括颜色、重量、直径及种类。
这 1000 条记录就组成了一个数据集。
训练(Training)
训练是指利用数据调整模型参数,使模型逐渐掌握输入与输出之间的规律。
例如,从 1000 条水果记录中取出 800 条,交给学习算法进行训练。
测试(Testing)
测试是指利用未参与训练的数据,评估训练完成的模型。
例如,使用剩余的 200 条水果记录进行测试,观察模型能够正确识别多少颗水果。
假设模型正确识别了 190 颗,那么测试准确率为:
Accuracy=190/200=95%
需要注意,实际机器学习中还可能使用验证集(Validation Set),用于模型选择和超参数调整。
二、数据与特征
3. 示例、样例与样本
示例(Example)、样例和样本(Sample)在机器学习的基础语境中通常可以视为近义词。
它们都可以表示数据集中的一条具体记录。
例如:
| 颜色 | 重量 | 类别 |
|---|---|---|
| 红色 | 180g | 苹果 |
这就是一个样本。
其中:
-
输入信息:红色、180g。
-
正确标记:苹果。
如果使用数学符号表示,可以写为:
(x,y)=((红色,180),苹果)
这里的 x 表示输入,y 表示正确答案。
4. 属性、特征与属性值
属性(Attribute)和特征(Feature)通常用来描述数据对象的某一方面。
属性值(Attribute Value)则是该属性的具体取值。
例如,一颗苹果具有以下信息:
| 属性(特征) | 属性值 |
|---|---|
| 颜色 | 红色 |
| 重量 | 180g |
| 直径 | 8cm |
| 甜度 | 12 |
其中:
-
"重量"是属性。
-
"180g"是属性值。
-
"颜色"是属性。
-
"红色"是属性值。
简单理解:属性回答的是"从哪个方面描述",属性值回答的是"具体是什么"。
5. 属性空间、样本空间与输入空间
属性空间(Attribute Space)、样本空间(Sample Space)和输入空间(Input Space)在基础机器学习教材中通常用来描述样本所有可能的输入特征组合构成的空间。
但需要注意,"样本空间"在概率论中还有专门含义,即随机试验所有可能结果构成的集合,具体使用时需要结合上下文区分。
假设我们只使用两个特征描述水果:
-
重量:100~300g。
-
直径:5~12cm。
那么每颗水果都可以表示为二维空间中的一个点。
例如:
x=(180,8)
表示一颗重量为 180g、直径为 8cm 的水果。
如果有三个数值特征,就可以构成三维空间。
如果有 n 个数值特征,就可以构成 n 维空间。
因此,机器学习中的样本不仅仅是一条记录,也可以理解为特征空间中的一个点。
6. 特征向量
特征向量(Feature Vector)是将一个样本的多个特征按照固定顺序组织起来得到的向量。
例如,一颗水果具有以下特征:
-
重量:180g。
-
直径:8cm。
-
甜度:12。
可以表示为:

这是一个三维特征向量。
在机器学习中,特征向量是非常重要的数据表示方式。
我们可以把每个样本看成特征空间中的一个点,然后利用数学方法研究这些点之间的关系。
这也是机器学习与线性代数密切相关的原因之一。
7. 标记空间与输出空间
标记空间(Label Space)是所有可能的正确标记构成的集合。
输出空间(Output Space)是模型可能输出的结果构成的集合。
在许多基础分类问题中,两者可以对应同一个集合。
例如,水果分类任务:
Y={苹果,橙子}
这意味着模型需要判断输入的水果属于苹果还是橙子。
如果任务改为预测水果重量,那么输出就不再是离散类别,而是连续数值。
例如:

表示输出可以是实数。
实际应用中,也可以根据具体任务将输出限制在某个数值区间。
三、学习算法与模型
8. 假设
假设(Hypothesis)是机器学习中用于描述输入与输出关系的候选函数。
例如,我们提出一个简单的水果分类规则:

这就是一个假设。
但是这个假设不一定正确。
例如,一颗绿色苹果就可能被错误地判断为橙子。
机器学习算法通常需要从许多可能的假设中,寻找一个适合训练数据、并希望能够推广到新数据上的假设。
这些候选假设构成的集合称为假设空间(Hypothesis Space)。
9. 真相
真相(Ground Truth)通常指实际的正确答案,或者数据中被作为正确参考的标记。
例如:
一颗水果实际上是苹果,但模型预测它是橙子。
那么:
-
真相:苹果。
-
预测结果:橙子。
模型预测与真相不同,就发生了预测错误。
需要注意,在实际数据集中,人工标注的答案本身也可能有误,因此数据标记并不总是绝对正确。
10. 学习器
学习器(Learner)是指能够通过训练数据学习模型的算法。
例如,决策树学习算法可以分析水果的颜色、重量、直径等特征,自动生成一棵用于分类的决策树。
这里需要区分两个概念:
学习器是负责学习的算法,模型是学习完成后得到的结果。
例如:
-
学习器:决策树训练算法。
-
模型:训练完成后的具体决策树。
类似地,线性回归算法可以根据训练样本求出相应的模型参数。
四、机器学习任务
11. 分类与回归
机器学习中的监督学习任务,常见的有分类和回归两种。
分类(Classification)
分类是指预测数据所属的离散类别。
例如,根据水果特征判断:

最终输出的是一个类别。
回归(Regression)
回归是指预测连续数值。
例如,根据水果的直径预测重量。
假设我们建立了一个简单的线性模型:

其中:
-
x 表示水果直径,单位为 cm。
-
表示预测重量,单位为 g。
如果水果直径为 8cm,则:

模型预测水果的重量为 170g。
这里的公式仅用于演示,并不代表真实水果的重量规律。
简单理解:分类预测"属于哪一类",回归预测"具体是多少"。
12. 二分类与多分类
二分类(Binary Classification)
二分类是指只有两个目标类别的分类任务。
例如:
Y={苹果,橙子}
模型只需要判断水果是苹果还是橙子。
多分类(Multiclass Classification)
多分类是指存在三个或更多目标类别的分类任务。
例如:
Y={苹果,橙子,香蕉,梨}
模型需要从多个类别中选择一个。
13. 正类与反类
在二分类问题中,通常会根据任务目标指定正类和反类(也称负类)。
例如,我们需要判断某颗水果是不是苹果。
可以规定:
-
正类(Positive):苹果。
-
反类(Negative):不是苹果。
使用数字表示:

需要注意:
正类不代表好的事物,反类也不代表坏的事物。
例如,在疾病检测任务中,通常可以把患病定义为正类,将未患病定义为负类。
正类和反类只是根据问题需要进行的类别划分。
五、数据分布与泛化能力
14. 未见样本
未见样本(Unseen Sample)是指模型在训练过程中没有接触过的样本。
例如,我们利用 800 颗水果的数据训练了分类模型。
训练结束后,拿来一颗新的水果:
-
颜色:绿色。
-
重量:170g。
-
实际类别:苹果。
如果这条记录没有在训练中出现过,那么它就是一个未见样本。
机器学习真正希望实现的,并不是单纯记住训练数据,而是正确处理未见样本。
15. 未知分布
机器学习通常假设现实数据来自某个概率分布,但我们并不知道这个分布的精确形式。
例如,在某个水果市场中:
-
苹果出现的概率可能为 60%。
-
橙子出现的概率可能为 40%。
-
苹果的重量可能集中在某些数值范围。
-
橙子的重量也可能具有自己的概率规律。
这些规律共同构成了数据的概率分布。
通常可以使用 D 表示未知的数据分布。
例如:

表示随机变量 X 服从分布 D。
对于监督学习,更完整的描述通常涉及输入与标记的联合分布:

我们无法直接掌握真实世界所有数据的精确规律,因此需要通过有限样本学习。
16. 独立同分布
独立同分布(Independent and Identically Distributed,简称 i.i.d.)是概率论与机器学习中的重要概念。
它包含两个条件。
(1)独立(Independent)
不同样本的产生相互独立。
例如,我们采用有放回的随机抽样方式,每次从同一个水果总体中抽取一颗水果。
第一次抽到苹果,不会影响第二次抽到苹果的概率。
(2)同分布(Identically Distributed)
所有样本都遵循相同的概率分布。
例如,每次都按照相同的随机抽样规则,从同一个稳定的水果总体中抽取水果。
数学上可以表示为:

它表示这些随机样本相互独立,并且都服从同一个概率分布 D。
这里需要注意:
同分布不代表样本的具体数值相同,而是指产生这些样本的概率规律相同。
例如,第一次抽到 180g 的苹果,第二次抽到 200g 的橙子,完全不妨碍它们来自相同的数据分布。
17. 泛化
泛化(Generalization)是机器学习最重要的概念之一。
它指的是模型将在训练数据中学到的规律应用到未见样本上的能力。
例如,有两个水果分类模型:
| 模型 | 训练集准确率 | 测试集准确率 |
|---|---|---|
| 模型 A | 100% | 60% |
| 模型 B | 95% | 94% |
模型 A 在训练数据中全部判断正确,但面对新数据时,准确率明显下降。
模型 B 虽然没有完全记住训练数据,但在测试集上依然取得了较好的表现。
如果测试集足够独立、具有代表性,那么我们通常会认为模型 B 具有更好的泛化表现。
这也引出了一个重要问题:过拟合(Overfitting)。
过拟合是指模型过度适应训练数据中的细节甚至噪声,导致其在新数据上表现较差。
因此,机器学习的目标并不只是让训练误差尽可能小,更重要的是使模型具有良好的泛化能力。
四.假设空间与版本空间
假设空间:学习过程 ->在所有假设(hypothesis)组成的空间中进行搜索的过程
目标: 找到与训练集"匹配"(fit)的假设
假设空间大小求法:

版本空间:与训练集一致的假设集合
五.归纳偏好
机器学习算法在学习过程中对某种类型假设的偏好
一般原则: 奥卡姆剃刀(Occam's razor) :"若有多个假设与观察一致,选最简单的那个"
任何一个有效的机器学习算法必有其偏好
学习算法的归纳偏好是否与问题本身匹配, 大多数时候直接决定了算法能否取得好的性能!


假设我们要判断水果是不是苹果,有两种算法:
-
算法 A:根据颜色判断。
-
算法 B:根据重量判断。
在某个水果数据集中,颜色与水果种类高度相关,所以算法 A 表现更好。
但如果换一个数据集,颜色与类别没有明显关系,而重量与类别高度相关,那么算法 B 就可能表现更好。
如果把所有可能的分类规律都考虑进去,并且赋予相同权重,两种算法在未见样本上的平均表现就相同。





NFL定理的重要前提: 所有"问题"出现的机会相同、或所有问题同等重要 实际情形并非如此;我们通常只关注自己正在试图解决的问题 脱离具体问题,空泛地谈论"什么学习算法更好" 毫无意义 !
六.应用现状
最优方案往往来自:按需设计、度身定制
常见应用:文本分类,图像分类,生成任务等等