Elastic Net(弹性网络)正则化是一种结合了L1正则化(Lasso)和L2正则化(Ridge)的混合正则化方法,由Zou和Hastie于2005年提出。它的核心目标是同时实现Lasso的特征选择能力(将不重要特征系数压缩为0)和Ridge的稳定收缩效果(平滑系数、处理多重共线性)。
通俗地说,L1正则化像一把“剪刀”,能把不重要的特征系数直接剪到0;L2正则化像一根“橡皮筋”,能把系数整体拉小但不轻易剪断。Elastic Net同时使用两者:该删的删掉,该留的稳定地收缩。
数学原理:双重惩罚机制
Elastic Net的损失函数在普通线性回归的均方误差基础上,同时加入L1和L2惩罚项:
其中:
如何实现“保留信号、剔除噪声”
1. 特征选择(剔除噪声)
L1惩罚项
促使部分系数精确变为0,从而实现自动剔除不相关或冗余特征。这些被“剪掉”的特征本质上是数据中的噪声或无关信号。
2. 稳定收缩(保留有效信号)
L2惩罚项
对剩余的非零系数做平滑收缩,防止有效信号被过度惩罚,同时缓解多重共线性问题。
3. 群体效应(Grouping Effect)
当多个特征高度相关时,Lasso往往会“随机”只保留其中一个,选择结果不稳定;而Elastic Net借助L2的稳定化倾向,倾向于成组保留相关特征,使模型更一致、更可靠。
四、实战应用与优势
Elastic Net特别适用于以下场景:
以COVID-19预后模型为例,Elastic Net逻辑回归在处理炎症因子等共线生物标志物时,从数百个特征中筛选出11个关键变量,AUC达到0.91,显著优于未正则化的模型。
五、用Elastic Net构建正则化动量预测引擎的量化交易
核心思路
动量策略是量化交易中经典的因子策略,但传统动量因子常面临特征相关性高、噪声干扰大的问题。Elastic Net通过L1+L2双重正则化,能在保留有效动量信号的同时自动剔除噪声因子,构建更稳健的预测模型。
优势与效果
| |
|---|
| 特征选择 | L1正则自动筛选出3-5个核心动量因子,剔除无效噪声 |
| 稳定性 | |
| 回测表现 | |
六、注意事项
参数调优是关键:l1_ratio建议在0.5-0.7间搜索,相关性高时偏向Ridge(低l1_ratio)
避免过度稀疏:可设置最小特征保留数,防止模型只在少数因子上过拟合
监控因子衰减:定期检查系数稳定性,识别动量因子失效迹象