Keras快速上手:基于Python的深度学习实战
  • 推荐1
  • 收藏7
  • 浏览1.3K

Keras快速上手:基于Python的深度学习实战

谢梁 , 鲁颖 , 劳虹岚 (作者)  王静 (责任编辑)

  • 丛  书:
  • 书  号:978-7-121-31872-6
  • 出版日期:2017-08-01
  • 页  数:272
  • 开  本:16(170*240)
  • 出版状态:上市销售
  • 原书名: Keras 快速上手:基于 Python 的深度学习实战
  • 原书号:978-7-121-31872-6
  • 维护人:张慧敏

相关图书

深度学习入门之PyTorch

廖星宇 (作者)

深度学习如今已经成为了科技领域最炙手可热的技术,在本书中,我们将帮助你入门深度学习的领域。本书将从人工智能的介绍入手,了解机器学习和深度学习的基础理论,并学习如...

¥79.00

用商业案例学R语言数据挖掘

经管之家 (作者)

商业智能时代已经全面到来,分析型人才的岗位数量在就业市场中呈现井喷式增长。无论是从事产品<br>研发的工程师,还是从事产品推广的市场人员、人力资源和财务会计人员...

¥69.00

区块链核心算法解析

Roger Wattenhofer (作者) 陈晋川等 (译者)

本书主要介绍区块链中超级重要的概念:共识在各种应用场景中的实现机制。本书是目前已面世书籍中对共识概念解析中至权威、至全面的一本。目标读者为区块链学习及研究人员,...

¥59.00

Python与机器学习实战:决策树、集成学习、支持向量机与神经网络算法详解及编程实现

张启玉 (作者)

Python与机器学习这一话题是如此的宽广,仅靠一本书自然不可能涵盖到方方面面,甚至即使出一个系列也难能做到这点。单就机器学习而言,其领域就包括但不限于如下:有...

¥69.00

零起点Python足彩大数据与机器学习实盘分析

何海群 (作者)

本书采用Python编程语言、Pandas数据分析模块、机器学习和人工智能算法,对足彩大数据进行实盘分析。设计并发布了开源大数据项目zc-dat足彩数据包,汇总...

¥69.00

数源思维:写给非技术人员的数据思维秘籍

仓剑 (作者)

本书为非专业数据技术人员提供了一种有效利用数据解决问题的思维方法——数源思维。这种方法的简单描述,就是“从业务中来,回业务中去”。本书的上篇使用实例和典故详解了...

¥39.00
本书系统地讲解了深度学习的基本知识、建模过程和应用,并以深度学习在推荐系统、图像识别、自然语言处理、文字生成和时间序列中的具体应用为案例,详细介绍了从工具准备、数据获取和处理到针对问题进行建模的整个过程和实践经验,是一本非常好的深度学习入门书。
不同于许多讲解深度学习的书籍,本书以实用为导向,选择了 Keras 作为编程框架,强调简单、快速地设计模型,而不去纠缠底层代码,使得内容相当易于理解,读者可以在 CNTK、 TensorFlow 和 Theano 的后台之间随意切换,非常灵活。并且本书能帮助读者从高度抽象的角度去审视业务问题,达到事半功倍的效果。
该书以实际应用为导向,强调概念的认知和实用性,对理论的介绍深入浅出,对读者的数学水平要求较低,读者在学习完毕后能使用案例程序举一反三地应用到其具体场景中。本书覆盖当前最热门的传统数据挖掘场景和四个深度学习应用场景,根据我们市场调研,是目前唯一一本以应用为导向的介绍机器学习和深度学习的专业书籍,具备很高的参考价值和学术价值
谢梁
现任微软云计算核心存储部门首席数据科学家,主持运用机器学习和人工智能方法优化大规模高可用性并行存储系统的运行效率和改进其运维方式。具有十余年机器学习应用经验,熟悉各种业务场景下机器学习和数据挖掘产品的需求分析、架构设计、算法开发和集成部署,涉及金融、能源和高科技等领域。曾经担任美国道琼斯工业平均指数唯一保险业成分股的旅行家保险公司分析部门总监,负责运用现代统计学习方法优化精算定价业务和保险运营管理,推动精准个性化定价解决方案。在包括Journal of Statistical Software等专业期刊上发表过多篇论文,担任Journal of Statistical Computation and Simulation期刊以及Data Mining Applications with R一书的审稿人。本科毕业于西南财经大学经济学专业,博士毕业于纽约州立大学计量经济学专业。

