本文以机器学习为背景,来阐述LMS算法在机器学习中应用
1.有监督学习
先理清几个概念:
- xi: xi表示”输入”变量(“input” variables),也称为特征(features)。
- yi: yi表示”输出”变量(“output” variables),也称为目标值(target)。
- 一对(xi,yi)称为一个训练样本(training example),用作训练的数据集就是就是一组m个训练样本(xi,yi);i=1,…,m;被称为训练集(training set)。
- X表示输入变量的取值空间,Y表示输出变量的取值空间。那么h:X→Y是训练得到的映射函数,对于每个取值空间X的取值,都能给出取值空间Y上的一个预测值。函数hh的含义为假设(hypothesis)。
- 当预测值y为连续值时,则有监督学习问题是回归(regression)问题;预测值y为离散值时,则为分类(classification)问题。
图形化表示整个过程:
2.线性回归
先简单将y表示为x的线性函数:
h(x)=∑i=0nθixi=θTx
- θ称为参数(parameters),也叫做权重(weights),参数决定了X到Y的射映空间。
- 用x0=1来表示截距项(intercept term)。
有了训练集,如果通过学习得到参数θ?
一种方法是,让预测值h(x)h(x)尽量接近真实值y,定义成本函数(cost function):
J(θ)=12∑i=1m(hθ(xi)−yi)2
3.LMS算法
为了找到使成本函数J(θ)最小的参数θ,采用搜索算法:给定一个θ 的初值,然后不断改进,每次改进都使J(θ)更小,直到最小化J(θ)的θ的值收敛。
考虑梯度下降(gradient descent)算法:从初始θ开始,不断更新:
θj:=θj−α∂∂θjJ(θ)
注意,更新是同时对所有j=0,…,n的θj值进行。α被称作学习率(learning rate),也是梯度下降的长度,若α取值较小,则收敛的时间较长;相反,若α取值较大,则可能错过最优值。
算法具体的细节请见下面图片:(因为我实在不想敲公式了。。。。)
最小均方算法在机器学习中主要是用作监督学习中的误差函数,在训练网络时,进行反向传播算法当作loss function用。