一、关键术语与任务类型
(一)数据集(data set)
样本(sample)/实例(instance):数据集中的记录 特征(feature)/属性(attribute):影响结果的因素 数据量(data size):样本的数量 特征维度(feature dimension):特征的数量 训练集(train set)、测试集(test set)
(二)机器学习内容框架
1、监督学习(supervised learning)
分类问题(classification):预测的目标变量是离散值 回归问题 (regression):预测目标为连续值
2、无监督学习(unsupervised learning)
概念:无标签情形下的机器学习 聚类分析(clustering):仅根据输入特征进行潜在的概念分类
二、机器学习三要素
机器学习是机器学习模型在一定的优化策略下使用相应求解算法来达到最优目标的过程
(一)模型(model)
模型是要学习的决策函数或者条件概率分布
假设空间
F
\mathscr{F}
F
一般用假设空间(hypothesis space)来描述所有可能的决策函数或条件概率分布
当模型是决策函数时(如线性模型的线性决策函数),
F
\mathscr{F}
F 可以表示为若干决策函数的集合
F
=
{
f
∣
Y
=
f
(
X
)
}
\mathscr{F}=\{f|Y=f(X)\}
F = { f ∣ Y = f ( X )} 当模型是一个条件概率分布时,
F
\mathscr{F}
F 可以表示为条件概率分布的集合
如决策树定义在特征空间和类空间中的条件概率分布
F
=
{
P
∣
P
(
Y
∣
X
)
}
\mathscr{F}=\{P|P(Y|X)\}
F = { P ∣ P ( Y ∣ X )}
(二)策略(strategy)
在假设空间的众多模型中,机器学习需要按照什么标准选择最优模型
损失函数(loss function)
L
(
Y
,
F
(
X
)
)
\ L(Y,F(X))
L ( Y , F ( X ))
对于给定模型,模型输出
f
(
x
)
\ f(x)
f ( x ) 和真实输出
Y
\ Y
Y 之间的误差可以用损失函数
L
(
Y
,
F
(
X
)
)
\ L(Y,F(X))
L ( Y , F ( X )) 度量 不同机器学习都有对应的损失函数
回归任务:一般使用均方误差 分类任务:一般使用对数损失函数或交叉熵损失函数
(三)算法(algorithm)
没有特别说明的情况下,“机器学习算法”实际上指的是模型
此处作为机器学习三要素的算法,指的是学习模型的具体优化方法
当机器学习的模型和损失函数确定时,机器学习可以具体地形式化为一个最优化问题
三、机器学习核心
机器学习目的在于训练模型,使其对已知数据和未知数据有较好的预测能力
当模型对已知数据预测效果很好但对未知数据预测效果很差时,过拟合问题产生
过拟合问题(over-fitting)
过拟合:在机器学习模型过程中,模型对训练数据学习过度,将数据中包含的噪声和误差也学习了,使模型在训练集上表现很好,在测试集上表现很差的一种现象。
所有监督机器学习都可以用如下损失函数计算公式概括:
min
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min\frac{1}{N}\sum^N_{i=1}L(y_i,f(x_i))+\lambda J(f)
min N 1 i = 1 ∑ N L ( y i , f ( x i )) + λ J ( f )
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
\frac{1}{N}\sum^N_{i=1}L(y_i,f(x_i))
N 1 ∑ i = 1 N L ( y i , f ( x i )) :训练误差,针对训练集的经验误差项
λ
J
(
f
)
\lambda J(f)
λ J ( f ) :正则化项,即惩罚项,用于对模型复杂度的约束和惩罚 所有监督机器学习的核心无非就是正则化参数的同时最小化经验误差
训练集误差小,测试集误差也小,模型有着较好的泛化能力;或者模型偏差小,方差也小 机器学习模型的差别无非是经验误差项的改变,体现为损失函数的变化
线性回归:经验误差项为平方损失(square loss) AdaBoost:经验误差项为指数损失(exponential loss) SVM:经验误差项为合页损失(hinge loss) 正则化项决定机器学习模型质量
通过对模型参数施加约束和惩罚,让模型时时刻刻保持对过拟合的警惕 特征工程、扩大训练集数量、算法设计、超参数调优等都是为防止过拟合这个核心问题服务的
三、机器学习流程