问题二:碳排放影响因素识别与预测模型构建

数据区间:2000-2024 年;2023-2024 年 CO2 使用附件1日度 Total 聚合,2025 年为不完整年,不进入建模。
主模型:扩展 STIRPAT + Ridge Regression;OLS 保留为共线性诊断基准;LASSO/PLS 用于稳健性对照。

一、任务理解与模型路线

问题二的核心不是单纯预测,而是回答“哪些因素驱动碳排放、影响有多大、模型是否可靠”。因此采用环境经济学中可解释性较强的扩展 STIRPAT 模型,并用 VIF 证明多重共线性,再以 Ridge 作为主解释模型。

模型形式为:

$$\ln C_t = \alpha + \beta_1\ln P_t + \beta_2\ln A_t + \beta_3(\ln A_t-\overline{\ln A})^2 + \beta_4\ln U_t + \beta_5\ln ES_t + \beta_6\ln IS_t + \beta_7\ln T_t + \varepsilon_t$$

其中 T 定义为单位 GDP 能耗,数值越高表示技术效率越低;因此 lnT 的正系数表示能耗强度上升会推高排放。

二、数据口径与一致性校核

  • 建模样本量:25 年。
  • 2000-2022 年 CO2 以 CEADs 全国表观碳排放清单为准;2023-2024 年 CEADs 尚未覆盖,使用附件1日度 Total 聚合延展。
  • 2019-2022 年重叠期最大绝对误差为 6.84%(2019 年),其中 2019 年超过 5% 阈值;因此附件1延展结果应作为口径校核后的近似延展,而不是与 CEADs 完全同口径的数据。
  • 2019 年误差偏大的可能原因包括:日度高频数据与表观排放清单在核算边界、能源品种折算、工业过程排放处理和事后修订上的差异。
  • GDP 口径已按最终建模方案统一为 2000 年不变价:以 2000 年基期当年价 GDP 作为初始水平,利用年度实际 GDP 增速递推不变价 GDP,并用同一平减因子将人均 GDP 转为 2000 年价格;第二产业占比仍按现价产业增加值占现价 GDP 计算。
  • 2024 年 CO2 排放:11901.4 Mt;2000年不变价人均GDP:46689 元;煤炭占比:53.2%。

附件1与CEADs一致性

index CEADs_CO2_Mt Attachment_CO2_Mt relative_error_pct
2019 1.043e+04 1.115e+04 6.839
2020 1.074e+04 1.119e+04 4.246
2021 1.13e+04 1.162e+04 2.868
2022 1.172e+04 1.163e+04 -0.8

三、多重共线性诊断

变量解释 VIF
城镇化 U 2197
人均GDP A 1127
人口规模 P 423.7
煤炭占比 ES 190.8
能耗强度 T 64.08
EKC二次项 55
第二产业 IS 43.49

最大 VIF=2197.0,显著超过 10,说明 OLS 系数会因宏观变量共同趋势而不稳定。后续以 Ridge 作为主模型是必要的,而不是装饰性替换。

四、OLS 基准模型诊断

  • $R^2$=0.9969,调整 $R^2$=0.9957。
  • Shapiro-Wilk p=0.3502;Breusch-Pagan p=0.3475;Durbin-Watson=1.507。
  • 对 n=25、解释变量约 k=7 的样本,Durbin-Watson 统计量 1.507 处于常用 5% 临界表的无法判断区间附近,不能据此明确接受或拒绝无自相关假设;因此本文不把 OLS 残差独立性作为强结论。
  • 这些检验用于说明 OLS 的拟合表象与统计风险:高 $R^2$ 并不自动代表系数解释可靠,尤其在 VIF 很高时。

五、模型对比与最终选择

模型 参数 R2_ln RMSE_ln MAPE_pct LOOCV_MSE_ln AIC BIC 有效参数数
OLS 0.9969 0.02263 1.905 0.00116 -173.4 -163.7 8
Ridge 0.02929 0.9967 0.02351 1.855 0.00092 -174.2 -166.1 6.652
LASSO 0.00036 0.9964 0.02461 1.884 0.00092 -173.2 -165.9 6
PLS 5 0.9968 0.02308 1.832 0.00089 -176.4 -169.1 6

