第一节课(Overview)
本系列文章记录学习的Foundation of Machine Learning课程,着重在概念介绍以及公式推导,欢迎大家交流。
一、机器学习
机器学习是一种数据驱动模型。流程如下:
有监督学习supervised Learning:
数据集:
X
X
X,
X
X
X是一个N
×
\times
×p 的矩阵,即N条数据和p个特征。 目标target:
t
t
t。
无监督学习unsupervised Learning:
数据集:
X
X
X,没有目标。需要自己聚类,在没有标签的数据里可以发现潜在的一些结构的一种训练方式。
函数迫近(Function Approximator): 建立模型关于数据集 X X X和目标 t t t之间的关系: t = f ( x , θ ) + v t = f(x,\theta) +v t=f(x,θ)+v在这其中,所以 θ \theta θ是参数。然后 v v v是噪声。
参数估计(Parameter Estimation): 估计模型的参数
θ
\theta
θ. 一般采用最大似然(Maximum Likelihood)–是的这个数据集出现的概率最大。最大似然也等于最小化误差也就是模型的值和实际的值误差最小,即最小化下面的方程。
E
0
=
∑
n
=
1
N
(
∣
∣
t
n
−
f
(
x
n
,
θ
)
∣
∣
)
2
E_0 = \sum_{n=1}^N(||t_n-f(x_n,\theta)||)^2
E0=n=1∑N(∣∣tn−f(xn,θ)∣∣)2.
预测(prediction):在得到了模型参数之后,我们就可以根据模型对未知数据进行预测。 t ^ N + 1 = f ( x N + 1 , θ ) \hat{t}_{N+1}=f(x_{N+1},{\theta}) t^N+1=f(xN+1,θ) t ^ \hat{t} t^ 表示预测估计的值。
正则化(Regularization): 在建立模型的时候,用有限的data去设计一个非常复杂的模型去符合这些预测点,那么就会导致模型特别复杂,发生过拟合,即使在训练集上面误差为0,但是在测试集上误差可能会非常大,不利于泛化。
E
1
=
∑
n
=
1
N
(
∣
∣
t
n
−
f
(
x
)
∣
∣
)
2
+
r
(
∣
∣
θ
∣
∣
)
E_1=\sum_{n=1}^N(||t_n-f(x)||)^2+r(||\theta||)
E1=n=1∑N(∣∣tn−f(x)∣∣)2+r(∣∣θ∣∣)
r
r
r是在参数上的惩罚项以此来控制负责模型复杂。有时候,如果有一些先验(prior),在这个阶段就可以注入在模型中,也就是有时候正则化相当于最大后验概率–权衡信念(prior)与确凿证据(最大似然)trading off belief against hard evidence,后面会有一个列子进行说明。
模型不确定(Model uncertainty): 模型预测会有不准确性,要捕获不准确,不是知道一些特定的值,而是了解参数的概率分布。
p
(
θ
∣
(
x
n
,
t
n
)
n
=
1
N
)
p(\theta| (x_n,t_n)_{n=1}^N)
p(θ∣(xn,tn)n=1N)。
概率推理(Probabilistic Inference):
E
[
g
(
θ
)
]
=
∫
g
(
θ
)
p
(
θ
)
d
θ
=
1
N
s
∑
n
=
1
N
s
g
(
θ
(
n
)
)
E[g(\theta)]=\int g(\theta)p(\theta)d\theta = \frac{1}{N_s} \sum_{n=1}^{N_s}g(\theta^{(n)})
E[g(θ)]=∫g(θ)p(θ)dθ=Ns1n=1∑Nsg(θ(n))
序列估计(Sequential Estimation): θ ( n − 1 ∣ n − 1 ) → θ ( n ∣ n − 1 ) → θ ( n ∣ n ) \theta(n-1|n-1) \rightarrow \theta(n|n-1)\rightarrow \theta(n|n) θ(n−1∣n−1)→θ(n∣n−1)→θ(n∣n)
总结
总体来说是机器学习的所有流程。