鲁颖
现任谷歌硅谷总部数据科学家,为谷歌应用商城提供核心数据决策分析,利用机器学习和深度学习技术建立用户行为预测模型,为产品优化提供核心数据支持。曾在亚马逊、微软和迪士尼美国总部担任机器学习研究科学家,有着多年使用机器学习和深度学习算法研发为业务提供解决方案的经验。热衷于帮助中国社区的人工智能方面的研究和落地,活跃于各个大型会议并发表主题演讲。本科毕业于复旦大学数学专业,博士毕业于明尼苏达大学统计专业。

劳虹岚
现任微软研究院研究工程师,是早期智能硬件项目上视觉和语音研发的核心团队成员,对企业用户和消费者需求体验与AI技术的结合有深刻的理解和丰富的经验。曾在Azure和Office 365负责处理大流量高并发的后台云端研究和开发,精通一系列系统架构设计和性能优化方面的解决方案。拥有从前端到后端的丰富经验:包括客户需求判断、产品开发以及最终在云端架构设计和部署。本科毕业于浙江大学电子系,硕士毕业于美国南加州大学(USC)电子和计算机系。
2006 年,机器学习领域迎来了重要的转折点。加拿大多伦多大学教授、机器学习领域泰斗 Geoffrey Hinton 和他的学生 Ruslan Salakhutdinov 在《科学》上发表了一篇关于深度置信网络 (Deep Belief Networks) 的论文。从这篇论文的发表开始至今,深度学习有着迅猛的发展。 2009 年,微软研究院语音识别专家俞栋和邓力博士与深度学习专家Geoffery Hinton 合作。 2010 年,美国国防部 DARPA 和斯坦福大学、纽约大学和 NEC美国研究院合作深度学习项目。 2011 年微软宣布基于深度神经网络的识别系统取得成果并推出产品,彻底改变了语音识别原有的技术框架。从 2012 到 2015 年,深度学习技术在图像识别领域取得惊人的效果,在 ImageNet 评测上将错误率从 26% 一路降到 5%以下,几乎接近甚至超过人类的水平。这些都直接促进了一系列围绕深度学习技术的智能产品在市场上的出现,比如微软的认知服务(Cognitive Services)平台,谷歌的智能邮件应答和谷歌助手等。
在中国,我们同样欣喜地看到,基于大数据的机器学习和深度学习算法的大规模应用给互联网行业带来的巨大变革:淘宝的推荐算法、微软的小冰聊天机器人、百度的度秘、滴滴的预估时间和车费、饿了么的智能调度等都应运而生。我们有理由相信,未来的物联网、无人驾驶等也会挖掘出更多深度学习的实用场景。
深度学习对很多科技行业的从业者来说仍有一些神秘感。虽然像谷歌、微软等互联网巨头开源了诸如 TensorFlow、 CNTK 等深度学习平台,大幅降低了从业者的门槛,但是如何举一反三,根据实际问题选择合适的算法和模型,并不容易。作为本书的作者,我们三位在美国谷歌、微软等顶尖互联网科技公司从事多年以机器学习和深度学习为基础的人工智能项目研发,有着丰富的实践经验,深感有必要撰写一本深入浅出的深度学习书籍,分享我们对深度学习的理解和想法,并帮助同行和感兴趣的朋友们快速上手,建立属于自己的端到端的深度学习模型,从而在大数据、深度学习的浪潮中有着更好的职业发展。我们希望本书能起到抛砖引玉的作用,使读者对深度学习产生更多的兴趣,并把深度学习作为一个必备的分析技能。
在本书中,我们选择 Keras 这个流行的深度学习建模框架来讲解深度学习话题。这主要从三方面的考虑。首先, Keras 包括了各种常用的深度学习模块,可以应用于绝大部分业务环境。其次,从原理上讲,它是高度抽象的深度学习编程环境,简单易学。 Keras底层是调用 CNTK、 TensorFlow 或 Theano 执行计算的。最后,作为应用领域的从业者,我们需要关注的是如何把一个商业或者工程问题转化成合适的模型,如何准备数据和分析模型的好坏以及如何解释模型的结果。 Keras 非常适合这样的场景,让使用者脱离具体的矩阵计算和求导,而将重心转移到业务逻辑上。
本书是目前国内不多的系统讲解使用 Keras 这个深度学习框架进行神经网络建模的实用书籍,非常适合数据科学家、机器学习工程师、人工智能应用工程师和工作中需要进行预测建模以及进行回归分析的从业者。本书也适合对深度学习有兴趣的不同背景的从业者、学生和老师。
本书分成 10 章,系统性地讲解深度学习基本知识、使用 Keras 建模过程和应用,并提供详细代码,使读者可以花最少的时间把核心建模知识学到手。其中第 1 章介绍搭建深度学习环境,是整本书的基础。第 2 章介绍如何用网络爬虫技术收集数据并使用ElasticSearch 存储数据。因为在很多应用中,数据需要读者自行从网上爬取和并加以处理和存储。第 3 章介绍深度学习模型的基本概念。第 4 章介绍深度学习框架 Keras 的用法。第 5~9 章,是 5 个深度学习的经典应用。我们会依次介绍深度学习在推荐系统、图像识别、自然语言处理、文字生成和时间序列的具体应用。在介绍这些应用的过程中会穿插各种深度学习模型和代码,并和读者分享我们对于这些模型的原理和应用场景的体会。最后,我们抛砖引玉地把物联网的概念提出来。我们相信,物联网和深度学习的结合会爆发出巨大的能量和价值。
限于篇幅,我们无法涉及深度学习的方方面面,只能尽自己所能,和大家分享尽可能多的体会、经验和易于上手的代码。
在写书的过程中,我们得到了大量的帮助和指导。微软 CNTK 的作者、国际顶尖深度学习专家俞栋博士和张察博士为本书作序,并给予我们许多支持和鼓励。微软研究院的研究员郭彦东博士和高级工程师汤成对本书的部分章节提出了审阅意见。电子工业出版社的张慧敏、葛娜和王静老师,对书籍的出版和编辑付出了极大努力,才使这本书得以如期问世。在此一并感谢。
最后,我们三位作者希望本书能为中国的深度学习和人工智能的普及,为广大从业者提供有价值的实践经验和快速上手贡献我们的微薄之力。

