《R语言机器学习》这书解读的是在R語言服务平台上应用云计算技术搭建可拓展设备学习模型的新科技成果。它全方位展现了怎样选用机器学习算法在原始记录的基本上搭建设备学习模型。这书还能让这些期望运用ApacheHadoop、Hive、Pig和Spark来保持可拓展设备学习模型的阅读者从这当中获益。
KarthikRamasubramanian任职于HikeMessenger,从业商业数据分析和计算机科学层面的工作中。他之前在Snapdeal就职,承担有关顾客提高和标价解析的关键统计分析实体模型。在添加Snapdeal以前,他曾做为中央政府数据库查询精英团队的一员,部门管理ReckittBenckiser(RB)全世界业务流程运用的数据仓库。他在可拓展的深度学习行业具备丰富多彩的经验,特长包含繁杂的图互联网和自学习培训神经元网络。
AbhishekSingh是英国第二大的中国人寿保险经销商PrudentialFinancial企业的高級大数据工程师。他在计算机科学层面有着丰富多彩的制造行业和学术研究经验,包含资询、课堂教学和金融信息服务。他以前在DeloitteAdvisory领导干部了对于美国银行的管控风险性、信贷风险和负债表实体模型化要求的风险评估新项目。现阶段,他已经为Prudential的中国人寿保险业务流程开发设计可拓展的机器学习算法。
目录
- 译者序
- 关于作者
- 关于技术审稿人
- 致谢
- 第1章 机器学习和R语言入门1
- 1.1 了解发展历程2
- 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 随机性、概率和分布8
- 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 计划19
- 1.4.2 探索19
- 1.4.3 构建20
- 1.4.4 评估20
- 1.5 其他技术20
- 1.6 小结21
- 1.7 参考资料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 补充更多信息36
- 2.2.5 重塑37
- 2.3 探索性数据分析38
- 2.3.1 摘要统计量38
- 2.3.2 矩41
- 2.4 案例研究:信用卡欺诈46
- 2.4.1 数据导入46
- 2.4.2 数据变换47
- 2.4.3 数据探索48
- 2.5 小结49
- 2.6 参考资料49
- 第3章 抽样与重抽样技术50
- 3.1 介绍抽样技术50
- 3.2 抽样的术语51
- 3.2.1 样本51
- 3.2.2 抽样分布52
- 3.2.3 总群体的均值和方差52
- 3.2.4 样本均值和方差52
- 3.2.5 汇总的均值和方差52
- 3.2.6 抽样点53
- 3.2.7 抽样误差53
- 3.2.8 抽样率53
- 3.2.9 抽样偏误53
- 3.2.10 无放回的抽样53
- 3.2.11 有放回的抽样54
- 3.3 信用卡欺诈:总群体的统计量54
- 3.3.1 数据描述54
- 3.3.2 总群体的均值55
- 3.3.3 总群体的方差55
- 3.3.4 汇总的均值和方差55
- 3.4 抽样在业务上的意义58
- 3.4.1 抽样的特征59
- 3.4.2 抽样的缺点59
- 3.5 概率和非概率抽样59
- 3.5.1 非概率抽样的类型60
- 3.6 关于抽样分布的统计理论61
- 3.6.1 大数定律61
- 3.6.2 中心极限定理63
- 3.7 概率抽样技术66
- 3.7.1 总群体的统计量66
- 3.7.2 简单随机抽样69
- 3.7.3 系统性随机抽样74
- 3.7.4 分层随机抽样77
- 3.7.5 聚类抽样82
- 3.7.6 自助抽样86
- 3.8 蒙特卡罗方法:接受-拒绝91
- 3.9 通过抽样节省计算开销的定性分析93
- 3.10 小结94
- 第4章 R语言里的数据可视化95
- 4.1 ggplot2组件包简介96
- 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 桑基图125
- 4.16 时间序列图127
- 4.17 队列图128
- 4.18 空间图130
- 4.19 小结133
- 4.20 参考资料133
- 第5章 特征工程135
- 5.1 特征工程简介136
- 5.1.1 过滤器方法137
- 5.1.2 包装器方法137
- 5.1.3 嵌入式方法138
- 5.2 了解工作数据138
- 5.2.1 数据摘要139
- 5.2.2 因变量的属性139
- 5.2.3 特征的可用性:连续型或分类型141
- 5.2.4 设置数据的假设142
- 5.3 特征排名143
- 5.4 变量子集的选择146
- 5.4.1 过滤器方法146
- 5.4.2 包装器方法149
- 5.4.3 嵌入式方法154
- 5.5 降维158
- 5.6 特征工程核对清单161
- 5.7 小结162
- 5.8 参考资料162
- 第6章 机器学习理论和实践163
- 6.1 机器学习的类型165
- 6.1.1 有监督学习166
- 6.1.2 无监督学习166
- 6.1.3 半监督学习166
- 6.1.4 强化学习166
- 6.2 机器学习算法的类别167
- 6.3 实际环境的数据集170
- 6.3.1 房产售价170
- 6.3.2 购买偏好170
- 6.3.3 Twitter订阅和文章171
- 6.3.4 乳腺癌171
- 6.3.5 购物篮172
- 6.3.6 亚马逊美食评论172
- 6.4 回归分析173
- 6.5 相关分析174
- 6.5.1 线性回归176
- 6.5.2 简单线性回归177
- 6.5.3 多元线性回归180
- 6.5.4 模型诊断:线性回归182
- 6.5.5 多项回归191
- 6.5.6 逻辑回归194
- 6.5.7 洛基(logit)变换195
- 6.5.8 几率比196
- 6.5.9 模型诊断:逻辑回归202
- 6.5.10 多项逻辑回归209
- 6.5.11 广义线性模型212
- 6.5.12 结论213
- 6.6 支持向量机213
- 6.6.1 线性SVM214
- 6.6.2 二元SVM分类模型215
- 6.6.3 多类别SVM217
- 6.6.4 结论218
- 6.7 决策树218
- 6.7.1 决策树的类型219
- 6.7.2 决策指标220
- 6.7.3 决策树学习方法222
- 6.7.4 集成树235
- 6.7.5 结论240
- 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 朴素贝叶斯方法242
- 6.8.7 结论246
- 6.9 聚类分析246
- 6.9.1 聚类方法简介247
- 6.9.2 聚类算法247
- 6.9.3 内部评估255
- 6.9.4 外部评估256
- 6.9.5 结论257
- 6.10 关联规则挖掘258
- 6.10.1 关联概念简介258
- 6.10.2 规则挖掘算法259
- 6.10.3 推荐算法265
- 6.10.4 结论270
- 6.11 人工神经网络271
- 6.11.1 人类认知学习271
- 6.11.2 感知器272
- 6.11.3 Sigmoid神经元274
- 6.11.4 神经网络的体系架构275
- 6.11.5 有监督与无监督的神经网络276
- 6.11.6 神经网络的学习算法277
- 6.11.7 前馈反向传播278
- 6.11.8 深度学习284
- 6.11.9 结论289
- 6.12 文本挖掘方法289
- 6.12.1 文本挖掘简介290
- 6.12.2 文本摘要291
- 6.12.3 TF-IDF292
- 6.12.4 词性标注294
- 6.12.5 关键字云297
- 6.12.6 文本分析:Microsoft Cognitive Services297
- 6.12.7 结论305
- 6.13 在线机器学习算法305
- 6.13.1 模糊C均值聚类306
- 6.13.2 结论308
- 6.14 构建模型的核对清单309
- 6.15 小结309
- 6.16 参考资料309
- 第7章 机器学习模型的评估311
- 7.1 数据集311
- 7.1.1 房产售价312
- 7.1.2 购买偏好313
- 7.2 模型性能和评估入门314
- 7.3 模型性能评估的目标315
- 7.4 总群体的稳定性指数316
- 7.5 连续型输出的模型评估320
- 7.5.1 平均绝对误差321
- 7.5.2 均方根误差323
- 7.5.3 R2324
- 7.6 离散型输出的模型评估326
- 7.6.1 分类矩阵327
- 7.6.2 灵敏度和特异性330
- 7.6.3 ROC曲线下的面积331
- 7.7 概率技术334
- 7.7.1 K 折交叉验证334
- 7.7.2 自助抽样336
- 7.8 Kappa误差指标337
- 7.9 小结340
- 7.10 参考资料341
- 第8章 模型性能改进342
- 8.1 机器学习和统计建模343
- 8.2 Caret组件包概述344
- 8.3 超参数简介346
- 8.4 超参数优化348
- 8.4.1 人工搜索349
- 8.4.2 人工网格搜索351
- 8.4.3 自动网格搜索353
- 8.4.4 最优搜索354
- 8.4.5 随机搜索356
- 8.4.6 自定义搜索357
- 8.5 偏误和方差权衡359
- 8.5.1 装袋或自助聚合363
- 8.5.2 增强363
- 8.6 集成学习简介363
- 8.6.1 投票集成364
- 8.6.2 集成学习中的高级方法365
- 8.7 在R语言里演示集成技术367
- 8.7.1 装袋树367
- 8.7.2 决策树的梯度增强369
- 8.7.3 混合knn和rpart372
- 8.7.4 利用caretEnemble进行堆叠374
- 8.8 高级主题:机器学习模型的贝叶斯优化377
- 8.9 小结381
- 8.10 参考资料382
- 第9章 可扩展机器学习和相关技术384
- 9.1 分布式处理和存储384
- 9.1.1 Google File System385
- 9.1.2 MapReduce386
- 9.1.3 R语言里的并行执行386
- 9.2 Hadoop生态系统389
- 9.2.1 MapReduce390
- 9.2.2 Hive393
- 9.2.3 Apache Pig396
- 9.2.4 HBase399
- 9.2.5 Spark400
- 9.3 在R语言环境下用 Spark进行机器学习401
- 9.3.1 设置环境变量401
- 9.3.2 初始化 Spark 会话402
- 9.3.3 加载数据并运行预处理402
- 9.3.4 创建 SparkDataFrame403
- 9.3.5 构建机器学习模型403
- 9.3.6 对测试数据进行预测404
- 9.3.7 终止 SparkR 会话404
- 9.4 在R语言里利用 H2O 进行机器学习405
- 9.4.1 安装组件包406
- 9.4.2 H2O集群的初始化406
- 9.4.3 在R语言里使用H2O的深度学习演示407
- 9.5 小结410
- 9.6 参考资料411