Keras深度学习:入门、实战与进阶
上QQ阅读APP看书,第一时间看更新

前言

为什么要写这本书

人工智能引领了一个新的研究和发展方向,机器学习和深度学习均属于人工智能范畴。现在各个领域都处于运用深度学习技术进行业务创新和技术创新的阶段。Keras是一个对零基础用户非常友好且简单的深度学习框架,它是TensorFlow高级集成API,特点是能够快速实现模型的搭建。模型快速搭建是高效进行科学研究的关键。

本书涵盖了全连接神经网络(MLP)、卷积神经网络(CNN)、循环神经网络(RNN)、自编码器(AE)、生成式对抗网络(GAN)等模型原理及Keras实践,重点讲解了如何对图像数据和中文文本数据进行分析处理,以帮助读者学会训练这些模型并实现真实的图像处理和语言处理任务。

本书由浅入深、循序渐进,尽可能用通俗易懂的语言讲解深度学习各种模型的基本原理,在讲解Keras实现深度学习的知识点时更注重方法和经验的传递,力求做到“授之以渔”,让读者能将本书所学应用到日常学习或工作中。

本书特色

本书采用大量的实例,覆盖了使用Keras进行深度学习建模的常用知识,同时对所用实例中的Keras代码和模型效果均进行了深入解读,以帮助读者更好地将所学知识移植到各自的实际工作中。

深度学习在实际工作中常用于图像数据和文本数据的深度挖掘,本书也详细阐述了如何对图像数据和中文文本数据进行数据处理及转换,以帮助初学者了解如何将原始数据处理成深度学习模型可以识别的数据。

本书适用对象

本书适合以下人员阅读:

  • 高等院校相关专业师生;
  • 培训机构的师生;
  • 数据分析、数据挖掘人员;
  • 人工智能、深度学习入门读者;
  • 数据科学家;
  • 进行深度学习应用研究的科研人员。

如何阅读本书

全书一共14章,涵盖了主流深度学习框架介绍、TensorFlow和Keras深度学习环境搭建,以及如何利用Keras开发深度学习模型。本书的重点是深度学习在图像和文本方面的数据处理及应用,各种深度学习网络均有相应的实例,目的是让读者既能通过本书学到深度学习理论,又能通过实例学习提升动手能力,将所学知识迁移到实际工作中。

第1章首先介绍了机器学习与深度学习的区别及联系,以及目前主流的深度学习框架。然后详细介绍了如何安装Python的科学计算环境Anaconda、R语言的IDE工具RStudio,以及如何在Anaconda和RStudio中安装TensorFlow和Keras。最后以深度学习中的入门数据集MNIST为例,介绍如何利用Keras构建深度学习模型。

第2章介绍了深度学习的基础知识。首先介绍神经网络常用激活函数、网络拓扑结构及损失函数,然后介绍网络优化的方法及如何防止模型过拟合,最后通过一个综合实例介绍如何使用技巧优化深度学习神经网络,提升模型的预测能力。

第3章详细介绍了如何用Keras开发深度学习模型。内容包括Keras模型的生命周期、Keras的两种模型、模型可视化、Keras中的回调函数与模型的保存及序列化等。

第4章介绍了深度学习的图像数据预处理技术。首先重点介绍了图像处理EBImage包的使用,包含图像的读取和保存、图像处理等技术,然后介绍了利用Keras如何进行图像预处理,最后通过一个综合实例介绍了如何对小数据集的彩色花图像进行批量读取及处理,并建立多种深度学习模型来对比效果,及通过数据增强技术提升模型的预测能力。

第5章~第9章分别详细介绍了深度学习常用的神经网络模型:全连接神经网络、卷积神经网络、循环神经网络、自编码器和生成式对抗网络。

第5章通过多个实例引导读者如何用全连接神经网络解决各种经典的预测问题,包含波士顿房价预测的回归问题、鸢尾花分类和彩色手写数字图像识别的多分类问题、印第安人糖尿病诊断和泰坦尼克号旅客生存预测的二分类问题。

第6章首先介绍了卷积神经网络的基本原理及Keras实现,并通过多个实例帮助读者掌握卷积神经网络的使用,包含小数据集的图像识别、彩色手写数字图像识别以及经典的CIFAR-10图像识别的多分类实例。

第7章首先介绍了简单循环网络(SimpleRNN)的基本原理及Keras实现,并利用SimpleRNN实现手写数字识别及预测纽约出生人口数量。然后介绍了长短期记忆网络(LSTM)的基本原理及Keras实现,并利用LSTM实现股价预测。最后介绍了门控循环单元网络(GRU)的基本原理及Keras实现,并基于GRU网络对温度进行预测。

第8章介绍了自编码器的基本结构以及常用自编码器(稀疏自编码器、降噪自编码器以及栈式自编码器)的基本原理及Keras实现,并利用两个实例引导读者将自编码器应用在不同的实际场景中。

第9章首先介绍了生成式对抗网络(GAN)的基本原理,然后给出了两个实例:使用GAN生成手写数字,深度卷积生成式对抗网络。

第10章~第13章详细介绍了利用深度学习对文本数据进行预处理及建模的技术,并重点介绍了对中文文本的处理及建模。

第10章介绍了R语言用于文本挖掘的常用扩展包,包括tm包、tmcn包、Rwordseg包、jiebaR包以及tidytext包。

第11章介绍了如何使用Keras处理文本数据,包括文本分词、独热编码、分词器和填充文本序列,还介绍了词嵌入。

第12章首先介绍IMDB影评数据集,接着利用机器学习进行情感分析,最后利用多种深度学习模型进行情感分析。

第13章首先对新浪体育新闻进行文本分析,然后分别利用机器学习(朴素贝叶斯、决策树、随机森林、GBM、人工神经网络)和深度学习(MLP、CNN、RNN、LSTM、GRU、双向LSTM)进行中文文本分类。

第14章首先对迁移学习和Keras预训练模型进行概述,接着对VGGNet模型进行概述,最后对ResNet原理进行概述,并演示如何通过Keras的预训练ResNet50模型实现图像预测。

勘误和支持

由于笔者的水平有限,加之编写时间仓促,书中难免会出现错误或者不准确的地方,恳请读者批评指正。读者可以把意见或建议直接发至我的邮箱(jiabiao1602@163.com),我将尽力提供满意的解答。期待你们的反馈。

书中全部数据及源代码都可以从华章公司网站(www.hzbook.com)下载。

致谢

感谢机械工业出版社华章公司杨福川的信任,感谢编辑李艺帮助我审阅全部章节。有了你们的支持、鼓励和帮助,本书才得以顺利出版。

感谢家人,感谢你们一直以来的理解、陪伴和支持。

谨以此书献给我最亲爱的家人以及众多深度学习爱好者及从业者!

谢佳标
2021年6月