线性代数|机器学习-P11方程Ax=b求解研究

1. 变量数和约束条件数大小分类

  • 0 用伪逆矩阵 x = A + b x=A^{+}b x=A+b直接求解,[上一节已讲]
  • 1 当矩阵A大小适中,条件数 σ 1 σ r < 1000 时 \frac{\sigma_1}{\sigma_r}<1000时 σrσ1<1000, 用 x = A \ b x=A\backslash b x=A\b
  • 2 当矩阵A列满秩m>n=r时,方程数多于变量数,无法求解,只能择中找近似解,将b投影到矩阵A的列空间中后,再找到近似解 x ^ \hat{x} x^ A T A x ^ = A T b → x ^ = ( A T A ) − 1 A T b A^TA\hat{x}=A^Tb\rightarrow \hat{x}=(A^TA)^{-1}A^Tb ATAx^=ATbx^=(ATA)1ATb
  • 3 当矩阵m < n时,方程数小于变量数,有无穷多的解,约束不够,所以我们增加 L 1 , L 2 L_1,L2 L1,L2约束来在众多的解中拿到一个好的解,这是深度学习中最重要的损失函数解决思路。

2. 最小二乘法和Gram-schmidt变换

2.1 Gram-schmidt变换

  • 4 列向量情况很差,条件数 σ 1 σ r > 1000 \frac{\sigma_1}{\sigma_r}>1000 σrσ1>1000,就是病态矩阵,简单理解就是矩阵A的列向量之间相关性太大,导致无法用相关性的列表示其他向量;
    当我们矩阵A的列向量为 a 1 , a 2 a_1,a_2 a1,a2时候,我们用 a 1 , a 2 a_1,a_2 a1,a2表示 v 3 v_3 v3时候,特别不方便, a 1 , a 2 a_1,a_2 a1,a2越相近,越不方便,就是所说的列向量相关性太大,那gram-schmidt的方式就是,既然 a 1 , a 2 a_1,a_2 a1,a2太接近,那就改造其中一个,我们把 a 1 a_1 a1经过投影和相减后得到 a 11 a_{11} a11,那么 a 11 ⊥ a 2 a_{11}\perp a_2 a11a2,这样我们就用新的正交向量 a 11 , a 3 a_{11},a_3 a11,a3来表示 v 3 v_3 v3. 将A分解为QR后就可以得到最优解 x ^ \hat{x} x^,具体推导可以看上一节内容。另外一种是通过将列进行旋转,原理和行的交换一样,主要是关于数值稳定性的问题,保证不要出现大数吃小数的现象发生。
    在这里插入图片描述

2.2 最小二乘法

2.2.1 损失函数-Lasso 和regression

  • 5 矩阵A接近奇异矩阵,该矩阵的值不是满秩,无法进行直接求逆得到 A − 1 A^{-1} A1逆矩阵,就是会得到很多的解,我们的目的是从这么多的解中找到一个最好的解,目前加 L 1 L_1 L1项,即加 λ ∣ ∣ x ∣ ∣ 1 \lambda||x||_1 λ∣∣x1
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值