本书将机器学习技术与数量宏观经济学有机融合,通过案例分析与数学推导,系统展示了如何运用机器学习方法解决高维动态均衡模型问题——特别是含有异质代理人和不完全市场条件下的模型问题,为宏观经济学研究者提供了一部详实的方法指南和案例集锦。
在书中,作者首先阐述机器学习的基本原理及关键概念;然后,介绍如何应用PyTorch进行机器学习,以期为读者提供必要的工具;最后,在介绍典型随机增长模型的传统解法后,作者通过详实的过程演示,一步步指导读者如何基于机器学习方法对标准模型进行高效求解,及对包含各类摩擦的非最优模型进行数值模拟。书中案例配有相关 PyTorch 代码实现,以期帮助读者理解如何将理论概念转化为实际应用。
本书源自作者在中南财经政法大学、对外经济贸易大学等院校所讲授的课程,以及在bilibili网站“中南宏观”个人频道发布的视频课程。本书为攻克计算宏观经济学难题奠定了坚实基础,为宏观经济学研究者提供了创新的关键工具。
作者:冯志钢,湖北省广济县(今武穴市)人;自2009年起,先后在苏黎世大学、普渡大学、伊利诺伊大学厄巴纳-香槟分校、中南财经政法大学从事教学与研究工作;现任美国内布拉斯加大学奥马哈分校经济系终身教授。
主要研究领域涵盖宏观经济学、数量方法与人工智能、公共财政学、劳动经济学及卫生经济学,在相关领域积累了一定的研究经验。于2020年在bilibili网站创建“中南宏观”频道,致力于通过新媒体平台普及经济学知识,深入浅出地讲解宏观经济学理论与前沿动态,构建学术研究与知识传播之间的桥梁。
译者:李小平,中南财经政法大学校长助理、科学研究部部长,入选中宣部文化名家暨“四个一批”人才、国家“万人计划”哲学社会科学领军人才、教育部青年长江学者、湖北省“楚天名师”、湖北省有突出贡献的中青年专家,教育部新世纪优秀人才支持计划获得者,湖北省新世纪优秀人才支持计划获得者,第三批“全国高校黄大年式教师团队”负责人,国家一流本科线下课程“国际商务”负责人。
兼任第一届全国数字经济专业学位研究生教育指导委员会委员、中国宏观经济管理教育学会副会长、湖北省世界经济学会副会长、中国美国经济学会副秘书长、中国世界经济学会常务理事、武汉市政府咨询委员会委员、国家社科基金重大项目和一般项目通讯评审专家等。
第一章 机器学习基础
1.1 通过 Sora 理解机器学习
1.1.1 流形分布定理和低维数据
1.1.2 Sora 的突破与局限性
1.1.3 临界态和物理悖论:机器学习的新前沿
1.2 机器学习与宏观经济学中的均衡
1.2.1 经济模型与物理系统模型的对比
1.2.2 推动机器学习和经济建模进步的几何方法
1.3 机器学习的要素、目标及评估
1.3.1 理解要素
1.3.2 机器学习的目标:泛化
1.3.3 评估性能
1.4 机器学习的三要素
1.4.1 模型
1.4.2 学习准则
1.4.3 优化算法
1.5 泛化与模型选择
1.5.1 泛化误差、过拟合与欠拟合
1.5.2 偏差-方差权衡
1.5.3 评估泛化性能的技术
1.5.4 正则化技术
1.5.5 集成方法
1.5.6 模型可解释性和可说明性
1.6 机器学习的一个简单实例———线性回归
1.6.1 参数学习
1.7 小结
习题
第二章 机器学习中的神经网络
2.1 神经元
2.2 激活函数
2.2.1 神经元的线性变换
2.2.2 神经网络线性变换、Arrow-Debreu 资产模型和流形分布定理
2.2.3 通过激活函数进行非线性变换
2.2.4 Sigmoid 函数
2.2.5 Hard-Logistic 和 Hard-Tanh 函数
2.2.6 ReLU 函数
2.2.7 Swish 函数
2.2.8 GELU 函数
2.2.9 Maxout 单元
2.2.10 选择激活函数
2.3 网络结构
2.4 前馈神经网络
2.4.1 通用近似定理
2.4.2 机器学习中的应用
2.4.3 参数学习
2.4.4 Dropout 技术
2.5 反向传播算法
2.5.1 反向传播算法的数学基础
2.5.2 神经网络中反向传播的示例
2.5.3 优化与改进
2.6 自动梯度计算
2.6.1 数值微分
2.6.2 符号微分
2.6.3 自动微分
2.7 小结
习题
第三章 PyTorch 与机器学习
3.1 PyTorch 简介
3.1.1 什么是 PyTorch?
3.1.2 使用 PyTorch 进行机器学习的优势
3.1.3 安装 PyTorch
3.1.4 PyTorch 基础
3.2 PyTorch 中的张量
3.2.1 什么是张量? 理解 PyTorch 的核心数据结构
3.2.2 张量操作
3.3 在 PyTorch 中构建神经网络
3.3.1 理解神经网络的结构
3.3.2 激活函数
3.3.3 损失函数
3.3.4 在 PyTorch 中优化算法
3.4 准备训练数据
3.4.1 生成用于回归的随机数据
3.4.2 创建 PyTorch 数据集
3.4.3 数据加载器和批处理
3.4.4 数据变换和增强
3.5 训练模型
3.5.1 Autograd:PyTorch 的自动微分引擎
3.5.2 模型训练和优化
3.5.3 定义模型架构
3.5.4 初始化模型和设备选择
3.5.5 训练循环
3.5.6 监控训练进度
3.6 保存和加载模型
3.6.1 保存训练好的模型参数
3.6.2 加载预训练模型
3.6.3 在动态宏观模型中的应用
3.7 超参数调优
3.7.1 理解超参数
3.7.2 超参数调优技术
3.7.3 使用 PyTorch 的内置超参数调优工具
3.8 使用 PyTorch 训练回归模型
3.9 JIT 编译加速执行
3.10 小结
习题
第四章 随机增长模型的数值方法
4.1 模型设置
4.1.1 社会规划者问题
4.1.2 求解方法
4.2 扰动法
4.3 投影法
4.3.1 有限元方法
4.3.2 切比雪夫多项式的谱方法
4.3.3 Smolyak 算法
4.3.4 与神经网络的联系
4.4 值函数迭代
4.5 不同求解方法的表现
4.6 小结
习题
第五章 通过机器学习求解动态均衡模型
5.1 消费-储蓄问题
5.2 深度学习解法
5.2.1 生命周期回报
5.2.2 欧拉方程
5.2.3 贝尔曼方程
5.3 PyTorch 实例
5.4 深度学习方法的优势
5.5 小结
习题
第六章 通过机器学习分析异质代理人模型
6.1 具有总量不确定性的异质代理人模型
6.1.1 经济环境
6.1.2 竞争均衡
6.2 主要计算挑战
6.2.1 将分布作为状态变量
6.2.2 分布的演化
6.3 基于机器学习的算法
6.3.1 基于直方图的分布近似
6.3.2 基于神经网络的函数近似
6.3.3 值函数和策略函数迭代算法
6.4 小结
习题
第七章:强化学习与非最优经济体
7.1 经济环境
7.1.1 家庭
7.1.2 政府
7.1.3 政府问题的递归表示
7.2 均衡的计算
7.2.1 集合 Ω 的刻画
7.2.2 通过机器学习计算均衡
7.2.3 数值算法概述
7.3 小结
习题
参考文献