译者序
这是一本将机器学习算法应用于金融与投资领域的入门书籍。本书通俗易懂,没有令人生畏的数学公式,还包含丰富的Python代码,方便读者更好地理解书中的内容。如果你计划在金融与投资领域应用机器学习技术,那么本书是你的极佳选择。
本书聚焦于概率机器学习模型在金融与投资领域的应用。选择使用概率机器学习模型有诸多原因。首先,难以用模型刻画金融与投资领域的所有变量,模型的参数、输入和输出都不可避免地存在错误和不确定性,而概率机器学习模型能够处理这些错误与不确定性,将它们视为问题的特征而非缺陷;其次,概率机器学习模型可以融合个人经验和机构知识,使得模型既具备从数据中学习的能力,又能借鉴先验知识,从而可以避免失败的投资可能带来的毁灭性后果;最后,概率模型作为一种生成式模型,具备对自身局限性的认知能力,不仅能够提供预测结果,还能给出预测结果的置信度。
此外,本书还介绍了概率论、机器学习以及金融与投资领域的一些有趣的知识,如贝叶斯定理的起源、频率学派和贝叶斯学派(本书称为认知学派)的分歧、蒙提霍尔问题(也叫三门问题)中的禀赋效应、检察官谬误、没有免费午餐定理以及赌徒破产定律等。这些内容不仅对金融与投资领域的从业者大有裨益,对其他领域的读者也有所启发。
正如作者所述,本书的读者对象为金融与投资领域具有独立思考能力的从业者。相信阅读完本书之后,读者不但能够掌握金融与投资领域概率机器学习模型的相关知识与技能,还将欣赏到作者犀利的批判性思维及其对诸多问题的独到见解。
李波
前言
生成式人工智能,尤其是最近风靡一时的 ChatGPT-4 ,是当今备受瞩目的技术。 概率机器学习(Machine Learning ,ML)是一种生成式人工智能,非常适用于金融和投资领域。与 ChatGPT 所使用的深度神经网络不同,概率机器学习模型不是 黑盒模型,能够以相当透明的方式根据结果推断原因。这对金融和医疗等受到严格监管的行业来说很重要,因为你必须向众多利益相关者解释模型决策的依据。
使用概率机器学习,你能够系统地将个人与机构的经验和知识编码到机器学习模型中,以保持竞争优势。与传统机器学习相比,概率机器学习能够根据观测数据和模型假设,生成高质量的模拟数据和模拟事实,而不受观测数据的规模 和时序的限制。概率模型是一种生成式模型,它们知道自己的局限性,并通过扩大推理和预测范围来真实地表达自己的无知。与之不同,ChatGPT不会提供 类似的可度量的值来描述模型对幻觉的不自信程度。从概率机器学习的角度来看,ChatGPT 的幻觉就是谎言。
所有的机器学习模型都基于以下假设:在训练数据或样本内数据中发现的模式 将在测试数据或样本外数据中持续存在。然而,由于统计模型固有的基础缺陷, 非概率机器学习模型在面对从未训练或测试过的数据模式时,会做出极差的推 断和预测。此外,这些机器学习模型在完成这一切时极其自信,而不会提醒决 策者注意模型决策中的不确定性。
在金融和投资决策中越来越多地采用非概率机器学习模型,可能会给个人和整个社会带来灾难性的后果,包括公司破产和经济衰退。在根据未知数据做出 推断和预测时,所有机器学习模型都必须量化其推断或预测的不确定性,以便在复杂且不确定的世界中做出明智的决策。一些领先的公司已经意识到人工智能的局限性,并着手开发概率人工智能技术,以解决更加复杂的问题。最近, Google 公司推出了 TensorFlow Probability,扩展了其成熟的 TensorFlow 平台。 同样,Meta 公司和 Uber 公司也引入 Pyro,扩展了 PyTorch 平台。目前,最流 行的开源概率机器学习平台是 PyMC 和 Stan,其中 PyMC 由 Python 编写,而 Stan 由 C 编写。本书使用用户友好且拥有庞大生态库的 Python 编程语言。
读者对象
本书的主要读者是金融和投资领域有思想的从业者。有思想的从业者是指那些 不想按照手册指示行事的人。他们希望理解技术背后的基本概念,以及为什么 必须采用某一个流程、模型或技术。通常,他们求知欲较强,喜欢学习。与此 同时,他们并不寻求烦琐的数学证明或阅读冗长的学术专著。本书每一章都提 供许多参考文献供读者参考,帮助他们寻找本书提到的概念和推导背后的数学 和技术细节。
有思想的从业者可以是个体投资者、分析师、开发人员、经理、项目经理、数 据科学家、研究员、投资组合经理或量化交易员。这些有思想的从业者明白, 他们需要不断学习新概念和技术,以推进业务和职业生涯的发展。对新概念和 技术的深度理解使他们有信心应用所学的知识,为他们遇到的挑战开发创造性 的解决方案。这种深度理解也为他们提供了一个框架,使他们可以轻松地探索 和学习相关技术与概念。
本书假设读者对金融、统计学、机器学习和 Python 有基本的了解,但不要求读 者读过指定的书籍或掌握指定的技能。
创作动机
目前,关于通用概率机器学习的书籍相对较少,而且没有一本是专门致力于金 融和投资问题的。由于金融和投资领域的特殊性和复杂性,任何形式通用机器 学习的简单应用,特别是直接应用概率机器学习,都注定要失败。深入了解这 些领域对成功至关重要。本书旨在为读者提供扎实的概率机器学习基础知识,并使用简单的数学和 Python 代码教会读者将其应用于金融和投资问题中。
我写这本书还有另一个原因。时至今日,书籍仍然是一种严肃的信息传递媒介。 我想提醒读者,现代金融理论和传统统计推断方法仍然存在严重缺陷。令人愤 慨的是,尽管这些看似科学的方法存在深刻的缺陷而且表现乏善可陈,但这些 方法仍然在学术界传授,并在工业界被付诸实践。
我们正处于人工智能技术发展的十字路口,大多数专家预测人工智能的使用将 以指数级速度增长,从根本上改变我们的生活方式、工作方式和交往方式。人工智能系统即将接管人类是科幻小说中的情节,因为当今即使是最先进的人工智能系统也缺乏幼儿所具有的常识。真正清晰而现实的危险是,不太聪明的人可能会使用传统金融和统计学中的虚假模型来管理强大的专家。这很可能会导 致比以往更大的灾难,而且灾难来临的速度会更快。
内容导航
本书的内容在逻辑上可以分为两部分,交织在每一章中。一部分研究金融和投 资领域流行的经济、统计和机器学习模型,并说明这些模型为什么没有用。另一部分探讨为何概率机器学习是这些领域更准确、更有用的模型。本书的重点是让你理解这一复杂的多学科领域的基础知识,因此只涵盖关键概念和应用。 本书每一章都介绍至少一个金融和投资领域的主要概念,并使用 Python 代码付 诸实践。本书的组织结构如下:
第 1 章探讨理论金融学的一些不足之处,解释困扰所有金融模型的三种错误, 以及为什么需要一种系统化的方法来量化推断和预测的不确定性。该章将解释 为什么概率机器学习为金融和投资提供了一个有用的框架。
第 2 章借助蒙提霍尔问题(三门问题)回顾概率论的基本概念,将探讨概率的含义,并探索遍及世界的三种不确定性。该章还将探讨归纳问题及其算法重述、 没有免费午餐(No Free Lunch,NFL)定理,以及它们是如何支撑金融、投资 和概率机器学习的。
第 3 章回顾一些重要的统计概念,解释作为最重要的数值技术之一的蒙特卡罗模拟(Monte Carlo Simulation ,MCS)如何生成近似概率来解决难以解析的问题。
第 4 章揭露科研和工业界常用的传统统计推断方法的欺骗行为,并解释为什么它们会导致社会学和经济学充满虚假研究。
第 5 章将探讨概率机器学习框架,并展示如何将数据推理和新数据模拟在逻辑上无缝地集成到这种生成模型中。
第 6 章揭示传统人工智能系统的风险,特别是它们缺乏基本常识,以及它们不 了解自身的局限性,这给所有利益相关者和整个社会都带来了巨大的风险。马尔可夫链蒙特卡罗模拟是一种依存抽样方法,用于解决金融和投资领域的复杂问题。
第 7 章解释概率机器学习本质上是一种集成机器学习。该章将向读者展示如何 使用 PyMC 、Xarray 和 ArviZ Python 库为金融和投资领域的回归问题开发生成 式线性集成模型。
第 8 章展示如何将生成式集成模型应用于金融和投资中的风险管理和资本配置 决策。该章将探讨遍历性的含义和使用集成平均进行金融决策的陷阱,还将研 究包括凯利准则在内的资本配置算法的优缺点。
目录
前言1
第1章 概率机器学习的需求9
1.1 金融学不是物理学10
1.2 所有金融模型皆有谬误且大多无用12
1.3 三类建模错误14
1.3.1 模型错误14
1.3.2 模型参数错误15
1.3.3 模型不能适应市场的结构性变化而导致的错误17
1.4 概率金融模型18
1.5 金融人工智能和机器学习20
1.6 概率机器学习23
1.6.1 概率分布24
1.6.2 知识集成25
1.6.3 参数推断26
1.6.4 生成式集成模型26
1.6.5 不确定性认知27
1.7 本章小结27
参考文献28
扩展阅读29
第2章 不确定性的分析与量化30
2.1 蒙提霍尔问题31
2.2 概率公理33
2.3 反概率公式36
2.4 模拟解40
2.5 概率的含义42
2.5.1 频率学派的概率43
2.5.2 认知概率44
2.5.3 相对概率47
2.6 风险与不确定性48
2.7 三种不确定性50
2.7.1 偶然不确定性51
2.7.2 认知不确定性53
2.7.3 本体论不确定性56
2.8 没有免费午餐定理57
2.9 投资与归纳问题60
2.10 问题归纳、没有免费午餐定理与概率机器学习64
2.11 本章小结65
参考文献66
第3章 用于量化输出不确定性的蒙特卡罗模拟68
3.1 蒙特卡罗模拟:概念验证69
3.2 关键统计概念71
3.2.1 均值和方差71
3.2.2 期望值:概率加权算术平均值72
3.2.3 为什么用波动率来度量风险是荒谬的73
3.2.4 偏度与峰度74
3.2.5 高斯分布或正态分布75
3.2.6 为什么使用波动率会低估金融风险76
3.2.7 大数定律79
3.2.8 中心极限定理79
3.3 蒙特卡罗模拟的理论基础81
3.4 软件项目的估值82
3.5 构建一个健全的蒙特卡罗模拟系统85
3.6 本章小结87
参考文献88
第4章 传统统计方法的风险89
4.1 反向谬误90
4.2 零假设显著性检验中的检察官谬误96
4.3 信心游戏100
4.3.1 股票的单因素市场模型102
4.3.2 基于Statsmodels的简单线性回归103
4.3.3 和的置信区间106
4.4 揭秘信心游戏107
4.4.1 总体参数概率性陈述错误107
4.4.2 置信区间概率性陈述错误108
4.4.3 抽样分布概率性陈述错误108
4.5 本章小结111
参考文献112
扩展阅读113
第5章 概率机器学习框架114
5.1 探究反概率规则115
5.2 估计债务违约的概率119
5.3 用预测概率分布生成数据124
5.4 本章小结127
扩展阅读129
第6章 传统人工智能系统的风险130
6.1 AI系统:缺乏常识是危险的132
6.2 为什么最大似然估计模型在金融领域失败了133
6.2.1 盈余预期的最大似然估计模型134
6.2.2 盈余预期的概率模型137
6.3 马尔可夫链蒙特卡罗模拟143
6.3.1 马尔可夫链143
6.3.2 Metropolis抽样145
6.4 本章小结149
参考文献150
第7章 生成式集成概率机器学习151
7.1 最大似然回归模型153
7.1.1 市场模型154
7.1.2 模型假设154
7.1.3 基于最大似然估计的参数学习155
7.1.4 基于置信区间的参数不确定性量化156
7.1.5 模型输出的预测与模拟156
7.2 概率线性集成模型156
7.2.1 先验概率分布P(, , e)158
7.2.2 似然函数P(Y| , , e, X)159
7.2.3 边缘似然函数P(Y|X)159
7.2.4 后验概率分布P(, , e| X, Y)159
7.3 使用PyMC库与ArviZ库构建概率线性集成模型160
7.3.1 定义集成模型的性能指标161
7.3.2 数据分析与特征工程164
7.3.3 开发和回溯先验集成模型167
7.3.4 训练和回溯后验集成模型174
7.3.5 测试和评估集成模型182
7.4 本章小结185
参考文献186
扩展阅读186
第8章 基于生成式集成模型的概率决策187
8.1 概率推断和预测框架188
8.2 概率决策框架191
8.2.1 融入主观判断191
8.2.2 估计损失192
8.2.3 最小化损失195
8.3 风险管理197
8.3.1 资本保全197
8.3.2 遍历性197
8.3.3 生成式风险价值202
8.3.4 生成式预期亏空204
8.3.5 生成式尾部风险205
8.4 资本配置206
8.4.1 赌徒破产定律206
8.4.2 预期资产评估师的破产208
8.4.3 现代投资组合理论212
8.4.4 马科维茨投资者的破产214
8.4.5 凯利准则219
8.4.6 凯利投资者的破产222
8.5 本章小结224
参考文献225
扩展阅读225