[套装书]自己动手做推荐引擎+自己动手做智能产品:嵌入式JavaScript实现(2册)

作者
[印] 苏雷什·库马尔·戈拉卡拉(Suresh Kumar Gorakala)[英] 戈登·F.威廉姆斯(Gordon F.Williams)
丛书名
出版社
机械工业出版社
ISBN
9782001061539
简要
简介
内容简介书籍计算机书籍 ---------------------------自己动手做推荐引擎--------------------------- 推荐引擎,是主动发现用户当前或潜在需求,并主动推送信息给用户的信息网络。挖掘用户的喜好和需求,主动向用户推荐其感兴趣或者需要的对象。近些年该技术得到普遍使用,应用于各种应用程序中。因此,更多的开发者开始关注个性推荐引擎的搭建。本书是人工智能数据科学家Suresh Kumar Gorakala经多年实践及研究所著,由浅入深介绍了推荐引擎搭建的方法,并展望了推荐引擎的未来发展。 ---------------------------自己动手做智能产品:嵌入式JavaScript实现--------------------------- 本书将通过简单的嵌入式编程,教会大家如何将日常物品转变为智能机器。当然市场中的ARM编程书籍多为平淡的教科书,相对复杂,编程语言对于初学者存在一定难度,本书采用读者易学易懂的编程语言,并结合实际动手操作来帮助读者实现产品智能化。
目录



---------------------------自己动手做推荐引擎---------------------------


