| 作者 |
| 莫凡彭鸿涛 张宗耀 聂磊 |
| 丛书名 |
| 智能系统与技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9782001101504 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------机器学习算法的数学解析与Python实现--------------------------- 本书由资深工程师撰写,系统介绍机器学习中需要的主要数学知识,以及机器学习算法的实现和应用场景,为机器学习初学者制定了如何夯实基础的方案。本书以机器学习的算法为主线,深入剖析算法的概念和数学原理,以通俗形象的语言进行介绍,让读者无需了解太多前置数学知识,就能看懂数学公式的表达意思,从而深度掌握机器学习的思想和原理。主要内容包括:首先介绍机器学习基本概念及工具,然后从概念、原理、Python实现、应用场景几个方面,详细剖析机器学习中最主要的算法,如线性回归算法、逻辑回归算法、KNN、朴素贝叶斯、决策分类、支持向量机分类、K-means聚类、神经网络分类、集成学习等。 ---------------------------增强型分析:AI驱动的数据分析、业务决策与案例实践--------------------------- 内容简介 增强型分析是数据科学的未来,本书讲解了如何通过前沿的大数据技术和AI技术实现智能的数据分析和业务决策,即增强型分析。 本书的三位作者是来自德勤、前华为和前IBM的资深数据科学家,在大数据和AI领域至少都有10年以上的工作经验,他们将各自多年来在“构建数据挖掘模型,解决实际业务问题”方面积累的经验全部总结在了这本书中。 全书的内容由两条主线贯穿: 技术主线:一方面讲解了预测模型、序列分析、预测分析、Prescriptive分析等前沿数据处理技术,一方面讲解了CNN、RNN和GNN等前沿的AI技术如何为数据分析赋能。 业务主线:在数字化转型的大时代背景下,如何通过数据分析实现智慧营销、智慧风险管控,实现由初级的“主动营销”到“被动营销”,再到“全渠道协同营销”等营销手段的升级应用。 本书的重点聚焦在本质内容上,即数据处理、算法及模型、“模型洞见到业务决策”的分析等。 . 全书共8章: 第1章:作者结合自己的从业经验介绍了数据科学家的职业生涯发展、工作模式和工作方法要点等内容,为有志成为数据科学家的读者指明了道路和方向; 第2章:从描述性分析的角度讲解了数据探索、数据预处理衍生指标加工方面的技巧; 第3章:介绍了预测类模型构建时的新方法、新思路、新工具; 第4章:讲解了序列分析的相关内容,包括序列模式、序列规则、序列预测等的挖掘与应用,用实例的方式说明了算法的原理、特点和使用技巧; 第5章:介绍了人工智能下一个阶段的重点领域,即如何应用数据分析做出最优决策; 第6~8章:通过与传统模型的对比,介绍了CNN、RNN、GNN等算法的原理,通过大量的实例说明了这些AI技术在数据分析与决策领域的用法和实际效果。 |
| 目录 |
---------------------------机器学习算法的数学解析与Python实现--------------------------- 前言 第1章 机器学习概述 1 1.1 什么是机器学习 1 1.2 机器学习的几个需求层次 3 1.3 机器学习的基本原理 5 1.4 机器学习的基本概念 7 1.4.1 书中用到的术语介绍 7 1.4.2 机器学习的基本模式 11 1.4.3 优化方法 12 1.5 机器学习问题分类 14 1.6 常用的机器学习算法 15 1.7 机器学习算法的性能衡量指标 16 1.8 数据对算法结果的影响 18 第2章 机器学习所需的环境 20 2.1 常用环境 20 2.2 Python简介 21 2.2.1 Python的安装 23 2.2.2 Python的基本用法 24 2.3 Numpy简介 25 2.3.1 Numpy的安装 26 2.3.2 Numpy的基本用法 26 2.4 Scikit-Learn简介 27 2.4.1 Scikit-Learn的安装 28 2.4.2 Scikit-Learn的基本用法 28 2.5 Pandas简介 29 2.5.1 Pandas的安装 30 2.5.2 Pandas的基本用法 31 第3章 线性回归算法 33 3.1 线性回归:“钢铁直男”解决回归问题的正确方法 33 3.1.1 用于预测未来的回归问题 35 3.1.2 怎样预测未来 38 3.1.3 线性方程的“直男”本性 40 3.1.4 最简单的回归问题—线性回归问题 44 3.2 线性回归的算法原理 46 3.2.1 线性回归算法的基本思路 46 3.2.2 线性回归算法的数学解析 48 3.2.3 线性回归算法的具体步骤 53 3.3 在Python中使用线性回归算法 54 3.4 线性回归算法的使用场景 60 第4章 Logistic回归分类算法 61 4.1 Logistic回归:换上“S型曲线马甲”的线性回归 61 4.1.1 分类问题:选择困难症患者的自我救赎 63 4.1.2 Logistic函数介绍 66 4.1.3 此回归非彼回归:“LR”辨析 70 4.2 Logistic回归的算法原理 71 4.2.1 Logistic回归算法的基本思路 71 4.2.2 Logistic回归算法的数学解析 74 4.2.3 Logistic回归算法的具体步骤 78 4.3 在Python中使用Logistic回归算法 78 4.4 Logistic回归算法的使用场景 81 第5章 KNN分类算法 82 5.1 KNN分类算法:用多数表决进行分类 82 5.1.1 用“同类相吸”的办法解决分类问题 84 5.1.2 KNN分类算法的基本方法:多数表决 86 5.1.3 表决权问题 89 5.1.4 KNN的具体含义 89 5.2 KNN分类的算法原理 90 5.2.1 KNN分类算法的基本思路 90 5.2.2 KNN分类算法的数学解析 93 5.2.3 KNN分类算法的具体步骤 94 5.3 在Python中使用KNN分类算法 95 5.4 KNN分类算法的使用场景 96 第6章 朴素贝叶斯分类算法 98 6.1 朴素贝叶斯:用骰子选择 98 6.1.1 从统计角度看分类问题 99 6.1.2 贝叶斯公式的基本思想 102 6.1.3 用贝叶斯公式进行选择 104 6.2 朴素贝叶斯分类的算法原理 106 6.2.1 朴素贝叶斯分类算法的基本思路 106 6.2.2 朴素贝叶斯分类算法的数学解析 108 6.2.3 朴素贝叶斯分类算法的具体步骤 111 6.3 在Python中使用朴素贝叶斯分类算法 111 6.4 朴素贝叶斯分类算法的使用场景 112 第7章 决策树分类算法 114 7.1 决策树分类:用“老朋友”if-else进行选择 114 7.1.1 程序员的选择观:if-else 116 7.1.2 如何种植一棵有灵魂的“树” 118 7.1.3 决策条件的选择艺术 119 7.1.4 决策树的剪枝问题 122 7.2 决策树分类的算法原理 125 7.2.1 决策树分类算法的基本思路 125 7.2.2 决策树分类算法的数学解析 127 7.2.3 决策树分类算法的具体步骤 133 7.3 在Python中使用决策树分类算法 134 7.4 决策树分类算法的使用场景 135 第8章 支持向量机分类算法 137 8.1 支持向量机:线性分类器的“王者” 137 8.1.1 距离是不同类别的天然间隔 139 8.1.2 何为“支持向量” 140 8.1.3 从更高维度看“线性不可分” 142 8.2 支持向量机分类的算法原理 146 8.2.1 支持向量机分类算法的基本思路 146 8.2.2 支持向量机分类算法的数学解析 150 8.2.3 支持向量机分类算法的具体步骤 153 8.3 在Python中使用支持向量机分类算法 154 8.4 支持向量机分类算法的使用场景 156 第9章 K-means聚类算法 157 9.1 用投票表决实现“物以类聚” 157 9.1.1 聚类问题就是“物以类聚”的实施问题 159 9.1.2 用“K”来决定归属类别 162 9.1.3 度量“相似”的距离 164 9.1.4 聚类问题中的多数表决 165 9.2 K-means聚类的算法原理 168 9.2.1 K-means聚类算法的基本思路 168 9.2.2 K-means聚类算法的数学解析 169 9.2.3 K-means聚类算法的具体步骤 170 9.3 在Python中使用K-means聚类算法 171 9.4 K-means聚类算法的使用场景 172 第10章 神经网络分类算法 174 10.1 用神经网络解决分类问题 174 10.1.1 神经元的“内心世界” 177 10.1.2 从神经元看分类问题 180 10.1.3 神经网络的“细胞”:人工神经元 181 10.1.4 构成网络的魔力 184 10.1.5 神经网络与深度学习 188 10.2 神经网络分类的算法原理 188 10.2.1 神经网络分类算法的基本思路 188 10.2.2 神经网络分类算法的数学解析 190 10.2.3 神经网络分类算法的具体步骤 193 10.3 在Python中使用神经网络分类算法 194 10.4 神经网络分类算法的使用场景 195 第11章 集成学习方法 197 11.1 集成学习方法:三个臭皮匠赛过诸葛亮 197 11.1.1 集成学习方法与经典机器学习算法的关系 198 11.1.2 集成学习的主要思想 199 11.1.3 几种集成结构 200 11.2 集成学习方法的具体实现方式 202 11.2.1 Bagging算法 202 11.2.2 Boosting算法 202 11.2.3 Stacking算法 202 11.3 在Python中使用集成学习方法 203 11.4 集成学习方法的使用场景 205 ---------------------------增强型分析:AI驱动的数据分析、业务决策与案例实践--------------------------- 推荐序一 推荐序二 前言 第1章 数据科学家的成长之路 1 1.1 算法与数据科学家 1 1.1.1 数据科学、人工智能、机器学习等 2 1.1.2 室内活动还是室外活动 3 1.2 数据科学家不断成长的几个阶段 3 1.2.1 算法——如何构建数据分析模型 5 1.2.2 用法——如何回头看模型 6 1.2.3 业务——如何产生更大价值 7 1.2.4 战略——如何更广 8 1.3 数据科学家的工作模式与组织结构 9 1.3.1 数据驱动还是业务驱动 9 1.3.2 数据科学家团队的组织结构 9 1.4 数据科学家的工作方法要点 10 第2章 大数据探索及预处理 13 2.1 大数据探索 13 2.1.1 数值类型 13 2.1.2 连续型数据的探索 14 2.1.3 分类型数据的探索 19 2.1.4 示例:数据探索 20 2.2 数据预处理 26 2.2.1 数据清洗 26 2.2.2 数据变换 29 2.2.3 数据归约 41 2.3 衍生指标的加工 44 2.3.1 衍生指标概述 45 2.3.2 将数值转化为百分位数 45 2.3.3 把类别变量替换为数值 46 2.3.4 多变量组合 47 2.3.5 从时间序列中提取特征 47 第3章 预测模型的新技术 49 3.1 集成学习 49 3.1.1 Averaging方法 49 3.1.2 Boosting方法 51 3.2 Gradient Tree Boosting介绍 53 3.2.1 梯度与梯度下降 53 3.2.2 Gradient Tree Boosting算法的原理 55 3.3 Gradient Tree Boosting的改进方向 57 3.3.1 Gradient Tree Boosting的使用要点 57 3.3.2 Regularization 59 3.3.3 XGBoost介绍 60 3.4 模型的最佳参数设置 60 3.5 投票决定最终预测结果 65 3.6 让模型在训练结束后还能被更新 66 3.6.1 热启动 67 3.6.2 增量学习 67 3.7 多输出预测 68 3.7.1 Binary Relevance 69 3.7.2 Classifier Chain 70 3.7.3 Ensemble Classifier Chain 70 3.8 案例:如何给客户从数百个产品中寻找合适的产品 71 3.8.1 问题提出 72 3.8.2 建模思路 72 3.8.3 模型训练及应用 73 第4章 序列分析 76 4.1 通过客户行为研究做出服务策略 76 4.2 频繁项集、关联规则的挖掘 77 4.2.1 基本概念 77 4.2.2 频繁或稀疏项集的挖掘 78 4.2.3 关联规则的挖掘 86 4.3 序列模式的挖掘以及应用 88 4.3.1 换种视角观察项间的顺序 88 4.3.2 “事无巨细”还是“事有巨细” 89 4.3.3 序列挖掘的相关算法介绍 92 4.3.4 示例:挖掘购买物品的序列模式 96 4.4 序列规则的挖掘以及应用 101 4.4.1 将频繁序列通过业务解读转换为行动指南 101 4.4.2 序列规则的挖掘实现行动指南 102 4.4.3 序列规则的挖掘算法 102 4.4.4 示例:通过客户购买产品的序列推荐合适的产品 104 4.5 序列预测的挖掘以及应用 107 4.5.1 序列规则与序列预测的关系 107 4.5.2 序列预测算法的介绍 108 4.5.3 示例:客户下一步会做什么 110 第5章 应用数据分析做出最优决策 114 5.1 Prescriptive分析概述 114 5.1.1 业务分析的3个层次 115 5.1.2 为什么需要Prescriptive分析 116 5.1.3 什么时候需要Prescriptive分析 117 5.2 确定因素和非确定因素下的决策分析 118 5.3 What-If分析和Goal Seeking分析 121 5.4 优化技术介绍 122 5.4.1 数据挖掘算法中常用的优化技术 122 5.4.2 优化问题求解工具介绍 127 5.4.3 CVXPY优化工具在机器学习算法中的应用 130 5.4.4 应用优化技术寻找最优产品推荐 134 5.5 仿真分析 135 5.5.1 蒙特卡洛的介绍 135 5.5.2 采用蒙特卡洛方法进行重采样 137 5.6 马尔可夫链及马尔可夫决策过程 143 5.6.1 马尔可夫过程及马尔可夫链 145 5.6.2 马尔可夫决策过程及应用工具 148 5.6.3 应用马尔可夫决策过程研究营销策略及客户生命周期价值 151 第6章 深入探讨CNN 155 6.1 换个角度讨论CNN 155 6.1.1 卷积是在做什么 156 6.1.2 人脸检测与人脸识别 159 6.1.3 深度学习意味着什么 165 6.1.4 CNN的结构 168 6.1.5 CNN的训练及结果 172 6.2 用CNN做人脸识别 174 6.2.1 数据加载 175 6.2.2 使用ImageDataGenerator 175 6.2.3 定义模型和训练模型 176 6.2.4 详细探究卷积最终的效果 178 6.3 Embedding 181 6.3.1 文本向量化的一般方法 181 6.3.2 Word Embedding的原理及实现 186 6.3.3 利用Word Embedding实现翻译 190 6.3.4 Embedding的用途不止于Word Embedding 192 6.4 一个例子:文本分类 193 6.4.1 采用传统分类模型实现文本分类 193 6.4.2 采用CNN进行文本分类 196 6.4.3 采用FastText进行文本分类 200 第7章 深入探讨RNN 201 7.1 两种建模方法:Prediction 和 Sequence Labeling 201 7.1.1 Prediction的特点 201 7.1.2 Sequence Labeling的特点 202 7.2 RNN及其变种的详细原理 203 7.2.1 RNN的Activation 函数 204 7.2.2 RNN 的初级神经元及计算逻辑 205 7.2.3 LSTM的神经元及计算逻辑 205 7.2.4 GRU的神经元与计算逻辑 206 7.2.5 深度RNN的原理 207 7.2.6 RNN算法的输入输出形式 208 7.3 利用LSTM预测股票价格 209 7.3.1 模型构建及验证 209 7.3.2 模型应用的探讨 216 7.4 让计算机学会写唐诗 216 7.4.1 构想:如何让计算机能够写出唐诗 216 7.4.2 构建:模型实现的过程 218 7.5 预测客户的下一个行为 221 7.5.1 构想:如何利用LSTM实现客户行为的预测 221 7.5.2 构建:模型实现过程 222 7.6 计算机,请告诉我你看到了什么 226 7.6.1 构想:如何让计算机生成图片描述 226 7.6.2 实现:逐步构建图片描述生成模型 227 7.6.3 VQA 232 第8章 深入探讨GAN 235 8.1 基本原理 235 8.1.1 构想 235 8.1.2 GAN的基本结构 237 8.1.3 GAN模型训练及应用过程 240 8.1.4 GAN原理的再探索 241 8.2 让计算机书写数字 243 8.2.1 建模思路 243 8.2.2 基本实现过程 244 8.2.3 采用DCGAN来实现 248 8.3 让计算机画一张人脸 251 8.3.1 如何让计算机理解我们的要求 252 8.3.2 基本实现过程 253 |