第Ⅰ部分 可解释基础知识
第1章 导论 3
1.1 Diagnostics AI——AI系统示例 3
1.2 机器学习系统的类型 4
1.2.1 数据的表示 4
1.2.2 监督学习 6
1.2.3 无监督学习 7
1.2.4 强化学习 7
1.2.5 最适合Diagnostics AI的机器学习系统 8
1.3 构建Diagnostics AI 8
1.4 Diagnostics 的主要问题 10
1.4.1 数据泄露 10
1.4.2 偏见 10
1.4.3 监管不合规 11
1.4.4 概念漂移 11
1.5 如何解决这些主要问题 11
1.6 Interpretability与Explainability 13
1.7 你将在本书学到什么 15
1.7.1 本书使用的工具 17
1.7.2 阅读本书所需的基础知识 17
1.8 本章小结 18
第2章 白盒模型 19
2.1 白盒模型概述 20
2.2 Diagnostics AI示例:预测糖尿病进展情况 21
2.3 线性回归 24
2.3.1 解释线性回归 27
2.3.2 线性回归的局限性 29
2.4 决策树 30
2.4.1 解释决策树 32
2.4.2 决策树的局限性 35
2.5 广义可加模型(GAM) 36
2.5.1 回归样条 38
2.5.2 GAM用于Diagnostics AI预测糖尿病进展 42
2.5.3 解释GAM 43
2.5.4 GAM的局限性 46
2.6 展望黑盒模型 46
2.7 本章小结 48
第Ⅱ部分 解释模型处理
第3章 全局与模型无关可解释技术 51
3.1 高中生成绩预测器 52
3.2 集成树 57
3.3 解释随机森林 63
3.4 模型无关方法:全局可解释 65
3.4.1 部分依赖图 66
3.4.2 特征的相互作用 71
3.5 本章小结 77
第4章 局部与模型无关可解释技术 79
4.1 Diagnostics AI示例:乳腺癌诊断 80
4.2 探索性数据分析 81
4.3 深度神经网络 84
4.3.1 数据准备 88
4.3.2 训练和评估DNN 90
4.4 解释DNN 92
4.5 LIME 94
4.6 SHAP 103
4.7 锚定 106
4.8 本章小结 110
第5章 显著图 113
5.1 Diagnostics AI示例:浸润性导管癌检测 114
5.2 探索性数据分析 114
5.3 卷积神经网络 117
5.3.1 数据准备 121
5.3.2 训练和评估CNN 123
5.4 解释CNN 126
5.4.1 概率分布图 126
5.4.2 LIME 127
5.4.3 视觉归因法 132
5.5 标准反向传播 134
5.6 导向反向传播 138
5.7 其他基于梯度的方法 140
5.8 Grad-CAM和导向Grad-CAM 141
5.9 我应该使用哪种归因法 145
5.10 本章小结 147
第Ⅲ部分 解释模型表示
第6章 理解层和单元 151
6.1 视觉理解 152
6.2 回顾卷积神经网络 153
6.3 神经网络剖析框架 155
6.3.1 概念定义 156
6.3.2 网络探测 157
6.3.3 量化对齐 160
6.4 解释层和单元 160
6.4.1 运行网络剖析 161
6.4.2 概念检测器 165
6.4.3 训练任务的概念检测器 171
6.4.4 可视化概念检测器 176
6.4.5 网络剖析的局限性 179
6.5 本章小结 179
第7章 理解语义相似性 181
7.1 情感分析 182
7.2 探索性数据分析 183
7.3 神经网络词嵌入 187
7.3.1 独热编码 187
7.3.2 Word2Vec 188
7.3.3 GloVe嵌入 191
7.3.4 情感分析模型 193
7.4 解释语义相似性 194
7.4.1 度量相似性 196
7.4.2 主成分分析(PCA) 199
7.4.3 t分布随机近邻嵌入(t-SNE) 204
7.4.4 验证语义相似性的可视化 208
7.5 本章小结 210
第Ⅳ部分 公平和偏见
第8章 公平和减少偏见 213
8.1 成年人收入预测 215
8.1.1 探索性数据分析 216
8.1.2 预测模型 218
8.2 公平性概念 221
8.2.1 人口平等 222
8.2.2 机会和几率平等 225
8.2.3 其他公平性概念 228
8.3 可解释和公平性 229
8.3.1 源自输入特征的歧视 229
8.3.2 源自表示的歧视 233
8.4 减少偏见 234
8.4.1 无意识公平 234
8.4.2 通过重新加权纠正标注偏见 235
8.5 数据集的数据表 238
8.6 本章小结 240
第9章 XAI 243
9.1 XAI概述 245
9.2 反事实说明 247
9.3 本章小结 251
附录A 设置环境 253
A.1 Python代码 253
A.2 Git代码库 253
A.3 Conda环境 253
A.4 Jupyter notebooks 254
A.5 Docker 254
附录B PyTorch 257
B.1 什么是PyTorch 257
B.2 安装PyTorch 257
B.3 张量 258
B.3.1 数据类型 259
B.3.2 CPU和GPU张量 260
B.3.3 运算 260
B.4 Dataset和DataLoader 261
B.5 建模 263
B.5.1 自动微分法 263
B.5.2 模型定义 265
B.5.3 训练 267