当前位置: 首页 > news >正文

scikit-learn/sklearn学习|弹性网络ElasticNet解读

【1】引言

前序学习进程中,对用scikit-learn表达线性回归、岭回归、套索回归和多任务套索回归进行了初步解读。
线性回归的目的,是将因变量yyy表达成由自变量xxx、线性系数矩阵www和截距bbb组成线性函数式。
线性回归获得函数式:
y=∑i=1nwi⋅xi+b=wTx+by=\sum_{i=1}^{n}w_{i}\cdot x_{i}+b=w^T{x}+by=i=1nwixi+b=wTx+b
对应的均方误差函数计算式为:
L(w,b)=∑i=1n(yi−yi^)2=∑i=1n(yi−(wTxi+b))2L(w,b)=\sum_{i=1}^{n}(y_{i}-\hat{y_{i}})^2=\sum_{i=1}^{n}(y_{i}-(w^Tx_{i}+b))^2L(w,b)=i=1n(yiyi^)2=i=1n(yi(wTxi+b))2在这里,yyy是第i个样本的真实值,y^\hat{y}y^是第i个样本的预测值。
普通线性回归的均方误差将真实值和预测值作差后求平方和即可。

【2】均方误差函数

实际上很多时候数据之间不一定是理想化的线性关系,所以需要对线性关系式进行修正,修正项位于均方误差计算函数中,这个时候就衍生出其他回归方法,至少包括岭回归、套索回归等,各种回归方法的区别就在于均方误差函数的修正项定义方式不一样。

【2.1】Ridge岭回归

Ridge岭回归增加了L2正则化惩罚项:
L(w,b)=∑i=1n(yi−yi^)2+α∑j=1mwj2=∑i=1n(yi−(wTxi+b))2+α∑i=1mwi2L(w,b)=\sum_{i=1}^{n}(y_{i}-\hat{y_{i}})^2+\alpha\sum_{j=1}^{m}w_{j}^{2}=\sum_{i=1}^{n}(y_{i}-(w^Tx_{i}+b))^2+\alpha\sum_{i=1}^{m}w_{i}^{2}L(w,b)=i=1n(yiyi^)2+αj=1mwj2=i=1n(yi(wTxi+b))2+αi=1mwi2在这里,yyy是第i个样本的真实值,y^\hat{y}y^是第i个样本的预测值。
新增加的L2正则化惩罚项为α∑i=1mwi2,其中α≥0\alpha\sum_{i=1}^{m}w_{i}^{2},其中\alpha\geq0αi=1mwi2,其中α0

【2.2】Lasso套索回归

Lasso套索回归的均方误差公式为:
L(w,b)=12n∑i=1n(yi−yi^)2+α∑j=1n∣wj∣=12n∑i=1n(yi−(wTxi+b))2+α∑i=1n∣wi∣L(w,b)=\frac{1}{2n}\sum_{i=1}^{n}(y_{i}-\hat{y_{i}})^2+\alpha\sum_{j=1}^{n}\left | w_{j} \right |=\frac{1}{2n}\sum_{i=1}^{n}(y_{i}-(w^Tx_{i}+b))^2+\alpha\sum_{i=1}^{n}\left | w_{i} \right |L(w,b)=2n1i=1n(yiyi^)2+αj=1nwj=2n1i=1n(yi(wTxi+b))2+αi=1nwi
新增加的L1L1L1正则化惩罚项为α∑i=1m∣wi∣,α≥0\alpha\sum_{i=1}^{m}\left | w_{i} \right |,\alpha \geq0αi=1mwi,α0

【2.3】MultiTaskLasso多任务套索回归

MultiTaskLasso多任务套索回归的均方误差公式为:
L(w,b)=12n∑i=1n(yi−yi^)2+α∑i=1n∑j=1mwi,j2=∑i=1n(yi−(wTxi+b))2+α∑i=1n∑j=1mwi,j2L(w,b)=\frac{1}{2n}\sum_{i=1}^{n}(y_{i}-\hat{y_{i}})^2+\alpha\sum_{i=1}^{n} \sqrt{\sum_{j=1}^{m}w_{i,j}^2}=\\\sum_{i=1}^{n}(y_{i}-(w^Tx_{i}+b))^2+\alpha\sum_{i=1}^{n}\sqrt{\sum_{j=1}^{m}w_{i,j}^2}L(w,b)=2n1i=1n(yiyi^)2+αi=1nj=1mwi,j2=i=1n(yi(wTxi+b))2+αi=1nj=1mwi,j2
同时使用了L1,L2L1,L2L1,L2正则化惩罚项
α∑i=1n∑j=1mwi,j2,α≥0\alpha\sum_{i=1}^{n}\sqrt{\sum_{j=1}^{m}w_{i,j}^2},\alpha \geq0αi=1nj=1mwi,j2,α0

