新書推薦:
《
大单元教学设计20讲
》
售價:NT$
347.0
《
儿童自我关怀练习册:做自己最好的朋友
》
售價:NT$
316.0
《
高敏感女性的力量(意大利心理学家FSP博士重磅力作。高敏感是优势,更是力量)
》
售價:NT$
286.0
《
元好问与他的时代(中华学术译丛)
》
售價:NT$
398.0
《
汽车传感器结构·原理·检测·维修
》
售價:NT$
500.0
《
怪谈百物语:不能开的门(“日本文学史上的奇迹”宫部美雪重要代表作!日本妖怪物语集大成之作,系列累销突破200万册!)
》
售價:NT$
296.0
《
罗马政治观念中的自由
》
售價:NT$
230.0
《
中国王朝内争实录:宠位厮杀
》
售價:NT$
281.0
|
編輯推薦: |
●作者在学术界和工业界工作多年,书中介绍的都是非常实用的算法。 ●本书涵盖实际中常用的各种算法,包括回归、分类、推荐系统、排序等,能够引导读者从原始数据出发到形成zui终的解决方案。 ●通过R语言来引导读者使用算法,使读者能够简单上手,得到算法的第1手使用经验。 机器学习是一个热门而又高深的话题。多年来,符号学习、统计学习、深度学习等一系列高高在上的名词使得大众对机器学习敬而远之,大数据时代,机器学习的广泛成功应用再次引爆了大众对机器学习的关注。 机器学习能够解决什么样的问题?如何使用机器学习解决实际问题?应该怎样选择算法?本书从实践出发回答这些问题。书中首先通过实际应用场景引出机器学习中的几类典型问题,然后着重介绍解决各类问题的实用算法,并利用R语言和相关的软件包来引导读者实际使用这些算法。 ●不懂机器学习?没有关系。本书不仅介绍了机器学习的基本概念和算法原理,还提供了完整的程序代码,助读者轻松上手、快速入门。 ●数学基础不够?没有关系。本书一方面突出了对概念和原理的理解,尽可能淡化了对数学背景的要求;另一方面也介绍了需要具备的数学知识,便于读者查阅。 ●不会使用R语言?没有关系。本
|
內容簡介: |
大数据时代为机器学习的应用提供了广阔的空间,各行各业涉及数据分析的工作都需要使用机器学习算法。本书围绕实际数据分析的流程展开,着重介绍数据探索、数据预处理和常用的机器学习算法模型。本书从解决实际问题的角度出发,介绍回归算法、分类算法、推荐算法、排序算法和集成学习算法。在介绍每种机器学习算法模型时,书中不但阐述基本原理,而且讨论模型的评价与选择。为方便读者学习各种算法,本书介绍了R语言中相应的软件包并给出了示例程序。 本书的一大特色就是贴近工程实践。首先,本书仅侧重介绍当前工业界常用的机器学习算法,而不追求知识内容的覆盖面;其次,本书在介绍每类机器学习算法时,力求通俗易懂地阐述算法思想,而不追求理论的深度,让读者借助代码获得直观的体验。
|
關於作者: |
孙亮,*数据科学与技术研究院高级专家。曾任微软Azure机器学习(Azure Machine Learning)部门高级数据科学家,先后毕业于南京大学计算机系(1999-2003)、中国科学院软件研究所(2003-2006)、美国亚利桑那州立大学计算机系(2006-2011),研究兴趣包括机器学习、数据挖掘及其实际应用等。近年来参加了KDD Cup、Heritage HealthPrize等多项数据挖掘竞赛并多次取得优异成绩。在IEEE T-PAMI、NIPS、ICML、SIGKDD等机器学习领域的知名国际期刊和国际会议上发表论文近20篇,著有机器学习英文专著1部。 黄倩,河海大学副研究员,先后毕业于南京大学计算机系(1999-2003)、中国科学院计算技术研究所(2003-2010),研究兴趣包括多媒体大数据处理、机器学习、云计算等。参加过多个973、863、国家自然科学基金项目的研究,参与过AVS、H.265 HEVC等国内外视频压缩标准的制订。现主持包括国家自然科学基金在内的多个国家、省市级项目,并获南京市江宁区首批高层次创业人才创聚工程项目资助。在相关领域的知名国际期刊和国际会议上发表论文逾20篇,出版译著4本,参编专著1部。
|
目錄:
|
第1章 引论 1
1.1 什么是机器学习 1
1.2 机器学习算法的分类 2
1.3 实际应用 3
1.3.1 病人住院时间预测 3
1.3.2 信用分数估计 4
1.3.3 Netflix上的影片推荐 4
1.3.4 酒店推荐 5
1.3.5 讨论 6
1.4 本书概述 7
1.4.1 本书结构 9
1.4.2 阅读材料及其他资源 10
第2章 R语言 12
2.1 R的简单介绍 12
2.2 R的初步体验 13
2.3 基本语法 14
2.3.1 语句 14
2.3.2 函数 17
2.4 常用数据结构 19
2.4.1 向量 19
2.4.2 因子 23
2.4.3 矩阵 24
2.4.4 数据框 26
2.4.5 列表 29
2.4.6 下标系统 33
2.5 公式对象和apply函数 34
2.6 R软件包 36
2.6.1 软件包的安装 37
2.6.2 软件包的使用 38
2.6.3 软件包的开发 38
2.7 网络资源 38
第3章 数学基础 39
3.1 概率 39
3.1.1 基本概念 39
3.1.2 基本公式 40
3.1.3 常用分布 42
3.1.4 随机向量及其分布 43
3.1.5 随机变量的数字特征 46
3.1.6 随机向量的数字特征 48
3.2 统计 49
3.2.1 常用数据特征 49
3.2.2 参数估计 52
3.3 矩阵 54
3.3.1 基本概念 54
3.3.2 基本运算 56
3.3.3 特征值与特征向量 57
3.3.4 矩阵分解 60
3.3.5 主成分分析 62
3.3.6 R中矩阵的计算 68
第4章 数据探索和预处理 74
4.1 数据类型 74
4.2 数据探索 75
4.2.1 常用统计量 76
4.2.2 使用R实际探索数据 76
4.3 数据预处理 82
4.3.1 缺失值的处理 82
4.3.2 数据的标准化 83
4.3.3 删除已有变量 85
4.3.4 数据的变换 86
4.3.5 构建新的变量:哑变量 86
4.3.6 离群数据的处理 88
4.4 数据可视化 89
4.4.1 直方图 89
4.4.2 柱状图 92
4.4.3 茎叶图 95
4.4.4 箱线图 96
4.4.5 散点图 100
第5章 回归分析 104
5.1 回归分析的基本思想 104
5.2 线性回归和最小二乘法 105
5.2.1 最小二乘法的几何解释 106
5.2.2 线性回归和极大似然估计 107
5.3 岭回归和Lasso 108
5.3.1 岭回归 108
5.3.2 Lasso与稀疏解 110
5.3.3 Elastic Net 114
5.4 回归算法的评价和选取 114
5.4.1 均方差和均方根误差 114
5.4.2 可决系数 114
5.4.3 偏差-方差权衡 115
5.5 案例分析 118
5.5.1 数据导入和探索 118
5.5.2 数据预处理 120
5.5.3 将数据集分成训练集和测试集 121
5.5.4 建立一个简单的线性回归模型 121
5.5.5 建立岭回归和Lasso模型 122
5.5.6 选取合适的模型 124
5.5.7 构造新的变量 126
5.6 小结 126
第6章 分类算法 127
6.1 分类的基本思想 127
6.2 决策树 130
6.2.1 基本原理 130
6.2.2 决策树学习 131
6.2.3 过拟合和剪枝 138
6.2.4 实际使用 139
6.2.5 讨论 148
6.3 逻辑回归 148
6.3.1 sigmoid函数的性质 148
6.3.2 通过极大似然估计来估计参数 149
6.3.3 牛顿法 151
6.3.4 正则化项的引入 153
6.3.5 实际使用 154
6.4 支持向量机 161
6.4.1 基本思想:最大化分类间隔 161
6.4.2 最大分类间隔的数学表示 163
6.4.3 如何处理线性不可分的数据 164
6.4.4 Hinge损失函数 166
6.4.5 对偶问题 168
6.4.6 非线性支持向量机和核技巧 170
6.4.7 实际使用 173
6.5 损失函数和不同的分类算法 175
6.5.1 损失函数 175
6.5.2 正则化项 178
6.6 交叉检验和caret包 180
6.6.1 模型选择和交叉检验 180
6.6.2 在R中实现交叉检验以及caret包 182
6.7 分类算法的评价和比较 192
6.7.1 准确率 193
6.7.2 混淆矩阵 193
6.7.3 精确率、召回率和F1度量 195
6.7.4 ROC曲线和AUC 196
6.7.5 R中评价标准的计算 199
6.8 不平衡分类问题 201
6.8.1 使用不同的算法评价标准 201
6.8.2 样本权值 201
6.8.3 取样方法 202
6.8.4 代价敏感学习 203
第7章 推荐算法 205
7.1 推荐系统基础 205
7.1.1 常用符号 208
7.1.2 推荐算法的评价标准 209
7.2 基于内容的推荐算法 210
7.3 基于矩阵分解的算法 211
7.3.1 无矩阵分解的基准方法 211
7.3.2 基于奇异值分解的推荐算法 212
7.3.3 基于SVD推荐算法的变体 216
7.4 基于邻域的推荐算法 222
7.4.1 基于用户的邻域推荐算法 223
7.4.2 基于商品的邻域推荐算法 225
7.4.3 混合算法 226
7.4.4 相似度的计算 227
7.5 R中recommenderlab的实际 使用 232
7.6 推荐算法的评价和选取 250
第8章 排序学习 253
8.1 排序学习简介 253
8.1.1 解决排序问题的基本思路 254
8.1.2 构造特征 255
8.1.3 获取相关度分数 256
8.1.4 数学符号 257
8.2 排序算法的评价 257
8.2.1 MAP 258
8.2.2 DCG 260
8.2.3 NDCG 261
8.2.4 讨论 261
8.3 逐点方法 262
8.3.1 基于SVM的逐点排序方法 263
8.3.2 逐点方法讨论 264
8.4 逐对方法 265
8.4.1 Ranking SVM算法 265
8.4.2 IR-SVM算法 266
8.4.3 RankNet算法 267
8.4.4 LambdaRank算法 271
8.4.5 LambdaMART算法 273
8.5 逐列方法 279
8.5.1 SVMmap算法 279
8.5.2 讨论 283
第9章 集成学习 284
9.1 集成学习简介 284
9.2 bagging简介 285
9.3 随机森林 289
9.3.1 训练随机森林的基本流程 289
9.3.2 利用随机森林估计变量的 重要性 290
9.3.3 随机森林的实际使用 291
9.4 boosting简介 300
9.4.1 boosting和指数损失函数 301
9.4.2 AdaBoost算法 302
9.4.3 AdaBoost的实际使用 306
9.4.4 讨论 311
9.5 提升决策树和梯度提升算法 311
9.5.1 提升决策树和梯度提升算法的基本原理 311
9.5.2 如何避免过拟合 315
9.5.3 gbm包的实际使用 318
9.5.4 讨论 327
9.6 学习器的聚合及stacking 328
9.6.1 简单平均 328
9.6.2 加权平均 329
9.6.3 stacking的基本思想及应用 329
9.7 小结 331
参考文献 332
索引 334
|
|