序言
前言
第一部分
第 1 章 专家系统 2
1.1 早期的专家系统 2
1.2 正向推理 4
1.3 逆向推理 5
1.4 谓词逻辑 6
1.5 专家系统的贡献和困难 7
1.6 动手实践 9
1.6.1 简化的专家系统 10
1.6.2 正向推理 10
1.6.3 逆向推理 11
参考文献 13
第 2 章 决策树 14
2.1 分类问题 15
2.2 构造决策树 16
2.3 ID3 算法 17
2.4 信息熵 19
2.5 基尼不纯度 21
2.6 动手实践 22
2.6.1 计算信息熵 22
2.6.2 构造决策树 23
2.6.3 使用 scikit-learn软件包 27
参考文献 30
第 3 章 神经元和感知机 31
3.1 生物神经元 31
3.2 早期感知机模型 33
3.3 现代的模型 34
3.4 学习模型参数 36
3.4.1 梯度下降法 36
3.4.2 Delta 法则 37
3.5 动手实践 38
3.5.1 实现感知机模型 38
3.5.2 识别手写数字 43
参考文献 48
第 4 章 线性回归 49
4.1 线性回归概述 49
4.2 最小二乘法 51
4.3 矩阵形式 52
4.4 一般性的回归问题 54
4.5 动手实践 54
4.5.1 实现一维线性回归 54
4.5.2 实现最小二乘法 56
4.5.3 使用 numpy 软件包 59
第 5 章 逻辑斯蒂回归和分类器 64
5.1 分类问题 64
5.2 最大似然估计 66
5.3 交叉熵损失函数 67
5.4 多类别分类 68
5.4.1 多类别逻辑斯蒂回归 69
5.4.2 归一化指数函数 70
5.4.3 交叉熵误差和均方误差的比较 72
5.5 分类器的决策边界 73
5.6 支持向量机 75
5.6.1 支持向量 77
5.6.2 拉格朗日乘子法 78
5.6.3 非线性分类与核函数 80
5.7 动手实践 82
5.7.1 使用逻辑斯蒂回归 82
5.7.2 观察分类边界 83
5.7.3 使用支持向量机 85
参考文献 87
第二部分
第 6 章 人工神经网络 90
6.1 异或问题和多层感知机 90
6.2 反向传播算法 92
6.3 深度神经网络 94
6.3.1 生物神经机制的启示 94
6.3.2 解决深度神经网络面临的问题 95
6.4 卷积和池化 98
6.4.1 神经连接的局部性 98
6.4.2 平移不变性 99
6.4.3 卷积处理图像的效果 99
6.4.4 简单细胞和复杂细胞的仿生学 102
6.5 循环神经网络 103
6.6 使用 PyTorch 软件包 104
6.7 动手实践 106
6.7.1 识别手写数字 106
6.7.2 准备训练数据 109
6.7.3 训练神经网络模型 110
6.8 物