谢梁,美国微软总部首席数据科学家
鲁颖,谷歌总部数据科学技术专家
劳虹岚,美国微软总部微软研究院研究工程师
2017 年 6 月于美国西雅图和硅谷

目录

1 准备深度学习的环境 1
1.1 硬件环境的搭建和配置选择 . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 通用图形处理单元 . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 你需要什么样的 GPU 加速卡 . . . . . . . . . . . . . . . . . . . . 6
1.1.3 你的 GPU 需要多少内存 . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.4 是否应该用多个 GPU . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2 安装软件环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.1 所需软件列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.2 CUDA 的安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.3 Python 计算环境的安装 . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.4 深度学习建模环境介绍 . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2.5 安装 CNTK 及对应的 Keras . . . . . . . . . . . . . . . . . . . . . 17
1.2.6 安装 Theano 计算环境 . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.2.7 安装 TensorFlow 计算环境 . . . . . . . . . . . . . . . . . . . . . . 25
1.2.8 安装 cuDNN 和 CNMeM . . . . . . . . . . . . . . . . . . . . . . . 27
2 数据收集与处理 28
2.1 网络爬虫 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.1.1 网络爬虫技术 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.1.2 构造自己的 Scrapy 爬虫 . . . . . . . . . . . . . . . . . . . . . . . 30
2.1.3 构造可接受参数的 Scrapy 爬虫 . . . . . . . . . . . . . . . . . . . 35
2.1.4 运行 Scrapy 爬虫 . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.1.5 运行 Scrapy 爬虫的一些要点 . . . . . . . . . . . . . . . . . . . . . 38
2.2 大规模非结构化数据的存储和分析 . . . . . . . . . . . . . . . . . . . . . 40
2.2.1 ElasticSearch 介绍 . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.2.2 ElasticSearch 应用实例 . . . . . . . . . . . . . . . . . . . . . . . . 44
3 深度学习简介 57
3.1 概述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.2 深度学习的统计学入门 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3 一些基本概念的解释 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.3.1 深度学习中的函数类型 . . . . . . . . . . . . . . . . . . . . . . . . 62
3.3.2 深度学习中的其他常见概念 . . . . . . . . . . . . . . . . . . . . . 65
3.4 梯度递减算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.5 后向传播算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4 Keras 入门 72
4.1 Keras 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.2 Keras 中的数据处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.2.1 文字预处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.2.2 序列数据预处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.2.3 图片数据输入 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.3 Keras 中的模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.4 Keras 中的重要对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.5 Keras 中的网络层构造 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.6 使用 Keras 进行奇异值矩阵分解 . . . . . . . . . . . . . . . . . . . . . . . 102
5 推荐系统 105
5.1 推荐系统简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2 矩阵分解模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.3 深度神经网络模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5.4 其他常用算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
5.5 评判模型指标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6 图像识别 121
6.1 图像识别入门 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2 卷积神经网络的介绍 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.3 端到端的 MNIST 训练数字识别 . . . . . . . . . . . . . . . . . . . . . . . 127
6.4 利用 VGG16 网络进行字体识别 . . . . . . . . . . . . . . . . . . . . . . . 131
6.5 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7 自然语言情感分析 136
7.1 自然语言情感分析简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.2 文字情感分析建模 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7.2.1 词嵌入技术 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7.2.2 多层全连接神经网络训练情感分析 . . . . . . . . . . . . . . . . . 140
7.2.3 卷积神经网络训练情感分析 . . . . . . . . . . . . . . . . . . . . . 143
7.2.4 循环神经网络训练情感分析 . . . . . . . . . . . . . . . . . . . . . 144
7.3 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
8 文字生成 147
8.1 文字生成和聊天机器人 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.2 基于检索的对话系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
8.3 基于深度学习的检索式对话系统 . . . . . . . . . . . . . . . . . . . . . . . 159
8.3.1 对话数据的构造 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.3.2 构造深度学习索引模型 . . . . . . . . . . . . . . . . . . . . . . . . 162
8.4 基于文字生成的对话系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
8.5 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
9 时间序列 173
9.1 时间序列简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.2 基本概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
9.3 时间序列模型预测准确度的衡量 . . . . . . . . . . . . . . . . . . . . . . . 178
9.4 时间序列数据示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
9.5 简要回顾 ARIMA 时间序列模型 . . . . . . . . . . . . . . . . . . . . . . . 181
9.6 循环神经网络与时间序列模型 . . . . . . . . . . . . . . . . . . . . . . . . 186
9.7 应用案例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
9.7.1 长江汉口月度流量时间序列模型 . . . . . . . . . . . . . . . . . . 190
9.7.2 国际航空月度乘客数时间序列模型 . . . . . . . . . . . . . . . . . 203
9.8 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
10 智能物联网 210
10.1 Azure 和 IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
10.2 Azure IoT Hub 服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
10.3 使用 IoT Hub 管理设备概述 . . . . . . . . . . . . . . . . . . . . . . . . . . 215
10.4 使用.NET 将模拟设备连接到 IoT 中心 . . . . . . . . . . . . . . . . . . . . 218
10.5 机器学习应用实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

