最小均方算法 LMS

来源:互联网 发布:搜图的软件 编辑:程序博客网 时间:2024/05/19 14:53

本文以机器学习为背景,来阐述LMS算法在机器学习中应用

1.有监督学习

先理清几个概念:

  1. xixi表示”输入”变量(“input” variables),也称为特征(features)。
  2. yiyi表示”输出”变量(“output” variables),也称为目标值(target)。
  3. 一对(xi,yi)称为一个训练样本(training example),用作训练的数据集就是就是一组m个训练样本(xi,yi);i=1,,m;被称为训练集(training set)。
  4. X表示输入变量的取值空间,Y表示输出变量的取值空间。那么h:XY是训练得到的映射函数,对于每个取值空间X的取值,都能给出取值空间Y上的一个预测值。函数hh的含义为假设(hypothesis)。
  5. 当预测值y为连续值时,则有监督学习问题是回归(regression)问题;预测值y为离散值时,则为分类(classification)问题。

图形化表示整个过程: 
这里写图片描述

2.线性回归

先简单将y表示为x的线性函数: 

h(x)=i=0nθixi=θTx

  1. θ称为参数(parameters),也叫做权重(weights),参数决定了XY的射映空间。
  2. x0=1来表示截距项(intercept term)。

有了训练集,如果通过学习得到参数θ

一种方法是,让预测值h(x)h(x)尽量接近真实值y,定义成本函数(cost function): 

J(θ)=12i=1m(hθ(xi)yi)2

3.LMS算法

为了找到使成本函数J(θ)最小的参数θ,采用搜索算法:给定一个θ 的初值,然后不断改进,每次改进都使J(θ)更小,直到最小化J(θ)θ的值收敛。 
考虑梯度下降(gradient descent)算法:从初始θ开始,不断更新: 

θj:=θjαθjJ(θ)

注意,更新是同时对所有j=0,,nθj值进行。α被称作学习率(learning rate),也是梯度下降的长度,若α取值较小,则收敛的时间较长;相反,若α取值较大,则可能错过最优值。 
算法具体的细节请见下面图片:(因为我实在不想敲公式了。。。。) 
这里写图片描述
最小均方算法在机器学习中主要是用作监督学习中的误差函数,在训练网络时,进行反向传播算法当作loss function用。
原创粉丝点击