5.6 稳健最小二乘法
5.6 稳健最小二乘法
稳健最小二乘法是一种能有效抑制强影响点对回归结果造成影响的方法,利用加权最小二乘法的思想,对残差大的测量点赋予低权重,残差正常的测量点赋予相同权重,则可以抑制异常点对结果的影响,获得较为稳定的估计值,不易受强影响点的影响。假设第 iii 个测量点的残差为 δi\delta_iδi ,权重为 wiw_iwi ,最常用的权重取值方式如下,即著名的Huber函数。
wi={1for∣δi∣<δ0^δ0^∣δi∣for∣δi∣≥δ0^w_i = \left \{ \begin{array}{rc} 1 & for & |\delta_i| < \hat{\delta_0} \\ \frac{\hat{\delta_0}}{|\delta_i|} & for & |\delta_i| \ge \hat{\delta_0} \\ \end{array}\right. wi={1∣δi∣δ0^forfor∣δi∣<δ0^∣δi∣≥δ0^
其中 δ0^\hat{\delta_0}δ0^ 为参数,用来度量残差正常范围,小于此值的测量点是正常点,大于此值的测量点是异常点,权重需要减小。
令对角阵为:D=diag(w1,w2,⋯,wm)D =diag(w_1,w_2,\cdots,w_m)D=diag(w1,w2,⋯,wm) ,则近似解为 x^=(ATDA)−1ATDb\mathbf{\hat{x}} = (A^TDA)^{-1}A^TD\mathbf{b}x^=(ATDA)−1ATDb 。
稳健最小二乘法的关键是如何获得残差 δi\delta_iδi 的初始值,一般采用普通最小二乘法获得近似解的初始估计值 x^0\mathbf{\hat{x}}^0x^0 ,计算初始残差 δi0=bi−ariTx^0\delta^0_i = b_i - \mathbf{a^T_{ri}} \mathbf{\hat{x}}^0δi0=bi−ariTx^0 。由残差 δi0\delta^0_iδi0 估计 δ0^0\hat{\delta_0}^0δ0^0 ,注意一般不能采用残差 δi0\delta^0_iδi0 的标准差作为 δ0^0\hat{\delta_0}^0δ0^0 的估计值,因为标准差易受异常值的影响,不稳健,我们需要稳健的估计值,可以采用残差绝对值 ∣δi0∣|\delta^0_i|∣δi0∣ 的中位数 med(∣δi0∣,i∈[1,m])med(|\delta^0_i|,i \in [ 1,m])med(∣δi0∣,i∈[1,m]) 为估计值。中位数就是一组数,按照大小排序后,位于正中间的元素。最终取 δ0^0=k⋅med(∣δi0∣)\hat{\delta_0}^0 = k\cdot med(|\delta^0_i|)δ0^0=k⋅med(∣δi0∣) ,kkk 是比例系数,一般取 1.99411.99411.9941 =1.345*1.4826,值越大,则抗干扰能力差,无穷大时,权重恒为 111 ,变为普通最小二乘法;值越小,虽抗干扰能力强,但效率低,即不是所有测量点都能对估计起到同等作用,需要更多的测量点才能获得满意结果。
根据Huber函数获得初始权重 wi0w^0_iwi0 ,采用加权最小二乘法获得 x^1\mathbf{\hat{x}}^1x^1 ,然后迭代优化,即根据 x^1\mathbf{\hat{x}}^1x^1 计算残差 δi1\delta^1_iδi1 ,获得估计值 δ0^1=kmed(∣δi1∣)\hat{\delta_0}^1 = k med(|\delta^1_i|)δ0^1=kmed(∣δi1∣) ,根据Huber函数获得初始权重 wi1w^1_iwi1 ,采用加权最小二乘法获得 x^2\mathbf{\hat{x}}^2x^2 。一直进行下去,直到相邻两次近似解足够接近。
该方法最大难点是如何获得近似解的初始估计值 x^0\mathbf{\hat{x}}^0x^0 ,这也是该方法成败的关键。当不存在影响特别大的强影响点时,采用普通最小二乘法不失为一个可行的初始估计值。但如果存在影响特别大的强影响点,则初始估计值 x^0\mathbf{\hat{x}}^0x^0 受强影响点的影响,会偏离理想值,造成残差估计偏差大,导致权重不合理,所以效果会下降。
Huber函数只利用了残差信息来确定权重,其实还可以利用杠杆值,采用 Di=pii(1−pii)2δi2D_i = \frac {p_{ii}}{(1-p_{ii})^2} \delta^2_{i}Di=(1−pii)2piiδi2 来确定权重。
wi={1forDi<D0^D0^DiforDi≥D0^w_i = \left \{ \begin{array}{rc} 1 & for & D_i < \hat{D_0} \\ \frac{\hat{D_0}}{D_i} & for & D_i\ge \hat{D_0} \\ \end{array}\right. wi={1DiD0^forforDi<D0^Di≥D0^
该方法阈值 D0^\hat{D_0}D0^ 不容易确定。
总之,如果不存在强影响点,普通最小二乘法就可以得到很好的结果;如果存在强影响点,但影响不是很大,可以采用稳健最小二乘法。如果强影响点影响很大,稳健最小二乘法由于难以获得很好的初始估计值,效果不会很好。
5.6 稳健最小二乘法相关推荐
- 5.12 QR分解的阻尼倒数法和正则化方法区别
5.12 QR分解的阻尼倒数法和正则化方法区别 基于QR分解的阻尼倒数法目的是改善矩阵 AAA 的病态,正则化方法目的也是改善矩阵 AAA 的病态.区别是阻尼倒数法能获得稀疏解,即最优解分量趋近 00 ...
- Matlab最小二乘法:线性最小二乘、加权线性最小二乘、稳健最小二乘、非线性最小二乘与剔除异常值效果比较
最近我们被客户要求撰写关于最小二乘法的研究报告,包括一些图形和统计输出.matlab软件在拟合数据时使用最小二乘法.拟合需要一个参数模型,该模型将因变量数据与具有一个或多个系数的预测数据相关联.拟合过 ...
- matlab 最小二乘法拟合_计量与论文串讲:最小二乘法
点 为什么要用R 计量经济学作为经济大类下一门非常实用的学科有很强的实践意义.尽管内容庞杂但基本的指导思想却很简单,因此通过一门统计编程语言学习.掌握计量经济学有很大的益处. 目前,市面上已经有多款统 ...
- stata回归?固定效应模型(组内变换OR LSDV最小二乘法)
面板数据分析与Stata应用笔记整理自慕课上浙江大学方红生教授的面板数据分析与Stata应用课程,笔记中部分图片来自课程截图. 笔记内容还参考了陈强教授的<高级计量经济学及Stata应用(第二版 ...
- 多元线性回归(OLS+稳健误)python代码实现
简介 多元线性回归主要适用于应变量和自变量具有较强的线性关系,且主要研究因变量(被解释变量)和自变量(解释变量)之间的相关关系,从而达到解释或者预测的作用.而且一般用于处理横截面数据,横截面数据一般为 ...
- 3D点云处理:拟合平面_优化后的最小二乘法
文章目录 0. 拟合效果 1. 论文:一种稳健的点云数据平面拟合方法 1.1 优化过程 2. 参考 关联内容: 3D点云处理:拟合平面_最小二乘法_1 0. 拟合效果 左(拉格朗日乘子法求解)中(SV ...
- <论文阅读> 基于对称距离流和多扫描对齐的稳健平面里程计(IEEE 2018)
目录 摘要 一.引言 三.视觉里程计的距离流约束 四.优化问题 A. 预加权策略 五.多扫描公式 六.求解器 七.keyscan 选择 八.实施细节 A. 梯度近似 B. 运动过滤器 C. 稳健优化的 ...
- 基于加权最小二乘法的相位解包裹算法
一.背景 1994年,Ghiglia和Romero提出了加权最小二乘迭代解包裹算法,其基本原理是通过加权系数来构造基于泊松方程的迭代公式,该算法运算速度快,并且稳健,还可以通过加权系数去控制平滑误差的 ...
- 机器学习(11)线性回归(1)理论:损失函数(含最小二乘法)、正规方程、梯度下降、回归性能评估(均方差)
目录 一.线性回归基础理论 1.定义与公式 2.线性关系(单特征与双特征) 2-1.单特征线性关系 2-2.双特征平面关系 2-3.其他线性模型 二.线性回归的损失和优化原理 1.损失函数 1.定义 ...
最新文章
- python正方形螺旋绘制_利用Python绘制一个正方形螺旋线
- Spring 中的统一异常处理
- jsr250-api_JSON处理的Java API(JSR-353)–流API
- ES6-Object.is() 和Object.assign()
- stl的multiset和set和priority_queue区别
- 读取4:2:0格式YUV序列的Y分量、U分量以及V分量,并分别保存为.yuv格式(matlab实现)
- 【无标题】IDM + 油猴 + 百度云
- WiFi语音智能家居控制系统(一)
- 基金API数据接口,股票API数据接口
- 580刷590bios_身价瞬间涨几百 RX 480刷bios变身RX 580
- 概率论与数理统计——总结
- Sams-Net: A Sliced Attention-based Neural Network for Music Source Separation论文笔记
- [yishen] 小慕读书web端学习笔记
- 代码审计--17--修复方案汇总(上)
- c++中static变量的存储duration
- oracle怎么启memory,修改memory内存参数,导致数据库启不来
- 超越 ConvNeXt、RepLKNet | 看 51×51 卷积核如何破万卷!
- i3 10100性能参数 i310100怎么样
- squid第11章 重定向器
- win7如何设置wifi热点_win7系统中怎么设置wifi热点?
热门文章
- 《你必须知道的.NET》,前言
- 关于蚁剑/菜刀无法连接shell的一种可尝试解决方案
- Vue项目实战08 : vue之mixin理解与使用
- python树的实现_Python实现简单字典树的方法
- css制作按钮按下去效果
- 场景分割:MIT Scene Parsing 与DilatedNet 扩展卷积网络
- 图像的连通域检测的堆栈算法
- Approximate Nearest Neighbors.接近最近邻搜索
- 使用QT创建PythonGUI程序
- java postdata_java发送post请求,使用multipart form-data的方式传递参数,可实现服务器间文件上传功能...