机器学习 西瓜书
周志华
个人学习笔记
0 导学
关于它们的关系:
- CV、NLP和RS都可以使用机器学习和深度学习来改进其性能和准确度。
- 深度学习特别适合处理复杂的视觉和语言数据,因此在CV和NLP中广泛应用。
- 推荐系统可以使用机器学习技术来建模用户行为和物品特征,深度学习方法可以改进推荐系统的特征提取和个性化建模能力。
1 绪论
1.1 基本术语
1.1.1 样本/示例
- 是关于⼀个事件或对象的描述
- 向量中的各个维度称为特征或者属性
- 向量中的元素⽤分号分隔时表示此向量为列向量,⽤逗号分隔时表示为⾏向量
Eg.
⼀个⾊泽⻘绿,根蒂蜷缩,敲声清脆的⻄⽠⽤向量来表示即为
X = ( 青 绿 ;蜷 缩 ;清 脆 )
特征工程:属性值数字化
样本/输入/属性空间:样本的特征向量所在的空间,花式大写 X 表示
1.1.2 标记
- 学习样本在某个⽅⾯的表现是否存在潜在的规律(机器学习的本质),这方面的信息称为标记
- 标记通常也看作为样本的⼀部分,因此,⼀个完整的样本通常表示为(x ,y)
Eg.
⼀条⻄⽠样本: x = (青 绿 ;蜷 缩; 清 脆)y = 好 ⽠
标记/输出空间: 花式大写 Y 表示
标记取值类型:
(1) 离散型
分类 二分类 ,大致可以为正反类
Eg.
西瓜分为 “好瓜” 和 “坏瓜”
(2) 连续型
回归 预测,标记通常只有取值范围
Eg.
预测西瓜的成熟度
根据是否有⽤到标记信息,可将机器学习任务分为以下两类:
(1)模型训练有用到标记信息,监督学习
(2)反之,无监督学习
1.1.3 数据集
样本的集合,D={X1, X2, … , Xm}
1.1.4 模型
- 分为 测试样本 和 训练样本
- 同⼀个机器学习算法,使⽤不同的参数配置或者不同的训练集,训练得到的模型通常都不同
1.1.5 泛化
预估得是否准确的能力
1.1.6 分布
概率分布,收集到的样本越多越能反推出样本空间服从的未知“分布”D
补充:
数据(数据量/特征工程)决定模型的上限,⽽算法则是让模型⽆限逼近上限
2 模型评估与选择
2.1 经验误差与过拟合
错误率 E = 错误样本分布/总样本
精度 = 1 - E
误差(学习器的实际预计输出和真实输出之间的差异)
(1)学习器在训练集上的误差:训练误差
(2)在新样本上的误差:泛化误差
过拟合:训练样本学得太“好”了,把训练样本自身的一些特点当作所有潜在样本都会具有的一般性质
欠拟合:训练样本的一般性质尚未学好
Eg.
2.2 评估方法
2.2.1 留出法
将数据集D分成两个互斥集合,训练集S,测试集T
D = S ∪ T S ∩ T = ϕ \begin{aligned} D=S\cup T \\ S\cap T = \phi \end{aligned} D=S∪TS∩T=ϕ
S、T样本分类 ⇒ \Rightarrow ⇒ 分层采样,训练占比:2/3 ~ 4/5
2.2.2 (K折)交叉验证法
假定 D 中包含m个训练样本,当m=k时,为留一法(LOO,交叉验证法特例)
- 优点: 预估更为准确
- 缺点: 训练量大(m次)
2.2.3 自助法
从D中任意抽取m次样本构成数据集D’
m始终不被抽中的概率为 ( 1 − 1 / m ) m {(1-1/m)}^m (1−1/m)m
去极限得到
lim m → ∞ ( 1 − 1 m ) m ↦ 1 e ≈ 0.368 \lim_{m \to \infty}(1-\frac{1}{m} )^m \mapsto \frac{1}{e} \approx 0.368 m→∞lim(1−m1)m↦e1≈0.368
适用于数据集较小、难以划分有效训练范围/测试集的时候
2.2.4 调参与最终模型
参数设定需要考虑步长、训练集的模型考察
模型评估和选择用于评估测试的数据集常称为“验证集”
2.3 性能度量
衡量模型泛化的评价标准
给定样例集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } D=\left \{ (x_1,y_1),(x_2,y_2),...,(x_m,y_m) \right \} D={ (x1,y1),(x2,y2),...,(xm,ym)}
要评估学习器 f f f 的性能,就要把学习器预测结果 f ( x ) f(x) f