读者评论

  • 代码错误,数据集也没有,真是烂

    恒易一发表于 2017/10/17 23:32:28
  • 买这本书就是冲着时间序列的两个例子,更新了下载还是没有那两个数据集,正是遗憾。

    drlj发表于 2017/10/17 20:50:01
  • 请问代码和数据集在哪

    紫气东来发表于 2017/10/9 19:45:31
  • 书中错误百出,东拼西凑,用词极不专业,代码下载后提示是病毒,见过最差的书,没有之一,不建议购买!

    fxc_bb发表于 2017/10/1 12:12:41
  • 书中提到的数据文件呢?长江流量数据在这个代码文件里没有,真是够懒啊

    yongliu39发表于 2017/9/16 10:09:12

下载资源

相关博文

  • #小编推书#唯一一本以应用为导向的介绍机器学习和深度学习的专业书籍

    Jessica瑾妞 2017-08-01

    《Keras快速上手:基于Python的深度学习实战》从如何准备深度学习的环境开始,手把手地教读者如何采集数据,如何运用一些最常用,也是目前被认为最有效的一些深度学习算法来解决实际问题。覆盖的领域包括推荐系统、图像识别、自然语言情感分析...

    Jessica瑾妞 2017-08-01
    90 0 0 0
  • 推荐系统是如何建立模型、知道用户爱好的?

    推荐系统是如何建立模型、知道用户爱好的?

    管理员账号 2017-08-08

    小编说:你是否有过这样的经历?当你在亚马逊商城浏览一些书籍,或者购买过一些书籍后,你的偏好就会被系统学到,系统会基于一些假设为你推荐相关书目。为什么系统会知道,在这背后又藏着哪些秘密呢?本文选自《Keras快速上手:基于Python的...

    管理员账号 2017-08-08
    373 0 0 0
  • 《Keras快速上手》作者介绍

    《Keras快速上手》作者介绍

    王一 2017-09-12

    谢梁 现任微软云计算核心存储部门首席数据科学家,主持运用机器学习和人工智能方法优化大规模高可用性并行存储系统的运行效率和改进其运维方式。具有十余年机器学习应用经验,熟悉各种业务场景下机器学习和数据挖掘产品的需求分析、架构设计、算法开发和...

    王一 2017-09-12
    188 2 1 1
  • 推荐系统是如何建立模型、知道用户爱好的?

    推荐系统是如何建立模型、知道用户爱好的?

    管理员账号 2017-09-25

    你是否有过这样的经历?当你在亚马逊商城浏览一些书籍,或者购买过一些书籍后,你的偏好就会被系统学到,系统会基于一些假设为你推荐相关书目。系统从百万甚至上亿的内容或商品中把有用的东西高效地显示给用户,这样可以为用户节省很多自行查询的时间,...

    管理员账号 2017-09-25
    51 0 0 0
  • Keras 文字生成系统

    Keras 文字生成系统

    管理员账号 2017-09-27

    同是深度学习“槛内人”,我怎么不知道这样高大上的文字生成对话系统 文字信息是存在最广泛的信息形式之一,而深度学习的序列模型(Sequential Model)在对文字生成建模(Generative Model)方面具备独特的优势。...

    管理员账号 2017-09-27
    92 0 0 0

推荐用户

同系列书

  • Keras快速上手:基于Python的深度学习实战

    本书系统地讲解了深度学习的基本知识、建模过程和应用,并以深度学习在推荐系统、图像识别、自然语言处理、文字生成和时间序列中的具体应用为案例,详细介绍...

     
  • HFSS天线设计(第2版)

    李明洋 (作者)

    近年来随着无线通信产业在国内蓬勃发展,业界对天线设计人才的需求与日俱增。本书是针对天线设计的入门与提高教材,主要介绍天线设计的理念以及如何使用HFSS仿真软件仿...

    ¥69.00
  • 当时尚遇见跨境电商

    贺俐 (作者)

    伴随着中国中产阶级的消费升级,跨境电商创业步入了黄金时代。2014年被互联网行业公认为是跨境电商的元年。跨境电商其实是“互联网+零售+国际贸易”的一个全新的商业...

    ¥59.00
  • 做自己——鬼脚七自媒体第一季(第2版)

    文德 (作者)

    作为淘宝搜索负责人,鬼脚七对搜索规则的解读非常权威;负责的互联网产品用户过亿,鬼脚七对产品的认识也值得业界借鉴;自媒体有一定名气和特点,鬼脚七对新媒体的发展也有...

    ¥77.00
  • LabVIEW实用工具详解

    罗应婷 (作者)

    详尽讲解了labview常用工具的编程方法、技巧和工程应用。全书共分为17章,主要涉及LabVIEW中的数学、逻辑电路、逻辑编程、字符串、数组、数据结构、动态链...

    ¥69.00