机器学习:伪逆矩阵法

机器学习:例1:伪逆矩阵法
 

伪逆矩阵是逆矩阵的广义形式。由于奇异矩阵或非方阵的矩阵不存在逆矩阵,但在matlab里可以用函数pinv(A)求其伪逆矩阵。基本语法为X=pinv(A),X=pinv(A,tol),其中tol为误差,pinv为pseudo-inverse的缩写:max(size(A))*norm(A)*eps。函数返回一个与A的转置矩阵A' 同型的矩阵X,并且满足:AXA=A,XAX=X.此时,称矩阵X为矩阵A的伪逆,也称为广义逆矩阵。pinv(A)具有inv(A)的部分特性,但不与inv(A)完全等同。  如果A为非奇异方阵,pinv(A)=inv(A),但却会耗费大量的计算时间,相比较而言,inv(A)花费更少的时间。

 

clc;clear;

X = [0.2 0.7 1; 0.3 0.3 1; 0.4 0.5 1; 0.6 0.5 1; 0.1 0.4 1; 0.4 0.6 1; 0.6 0.2 1; 0.7 0.4 1; 0.8 0.6 1; 0.7 0.5 1]
y = [1;1;1;1;1;-1;-1;-1;-1;-1]

A = X'
B = X'*X
C = X'*y

w = inv(X'*X)*X'*y

%法2
X1 =pinv(X)   %X的伪逆矩阵
w1 = (pinv(X))*y

X =

    0.2000    0.7000    1.0000
    0.3000    0.3000    1.0000
    0.4000    0.5000    1.0000
    0.6000    0.5000    1.0000
    0.1000    0.4000    1.0000
    0.4000    0.6000    1.0000
    0.6000    0.2000    1.0000
    0.7000    0.4000    1.0000
    0.8000    0.6000    1.0000
    0.7000    0.5000    1.0000


y =

     1
     1
     1
     1
     1
    -1
    -1
    -1
    -1
    -1


A =

    0.2000    0.3000    0.4000    0.6000    0.1000    0.4000    0.6000    0.7000    0.8000    0.7000
    0.7000    0.3000    0.5000    0.5000    0.4000    0.6000    0.2000    0.4000    0.6000    0.5000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000


B =

    2.8000    2.2400    4.8000
    2.2400    2.4100    4.7000
    4.8000    4.7000   10.0000


C =

   -1.6000
    0.1000
         0


w =

   -3.2180
    0.2414
    1.4312


X1 =

   -0.5290   -0.3912   -0.1569    0.2474   -0.7794   -0.1408    0.1991    0.4334    0.6677    0.4495
    1.1022   -0.8769    0.1368    0.1689   -0.4103    0.6356   -1.3274   -0.3138    0.6999    0.1850
   -0.1641    0.6999    0.1110   -0.0981    0.6669   -0.1311    0.6283    0.0394   -0.5495   -0.2027


w1 =

   -3.2180
    0.2414
    1.4312

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安安csdn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值