5.10 阻尼倒数法

改进Gram-Schmidt分解中需要计算 rii=∥ai∥r_{ii} = \|\mathbf{a}_i\|rii​=∥ai​∥ ,qi=ai/rii\mathbf{q}_i = \mathbf{a}_i/r_{ii}qi​=ai​/rii​,riir_{ii}rii​ 表示子空间第 iii 个坐标轴的高度,当其为 000 时,说明子空间少了该维度,矩阵 AAA 不是列满秩,ai\mathbf{a}_iai​ 可由前面 i−1i-1i−1 个 aj,j<i\mathbf{a}_j,j < iaj​,j<i 表示,这样 qi\mathbf{q}_iqi​ 单位向量应该为 0\mathbf{0}0 向量,最优解的第 iii 个分量应该为 000 。但实际计算时,由于舍入误差,riir_{ii}rii​ 不会等于 000 ,只会趋近 000 ,是个极小的数。如果还是按公式 qi=ai/rii\mathbf{q}_i = \mathbf{a}_i/r_{ii}qi​=ai​/rii​ 计算,由于舍入误差 qi\mathbf{q}_iqi​ 会极不稳定,导致最优解的第 iii 个分量远离 000 。所以我们希望当 riir_{ii}rii​ 很小时,1/rii1/r_{ii}1/rii​ 实际计算时取 000 ,不是很小时,还是取原值。即要求

