R 加权最小二乘 代码_R语言基础及稳健回归实现

本文介绍了R语言中的稳健回归方法,包括Huber损失和Bisquare损失的M估计。通过修改经典最小二乘回归的目标函数,减少异常值的影响,实现了更稳健的回归分析。文中提供了R代码示例,展示了如何使用rlm函数进行不同损失函数的选择,并通过图形对比了不同稳健回归方法的效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注:本文是王桢罡对“R语言基础及稳健回归实现”的介绍

R语言简介

R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。R是一套由数据操作、计算和图形展示功能整合而成的套件。包括:有效的数据存储和处理功能,一套完整的数组(特别是矩阵)计算操作符,拥有完整体系的数据分析工具,为数据分析和显示提供的强大图形功能,一套(源自S语言)完善、简单、有效的编程语言(包括条件、循环、自定义函数、输入输出功能)。常被用于统计分析,是一种极具分享精神的语言环境!

两种稳健回归方法(Huber损失和Bisquare损失的M估计)

稳健回归

稳健回归(robust regression)是统计学稳健估计中的一种方法,其主要思路是将对异常值十分敏感的经典最小二乘回归中的目标函数进行修改。经典最小二乘回归以使误差平方和达到最小为其目标函数。因为方差为一不稳健统计量,故最小二乘回归是一种不稳健的方法。不同的目标函数定义了不同的稳健回归方法。常见的稳健回归方法有:最小中位平方(least median square;LMS)法、M估计法等。

M估计

M 估计是基于最小二乘估计发展起来的一种抗差估计(Robust Estimation)方法。它实质上包含了最小二乘估计和很多稳健估计方法的一种广义类。其思想就是通过最小化损失函数的方法来估计参数。不同的方法选择不同的损失函数来达到不同的稳健效果。

  • Huber损失
cfb585e557c4d46c1b1d065970293b33.png

上式给出了Huber损失的函数表达式,其中δ是事先给定的,常用值为1.345。y代表真实值,f(x)表示拟合值。

5273d5862fb0377b64f52cd5a418ad36.png

可以看出,当一个点的真实值远离群体时,它与其拟合值就越远,但这种“远”所带来的损失的增长速度是比较慢的(此处的比较慢,是相对于最小二乘而言的)。所以这种损失函数,实际上控制了离群点的权重,使得它的影响力没有那么高,最终达到稳健的效果。

  • Bisquare损失(也称Biweights)
a787e22d9edb3ff15933b3040c5dc23d.png

上式给出了Bisquare损失的函数表达式,其中c是事先给定的,常用值为4.685,c决定了函数的拐点。r就是真

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值