- Lasso 与弹性网络变量选择:用 L1 惩罚把几百个因子压成可交易少数
你有 500 个因子、2000 个样本,直接全量回归——回测里 R² 漂亮,样本外一塌糊涂。这不是数据问题,是自由度把噪声当成了信号。Lasso 用 L1 惩罚把系数逐个压到 0,弹性网络再补一道相关性缓冲,把「几百个因子」压成「十几个真有信息量的少数」。本文用合成的多因子面板(仅 15 个真信号 + 成组相关)从零跑出系数路径、稀疏度阶梯与 OOS R² 对比,并诚实披露:L1 解决的是过拟合,不是帮你印钞(高阶)。
13 min Chinese - 稀疏组 Lasso 变量选择:把几百个因子压成少数可解释分组
你有 600 个因子、30 个经济含义分组,但只有 6 个组真有信号——普通 Lasso 会把整组零碎系数逐个挑出来,破坏分组结构、也难解释。稀疏组 Lasso(SGL) 用「先组级、再组内」的复合 L1 惩罚,把变量选择变成「整组进/整组出」+「组内精炼」两步。本文用高维(N<P)合成面板从零实现 SGL 的 FISTA 近端梯度求解,5 折交叉验证选 λ,对照 OLS/Lasso/GroupLasso:OLS 样本外 R² 崩到 −3.58(过度记忆),SGL 拉回 +0.18,并找回 86% 真信号组的系数,附完整 Python 与四类真实陷阱(高阶)。
12 min Chinese
返回