分享
分享赚钱 收藏 举报 版权申诉 / 3

类型梯度下降法理论及部分代码实现.doc

  • 上传人:fcgy86390
  • 文档编号:6069035
  • 上传时间:2019-03-26
  • 格式:DOC
  • 页数:3
  • 大小:49.50KB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    梯度下降法理论及部分代码实现.doc
    资源描述:

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

    2、Xr1那么损失函数就可以表示成: mirJ12一步一步的求导: mijijr1)(再求: ijjiXr那么把分步骤合起来就是: mi ijnkkij yJ1)(令导数为 0,求此时的 ,整理一下,有: mi mijinkkij yX11用矩阵符号将上面的细节运算抽象一下: 0YJTT2让导数为 0,那么求得的解为: YXT1)(求解矩阵的逆复杂度有点儿高,可以用梯度下降来求解:(2))( 1111 YXJJ TiTiiii 其中 就是下降的速度,一般是一个小的数值,可以从 0.01 开始尝试,越大下降越快,收敛越快。迭代终止的条件取: |1ii部分代码如下:w_old=zeros(size(X,2),1);%初始化参数 wk=1;while 1minJ_w(k) = 1/2 * (norm(X*w_old - Y)2; %损失函数 公式(1) %norm 默认为 L2 标准化w_new = w_old - gamma*(X*X*w_old - X*Y);%梯度下降公式%公式(2)if norm(w_new-w_old) epsilon %终止条件W_best = w_new;break;endw_old = w_new;k=k+1;end实验结果:3

    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:梯度下降法理论及部分代码实现.doc
    链接地址:https://www.docduoduo.com/p-6069035.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开