《Python深度学习实战:基于TensorFlow和Keras的聊天机器人》
智能系统与技术丛书
Python深度学习实战
基于TensorFlow和Keras的聊天机器人以及人脸、物体和语音识别
Deep Learning with Applications Using Python:
Chatbots and Face, Object, and Speech Recognition with TensorFlow and Keras
[印] 纳温·库马尔·马纳西(Navin Kumar Manaswi) 著
刘毅冰 薛 明 译
foreword
序
深度学习经历了很长时间的发展,从最初试图理解人类心智与观念联想论的概念—我们是如何理解事物以及物体和观点之间的关系是如何影响我们的思考和行为的,直到对联想行为进行建模。后者始于19世纪70年代,亚历山大·贝恩(Alexander Bain)通过组合神经元的方式开启了人工神经网络的篇章。
到2018年,我们看到了深度学习如何被显著改进并以各种各样的形式呈现出来—从物体检测、语音识别、机器翻译、自动驾驶、人脸检测以及人脸检测的日常应用(比如解锁你的iPhone X),到实现更复杂的任务(比如犯罪活动的甄别与预防)。
卷积神经网络(CNN)和循环神经网络(RNN)正熠熠生辉,因为它们接连不断地帮助人们解决世界性的问题,毫不夸张地说是在所有的行业领域,如自动化交通与运输、医疗卫生与保健、零售业等。这些领域正在取得重大进展,通过以下这些指标就足以说明深度学习领域的活力:
自1996年起,计算机科学的学术论文数已经飙升了10倍以上。
自2000年起,风险投资对AI初创公司的投资增加了6倍以上。
自2000年起,活跃的AI初创公司的数量增加了14倍以上。
自2013年起,所有AI相关的工作市场雇佣量增加了5倍以上,并且深度学习在2018年是最抢手的技能。
84%的企业相信投资AI会使它们具有强大的竞争优势。
图像分类的错误率已经从2012年的28%下降到了2017年的2.5%,并且还一直在下降!
尽管如此,研究者并不满足。我与我的同行们正在一起推动和发展新的胶囊网络(CapsNet),这将大为拓展深度学习的边界。我不是独自在战斗。很高兴能为Navin这本书作序, Navin是我熟知的深度学习领域中一位备受尊敬的专家。
这本书恰逢其时。 此刻,无论是业界从业者还是研究者都急需通过实践来提高他们对深度学习的理解并最终将其应用到实际工作中。
我确信Navin这本书能给学习者提供所需的知识。TensorFlow框架正在迅速成为市场的引领者, Keras也越来越多地被用来解决计算机视觉和自然语言处理中的问题。这两个框架如此重要,以至于还没有哪个相关行业的公司不使用它们。
期待这本书的出版!
Tarry Singh
Deepkapha.ai的建立者和AI神经科学研究员
Coursera的深度学习导师
CONTENTS
目 录
序
第4章 TensorFlow中的回归到MLP 45
4.1 TensorFlow搭建模型的步骤 45
4.2 TensorFlow中的线性回归 46
4.3 逻辑斯谛回归模型 49
4.4 TensorFlow中的多层感知机 52
第5章 Keras中的回归到MLP 55
5.1 对数-线性模型 55
5.2 线性回归的Keras神经网络 56
5.3 逻辑斯谛回归 58
5.3.1 scikit-learn逻辑斯谛回归 58
5.3.2 逻辑斯谛回归的Keras神经网络 59
5.3.3 流行的MNIST数据:Keras中的逻辑斯谛回归 60
5.4 基于Iris数据的MLP 62
5.4.1 编写代码 62
5.4.2 构建一个序列Keras模型 63
5.5 基于MNIST数据的MLP数字分类 66
5.6 基于随机生成数据的MLP 68
第6章 卷积神经网络 71
6.1 CNN中的各种层 71
6.2 CNN结构 74
第7章 TensorFlow中的CNN 77
7.1 为什么用TensorFlow搭建CNN模型 77
7.2 基于MNIST数据集搭建图片分类器的TensorFlow代码 78
7.3 使用高级API搭建CNN模型 82
第8章 Keras中的CNN 83
8.1 在Keras中使用MNIST数据集搭建图片分类器 83
8.1.1 定义网络结构 85
8.1.2 定义模型架构 85
8.2 使用CIFAR-10数据集搭建图片分类器 86
8.2.1 定义网络结构 87
8.2.2 定义模型架构 88
8.3 预训练模型 89
第9章 RNN与LSTM 91
9.1 循环神经网络的概念 91
9.2 长短时记忆网络的概念 93
9.3 LSTM常见模式 93
9.4 序列预测 94
9.4.1 数字序列预测 94
9.4.2 序列分类 95
9.4.3 序列生成 95
9.4.4 序列到序列预测 95
9.5 利用LSTM模型处理时间序列预测问题 96
第10章 语音-文本转换及其逆过程 101
10.1 语音-文本转换 101
10.2 语音数据 102
10.3 语音特征:将语音映射为矩阵 103
10.4 声谱图:将语音映射为图像 104
10.5 利用MFCC特征构建语音识别分类器 104
10.6 利用声谱图构建语音识别分类器 105
10.7 开源方法 106
10.8 使用API的例子 107
10.8.1 使用PocketSphinx 107
10.8.2 使用Google Speech API 108
10.8.3 使用Google Cloud Speech API 108
10.8.4 使用Wit.ai API 108
10.8.5 使用Houndify API 109
10.8.6 使用IBM Speech to Text API 109
10.8.7 使用Bing Voice Recognition API 110
10.9 文本-语音转换 110
10.9.1 使用pyttsx 110
10.9.2 使用SAPI 111
10.9.3 使用SpeechLib 111
10.10 音频剪辑代码 111
10.11 认知服务提供商 112
10.11.1 Microsoft Azure 113
10.11.2 Amazon Cognitive Services 113
10.11.3 IBM Watson Services 113
10.12 语音分析的未来 113
第11章 创建聊天机器人 115
11.1 为什么是聊天机器人 116
11.2 聊天机器人的设计和功能 116
11.3 构建聊天机器人的步骤 116
11.3.1 预处理文本和消息 117
11.3.2 用API构建聊天机器人 130
11.4 聊天机器人开发的最佳实践 133
11.4.1 了解潜在用户 133
11.4.2 读入用户情感使得机器人情感更丰富 133
第12章 人脸检测与识别 135
12.1 人脸检测、人脸识别与人脸分析 135
12.2 OpenCV 136
12.2.1 特征脸 137
12.2.2 LBPH 137
12.2.3 费歇脸 138
12.3 检测人脸 139
12.4 跟踪人脸 141
12.5 人脸识别 144
12.6 基于深度学习的人脸识别 147
12.7 迁移学习 149
12.7.1 为什么要用迁移学习 150
12.7.2 迁移学习实例 150
12.7.3 计算迁移值 152
12.8 API 158
附录1 图像处理的Keras函数 161
附录2 可用的优质图像数据集 165
附录3 医学成像:DICOM文件格式 167
- 点赞
- 收藏
- 关注作者
评论(0)