本篇推文复现《系统工程理论与实践》顶刊论文的核心方法,拓展Elastic Net方法的对比分析
01|复现任务说明
复现价值:
- • 验证研究可复现性:确保原文献方法的严谨性与结果的可信度
- • 提供研究模板:为同行提供可直接运行、修改的基准代码
- • 方法拓展对比:在原文使用的OLS与Lasso方法基础上,补充实现Elastic Net回归,提供更全面的正则化方法对比视角
本文展示的所有代码、数据预处理步骤及核心模型设定均对应原文描述,未做任意增减,以确保复现的准确性。
02|文献方法复现:OLS与Lasso
我们首先复现了原文的两个核心模型。
OLS基准模型代码
import statsmodels.api as sm# 准备变量:严格按原文定义的CEO特质变量ceo_traits = ['性别_女', '年龄是否在30~40', '年龄是否在40~50', '年龄是否在50~60', "是否含有'生产'背景", "是否含有'研发'背景", ...]# 模型1:仅CEO特质X1 = sm.add_constant(data[ceo_traits])model_ols_base = sm.OLS(y, X1).fit()# 模型3:完整模型(CEO特质+控制变量+行业/年份固定效应)X_full = sm.add_constant(data[ceo_traits + control_vars + industry_dummies + year_dummies])model_ols_full = sm.OLS(y, X_full).fit()
Lasso回归实现
from sklearn.linear_model import Lassofrom sklearn.preprocessing import StandardScaler# 标准化与模型拟合,完全按原文流程scaler = StandardScaler()X_scaled = scaler.fit_transform(X_full.drop('const', axis=1))y_centered = y - y.mean()lasso_model = Lasso(alpha=optimal_lambda, max_iter=10000) # optimal_lambda通过CV确定lasso_model.fit(X_scaled, y_centered)
03|复现结果对照:LASSO方法验证
我们将复现的LASSO回归结果与原文报告的关键结果进行系统比对,以验证变量选择方法的重现性。
结论: 我们的复现结果在系数符号、统计显著性、相对大小以及模型整体解释力(R²)等关键维度上,与原文报告的结果高度一致,成功验证了原文献分析的核心发现与方法的可复现性。
04|方法拓展:Elastic Net对比分析
在复现原文的基础上,我们进一步引入Elastic Net回归,以对比不同正则化方法的特征选择效果。
Elastic Net实现代码
from sklearn.linear_model import ElasticNet# 使用与Lasso相同的最优lambda,并设置l1_ratio为0.5以平衡L1/L2惩罚elastic_net_model = ElasticNet(alpha=optimal_lambda, l1_ratio=0.5, max_iter=10000)elastic_net_model.fit(X_scaled, y_centered)
三种方法系数对比(示例)
| | | Elastic Net系数(λ=0.04, l1_ratio=0.5) |
| | | |
| | | |
| | | |
拓展分析发现
- • Lasso的稀疏性:在给定正则化强度下,Lasso能够将部分不重要变量的系数精确压缩为零,实现了自动特征选择
- • Elastic Net的平衡性:在相同条件下,Elastic Net的系数路径更为平滑稳定,对一些相关性较强的特征,它倾向于同时保留或收缩它们,而非像Lasso那样随机选择一个剔除
05|总结
通过本次复现任务,我们:
- • 成功验证了《系统工程理论与实践》期刊论文的核心结果
- • 拓展对比了Lasso与Elastic Net在变量选择上的不同特点
我们坚持分享严谨、可复现的学术代码,致力于推动研究透明度和学术共同体建设。
欢迎在评论区交流关于文献复现、正则化方法的心得与问题!
参考文献: 易志高, 刘逸飞, 潘镇. CEO特质与企业数字化转型——基于机器学习的变量选择[J]. 系统工程理论与实践, 2025, 45(05):1462-1484.免责声明: 本代码基于公开文献复现,因原始实现细节未完全披露或编码习惯差异,结果可能存在细微偏差,仅供参考。
代码领取方式
转发本推文到朋友圈
添加客服
发送代码编号
发送保留2小时并集齐10个点赞的截图
即可免费领取代码