首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

机器学习—部分空间约束的最小二乘学习

之前介绍的最小二乘学习算法都是无约束条件的,今天介绍的是带有部分空间约束条件的最小二乘算法。

我们回顾一下最小二乘法推导过程

带有部分约束的表达式如下:

我们使用同样的方法,关于a求偏导,令偏导数为零就可以得到其最优值,这里就不做推导了。

代码如下:

clear; closeall; clc;

n = 50;% 训练样本个数

N = 1000;% 测试样本个数

x = linspace(-3,3,n)';% n个样本服从-3到3的均匀分布

X = linspace(-3,3,N)';

pix = pi*x;

y = sin(pix)./pix - 0.01*x + 0.05*randn(n,1);% 拟合的函数

H(:,1) = ones(n,1);

P(:,1) = ones(N,1);

L = 15;% H矩阵的列数,即基函数的个数的一半,因为sin和cos各一半

fori= 1:L

H(:,2*i) = sin(i/2*x);

H(:,2*i+1) = cos(i/2*x);

P(:,2*i) = sin(i/2*X);

P(:,2*i+1) = cos(i/2*X);

end

t1 = H\y;

F1 = H*t1;

t2 = (H*diag([ones(1,11) zeros(1,20)]))\y;

F2 = P*t2;

plot(x,F1,'g-','linewidth',2);

holdon

plot(X,F2,'r--','linewidth',2);

plot(x,y,'bo','linewidth',2);

axis([-2.8,2.8,-0.4,1.2]);

legend('Least Square','Subspace-Consttrained LS','Training Samples');

最后的运行结果如下:

以上就是今天推送的内容,欢迎讨论。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180331G1IPPZ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券