Photo by CC
前言
本文基于《机器学习》写就的笔记。
引言
在北方,有“八月十五云遮月,正月十五雪打灯”这样的俗语,为什么我们会对这样的自然现象总结出规律?以及为什么我们会在挑菜的时候,根据天气和菜的特性,选择不同的菜?
我们是基于经验的,经验是指我们在过去的时间里,遇到的各种情况和结果。
上面对经验的利用是靠我们人类自身完成的,计算机可以帮助我们从海量的数据中,提取出规律,这就是机器学习的基本原理。
机器学习的基本原理机器学习的基本原理是基于经验的利用,即从过去的经验中,提取出规律,从而预测未来的情况。
在计算机系统中,“经验”通常以数据的形式存在。因此,机器学习所研究的主要问题,是关于在计算机上从数据中产生模型(Model)的算法,即学习算法(Learning algorithm)。
简单来讲,其核心路径是:
在数学层面上,实际上就是在找一个映射函数(Mapping function):
- (输入空间,Input space):描述事物的各项指标(特征向量)。
- (输出空间,Output space):我们想要得到的结果(标签)。
- (模型,Model):从数据中学得的规律。
学习算法的任务,就是通过处理大量样本训练集 ,不断调整 的参数,使得对于未知的 , 也能给出准确的预测。
警惕:没有免费的午餐 (NFL)没有免费的午餐定理 (No Free Lunch Theorem) 告诉我们:
脱离具体问题去谈“哪个算法更好”是没有意义的。
如果一个算法在某些问题上表现极佳,那么它必然在另一些问题上表现不佳。
启示:学习算法必须与具体的应用场景(领域知识)相结合,“挑菜”的模型不一定能用来“预测天气”。
为了更好地理解这个数学框架,我们可以将生活经验与专业术语进行对照:
| 生活经验 | 机器学习术语 | 补充说明 |
|---|---|---|
| “中秋云遮月” | 属性 (Attribute/Feature) | 反映事物性质的特性 |
| “这一天的天气记录” | 示例 (Instance/Sample) | 一个具体的对象描述 |
| “得出结论:元宵会下雪” | 预测 (Prediction) | 通过模型得出的结果 |
| “事实:元宵下雪了” | 标签 (Label) | 结果的真实值 |
补充上面提及到了准确预测,学习的目标不是为了记住这捆子菜的细节(死记硬背/过拟合),而是为了在遇到下一捆从未见过的菜时,依然能准确判断(泛化)。
基本术语
多年以后,面对牛肉摊贩,陈孟欣(Mongxin Chan)准会回想起,他在那个湿漉漉的早市,试图用“西瓜书”的逻辑去解构一块“脖仁”的那个遥远的上午。
那时,潮州的市场还没被全自动智能分拣系统占领。摊位上的牛肉被切得飞薄,那是他第一次意识到,这满摊的红白相间,竟然就是一个完美的数据集。
站在那道足以分割世界的决策边界(Decision Boundary)前,我们每一次“识肉”的过程,本质上都是在进行一次模式识别(Pattern Recognition)。
2.1 核心概念映射
-
数据集 (Data Set) :
该摊位今天所有切片的集合,即 。
-
示例 (Instance) / 样本 (Sample) :
Mongxin 眼前那盘闪着油光的“脖仁”,是数据集中的一个具体成员。
-
属性 (Attribute) / 特征 (Feature):
Mongxin 观察牛肉的三个核心维度(维度 ):
- :颜色(鲜红 vs. 暗红)
- :纹路(雪花均匀度)
- :粘手度(挂盘不倒)
-
属性空间 (Attribute Space) :
由所有可能的颜色、纹路、粘度组合构成的三维欧几里得空间。
-
特征向量 (Feature Vector):
这块肉在坐标系里的具体位置。例如,当属性被数值化(如 1 代表优,0 代表差,约接近1的偏向于优,反之亦然)后:
代表了:一个在颜色、纹路、粘手度上均达到极致的“顶级样本”,在属性空间中处于最理想的坐标点。
-
标记 (Label) :
这块肉涮出来到底“嫩不嫩”。这是我们希望模型预测的目标。
- 样例 (Example):拥有了标记的肉,即 。
- 正例 (Positive Example):若 (嫩),代表这是一块符合预期的好肉。
- 反例 (Negative Example):若 (柴),代表分类错误或品质不佳。
那么什么样的牛肉很好呢?在机器学习的语境下,一个 “好肉”的正例 () 通常需要满足以下特征向量的极限取值:
- 颜色(Color) 鲜红且有光泽
- 特征值:。
- 物理含义:代表牛肉刚出屠宰场不到 4 小时,肌红蛋白尚未被氧化。在数据分布上,这是“温体牛”的核心聚类特征。
- 纹路(Texture) 大理石花纹(雪花)均匀分布
- 特征值:。
- 物理含义:脂肪与肌肉纤维交织。在模型中,这是一个高权重特征,直接决定了最终映射函数 输出的“嫩度”分值。
- 粘手度(Stickiness) 挂盘不倒
- 特征值:。
- 物理含义:这是潮州牛肉的“灵魂属性”。将盘子倾斜 90° 甚至倒扣,牛肉依然紧紧吸附。从特征提取的角度看,这是区分“注水肉/冷冻肉”与“顶级鲜肉”的决定性边界(Critical Boundary)。
结论:当特征向量 时,模型预测结果 会以极高的置信度(Confidence)告诉你:这就是那块值得排队两小时的脖仁。
假设空间
如果说“识肉”是一场修行,那么假设空间就是陈孟欣脑海中所有可能的“识肉规则”构成的汪洋大海。
学习的过程,本质上是在这个空间中进行搜索(Search)。
- 规则穷举:脑海中可能存在无数个假设 。
- :“只要粘盘子的肉,就是好肉。”
- :“色泽鲜红且纹路密集的肉,才是好肉。”
- :“老板姓陈,所以他家的肉肯定好。”(这显然是一个偏离真理的假设)
- 版本空间 (Version Space):当你观察了摊位上几盘被称为“顶级”的脖仁后,你会发现有些假设被事实“打脸”了。剩下那些与当前观察到的所有好肉数据都一致的假设,就构成了你的版本空间。
归纳偏好
如果版本空间里还有好几个规则都对,明天去买肉该信哪一个?
算法(或陈孟欣)必须有一套自己的“价值观”来做出抉择,这就是归纳偏好。
-
奥卡姆剃刀 (Occam’s Razor):这是机器学习中最著名的归纳偏好——“若无必要,勿增实体”。如果“粘盘子”这个简单的标准就能挑出好肉,那就没必要去背诵复杂的细胞学方程。我们偏好最简单的解释。
-
没有免费的午餐 (NFL 定理):这是一个令人沮丧但必须接受的真理。
它证明了:你挑菜的方法用到挑肉上是不合理的。
独立同分布假设我们的模型之所以能运行,通常假设训练样本(今天的肉)和测试样本(明天的肉)是独立同分布 (i.i.d.) 的。如果环境分布突变,经验便会失效。
发展历程
从“直觉识肉”到“智能选品”,机器学习经历了四个台阶:
- 推理期:基于逻辑。“既然是刚屠宰的,且没有注水,所以它是好肉。”
- 知识期:基于专家经验。老摊主传授给陈孟欣的那些“顺口溜”就是专家系统。
- 学习期:不再靠人教,靠数据喂。
- 符号主义:像决策树一样,一层层判断:颜色 纹路 粘度。
- 连接主义:模拟人脑神经元,通过多层感知。
- 统计学习:利用 SVM 在好肉与坏肉之间寻找那条完美的决策边界。
- 深度学习时代:现在的端到端模型,直接扫一眼牛肉照片(像素特征提取),自动给出“赏味建议”。
应用现状
如今,机器学习已不再局限于陈孟欣的笔记,它已是现代社会的底层逻辑:
- 视觉识别:屠宰场利用 CV 自动对胴体进行分级。
- 需求预测:利用回归模型预测明天潮州各大火锅店需要消耗多少头牛,减少浪费。
- 智能推荐:当你在 掘金/小红书 阅读这篇笔记,算法正试图计算你的偏好。
阅读材料
-
Mitchell (1997):《Machine Learning》。机器学习的第一本专门性教材。他给出了机器学习最经典的定义:通过经验 在任务 上提升性能 。
-
Duda et al. (2001):《Pattern Classification》。模式识别的圣经。教你如何从复杂的牛肉纹路中提取特征,完成最精准的分类。
-
Alpaydin (2014):《Introduction to Machine Learning》。非常适合作为入门后的第一本系统性读物,论述清晰且现代。
-
Flach (2012):《Machine Learning: The Art and Science of Algorithms that Make Sense of Data》。强调算法的“艺术性”,如果你想知道为什么某些模型对特定数据“情有独钟”,看这本。
-
Hastie et al. (2009):《The Elements of Statistical Learning (ESL)》。统计学习理论的巅峰之作。如果你想从数学底层证明为什么这块肉“粘盘子”是个强特征,这是你的必修课。
-
Bishop (2006):《Pattern Recognition and Machine Learning (PRML)》。贝叶斯流派的经典。它教你如何用概率的视角去看待那一摊牛肉——不存在绝对的嫩,只存在“极大概率是嫩的”后验分布。
-
Shalev-Shwartz and Ben-David (2014):《Understanding Machine Learning: From Theory to Algorithms》。侧重于计算学习理论,深度探讨“为什么模型能学到东西”的本质。
-
Witten et al. (2011):《Data Mining: Practical Machine Learning Tools and Techniques》。侧重实战与数据挖掘工具,适合想动手实现“挑肉系统”的开发者。
个人推荐以我的私心来看,我肯定会推荐Pattern Recognition and Machine Learning (PRML),其概率视角的解释对理解底层模型非常有益
致谢 / Acknowledgments
这篇笔记的诞生,不仅是我个人在机器学习海洋里的探索,更离不开两位伙伴的支持:
感谢 锋锋 在过去的两年多时间与我交流技术,切磋进步。关于模型应该如何训练的那些深夜探讨,是我不断迭代更新的由头之一。
感谢 CC 为本文提供的精美配图,你拍摄的镜头下的潮州美食,能让我,也让这篇关于“脖仁”与“特征向量”的讨论,有了最真实的视觉温度。
该专题下还有 4 篇相关笔记,点击继续探索: