新書推薦:
《
药食同源中药鉴别图典
》
售價:NT$
305.0
《
设计中的比例密码:建筑与室内设计
》
售價:NT$
398.0
《
冯友兰和青年谈心系列:看似平淡的坚持
》
售價:NT$
254.0
《
舍不得星星:全2册
》
售價:NT$
356.0
《
汉字理论与汉字阐释概要 《说解汉字一百五十讲》作者李守奎新作
》
售價:NT$
347.0
《
汗青堂丛书144·决战地中海
》
售價:NT$
765.0
《
逝去的武林(十周年纪念版 武学宗师 口述亲历 李仲轩亲历一九三零年代武人言行录)
》
售價:NT$
250.0
《
唐代冠服图志(百余幅手绘插画 图解唐代各类冠服 涵盖帝后 群臣 女官 士庶 军卫等 展现唐代社会风貌)
》
售價:NT$
398.0
|
編輯推薦: |
使用PySpark构建机器学习模型、自然语言处理应用程序以及推荐系统,从而应对各种业务挑战。本书首先介绍Spark的基础知识,然后讲解使用PySpark构建传统机器学习算法以及自然语言处理和推荐系统的全部知识点。
本书阐释了如何构建有监督机器学习模型,比如线性回归、逻辑回归、决策树和随机森林,还介绍了无监督机器学习模型,比如K均值和层次聚类。本书重点介绍特征工程,以便使用PySpark创建有用的特征,从而训练机器学习模型。自然语言处理的相关章节将介绍文本处理、文本挖掘以及用于分类的嵌入。
在阅读完本书之后,读者将了解如何使用PySpark的机器学习库构建和训练各种机器学习模型。此外,还将熟练掌握相关的PySpark组件,从而进行数据获取、数据处理和数据分析,开发数据驱动的智能应用。
|
內容簡介: |
构建一系列有监督和无监督机器学习算法
使用Spark MLlib库实现机器学习算法
使用Spark MLlib库开发推荐系统
处理与特征工程、分类平衡、偏差和方差以及交叉验证有关的问题,以便构建*的拟合模型
|
關於作者: |
Pramod Singh是Publicis.Sapient公司数据科学部门的经理,目前正作为数据科学跟踪负责人与梅赛德斯奔驰的一个项目进行合作。他在机器学习、数据工程、编程,以及为各种业务需求设计算法方面拥有丰富的实践经验,领域涉及零售、电信、汽车以及日用消费品等行业。他在Publicis.Sapient主导了大量应对机器学习和AI的战略计划。他在孟买大学获得了电气与电子工程的学士学位,并且在印度共生国际大学获得了MBA学位运营&财务,还在IIMCalcutta印度管理学院加尔各答分校获得了数据分析认证。在过去八年中,他一直在跟进多个数据项目。在大量客户项目中,他使用R、Python、Spark和TensorFlow应用机器学习和深度学习技术。他一直是各重大会议和大学的演讲常客。他会在Publicis.Sapient举办数据科学聚合并且定期出席关于ML和AI的网络研讨会。他和妻子以及两岁的儿子居住在班加罗尔。闲暇的时候,他喜欢弹吉他、写代码、阅读以及观看足球比赛。
|
目錄:
|
目录
第1章 数据革命1
1.1 数据生成1
1.2 Spark2
1.2.1 Spark Core3
1.2.2 Spark组件4
1.3 设置环境5
1.3.1 Windows5
1.3.2 iOS6
1.4 小结7
第2章 机器学习简介9
2.1 有监督机器学习10
2.2 无监督机器学习12
2.3 半监督机器学习14
2.4 强化学习14
2.5 小结15
第3章 数据处理17
3.1 加载和读取数据17
3.2 添加一个新列20
3.3 筛选数据21
3.3.1 条件121
3.3.2 条件222
3.4 列中的非重复值23
3.5 数据分组23
3.6 聚合25
3.7 用户自定义函数UDF26
3.7.1 传统的Python函数26
3.7.2 使用lambda函数27
3.7.3 Pandas UDF向量化的UDF28
3.7.4 Pandas UDF多列29
3.8 去掉重复值29
3.9 删除列30
3.10 写入数据30
3.10.1 csv31
3.10.2 嵌套结构31
3.11 小结31
第4章 线性回归33
4.1 变量33
4.2 理论34
4.3 说明41
4.4 评估42
4.5 代码43
4.5.1 数据信息43
4.5.2 步骤1:创建
SparkSession对象44
4.5.3 步骤2:读取数据集44
4.5.4 步骤3:探究式数据分析44
4.5.5 步骤4:特征工程化45
4.5.6 步骤5:划分数据集47
4.5.7 步骤6:构建和训练线性回归模型47
4.5.8 步骤7:在测试数据上评估线性回归模型48
4.6 小结48
第5章 逻辑回归49
5.1 概率49
5.1.1 使用线性回归50
5.1.2 使用Logit53
5.2 截距回归系数54
5.3 虚变量55
5.4 模型评估56
5.4.1 正确的正面预测56
5.4.2 正确的负面预测57
5.4.3 错误的正面预测57
5.4.4 错误的负面预测57
5.4.5 准确率57
5.4.6 召回率57
5.4.7 精度58
5.4.8 F1分数58
5.4.9 截断阈值概率58
5.4.10 ROC曲线58
5.5 逻辑回归代码59
5.5.1 数据信息59
5.5.2 步骤1:创建Spark会话对象60
5.5.3 步骤2:读取数据集60
5.5.4 步骤3:探究式数据分析60
5.5.5 步骤4:特征工程63
5.5.6 步骤5:划分数据集68
5.5.7 步骤6:构建和训练逻辑回归模型69
5.5.8 训练结果69
5.5.9 步骤7:在测试数据上评估线性回归模型70
5.5.10 混淆矩阵71
5.6 小结72
第6章 随机森林73
6.1 决策树73
6.1.1 熵75
6.1.2 信息增益76
6.2 随机森林78
6.3 代码80
6.3.1 数据信息80
6.3.2 步骤1:创建SparkSession对象81
6.3.3 步骤2:读取数据集81
6.3.4 步骤3:探究式数据分析81
6.3.5 步骤4:特征工程85
6.3.6 步骤5:划分数据集86
6.3.7 步骤6:构建和训练随机森林模型87
6.3.8 步骤7:基于测试数据进行评估87
6.3.9 准确率89
6.3.10 精度89
6.3.11 AUC曲线下的面积89
6.3.12 步骤8:保存模型90
6.4 小结90
第7章 推荐系统91
7.1 推荐91
7.1.1 基于流行度的RS92
7.1.2 基于内容的RS93
7.1.3 基于协同过滤的RS95
7.1.4 混合推荐系统103
7.2 代码104
7.2.1 数据信息105
7.2.2 步骤1:创建SparkSession对象105
7.2.3 步骤2:读取数据集105
7.2.4 步骤3:探究式数据分析105
7.2.5 步骤4:特征工程108
7.2.6 步骤5:划分数据集109
7.2.7 步骤6:构建和训练推荐系统模型110
7.2.8 步骤7:基于测试数据进行预测和评估110
7.2.9 步骤8:推荐活动用户可能会喜欢的排名靠前的电影111
7.3 小结114
第8章 聚类115
8.1 初识聚类115
8.2 用途117
8.2.1 K-均值117
8.2.2 层次聚类127
8.3 代码131
8.3.1 数据信息131
8.3.2 步骤1:创建SparkSession对象131
8.3.3 步骤2:读取数据集131
8.3.4 步骤3:探究式数据分析131
8.3.5 步骤4:特征工程133
8.3.6 步骤5:构建K均值聚类模型133
8.3.7 步骤6:聚类的可视化136
8.4 小结137
第9章 自然语言处理139
9.1 引言139
9.2 NLP涉及的处理步骤139
9.3 语料140
9.4 标记化140
9.5 移除停用词141
9.6 词袋142
9.7 计数向量器143
9.8 TF-IDF144
9.9 使用机器学习进行文本分类145
9.10 序列嵌入151
9.11 嵌入151
9.12 小结160
|
內容試閱:
|
█ █ █
前言
在开始编写《PySpark机器学习、自然语言处理与推荐系统》之前,我曾经问过自己一个问题:是否有必要写一本关于机器学习的书?我的意思是,市面上已经有很多关于这一主题的书籍。为了找到答案,我花费了大量时间进行思考,不久之后,一些规律开始浮现在我的脑海中。目前关于机器学习的书籍都过于关注细节而缺乏一种顶层概览。这些书刚开始的内容真的很简单,不过几章之后,随着内容变得过于深入,就会让读者感到难以继续阅读下去。因而,读者就会由于放弃阅读而无法从书中汲取足够的知识。这就是我想要编写《PySpark机器学习、自然语言处理与推荐系统》的原因,《PySpark机器学习、自然语言处理与推荐系统》揭示使用机器学习的不同方式,虽然不会过于深入细节,不过也会让读者了解全新构建ML模型所需的完整方法论。另一个显而易见的问题就是:为何要使用PySpark进行机器学习?找到这个问题的答案并没有花费我太长时间,因为我是一位拥有实践经验的数据科学家并且非常清楚处理数据的人所面临的挑战。大多数的包或模块通常在使用方面都是受限的,因为它们在单台机器上处理数据。如果ML 模型的目的不是处理大数据并且最终数据处理本身需要变得快速且可扩展,那么从开发环境迁移到生产环境会变成一场噩梦。出于所有这些原因,编写这本关于使用PySpark进行机器学习的书籍就是完全合理的,以便让读者能够理解从大数据角度使用机器学习的处理过程。
现在我来谈谈《PySpark机器学习、自然语言处理与推荐系统》这本书的核心内容。这本书分为三大部分。第一部分将介绍机器学习和Spark;第二部分会使用大数据详细讲解机器学习;第三部分会展示如何使用PySpark构建推荐系统和NLP。这本书可能也与数据分析师和数据工程师有关,因为它还介绍了使用PySpark处理大数据的步骤。想要切入数据科学和机器学习领域的读者会发现《PySpark机器学习、自然语言处理与推荐系统》更易于入门,并且后续能够逐步学习掌握更复杂的知识。书中的案例研究和示例会让《PySpark机器学习、自然语言处理与推荐系统》内容以及基础概念的学习理解变得非常容易。此外,目前市面上关于PySpark的书籍非常少,而这本书必定会让读者汲取到一些新的知识。《PySpark机器学习、自然语言处理与推荐系统》的优点在于,以浅显易懂的方式阐释机器学习算法,并且针对使用PySpark构建这些算法提供一种切实可行的方法。
我将自己的所有经验和所掌握的知识都融入《PySpark机器学习、自然语言处理与推荐系统》之中,并且我认为它们确实与那些现在寻求应对实际挑战的企业紧密相关。我希望读者能从《PySpark机器学习、自然语言处理与推荐系统》中汲取到一些有用的知识。
|
|