矩阵奇异性和“病态”问题的解释与改善方法(简单易懂)

您所在的位置:网站首页 方程组的性态是什么 矩阵奇异性和“病态”问题的解释与改善方法(简单易懂)

矩阵奇异性和“病态”问题的解释与改善方法(简单易懂)

2024-07-17 10:57| 来源: 网络整理| 查看: 265

文章目录 矩阵奇异性、‘病态’问题描述:常用改善条件数的方法:关于条件数和正则化的概念补充:

矩阵奇异性、‘病态’问题描述:

  在实际工程应用中,求解线性方程组 A X = B AX=B AX=B 问题时,其系数矩阵 A A A 或初值矩阵 B B B 一般由实验数据构成,如果矩阵A或B中的元素存在观测误差、仪器的测量误差或计算机本身的误差等,则会导致求得解 X S X_S XS​ 偏离真实解 X r X_r Xr​ 。

  矩阵条件数反映了矩阵计算中解 X X X 对初值 B B B 的敏感度,矩阵条件数越大,解对初始值的变化越敏感,条件数越小,解受初始值的影响越小,这也就意味着,当初值有小扰动时,方程的解也会保持在一定范围内,不会偏离真值过远。

  条件数是区分矩阵“病态”的指标之一,条件数在1附近的问题称为“良态”问题,条件数高的问题称为“病态”问题,条件数趋于无穷大的问题为“奇异”问题。

常用改善条件数的方法:

  ①添加预条件子,改善条件数,完成解的近似估计;

  ②进行矩阵分解,完成解的近似估计;

  ③添加正则化项,改善条件数,完成解的近似估计。

关于条件数和正则化的概念补充:

  条件数(Condition number):

  条件数是线性方程组Ax=b的解对b中的误差或不确定度的敏感性的度量。数学定义为矩阵A的条件数等于A的范数与A的逆的范数的乘积,即 k ( A ) = ∣ ∣ A − 1 ∣ ∣    ⋅    ∣ ∣ A ∣ ∣ k\left( A \right)=\left| \left| A^{-1} \right| \right|\; \cdot \; \left| \left| A \right| \right| k(A)=∣∣​∣∣​A−1∣∣​∣∣​⋅∣∣A∣∣   对应矩阵的3种范数(1范数,2范数,无穷范数),相应地可以定义3种条件数。

  数值分析中,一个问题的条件数是该数量在数值计算中的容易程度的衡量,也就是该问题的适定性。一个低条件数的问题称为良态的,而高条件数的问题称为病态(或者说非良态)的。

  正则化(Regularization):

  在线性代数中,不适定问题通常是由一组线性代数方程定义的,而且这组方程组通常来源于有着很大的条件数的不适定反问题。大条件数意味着舍入误差或其它误差会严重地影响问题的结果。通过正则化的方法可以改善或者减少过度拟合问题。

  L0正则化:模型参数中非零参数的个数。

  从直观上看,利用非零参数的个数,可以很好的来选择特征,实现特征稀疏的效果,具体操作时选择参数非零的特征即可。但因为L0正则化很难求解,是个NP难问题,因此一般采用L1正则化。L1正则化是L0正则化的最优凸近似,比容易求解,并且也可以实现稀疏的效果。

  L1正则化:模型参数中各个参数绝对值之和。

  L2正则化:各个参数的平方的和的开方值。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3