当前位置:经管资料网行业分类IT互联网人工智能:机器学习算法原理与编程入门433页

人工智能:机器学习算法原理与编程入门433页

33.5 MB
中文
90
计点资料
2015
433页
PDF [下载阅读器]
2019-05-16 10:55:41
推荐星级
IT互联网计算机 | 人工智能
行业分类 | IT互联网

人工智能:机器学习算法原理与编程入门简介

内 容从结构上阐明了研究机器学习理论和算法的方法:最重要的不是数学,也不是这些算法本身,而是思想的发展过程,这与之前所有的书籍有所不同。全书分为三条主线:第一条主线是从第一代神经网络(线性分类器)、第二代神经网络(非线性)及其在预测领域的应用,到支持向量机,最后是深度学习;第二条主线是贝叶斯理论,从朴素贝叶斯算法到贝叶斯网,最后是隐马科夫模型,这部分属于智能推理的范畴;第三条主线是矩阵降维、奇异值分解(SVD)和 PCA 算法,因为算法简单,本书都使用真实案例进行讲解。

第 1 章 机器学习的基础 1
1.1 编程语言与开发环境 2
1.1.1 搭建 Python 开发环境 2
1.1.2 安装 Python 算法库 4
1.1.3 IDE 配置及其安装测试 5
1.2 对象、矩阵与矢量化编程 8
1.2.1 对象与维度 8
1.2.2 初识矩阵 10
1.2.3 矢量化编程与 GPU 运算 13
1.2.4 理解数学公式与 NumPy 矩阵运算 14
1.2.5 Linalg 线性代数库 18
1.3 机器学习的数学基础 20
1.3.1 相似性的度量 21
1.3.2 各类距离的意义与 Python 实现 22
1.3.3 理解随机性 29
1.3.4 回顾概率论 30
1.3.5 多元统计基础 32
1.3.6 特征间的相关性 33
1.3.7 再谈矩阵——空间的变换 35
1.3.8 数据归一化 40
1.4 数据处理与可视化 42
1.4.1 数据的导入和内存管理 42
1.4.2 表与线性结构的可视化 45
1.4.3 树与分类结构的可视化 46
1.4.4 图与网络结构的可视化 47
1.5 Linux 操作系统下部署 Python 机器学习开发环境48
1.5.1 Linux 发行版的选择 48
1.5.2 CentOS 部署多版本 Python 实例 49
1.5.3 安装 NumPy、SciPy、Matplotlib 开发包 52
1.5.4 安装 Scikit-Learn 开发包 54
1.6 结语 55
第 2 章 中文文本分类 56
2.1 文本挖掘与文本分类的概念 56
2.2 文本分类项目 58
2.2.1 文本预处理 58
2.2.2 中文分词介绍 61
2.2.3 Scikit-Learn 库简介 66
2.2.4 向量空间模型 70
2.2.5 权重策略:TF-IDF 方法 71
2.2.6 使用朴素贝叶斯分类模块 74
2.2.7 分类结果评估 76
2.3 分类算法:朴素贝叶斯 78
2.3.1 贝叶斯公式推导 78
2.3.2 朴素贝叶斯算法实现 79
2.3.3 算法的改进 82
2.3.4 评估分类结果 82
2.4 分类算法:kNN 83
2.4.1 kNN 算法原理 83
2.4.2 kNN 算法的 Python 实现 86
2.4.3 评估分类结果 88
2.5 结语 88
第 3 章 决策树的发展 89
3.1 决策树的基本思想 89
3.1.1 从一个实例开始 90
3.1.2 决策树的算法框架 95
3.1.3 信息熵测度 96
3.2 ID3 决策树 98
3.2.1 ID3 算法 98
3.2.2 ID3 的实现 101
3.2.3 决策树主方法 101
3.2.4 训练决策树 103
3.2.5 持久化决策树 104
3.2.6 决策树分类 105
3.2.7 算法评估 106
3.3 C4.5 算法 106
3.3.1 信息增益率 106
3.3.2 C4.5 的实现 108
3.3.3 训练决策树 108
3.3.4 分类数据 109
3.4 Scikit-Learn 与回归树 110
3.4.1 回归算法原理 110
3.4.2 最小剩余方差法 111
3.4.3 模型树 113
3.4.4 剪枝策略 113
3.4.5 Scikit-Learn 实现 115
3.5 结语 117
第 4 章 推荐系统原理 118
4.1 推荐系统概述 119
4.1.1 从亚马逊网站认识推荐系统 119
4.1.2 推荐系统的架构 122
4.1.3 开源推荐系统 125
4.2 协同过滤及其算法 126
4.2.1 协同过滤 126
4.2.2 数据预处理 127
4.2.3 使用 Scikit-Learn 的 KMeans 聚类 127
4.2.4 User CF 原理 129
4.2.5 Item CF 原理 131
4.2.6 SVD 原理与计算 132
4.3 KMeans 算法详解 135
4.3.1 KMeans 算法流程 135
4.3.2 辅助函数 136
4.3.3 聚类主函数 137
4.3.4 评估分类结果 139
4.4 聚类的改进:二分 KMeans 算法 141
4.4.1 二分聚类主函数 141
4.4.2 评估分类结果 142
4.5 SVD 算法详解 143
4.5.1 SVD 算法回顾 143
4.5.2 常用距离函数 146
4.5.3 SVD 数据集 146
4.5.4 SVD 算法主函数 147
4.5.5 评估结果 147
4.6 结语 148
第 5 章 梯度寻优 149
5.1 最优化与计算复杂性 149
5.1.1 最优化理论 149
5.1.2 最优化的数学描述 150
5.1.3 凸集与分离定理 151
5.1.4 凸函数及其性质 153
5.1.5 局部最优与全局最优 155
5.1.6 计算复杂性与 NP 问题 156
5.1.7 逐次逼近法 159
5.2 Logistic 梯度下降法 163
5.2.1 梯度下降法 164
5.2.2 线性分类器 166
5.2.3 Logistic 函数——世界不是非黑即白 169
5.2.4 算法流程 171
5.2.5 对测试集进行分类 175
5.3 算法分析 175
5.3.1 超平面的变化趋势 176
5.3.2 超平面的收敛评估 177
5.3.3 权重向量的收敛评估 180
5.3.4 算法总体评价 181
5.4 随机梯度下降法:算法改进与评估 181
5.4.1 主函数 182
5.4.2 程序输出 183
5.4.3 步长变化率 184
5.4.4 权重收敛评估 185
5.4.5 权重分量的变化趋势 186
5.4.6 算法总体评价 188
5.5 结语 188
第 6 章 神经网络初步 189
6.1 神经网络简史 189
6.1.1 起源与早期发展 189
6.1.2 中期发展 190
6.1.3 当前的发展与反思 192
6.2 BP 神经网络理论 192
6.2.1 线性不可分问题 192
6.2.2 BP 网络构成 193
6.2.3 BP 网络的训练过程 196
6.3 BP 网络的实现和评估 199
6.3.1 BP 网络类与主要方法 199
6.3.2 设计 BP 网络 199
6.3.3 辅助函数 202
6.3.4 主函数 203
6.3.5 分类器 204
6.3.6 执行分类并输出结果 205
6.3.7 BP 网络评估 207
6.4 自组织特征映射神经网络 208
6.4.1 SOM 网络框架 208
6.4.2 SOM 类 211
6.4.3 功能函数 212
6.4.4 SOM 网络的实现 212
6.4.5 聚类结果 213
6.5 Boltzmann 机算法 215
6.5.1 问题的提出 215
6.5.2 模拟退火原理 216
6.5.3 Boltzmann 分布与退火过程 217
6.5.4 Boltzmann 机类与功能函数 219
6.5.5 最短路径的实现 222
6.5.6 执行算法 223
6.5.7 评估结果 224
6.6 结语 225
第 7 章 预测的技术与哲学 226
7.1 线性系统的预测 226
7.1.1 回归与现代预测学 226
7.1.2 最小二乘法 227
7.1.3 代码实现 229
7.1.4 正规方程组法 231
7.1.5 正规方程组的代码实现 232
7.1.6 算法评估 232
7.2 径向基网络 233
7.2.1 RBF 网络 233
7.2.2 辅助函数 236
7.2.3 使用 RBF 预测 236
7.2.4 评估预测结果 238
7.3 岭回归 238
7.3.1 验证多重共线性 239
7.3.2 岭回归理论 240
7.3.3 岭际分析 240
7.3.4 k 值的判定 242
7.3.5 辅助函数 243
7.3.6 岭回归的实现与 k 值计算 243
7.3.7 算法评估 244
7.4 预测的哲学 245
7.4.1 从《周易》谈起 246
7.4.2 两仪生四象 249
7.4.3 周期三与混沌 251
7.4.4 Logistic 中的吸引子 254
7.4.5 三生万物 258
7.4.6 八卦图及其推演 261
7.5 结语 263
第 8 章 万能分类器——支持向量机 265
8.1 支持向量机的理论基础 266
8.1.1 经验风险最优 266
8.1.2 关键定理与 VC 维 267
8.1.3 结构风险最优 270
8.2 SVM 的数学推导 272
8.2.1 最大间隔超平面 272
8.2.2 拉格朗日乘子法 275
8.2.3 KKT 条件与对偶变换 276
8.2.4 分类器函数 277
8.2.5 映射到高维空间 278
8.2.6 核函数法 280
8.2.7 离群点的松弛变量 281
8.3 SMO 算法 284
8.3.1 SMO 求解 SVM 284
8.3.2 构造 SMO 类 288
8.3.3 主函数 290
8.3.4 训练数据 291
8.3.5 分类并评估算法 293
8.4 SVM 中文文本分类 293
8.4.1 回顾中文文本分类 294
8.4.2 Scikit-Learn SVM 分类 294
8.4.3 评估结果 295
8.5 结语 296
第 9 章 人脸识别中的机器学习 297
9.1 模式识别概述 297
9.1.1 认知与模式 297
9.1.2 机器视觉与 OpenCV 300
9.1.3 OpenCV 的文件与基本操作 301
9.2 人脸检测 305
9.2.1 人脸识别的历史与架构 305
9.2.2 人脸识别系统 307
9.2.3 人脸检测原理与 Haar 级联检测 308
9.2.4 人脸检测特征文件 311
9.2.5 Haar cascade 的实现 314
9.2.6 LBP cascade 的实现 315
9.3 AdaBoost 算法概述 316
9.3.1 算法原理与步骤 316
9.3.2 辅助函数 317
9.3.3 AdaBoost 分类器 318
9.3.4 单层决策树分类子算法 319
9.3.5 训练数据集 321
9.3.6 执行分类 322
9.4 人脸识别 323
9.4.1 人脸数据库 324
9.4.2 PCA 原理 325
9.4.3 特征脸识别类 327
9.4.4 生成特征脸 328
9.4.5 执行人脸识别 330
9.5 结语 330
第 10 章 认知计算与深度学习 332
10.1 认知计算 332
10.1.1 认知层次论 333
10.1.2 从具体到抽象 336
10.1.3 Theano 库与基本操作 338
10.2 多层感知器 343
10.2.1 MNIST 数据集 343
10.2.2 Softmax 回归类 345
10.2.3 正则化方法 347
10.2.4 执行 SoftMax 学习 350
10.2.5 多层感知器 353
10.2.6 多层感知器的实现 355
10.2.7 MLP 的训练过程 358
10.3 卷积神经网络 358
10.3.1 理论基础 358
10.3.2 卷积类 363
10.3.3 LeNet5 函数 364
10.3.4 CNN 的训练过程 369
10.4 Theano 安装与 GPU 运算 370
10.4.1 Anaconda 安装 370
10.4.2 实现 CPU 运算 372
10.4.3 安装 VS2013 374
10.4.4 安装 CUDA 375
10.4.5 实现支持 GPU 运算 378
10.5 结语 378
第 11 章 概率图模型与词性标注 380
11.1 马科夫过程 381
11.1.1 随机过程与状态图 381
11.1.2 马科夫链及其概念 382
11.1.3 马科夫链的实现 384
11.2 概率图模型和贝叶斯网 385
11.2.1 概述 385
11.2.2 条件独立性 386
11.2.3 贝叶斯网简介 390
11.2.4 贝叶斯网的构造 392
11.2.5 贝叶斯网的推理简介 394
11.3 隐马科夫模型 396
11.3.1 概述 396
11.3.2 HMM 推理与前向算法 399
11.3.3 Vertibi 算法原理 403
11.3.4 Vertibi 算法实现 405
11.3.5 执行并输出结果 406
11.4 词性标注系统 406
11.4.1 语料库与词性资源 407
11.4.2 手工计算 409
11.4.3 结果验证 413
11.5 结语 414

全部

资料标签:人工智能 原理