1/rii={1/riiforlargerii0forsmallrii1/r_{ii} = \left \{ \begin{array}{rc} 1/r_{ii} & for & large & r_{ii} \\ 0 & for & small & r_{ii} \end{array}\right. 1/rii​={1/rii​0​forfor​largesmall​rii​rii​​

为了达到这个目的,可以采用各种数学技巧,阻尼倒数法就是著名的一种。

1/rii=riirii2+λ21/r_{ii} = \frac{r_{ii}}{r^2_{ii}+\lambda^2} 1/rii​=rii2​+λ2rii​​

λ\lambdaλ 是阻尼系数,需要人为设定,当 rii<λr_{ii}<\lambdarii​<λ 时,认为 riir_{ii}rii​ 过小,理论上是 000 。

阻尼倒数法有如下近似结果

riirii2+λ2={1riifor∣rii∣≫λriiλ2→0for∣rii∣≪λ\frac{r_{ii}}{r^2_{ii}+\lambda^2} = \left \{ \begin{array}{rc} \frac{1}{r_{ii}} & for & |r_{ii}| \gg \lambda \\ \frac{r_{ii}}{\lambda^2} \to 0 & for & |r_{ii}| \ll \lambda \end{array}\right. rii2​+λ2rii​​={rii​1​λ2rii​​→0​forfor​∣rii​∣≫λ∣rii​∣≪λ​

为了减小阻尼系数 λ\lambdaλ 对正常 riir_{ii}rii​ 的影响,可以令当 riir_{ii}rii​ 较大时,λ\lambdaλ 趋近 000 。可采用分段函数

λ={λ0(1−∣rii∣ϵ)for∣rii∣≤ϵ0for∣rii∣>ϵ\lambda = \left \{ \begin{array}{rc} \lambda_0(1-\frac{|r_{ii}|}{\epsilon}) & for & |r_{ii}| \le \epsilon \\ 0 & for & |r_{ii}| > \epsilon \end{array}\right. λ={λ0​(1−ϵ∣rii​∣​)0​forfor​∣rii​∣≤ϵ∣rii​∣>ϵ​

也可采用高斯函数

λ=λ0e−(∣rii∣ϵ)2\lambda = \lambda_0 e^{-(\frac{|r_{ii}|}{\epsilon})^2} λ=λ0​e−(ϵ∣rii​∣​)2

其中 λ0\lambda_0λ0​ 为名义阻尼系数,ϵ\epsilonϵ 为判断奇异的阈值。

高斯函数比分段函数更光滑,这样最优解在奇异位置更平滑。高斯函数缺点是当 riir_{ii}rii​ 较大时,λ\lambdaλ 不等于 000 ,会引入极小误差。

按照阻尼倒数法计算,qi=ai/rii\mathbf{q}_i = \mathbf{a}_i/r_{ii}qi​=ai​/rii​ ,当 riir_{ii}rii​ 趋近 000 时,qi\mathbf{q}_iqi​ 趋近 0\mathbf{0}0 。最优解的第 iii 分量 x^i=(δi−∑j=i+1n(δjx^j))/rii\hat{x}_i = (\delta_i - \sum^{n}_{j=i+1} (\delta_j\hat{x}_j))/r_{ii}x^i​=(δi​−∑j=i+1n​(δj​x^j​))/rii​ 也趋近 000 ,达到稳定解的目的。阻尼倒数法涉及的参数如 λ0\lambda_0λ0​、ϵ\epsilonϵ ,其最优值很难确定。

riir_{ii}rii​ 趋近 000 ,矩阵 AAA 不是列满秩,此时矩阵是行列均不满秩,方程 Ax=bA\mathbf{x}=\mathbf{b}Ax=b 的解理论需要采用奇异值分解,后面章节会解释。阻尼倒数法虽能得到较稳定的解,但只是其中一个解,没有包含所有解。

5.10 阻尼倒数法相关推荐

  1. 5.12 QR分解的阻尼倒数法和正则化方法区别

    5.12 QR分解的阻尼倒数法和正则化方法区别 基于QR分解的阻尼倒数法目的是改善矩阵 AAA 的病态,正则化方法目的也是改善矩阵 AAA 的病态.区别是阻尼倒数法能获得稀疏解,即最优解分量趋近 00 ...

  2. 对付惰性必杀:(10+2)*5法

    (10+2)*5法 可以让你在一小时工作时间内过得充实且高效.它让你摆脱那列了几页的 任务 列表,从此从惰性中摆脱. 谁需要(10+2)*5法? 做事拖沓的: 容易分心的: 上网强迫症患者: 有一大堆 ...

  3. 十日均线算法oracle,10日均线法的详解

    @@@.各位..注意该股必需是多头排列.....最好是多头市场.........这样正确率才高..收盘价在十天平均线上才可以考虑买入股票.股价跌破十天平均线时,必须卖出股票.有的人一定会觉得这太简单. ...

  4. 《淘宝网开店 拍摄 修图 设计 装修 实战150招》一一2.10  均分法

    本节书摘来自异步社区出版社<淘宝网开店 拍摄 修图 设计 装修 实战150招>一书中的第2章,第2.10节,作者: 葛存山,更多章节内容可以访问云栖社区"异步社区"公众 ...

  5. 创业这10种死法,你死在哪一种了

    转自: 网易科技-创业Club http://tech.163.com/15/1112/10/B87BJK2B00094P40.html 谈创业死法,实际是在谈活法.真正的死法可能有一万种,但真正的活 ...

  6. 中国民营企业的8+10种死法

    通过对近十几年来国内媒体的数百例相关报道的梳理,特别是对其中涉及民营企业的案例进行了研究,发现了一些具有共性的东西,导致中国民营企业落败或死亡的原因主要有10个方面.有些是原生性的,一直就与中国民营企 ...

  7. AV终结者技术大曝光(另附AV终结者10大死法)

    最近"帕虫"(瑞星),AV终结者(金山命名)蛮流行的,其实就是7.8位字符病毒.我们民间的菜鸟管它叫"随机字母.数字病毒".貌似反病毒论坛每天都有人因为这个病毒 ...

  8. 10个数冒泡排序法c语言代码,输入10个数用冒泡法排序

    输入10个数,用冒泡排序法按由小到大顺序排序并输如下参考: #包括< stdio, h > Intmain() { Inta[10]={0}: IntI=0,j=0,t=0: For (I ...

  9. 团队死气沉沉?10种玩法激活你的项目团队拥有超强凝聚力

    作为项目经理和PMO,以及管理者最头疼的是团队的氛围和凝聚力,经常会发现团队死气沉沉,默不作声,你想尽办法也不能激活团队,也很难凝聚团队. 这样的项目团队你很难带领大家去打胜仗,攻克堡垒.但是如何才能 ...

最新文章

  1. 凭兴趣求职80%会失败,为什么
  2. [PaaS] 深入 Cloud Foundry(一)构架 (转载)
  3. css3的新特性transform,transition,animation
  4. php curl viewstate,php curl – 发布asp.net viewstate值
  5. C++Gaussian-elimination高斯消元法的实现算法(附完整源码)
  6. 微软dns能做cname吗_为什么域的根不能是CNAME以及有关DNS的其他花絮
  7. 华为交换机恢复出厂设置
  8. Google Maps Android API v2 (2)- 地图对象
  9. iPod Touch也将支持运行Android系统
  10. oracle把所有表查询权限赋与另一用户
  11. 【Vue2.0】—生命周期函数(十)
  12. linux查找当前目录下所有子目录特定文件类型
  13. latex在行末出现百分号的作用
  14. JeecgBoot集成DataV组件库
  15. 2008年12月12号,星期五晴。为人父,却不能尽父责,为人夫,却不能尽夫责。这种痛楚什么时候才能结束。
  16. OMEN惠普HP暗夜精灵5:win10下安装Ubuntu16.04双系统(win10+linux)
  17. windows电脑防火墙关闭,一键系统防火墙关闭工具推荐
  18. 重构机器学习算法的知识体系 - 《终极算法》读书笔记
  19. MATLAB R2019b利用Application Compiler打包文件无法识别runtime问题(亲测可行)
  20. flutter 使用flutter_app_badger推送通知消息清空问题

热门文章

  1. HTTP调试工具:Fiddler 介绍二
  2. Microsoft Enterprise Library---解读Configuration之元数据
  3. 前端优化中使用base64的优缺点
  4. JS----JavaScript中函数
  5. Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight respo
  6. jdk 中英对照 百度网盘_Hadoop部署一jdk与MySQL
  7. PHP中的错误控制运算符
  8. 机器学习(Machine Learning)- 吴恩达(Andrew Ng)-学习笔记
  9. mysql及mybatis知识点_MyBatis知识点详解
  10. vue2.0 prop的使用