梯度下降法理论及部分代码实现

梯度下降法理论及部分代码实现

ID:1561716

大小:49.50 KB

页数:2页

时间:2017-11-12

梯度下降法理论及部分代码实现_第1页
梯度下降法理论及部分代码实现_第2页
资源描述:

《梯度下降法理论及部分代码实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、梯度下降法梯度下降法是一种最优化算法,常用来优化参数,通常也称为最速下降法。梯度下降法是一般分为如下两步:1)首先对参数θ赋值,这个值可以是随机的,也可以让θ是一个全零的向量;2)改变θ的值,使得J(θ)按梯度下降的方向进行减少。以一个线性回归问题为例,应用libsvm包里的数据heart_scale.mat数据做测试。假设要学习这么一个函数:那么损失函数可以定义成:(1)其中X看以看成一行一行的样本向量,那么Θ就是一列一列的了。目标很简单,就是求损失J最小值时候的解Θ:先直接求导,对于求导过程,详解如下:首先定义损失变量:那么损失函数就可以表

2、示成:一步一步的求导:再求:那么把分步骤合起来就是:令导数为0,求此时的Θ,整理一下,有:用矩阵符号将上面的细节运算抽象一下:2让导数为0,那么求得的解为:求解矩阵的逆复杂度有点儿高,可以用梯度下降来求解:(2)其中γ就是下降的速度,一般是一个小的数值,可以从0.01开始尝试,越大下降越快,收敛越快。迭代终止的条件取:部分代码如下:w_old=zeros(size(X,2),1);%%初始化参数wk=1;while1minJ_w(k)=1/2*(norm(X*w_old-Y))^2;%%损失函数公式(1)%%norm默认为L2标准化w_new=

3、w_old-gamma*(X'*X*w_old-X'*Y);%%梯度下降公式%%公式(2)ifnorm(w_new-w_old)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。