【3】ElasticNet弹性网络

ElasticNet弹性网络的均方误差函数计算式MultiTaskLasso多任务套索回归类似,通过混合L1,L2L1,L2L1,L2正则化范数来修正均方误差:

L(w,b)=12n∑i=1n(yi−yi^)2+α(ρ∑i=1n∣wi∣+1−ρ2∑i=1nwi2)=∑i=1n(yi−(wTxi+b))2+α(ρ∑i=1n∣wi∣+1−ρ2∑i=1nwi2)L(w,b)=\frac{1}{2n}\sum_{i=1}^{n}(y_{i}-\hat{y_{i}})^2+\alpha(\rho \sum_{i=1}^{n}|w_{i}|+\frac{1-\rho}{2}\sum_{i=1}^{n}w_{i}^2)=\sum_{i=1}^{n}(y_{i}-(w^Tx_{i}+b))^2+\alpha(\rho \sum_{i=1}^{n}|w_{i}|+\frac{1-\rho}{2}\sum_{i=1}^{n}w_{i}^2)L(w,b)=2n1i=1n(yiyi^)2+α(ρi=1nwi+21ρi=1nwi2)=i=1n(yi(wTxi+b))2+α(ρi=1nwi+21ρi=1nwi2)

新增加的L1L2L1L2L1L2惩罚项包括三部分:
第一部分α\alphaα为惩罚项的强度,满足α≥0\alpha\geq0α0
第二项ρ∑i=1n∣wi∣\rho \sum_{i=1}^{n}|w_{i}|ρi=1nwiL1L1L1正则化项,它的存在会产生稀疏解,可以使部分系数为0;
第三项1−ρ2∑i=1nwi2\frac{1-\rho}{2}\sum_{i=1}^{n}w_{i}^221ρi=1nwi2L2L2L2正则化项,它的存在可以限制系数的绝对值不过大,实现防止过拟合。
其中ρ∈[0,1]\rho\in[0,1]ρ[0,1],当ρ=1\rho=1ρ=1时弹性网络回到套索回归Lasso,当ρ=0\rho=0ρ=0时弹性网络回到岭回归Ridge。

【4】总结

初步学习了弹性网络ElasticNet的基本概念。

http://www.lryc.cn/news/624822.html

相关文章:

  • LINUX 818 shell:random;for for
  • 咨询进阶——解读咨询顾问技能模型
  • 2025 年世界职业院校技能大赛汽车制造与维修赛道高职组资讯整合
  • Unity开发中的浅拷贝与深拷贝
  • 做一个答题pk小程序多少钱?
  • Golang資源分享
  • USB基础 -- 字符串描述符 (String Descriptor) 系统整理文档
  • C++中内存池(Memory Pool)详解和完整示例
  • Mongodb(文档数据库)的安装与使用(文档的增删改查)
  • 可实时交互的AI生成世界,腾讯发布的AI框架Yan
  • 对象存储 COS 端到端质量系列 —— 终端网络诊断工具
  • EMC PCB 设计规范
  • 上汽通用牵手Momenta,别克至境L7全球首发搭载R6飞轮大模型
  • 用随机森林填补缺失值:原理、实现与实战
  • 深度学习必然用到的概率知识
  • 94、23种设计模式之工厂方法模式
  • Redis--day8--黑马点评--分布式锁(一)
  • 单片机驱动LCD显示模块LM6029BCW
  • 机器学习-决策树:从原理到实战的机器学习入门指南
  • LLM - windows下的Dify离线部署:从镜像打包到无网环境部署(亲测)
  • VectorDB+FastGPT一站式构建:智能知识库与企业级对话系统实战
  • 【Python 小工具】一键把源表 INSERT SQL 转换成目标表 INSERT SQL
  • 华为认证 HCIA/HCIP/HCIE 全面解析(2025 版)
  • Next.js 性能优化:打造更快的应用
  • docker——docker执行roslaunch显示错误
  • Harmonyos之字体设置功能
  • Java任务执行队列的优化
  • 王树森深度强化学习DRL(三)围棋AlphaGo+蒙特卡洛
  • 《Python学习之第三方库:开启无限可能》
  • 【网络安全实验报告】实验六: 病毒防护实验