作者简介
技术评审员简介
前言
第1章 推荐引擎介绍 1
1.1推荐引擎定义 1
1.2推荐系统的必要性 3
1.3大数据对推荐系统的推动作用 4
1.4推荐系统类型 4
1.4.1协同过滤推荐系统 4
1.4.2基于内容的推荐系统 5
1.4.3混合推荐系统 6
1.4.4情境感知推荐系统 7
1.5推荐系统技术的发展 8
1.5.1Mahout在可扩展推荐系统中的应用 8
1.5.2Apache Spark在可扩展实时推荐系统中的应用 9
1.6本章小结 12
第2章 构建第一个推荐引擎 13
2.1构建基础推荐引擎 14
2.1.1载入并格式化数据 15
2.1.2计算用户相似度 17
2.1.3为用户预测未知评级 18
2.2本章小结 24
第3章 推荐引擎详解 25
3.1推荐引擎的发展 26
3.2基于近邻算法的推荐引擎 27
3.2.1基于用户的协同过滤 29
3.2.2基于项目的协同过滤 30
3.2.3优点 32
3.2.4缺点 32
3.3基于内容的推荐系统 32
3.3.1用户画像生成 35
3.3.2优点 36
3.3.3缺点 36
3.4情境感知推荐系统 37
3.4.1情境定义 38
3.4.2前置过滤法 40
3.4.3后置过滤法 40
3.4.4优点 41
3.4.5缺点 41
3.5混合推荐系统 41
3.5.1加权法 42
3.5.2混合法 42
3.5.3层叠法 42
3.5.4特征组合法 42
3.5.5优点 43
3.6基于模型的推荐系统 43
3.6.1概率法 44
3.6.2机器学习法 44
3.6.3数学法 44
3.6.4优点 45
3.7本章小结 45
第4章 数据挖掘技术在推荐引擎中的应用 46
4.1基于近邻算法的技术 47
4.1.1欧氏距离 47
4.1.2余弦相似度 48
4.1.3Jaccard相似度 51
4.1.4皮尔逊相关系数 51
4.2数学建模技术 53
4.2.1矩阵分解 53
4.2.2交替最小二乘法 55
4.2.3奇异值分解 55
4.3机器学习技术 57
4.3.1线性回归 57
4.3.2分类模型 59
4.4聚类技术 69
4.5降维 71
4.6向量空间模型 75
4.6.1词频 75
4.6.2词频-逆文档频率 76
4.7评估技术 78
4.7.1交叉验证 79
4.7.2正则化 80
4.8本章小结 82
第5章 构建协同过滤推荐引擎 83
5.1在RStudio上安装recommenderlab 83
5.2recommenderlab包中可用的数据集 85
5.3探讨数据集 88
5.4使用recommenderlab构建基于用户的协同过滤 89
5.4.1准备训练数据和测试数据 90
5.4.2创建一个基于用户的协同模型 90
5.4.3在测试集上进行预测 92
5.4.4分析数据集 93
5.4.5使用k折交叉验证评估推荐模型 95
5.4.6评估基于用户的协同过滤 96
5.5构建基于项目的推荐模型 99
5.5.1构建IBCF推荐模型 100
5.5.2模型评估 103
5.5.3模型准确率度量 104
5.5.4模型准确率绘图 105
5.5.5IBCF参数调优 107
5.6使用Python构建协同过滤 110
5.6.1安装必要包 110
5.6.2数据源 110
5.7数据探讨 111
5.7.1表示评级矩阵 113
5.7.2创建训练集和测试集 114
5.7.3构建UBCF的步骤 115
5.7.4基于用户的相似度计算 115
5.7.5预测活跃用户的未知评级 116
5.8使用KNN 进行基于用户的协同过滤 117
5.9基于项目的推荐 118
5.9.1评估模型 119
5.9.2KNN训练模型 120
5.9.3评估模型 120
5.10本章小结 120
第6章 构建个性化推荐引擎 121
6.1个性化推荐系统 122
6.2基于内容的推荐系统 122
6.2.1构建一个基于内容的推荐系统 123
6.2.2使用 R语言构建基于内容的推荐 123
6.2.3使用Python语言构建基于内容的推荐 133
6.3情境感知推荐系统 144
6.3.1构建情境感知推荐系统 144
6.3.2使用R语言构建情境感知推荐 145
6.4本章小结 150
第7章 使用Spark构建实时推荐引擎 151
7.1Spark 2.0介绍 152
7.1.1Spark架构 152
7.1.2Spark组件 154
7.1.3Spark Core 154
7.1.4Spark的优点 156
7.1.5Spark设置 156
7.1.6SparkSession 157
7.1.7弹性分布式数据集 158
7.1.8关于ML流水线 158
7.2使用交替最小二乘法进行协同过滤 160
7.3使用PySpark构建基于模型的推荐系统 162
7.4MLlib推荐引擎模块 163
7.5推荐引擎方法 164
7.5.1实现 164
7.5.2基于用户的协同过滤 172
7.5.3模型评估 173
7.5.4模型选择和超参数调优 174
7.6本章小结 179
第8章 通过Neo4j构建实时推荐 180
8.1图数据库种类 181
8.2Neo4j 183
8.2.1Cypher查询语言 184
8.2.2节点语法 184
8.2.3关系语法 185
8.2.4构建第一个图 185
8.3Neo4j Windows安装 192
8.4Neo4j Linux安装 194
8.4.1下载Neo4j 194
8.4.2设置Neo4j 195
8.4.3命令行启动Neo4j 195
8.5构建推荐引擎 197
8.5.1将数据加载到Neo4j 197
8.5.2使用Neo4j生成推荐 200
8.5.3使用欧氏距离进行协同过滤 201
8.5.4使用余弦相似度进行协同过滤 206
8.6本章小结 209
第9章 使用Mahout构建可扩展的推荐引擎 210
9.1Mahout简介 211
9.2配置Mahout 211
9.2.1Mahout单机模式 211
9.2.2Mahout分布式模式 218
9.3Mahout的核心构建模块 220
9.3.1基于用户的协同过滤推荐引擎组件 220
9.3.2使用Mahout构建推荐引擎 223
9.3.3数据描述 223
9.3.4基于用户的协同过滤 225
9.4基于项目的协同过滤 228
9.5协同过滤评估 231
9.6基于用户的推荐评估 231
9.7基于项目的推荐评估 232
9.8SVD推荐系统 235
9.9使用Mahout进行分布式推荐 236
9.10可扩展系统的架构 240
9.11本章小结 241
第10章 推荐引擎的未来 242
10.1推荐引擎的未来 242
10.2推荐系统的发展阶段 243
10.2.1一般的推荐系统 243
10.2.2个性化推荐系统 244
10.2.3未来的推荐系统 245
10.2.4下一个最佳举措 249
10.2.5使用案例 249
10.3流行方法 251
10.4推荐引擎的时效性 252
10.4.1A/B测试 253
10.4.2反馈机制 254
10.5本章小结 255



