弹性网惩罚项的可视化分析(R语言)
目录
- 0引言
- 1、函数构建
- 1.1代码
- 1.2图片
- 1.3动图
- 2、总结
0引言
在博客《变量选择——lasso、SCAD、MCP的实现(R语言》中介绍了R语言做变量选择常用的函数和包,其中msaenet和glmnet
是做的弹性网,弹性网是岭回归和lasso类惩罚的回归。下面以二维为例,介绍岭回归、lasso、弹性网惩罚项的区别,因为我们知道惩罚回归是似然函数或者最小二乘求条件极值,具体的形式以限制条件给出,给定常数C有:
岭回归,
x 2 + y 2 = C , x^2 + y^2=C, x2+y2=C,
lasso:
∣ x ∣ + ∣ y ∣ = C , |x|+|y|=C, ∣x∣+∣y∣=C,
弹性网,给定0-1的 α \alpha α有:
α ( ∣ x ∣ + ∣ y ∣ ) + ( 1 − α ) ( x 2 + y 2 ) = C . \alpha (|x|+|y|)+(1-\alpha)(x^2+y^2)=C. α(∣x∣+∣y∣)+(1−α)(x2+y2)=C.
可以看出当 α = 1 \alpha=1 α=1时退化为lasso,当 α = 0 \alpha=0 α=0时退化为岭回归。
下面取C=1,对上述三个可行域可视化。
1、函数构建
1.1代码
# 2.2函数调用
O <- par(mfrow = c(2, 3))
netplot(C = 1, alpha = 0)
text(0,0.8,paste0("alpha = ",0),col = "blue", cex = 4)
netplot(C = 1, alpha = 0.1)
text(0,0.8,paste0("alpha = ",0.1),col = "blue", cex = 4)
netplot(C = 1, alpha = 0.2)
text(0,0.8,paste0("alpha = ",0.2),col = "blue", cex = 4)
netplot(C = 1, alpha = 0.5)
text(0,0.8,paste0("alpha = ",0.5),col = "blue", cex = 4)
netplot(C = 1, alpha = 0.8)
text(0,0.8,paste0("alpha = ",0.8),col = "blue", cex = 4)
netplot(C = 1, alpha = 1)
text(0,0.8,paste0("alpha = ",1),col = "blue", cex = 4)
par(O)
1.2图片
1.3动图
2、总结
最后希望可以帮助大家学习R语言。水平有限发现错误还望及时评论区指正,您的意见和批评是我不断前进的动力。当然如果有更好的改进方案欢迎评论区交流。
本文的代码已整理好,实在刚需移步下面链接下载研究。
弹性网惩罚项的可视化分析(R语言)相关推荐
- 【计算机专业毕设之基于python猫咪网爬虫大数据可视化分析系统-哔哩哔哩】 https://b23.tv/jRN6MVh
[计算机专业毕设之基于python猫咪网爬虫大数据可视化分析系统-哔哩哔哩] https://b23.tv/jRN6MVh https://b23.tv/jRN6MVh
- 玩转数据可视化之R语言ggplot2:(六)统计变换绘图:包括加权绘图、数据分布图、曲面图、图形重叠处理等
玩转数据可视化之R语言ggplot2
- 玩转数据可视化之R语言ggplot2:(八)ggplot2绘制空间地理数据图
玩转数据可视化之R语言ggplot2
- 玩转数据可视化之R语言ggplot2:(三)ggplot2实现将多张图放在一起,包括并排和插图绘制(快速入门)
玩转数据可视化之R语言ggplot2
- 玩转数据可视化之R语言ggplot2:(七)对图形添加注释和标签(包含标题、坐标轴、参考线和高亮等注释方法)
玩转数据可视化之R语言ggplot2
- r语言npsurv_10生存分析+R语言代码surv.pdf
10生存分析R语言代码surv 生存函数和危险函数 生存分析数据的 Cox 回归模型 生存分析 R 软件陪同 吴喜之 December 20, 2014 . . . . . . . . . . . . ...
- 网易云音乐评论 可视化分析
之前已经用python获取了网易云音乐的评论数据,下一步的工作就是数据分析了.一般数据分析无非是采用(统计)数字.图或者表的形式来展现数据之中隐含的信息.其中图和表显然是最直观的了.所以这里我使用可视 ...
- r语言进行go富集分析_GO富集分析可视化:R语言GOplot包
找R语言做弦图的教程的时候发现了这个包:GOplot.其主要功能是可视化GO富集分析的结果.自己应该会用得到. 第一步是学习其帮助文档中的例子,然后学习如何准备自己的数据,并利用这个包中的函数来绘图 ...
- 带南海九段线分位数地图可视化(R语言版)
今天带来一篇承诺虾神的可视化博客.内容是使用R语言进行带南海九段线分位数地图可视化.虾神的原博文地址如下(Python版). Python实现带南海九段线分位数地图完整可视化版本(附代码及数据) 19 ...
最新文章
- Django-model中的Querysets
- cve -2016-6663 mysql 本地提权
- Android开发中Edittext设置密码显示隐藏的多种方法
- Power BI:M与DAX以及度量与计算列
- MySQL笔记-time类型的使用(hh:mm:ss)及time类型对比
- MNIST机器学习入门(二)
- python vb 哪个好学_最难学的七大编程语言,VB 第一,Python垫底,看你学的排第几...
- 四叶草启动linux黑屏,四叶草剧场黑屏进不去解决方法一览
- Struts2之异常处理
- Mac: Failed to connect to raw.githubusercontent.com port 443: Connection refused error:
- 青少年编程Playgrounds之一
- ansys经典界面分析工字钢_ANSYS经典界面讲解.ppt
- cad快看_CAD三维这样材质贴图,你学会了吗 ?
- ionic 中的折线图与柱状图
- java开发测试工具
- 学术论文中常见的英文简写
- 2018年2月Ivanti英万齐(前LANDESK蓝代斯克)关闭中国研发中心
- appium用list定位相册里的图片
- python实现有道词典翻译
- 蓝牙AOA到达角算法(二)
热门文章
- sql注入(最简单的注入)
- 计算机学什么怎么学会的,零基础学习电脑怎么学 初学电脑者先学什么
- MCC、MNC、PLMN、IMSI、IMEI、ICCID、MSISDN
- RCS融合通信相关资料
- 一个人越聪明他大脑皮层神经元之间的联系就越少
- 计组 | 【Cache】主存映射cache容量及cache写策略
- 公共管理学试题及参考答案
- Java编程-----题目:计算 1! + 2! + 3! + 4! +... + 10! 	说明:4! 表示4的阶乘。4的阶乘是:1 * 2 * 3 * 4。
- 1行代码爬CSDN热榜,Python哈啤酒式写法
- 机器学习聚类——实验报告