• 大小: 0.06M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


使用多项式拟合一个周期内、加入噪声的正弦曲线。 语言:MATLAB 求解方式:由于自己写的梯度下降函数收敛太慢,因此调用MATLAB梯度下降优化函数;后期用共轭梯度方法求解,收敛较快。代码都在里面,但是比较乱。

资源截图

代码片段和文件信息

function w = descent(X y lam)
INIT = 100;
LIMIT = 1e-3;
delta = 1;
learn_rate = 1e-12;
SIZE = size(X);
N = SIZE(1);
M = SIZE(2);
w = INIT * ones(M 1);
loss = 1/N*(X*w-y)‘*(X*w-y) + lam*sqrt(w‘*w);
count = 0;
%subplot(414)
while delta >= LIMIT
    count = count+1;
    dw = 2/N*X‘*X*w - 2/N*X‘*y + lam*(w‘*w)^(-0.5)*w;
    w = w - learn_rate * dw;
    t = 1/N*(X*w-y)‘*(X*w-y) + lam*sqrt(w‘*w);
    delta = loss - t
    loss = t;
    %scatter(countdelta);hold on;
end
count

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件         224  2015-10-17 19:53  data.txt
     文件         300  2015-11-11 22:56  descent.asv
     文件         499  2015-11-12 18:33  descent.m
     文件         994  2015-11-12 16:18  goodlambda.asv
     文件        1003  2015-11-12 17:23  goodlambda.m
     文件       27715  2015-10-17 11:33  poly_fit_sin.jpg
     文件         780  2015-10-17 20:17  poly_sin.asv
     文件         781  2015-11-08 17:29  poly_sin.m
     文件         206  2015-10-17 19:57  produceData.m
     文件       20165  2015-10-17 19:38  regularization.jpg
     文件       24953  2015-10-17 20:27  regularization2.jpg
     文件        1003  2015-11-12 18:27  test_descent.m
     文件         105  2015-10-17 19:31  tmp.m
     文件         993  2015-11-17 20:21  x.mat

评论

共有 条评论