Machine Learning---LMS 算法数学说明

Machine Learning---LMS 算法数学说明

引言

这篇文章主要是为了《Machine Learning---LMS 算法》中做一些数学上的解释,虽然LMS算法实现比较简单,但是里面所用的数学知识还是有必要讲一下。

一、梯度

这里得先介绍梯度这个概念,因为算法就是用了所谓的“梯度下降法”。

1.方向导数

对于方向函数的详细定义就不写了,这里就大概讲一下什么是方向函数。

在一个xOy平面中,存在以下向量:  ,该向量是与射线L同方向的单位向量。

设函数 z = f(x,y)。有一个点 ,然后沿着向量e上另一个点

导出以下公式


该函数便是f(x,y)在点 沿方向 l 的变化率,叫做方向导数。

方向导数一个定理:如果函数f(x,y),在点 处可微分,那么函数在该点处沿任意方向l的方向导数必定存在,且有


2.梯度

函数f(x,y)在平面区域D中,具有一阶连续偏导数,则向量  ,便是函数f的梯度  。

如果向量  是与方向l同方向的单位向量,那么方向函数

梯度的意义:三个特殊情况

(1)   ,则表示方向与梯度相同的时候,则函数在这个方向增长速度最快。

(2)    ,则表示方向与梯度相反的时候,则函数在这个方向下降速度最快。我们的梯度下降法中,就是采用这个情况。

(3)    ,则表示方向与梯度正交的时候,则函数的变化率为0。

 

二、算法数学解释

首先我们LMS中的 便是以下这种线性形式:

这里的 便是LMS公式中的权值w 。

梯度下降法:

 

     我们在机器学习过程中,要做的就是不断缩小预测值和真实值之间的差距。所以我们先定义 来量化差值。

这里我们再次做一个假设,引进一个函数


对于这个函数有几点说明,首先的意思是第j个训练样本中的x和y。而不是x的j次幂和y的j次幂。

按照上面介绍的梯度的知识,对 进行求梯度计算


 对这个求偏导,  ,而  

所以这个式子就等于 这里便是


 

所以综上所述

梯度下降

 

三、总结

这是笔者第一次写关于数学方面的推导介绍,所以经验欠缺,敬请见谅。这里需要说明的是,其中第二节的梯度下降法介绍来源于斯坦福Machine Learning公开课。

这个系列的公开课挺不错的,其中对于数学方面的推导介绍页很详细。有兴趣的可以直接搜索 斯坦福 + Machine Learning估计就能找到。

由于笔者不是专门研究人工智能方面,所以在写这些文章的时候,肯定会有一些错误,也请谅解,上面介绍中有什么错误或者不当地方,敬请指出,不甚欢迎。

如果有兴趣的可以留言,一起交流一下算法学习的心得。

声明:本文章是笔者整理资料所得原创文章,如转载需注明出处,谢谢。

你可能感兴趣的:(Machine,Learning)