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

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

注:本文是王桢罡对“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)
R语言,可以使用稳健回归方法来实现加权Logistic回归稳健回归是通过修改经典最小二乘回归的目标函数来降低对异常值的敏感性。其,M估计是一种常见的稳健回归方法之一。 下面是一个使用R语言进行加权Logistic回归代码示例: ```R # 加载所需的包 library(robustbase) # 创建加权Logistic回归模型 model <- glmrob(dependent_variable ~ independent_variables, data = dataset, family = binomial(link = "logit"), method = "MM", weight = weights) # 输出模型的摘要信息 summary(model) ``` 在上述代码,`dependent_variable`是因变量,`independent_variables`是自变量,`dataset`是数据集,`weights`是样本权重。`family = binomial(link = "logit")`指定了Logistic回归的二项分布和logit链接函数。`method = "MM"`表示使用M估计方法进行稳健回归。 请注意,这只是一个示例代码,具体的实现可能会根据你的数据和需求有所不同。您需要根据实际情况进行相应的调整和修改。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [代码 基于Logistic回归模型评估企业还款能力代码](https://download.csdn.net/download/s13166803785/85545094)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [R 加权最小二乘 代码_R语言基础稳健回归实现](https://blog.csdn.net/weixin_39687990/article/details/111048918)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值