---------------------------自己动手做智能产品:嵌入式JavaScript实现---------------------------


前言 1
第1章 简介 5
为何要将物品智能化 5
在实践中学习 5
利用JavaScript进行创造 6
工具和材料 7
第一部分 微控制器
第2章 微控制器为何物 13
ARM历史 14
利用微控制器编程 15
第3章 Espruino入门 19
准备工作 20
插入接口 21
软件安装 22
连接开发板 24
固件升级 25
命令行初体验 26
编辑器 27
第4章 开启JavaScript之旅 31
准备工作 31
注释 32
数据类型 32
数学计算 33
变量 35
自增与自减 37
对象 38
函数 38
数组 42
面向对象 44
按位运算 45
if语句 51
&&和|| 52
三元操作符 53
for循环 53
异常 55
第二部分 电动机
第5章 什么是电动机 59
实验1:法拉第的电动机 60
实验2:电动机换向器 64
无刷直流电动机 68
实验3:步进电动机 69
实验4:步进电动机控制 72
实验5:多个步进电动机控制 76
第6章 频闪仪 79
找到一个风扇 79
实验6:速度检测 81
实验7:频闪仪 84
实验8:照得更远的频闪仪 86
第7章 约翰·罗杰·贝尔德的电视机 89
实验9:视觉的持续性 89
实验10:约翰·罗杰·贝尔德的电视机 92
第三部分 机电部分
第8章 制作一个简单的机器人 101
实验11:试用伺服电机 102
实验12:制作一个简单的机器人 105
实验13:循光 113
第9章 铅笔绘图仪 117
实验14:铅笔绘图仪 117
第10章 数码针孔相机 131
实验15:制作一个数码相机 131
第11章 打印机 145
实验16:制作一个打印机 145
第四部分 通信
第12章 有线通信 161
时序 161
实验17:制作示波器 163
第13章 切断连线:红外线 169
实验18:制作红外接收器 169
实验19:解码红外线信号 171
实验20:使用解码信号 175
实验21:用dweet.io在网络上使用遥控器 176
实验22:通过IFTTT在网络上使用遥控器 178
第14章 切断连线:无线电信号 181
实验23:连接接收器 182
实验24:连接发射器 183
实验25:从Espruino发射 185
实验26:解码接收的数据 186
第15章 连接无线网络 193
实验27:将WiFi添加到你的Pico 194
实验28:测试你的布线 198
实验29:连接到WiFi 199
实验30:将数据发送到Internet 200
实验31:从Internet接收数据 202
实验32:建立一个服务器 206
控制物品 209
第16章 低功耗蓝牙 213
低功耗蓝牙如何工作 214
如何使用低功耗蓝牙 216
Web Bluetooth 216
实验33:使用Puck.js 217
实验34:制作一个开门计数器 219
实验35:广播开门次数 222
实验36:用Eddystone接收开门次数 223
第五部分 合而为一
第17章 XY绘图仪 229
实验37:制作XY表 229
实验38:控制XY表 235
第18章 联网绘图仪 243
实验39:联网绘图仪 245
第六部分 总结
第19章 未来如何 257
附录A 零件和材料 259
附录B 常见的Espruino命令和变量 271
附录C Espruino汇编 277



有问题微信扫码联系

推荐

Understand China
桂ICP备20004708号-4