| 作者 |
| [印度] 卡西克·拉玛苏布兰马尼安(Karthik Ramasubramanian)[印度] 阿布舍克·辛格(Abhishek Singh)(美)布雷特·兰茨(Brett Lantz) |
| 丛书名 |
| 智能科学与技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9781912091036 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------R语言机器学习(原书第2版)--------------------------- 本书是介绍机器学习技术的综合指南,从基础的统计学原理和R语言编程知识,到核心的机器学习理论和算法分析,以及机器学习模型的评估和改进方法,再到机器学习技术在大数据平台上的应用,书中都有详细介绍。 ---------------------------机器学习与R语言(原书第2版)--------------------------- 本书共12章:第1章介绍机器学习的基本概念和理论,并介绍用于机器学习的R软件环境的准备;第2章介绍如何应用R来管理数据,进行数据的探索分析和数据可视化;第3~9章介绍典型的机器学习算法,包括k近邻分类算法、朴素贝叶斯算法、决策树和规则树、回归预测、黑盒算法——神经网络和支持向量机、关联分析、k均值聚类,并给出大量的实际案例和详细的分析步骤,例如乳腺癌的判断、垃圾短信的过滤、贷款违约的预测、毒蘑菇的判别、医疗费用的预测、建筑用混凝土强度的预测、光学字符的识别、超市购物篮关联分析以及市场细分等;第10章介绍模型性能评价的原理和方法;第11章给出提高模型性能的几种常用方法;第12章讨论用R进行机器学习时可能遇到的一些高级专题,如特殊形式的数据、大数据集的处理、并行计算和GPU计算等技术。 |
| 目录 |
---------------------------R语言机器学习(原书第2版)--------------------------- 译者序 前言 第1章 机器学习和R语言入门1 1.1 了解发展历程1 1.1.1 统计学习2 1.1.2 机器学习2 1.1.3 人工智能3 1.1.4 数据挖掘3 1.1.5 数据科学4 1.2 概率与统计5 1.2.1 计数和概率的定义5 1.2.2 事件和关系7 1.2.3 随机性、概率和分布9 1.2.4 置信区间和假设检验9 1.3 R语言入门13 1.3.1 基本组成部分13 1.3.2 R语言的数据结构14 1.3.3 子集处理15 1.3.4 函数和Apply系列17 1.4 机器学习过程工作流19 1.4.1 计划20 1.4.2 探索20 1.4.3 构建20 1.4.4 评估20 1.5 其他技术21 1.6 小结21 第2章 数据准备和探索22 2.1 规划数据收集23 2.1.1 变量类型23 2.1.2 数据格式24 2.1.3 数据源的类型29 2.2 初始数据分析30 2.2.1 初步印象30 2.2.2 把多个数据源组织到一起32 2.2.3 整理数据34 2.2.4 补充更多信息37 2.2.5 重塑38 2.3 探索性数据分析38 2.3.1 摘要统计量39 2.3.2 矩42 2.4 案例研究:信用卡欺诈46 2.4.1 数据导入46 2.4.2 数据变换47 2.4.3 数据探索48 2.5 小结50 第3章 抽样与重抽样技术51 3.1 介绍抽样技术51 3.2 抽样的术语52 3.2.1 样本52 3.2.2 抽样分布52 3.2.3 总群体的均值和方差53 3.2.4 样本均值和方差53 3.2.5 汇总的均值和方差53 3.2.6 抽样点53 3.2.7 抽样误差54 3.2.8 抽样率54 3.2.9 抽样偏误54 3.2.10 无放回的抽样54 3.2.11 有放回的抽样55 3.3 信用卡欺诈:总群体的统计量55 3.3.1 数据描述55 3.3.2 总群体的均值56 3.3.3 总群体的方差56 3.3.4 汇总的均值和方差56 3.4 抽样在业务上的意义59 3.5 概率和非概率抽样60 3.6 关于抽样分布的统计理论61 3.6.1 大数定律62 3.6.2 中心极限定理64 3.7 概率抽样技术67 3.7.1 总群体的统计量67 3.7.2 简单随机抽样70 3.7.3 系统性随机抽样75 3.7.4 分层随机抽样78 3.7.5 聚类抽样83 3.7.6 自助抽样88 3.8 蒙特卡罗方法:接受-拒绝93 3.9 小结95 第4章 R语言里的数据可视化96 4.1 ggplot2组件包简介97 4.2 世界经济发展指标97 4.3 折线图97 4.4 堆叠柱状图102 4.5 散点图106 4.6 箱形图107 4.7 直方图和密度图109 4.8 饼图113 4.9 相关图114 4.10 热点图116 4.11 气泡图117 4.12 瀑布图120 4.13 系统树图122 4.14 关键字云124 4.15 桑基图126 4.16 时间序列图127 4.17 队列图129 4.18 空间图130 4.19 小结133 第5章 特征工程135 5.1 特征工程简介135 5.2 了解工作数据136 5.2.1 数据摘要137 5.2.2 因变量的属性137 5.2.3 特征的可用性:连续型或 分类型140 5.2.4 设置数据的假设141 5.3 特征排名141 5.4 变量子集的选择144 5.4.1 过滤器方法145 5.4.2 包装器方法148 5.4.3 嵌入式方法154 5.5 主成分分析158 5.6 小结161 第6章 机器学习理论和实践162 6.1 机器学习的类型163 6.1.1 有监督学习164 6.1.2 无监督学习164 6.1.3 半监督学习165 6.1.4 强化学习165 6.2 机器学习算法的类别165 6.3 实际环境的数据集168 6.3.1 房产售价168 6.3.2 购买偏好169 6.3.3 Twitter订阅和文章169 6.3.4 乳腺癌170 6.3.5 购物篮170 6.3.6 亚马逊美食评论170 6.4 回归分析171 6.5 相关分析172 6.5.1 线性回归174 6.5.2 简单线性回归175 6.5.3 多元线性回归177 6.5.4 模型诊断:线性回归180 6.5.5 多项回归190 6.5.6 逻辑回归193 6.5.7 logit变换194 6.5.8 几率比194 6.5.9 模型诊断:逻辑回归200 6.5.10 多项逻辑回归208 6.5.11 广义线性模型211 6.5.12 结论212 6.6 支持向量机213 6.6.1 线性SVM214 6.6.2 二元SVM分类模型214 6.6.3 多类别SVM216 6.6.4 结论217 6.7 决策树217 6.7.1 决策树的类型218 6.7.2 决策指标219 6.7.3 决策树学习方法221 6.7.4 集成树235 6.7.5 结论241 6.8 朴素贝叶斯方法241 6.8.1 条件概率241 6.8.2 贝叶斯定理241 6.8.3 先验概率242 6.8.4 后验概率242 6.8.5 似然和边际似然242 6.8.6 朴素贝叶斯方法243 6.8.7 结论247 6.9 聚类分析247 6.9.1 聚类方法简介248 6.9.2 聚类算法248 6.9.3 内部评估256 6.9.4 外部评估257 6.9.5 结论259 6.10 关联规则挖掘259 6.10.1 关联概念简介259 6.10.2 规则挖掘算法261 6.10.3 推荐算法267 6.10.4 结论273 6.11 人工神经网络273 6.11.1 人类认知学习273 6.11.2 感知器275 6.11.3 Sigmoid神经元276 6.11.4 神经网络的体系架构277 6.11.5 有监督与无监督的神经网络278 6.11.6 神经网络的学习算法279 6.11.7 前馈反向传播281 6.11.8 结论286 6.12 文本挖掘方法286 6.12.1 文本挖掘简介287 6.12.2 文本摘要288 6.12.3 TF-IDF289 6.12.4 词性标注291 6.12.5 关键字云295 6.12.6 文本分析:Microsoft Cognitive Services295 6.12.7 结论304 6.13 在线机器学习算法304 6.13.1 模糊C均值聚类305 6.13.2 结论308 6.14 构建模型的核对清单308 6.15 小结308 第7章 机器学习模型的评估309 7.1 数据集309 7.1.1 房产售价309 7.1.2 购买偏好311 7.2 模型性能和评估入门312 7.3 模型性能评估的目标313 7.4 总群体的稳定性指数314 7.5 连续型输出的模型评估318 7.5.1 平均绝对误差320 7.5.2 均方根误差321 7.5.3 R2322 7.6 离散型输出的模型评估325 7.6.1 分类矩阵325 7.6.2 灵敏度和特异性329 7.6.3 ROC曲线下的面积330 7.7 概率技术333 7.7.1 K折交叉验证333 7.7.2 自助抽样335 7.8 Kappa误差指标336 7.9 小结339 第8章 模型性能改进340 8.1 Caret组件包概述341 8.2 超参数简介343 8.3 超参数优化345 8.3.1 人工搜索346 8.3.2 人工网格搜索348 8.3.3 自动网格搜索349 8.3.4 最优搜索351 8.3.5 随机搜索353 8.3.6 自定义搜索354 8.4 偏误和方差权衡357 8.5 集成学习简介360 8.5.1 投票集成360 8.5.2 集成学习中的高级方法361 8.6 在R语言里演示集成技术364 8.6.1 装袋树364 8.6.2 决策树的梯度增强366 8.6.3 混合knn和rpart369 8.6.4 利用caretEnsemble进行堆叠370 8.7 高级主题:机器学习模型的贝叶斯优化374 8.8 小结379 第9章 时间序列模型380 9.1 时间序列的组成部分380 9.2 平稳性检验383 9.3 ACF和AR模型386 9.4 PACF和MA模型388 9.5 ARIMA模型391 9.6 具有AR误差的线性回归397 9.7 小结400 第10章 可扩展机器学习和相关技术402 10.1 分布式处理和存储402 10.1.1 GFS403 10.1.2 MapReduce404 10.1.3 R语言里的并行执行404 10.2 Hadoop生态系统407 10.2.1 MapReduce408 10.2.2 Hive411 10.2.3 Apache Pig414 10.2.4 HBase417 10.2.5 Spark418 10.3 在R语言环境下用Spark进行机器学习419 10.3.1 设置环境变量419 10.3.2 初始化Spark会话420 10.3.3 加载数据并运行预处理420 10.3.4 创建SparkDataFrame421 10.3.5 构建机器学习模型421 10.3.6 对测试数据进行预测422 10.3.7 终止SparkR会话423 10.4 在R语言里利用H2O进行机器学习423 10.4.1 安装组件包424 10.4.2 H2O集群的初始化424 10.5 小结425 第11章 用Keras和TensorFlow进行深度学习427 11.1 深度学习简介427 11.2 深度学习架构428 11.2.1 卷积神经网络428 11.2.2 递归神经网络429 11.2.3 生成对抗网络430 11.3 深度学习的工具集431 11.3.1 高级库431 11.3.2 后端引擎或框架431 11.3.3 硬件能力432 11.3.4 编程语言的选择432 11.3.5 云基础架构432 11.4 用例:识别Quora中的重复问题432 11.4.1 环境设置432 11.4.2 数据预处理433 11.4.3 基准模型434 11.4.4 Siamese递归架构435 11.4.5 Keras模型437 11.4.6 模型的摘要437 11.4.7 验证样本438 11.4.8 训练模型438 11.4.9 保存模型439 11.4.10 模型性能439 11.4.11 进行预测440 11.4.12 预测示例440 11.5 小结441 ---------------------------机器学习与R语言(原书第2版)--------------------------- 推荐序 译者序 前言 关于审稿人 第1章 机器学习简介1 1.1 机器学习的起源1 1.2 机器学习的使用与滥用3 1.2.1 机器学习的成功使用3 1.2.2 机器学习的限制4 1.2.3 机器学习的伦理方面5 1.3 机器如何学习6 1.3.1 数据存储7 1.3.2 抽象化7 1.3.3 一般化9 1.3.4 评估10 1.4 实践中的机器学习11 1.4.1 输入数据的类型11 1.4.2 机器学习算法的类型12 1.4.3 为输入数据匹配算法14 1.5 使用R进行机器学习15 1.5.1 安装R添加包15 1.5.2 载入和卸载R添加包16 1.6 总结16 第2章 数据的管理和理解18 2.1 R数据结构18 2.1.1 向量18 2.1.2 因子20 2.1.3 列表21 2.1.4 数据框23 2.1.5 矩阵和数组25 2.2 用R管理数据27 2.2.1 保存、载入和移除R数据结构27 2.2.2 用CSV文件导入和保存数据28 2.3 探索和理解数据29 2.3.1 探索数据的结构29 2.3.2 探索数值变量30 2.3.3 探索分类变量38 2.3.4 探索变量之间的关系40 2.4 总结43 第3章 懒惰学习—使用近邻分类44 3.1 理解近邻分类44 3.1.1 kNN算法45 3.1.2 为什么kNN算法是懒惰的50 3.2 例子—用kNN算法诊断乳腺癌51 3.2.1 第1步—收集数据51 3.2.2 第2步—探索和准备数据52 3.2.3 第3步—基于数据训练模型55 3.2.4 第4步—评估模型的性能56 3.2.5 第5步—提高模型的性能57 3.3 总结59 第4章 概率学习—朴素贝叶斯分类60 4.1 理解朴素贝叶斯60 4.1.1 贝叶斯方法的基本概念61 4.1.2 朴素贝叶斯算法65 4.2 例子—基于贝叶斯算法的手机垃圾短信过滤69 4.2.1 第1步—收集数据69 4.2.2 第2步—探索和准备数据70 4.2.3 第3步—基于数据训练模型81 4.2.4 第4步—评估模型的性能82 4.2.5 第5步—提高模型的性能83 4.3 总结84 第5章 分而治之—应用决策树和规则进行分类85 5.1 理解决策树85 5.1.1 分而治之86 5.1.2 C5.0决策树算法89 5.2 例子—使用C5.0决策树识别高风险银行贷款91 5.2.1 第1步—收集数据92 5.2.2 第2步—探索和准备数据92 5.2.3 第3步—基于数据训练模型94 5.2.4 第4步—评估模型的性能97 5.2.5 第5步—提高模型的性能97 5.3 理解分类规则101 5.3.1 独立而治之101 5.3.2 1R算法103 5.3.3 RIPPER算法104 5.3.4 来自决策树的规则105 5.3.5 什么使决策树和规则贪婪106 5.4 例子—应用规则学习算法识别有毒的蘑菇108 5.4.1 第1步—收集数据108 5.4.2 第2步—探索和准备数据108 5.4.3 第3步—基于数据训练模型109 5.4.4 第4步—评估模型的性能111 5.4.5 第5步—提高模型的性能112 5.5 总结114 第6章 预测数值型数据—回归方法115 6.1 理解回归115 6.1.1 简单线性回归117 6.1.2 普通最小二乘估计119 6.1.3 相关性120 6.1.4 多元线性回归121 6.2 例子—应用线性回归预测医疗费用124 6.2.1 第1步—收集数据124 6.2.2 第2步—探索和准备数据125 6.2.3 第3步—基于数据训练模型129 6.2.4 第4步—评估模型的性能131 6.2.5 第5步—提高模型的性能132 6.3 理解回归树和模型树134 6.4 例子—用回归树和模型树估计葡萄酒的质量136 6.4.1 第1步—收集数据137 6.4.2 第2步—探索和准备数据137 6.4.3 第3步—基于数据训练模型139 6.4.4 第4步—评估模型的性能142 6.4.5 第5步—提高模型的性能143 6.5 总结145 第7章 黑箱方法—神经网络和支持向量机147 7.1理解神经网络147 7.1.1从生物神经元到人工神经元148 7.1.2激活函数149 7.1.3网络拓扑151 7.1.4用后向传播训练神经网络154 7.2例子—用人工神经网络对混凝土的强度进行建模155 7.2.1第1步—收集数据155 7.2.2第2步—探索和准备数据156 7.2.3第3步—基于数据训练模型157 7.2.4第4步—评估模型的性能159 7.2.5第5步—提高模型的性能159 7.3理解支持向量机161 7.3.1用超平面分类161 7.3.2对非线性空间使用核函数164 7.4例子—用支持向量机进行光学字符识别166 7.4.1第1步—收集数据166 7.4.2第2步—探索和准备数据167 7.4.3第3步—基于数据训练模型168 7.4.4第4步—评估模型的性能170 7.4.5第5步—提高模型的性能171 7.5总结172 第8章 探寻模式—基于关联规则的购物篮分析173 8.1理解关联规则173 8.1.1用于关联规则学习的Apriori算法174 8.1.2度量规则兴趣度—支持度和置信度175 8.1.3用Apriori原则建立规则176 8.2例子—用关联规则确定经常一起购买的食品杂货177 8.2.1第1步—收集数据177 8.2.2第2步—探索和准备数据178 8.2.3第3步—基于数据训练模型183 8.2.4第4步—评估模型的性能185 8.2.5第5步—提高模型的性能187 8.3总结190 第9章 寻找数据的分组—k均值聚类191 9.1理解聚类191 9.1.1聚类—一种机器学习任务192 9.1.2k均值聚类算法193 9.2例子—用k均值聚类探寻青少年市场细分198 9.2.1第1步—收集数据199 9.2.2第2步—探索和准备数据199 9.2.3第3步—基于数据训练模型203 9.2.4第4步—评估模型的性能205 9.2.5第5步—提高模型的性能207 9.3总结208 第10章 模型性能的评价210 10.1 度量分类方法的性能210 10.1.1 在R中处理分类预测数据211 10.1.2 深入探讨混淆矩阵213 10.1.3 使用混淆矩阵度量性能214 10.1.4 准确率之外的其他性能度量指标216 10.1.5 性能权衡的可视化223 10.2 评估未来的性能226 10.3 总结232 第11章 提高模型的性能233 11.1 调整多个模型来提高性能233 11.2 使用元学习来提高模型的性能241 11.2.1 理解集成学习241 11.2.2 bagging243 11.2.3 Boosting245 11.2.4 随机森林247 11.3 总结251 第12章 其他机器学习主题253 12.1 分析专用文件和数据库253 12.1.1 读/写Excel、SAS、SPSS和Stata文件254 12.1.2 查询SQL数据库中的数据254 12.2 处理在线数据和服务255 12.2.1 下载网页的所有文本256 12.2.2 从网页爬取数据257 12.3 处理特定领域的数据263 12.3.1 分析生物信息学数据264 12.3.2 分析和可视化网络数据264 12.4 提高R语言的性能267 12.4.1 处理非常大的数据集267 12.4.2 使用并行处理来加快学习过程271 12.4.3 GPU计算276 12.4.4 部署优化的学习算法277 12.5 总结278 |