Ridge 通过留一交叉验证选择 alpha=0.029286。从纯预测误差看,PLS 的 LOOCV-MSE 最低;但 Ridge 的岭迹、弹性系数和经济学解释更透明,因此作为论文主解释模型,PLS/LASSO 作为稳健性与预测性能对照。LASSO 的 alpha 选择已改为每个留一折内重新拟合 StandardScaler,避免标准化信息泄露。
Ridge 的 AIC/BIC 使用有效自由度 $df(\lambda)=1+tr[Z(Z’Z+\lambda I)^{-1}Z’]$,而非简单按 8 个参数硬计,因而与正则化模型的复杂度更匹配。

六、Ridge 弹性系数解释

变量解释 系数
人口规模 P 0.0448
人均GDP A 0.5841
EKC二次项 0.0909
城镇化 U 1.489
煤炭占比 ES 1.077
第二产业 IS 1.193
能耗强度 T 0.1302
  • 人口规模 P:人口规模每上升1%,碳排放约增加0.04%。
  • 人均GDP A:人均GDP每上升1%,碳排放约增加0.58%,但需结合EKC二次项理解边际效应。
  • EKC二次项:EKC二次项系数为0.091,用于识别经济增长边际排放效应是否递减。
  • 城镇化 U:城镇化率每上升1%,碳排放约增加1.49%。
  • 煤炭占比 ES:煤炭占比每上升1%,碳排放约增加1.08%,体现能源结构锁定效应。
  • 第二产业 IS:第二产业占比每上升1%,碳排放约增加1.19%,反映产业结构偏重的排放压力。
  • 能耗强度 T:能耗强度每上升1%,碳排放约增加0.13%;技术进步体现为能耗强度下降。

人口项在本次 2000 年不变价 GDP 口径下恢复为正系数,方向与人口规模扩大带来能源服务需求增加的直觉一致;但由于宏观变量仍高度共线,人口总量效应仍建议与 LMDI 贡献共同解读。

EKC 判定:Ridge 结果未同时满足 $\beta_2>0, \beta_3<0$,不能严谨声称存在倒 U 型环境库兹涅茨曲线;论文中应表述为“经济增长的边际影响已由二次项控制,但倒 U 证据不足”。

七、LMDI 辅助归因

为与回归结论交叉验证,采用扩展 LMDI 将 2000-2024 年 CO2 增量分解为人口、经济富裕、城镇化、能源结构、产业结构、能耗强度和残差项贡献。这里的剩余项 $R$ 不是误差垃圾桶,而是显式吸收:能源碳排放因子变化、非煤能源内部结构变化、工业过程排放、单位换算常数、统计口径差异以及未建模的技术/政策因素。

index 2000-2024累计贡献_Mt
经济富裕A 1.359e+04
城镇化U 4668
人口规模P 769.9
综合残差R -662
产业结构IS -2276
煤炭结构ES -2824
能耗强度T -4581

主要上行驱动为:经济富裕A、城镇化U、人口规模P;主要下行约束为:产业结构IS、煤炭结构ES、能耗强度T。

八、可视化文件

  • output_q2_driver_trends.png:核心变量指数化演化
  • output_q2_corr_heatmap.png:对数变量相关矩阵
  • output_q2_vif.png:VIF共线性诊断
  • output_q2_ridge_trace.png:岭迹图
  • output_q2_model_fit.png:模型拟合与残差序列
  • output_q2_residual_diagnostics.png:残差分布与QQ图
  • output_q2_coefficients.png:弹性系数对比
  • output_q2_lmdi.png:LMDI贡献分解

九、局限性

  1. 2000 年不变价 GDP 由官方实际 GDP 增速递推得到,属于链式固定基期近似;若后续获得国家统计局完整不变价 GDP 表,可直接替换该序列并重跑模型。
  2. 样本量仅 25 年,变量间共同趋势明显,因此本文不把 OLS 单个 p 值作为主要决策依据,而以 Ridge/PLS 稳健方向、交叉验证误差和经济学解释共同判断。
  3. 2023-2024 年排放由附件1日度数据聚合得到。2019-2022 重叠期显示误差逐年收敛,但 2019 年仍超过 5%,因此延展年份应在论文中作为口径近似处理。

由 q2_full_solution.py 自动生成。