猜你喜欢
TensorFlow 2.0深度学习从零开始学

TensorFlow 2.0深度学习从零开始学

书籍作者:王晓华 ISBN:9787302552734
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:4794
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
随着人工智能的发展以及TensorFlow在人工智能方面的火热应用,越来越多的大学逐步开设深度学习和人工智能课程。《TensorFlow 2.0深度学习从零开始学》既是一本为读者量身定制的TensorFlow 2.0入门教材,也是针对需要学习TensorFlow 2.0新内容的读者提供的基础与进阶知识的深入型教材。该书分为10章,主要内容包括TensorFlow 2.0开发环境、TensorFlow 2.0新特性、TensorFlow与Keras的使用、TensorFlow 2.0语法基础、卷积层详解与MNIST实战、Dataset使用详解、TensorFlow Datasets和TensorBoard详解、ResNet及其实战、注意力机制、卷积神经网络实战。该书内容详尽、示例丰富,是广大对TensorFlow 2.0感兴趣的读者必备的参考书,同时也非常适合大中专院校师生学习阅读,还可作为高等院校计算机及相关专业的教材使用。
作者简介

王晓华,计算机专业讲师,长期讲授面向对象程序设计、数据结构、Hadoop程序设计等研究生和本科生相关课程;主研方向为云计算、数据挖掘;曾主持和参与多项国家和省级科研课题,独立科研项目获省级成果认定,发表过多篇论文,拥有一项专利;著有《Spark MLlib机器学习实践》《TensorFlow深度学习应用实践》《OpenCV+TensorFlow深度学习与计算机视觉实战》等图书。

前言

前 言




作为主流的深度学习框架,TensorFlow引领了深度学习和人工智能领域的全面发展和成长壮大。它的出现使得深度学习的学习门槛被大大降低,不仅是数据专家,就连普通的程序设计人员甚至于相关专业的学生都可以用来开发新的AI程序而不需要深厚的编程功底。

然而这并不代表TensorFlow已经完美。由于代码设计的历史原因以及开源框架的通病,随着时间的积累TensorFlow在其框架内部积累了大量的过时和不推荐使用的API,这极大地影响了TensorFlow的性能,因此在广泛听取使用者和代码项目组成员的意见后,TensorFlow 2.0横空出世。

本书也是因为TensorFlow 2.0的出现而推出的一本包含基础与进阶内容的书。

整体而言,为了吸引用户,TensorFlow 2.0 从简单、强大、可扩展3个层面进行了重新设计。特别是在简单化方面,TensorFlow 2.0 提供更简化的API、注重Keras、结合了Eager Execution。

“简化API、减少冗余并改进文档和示例”是TensorFlow 2.0的主要任务,其更新重点放在简单和易用性上,主要进行了以下更新:

? 使用Keras和Eager Execution,轻松建立简单的模型并执行;

? 在任何平台上实现生产环境的模型部署;

? 为研究提供强大的实验工具;

? 通过清除不推荐使用的API和减少重复来简化API。

除此之外,在整体架构方面,TensorFlow 2.0吸收和归并了新的设计模式和想法,以及参考其他深度学习框架所采用的积极后台模型调整了新的框架。

TensorFlow 2.0架构统一了所有保留的组件和模块,并将其完整打包成一个综合平台,将训练和部署分成2个完整的模块,而通用的是对于模型本身的存储和参数的存储。简单化的新框架更是带来了更加简洁的工作流,即:

(1)使用tf.data加载数据。使用输入管道读取训练数据,输入管道使用tf.data创建。利用tf.feature_column描述特征,如分段和特征交叉。此外还支持内存数据的便捷输入(如NumPy)。

(2)使用tf.keras构建、训练并验证模型。Keras与TensorFlow部分紧密集成,因此用户可以随时访问TensorFlow的函数,如线性或逻辑回归、梯度上升树、随机森林等也可以直接使用(使用tf.estimatorAPI实现)。如果不想从头开始训练模型,用户也可以很快利用迁移学习来训练使用TensorFlow Hub模块的Keras或Estimator模型。

(3)快速执行运行和调试过程,然后使用tf.function充分利用图形的优势。在默认情况下,TensorFlow 2.0按快速执行方式运行,以便于顺利调试。此外,tf.function注释可以方便地将Python程序转换为TensorFlow图形。此过程保留了1.x TensorFlow基于图形执行的所有优点:性能优化,远程执行以及方便序列化、导出和部署的能力,同时实现了在Python中表达程序的灵活性和易用性。

(4)使用分布式策略进行分布式训练。对于大型机器学习训练任务,分布式策略API可以轻松地在不同硬件配置上分配和训练模型,无须更改模型的定义。由于TensorFlow支持各种硬件加速器,如CPU、GPU和TPU,因此用户可以将训练负载分配到单节点/多加速器以及多节点/多加速器配置上(包括TPU Pod)。这个API支持多种群集化配置,也提供了在本地或云环境中部署Kubernetes群集训练的模板。

(5)导出到Saved Model。TensorFlow将对Saved Model进行标准化。作为TensorFlow服务的一部分,Saved Model将成为TensorFlow Lite、TensorFlow.js、TensorFlow Hub等格式的可互换格式。

其中的data和Keras都是TensorFlow 2.0新引入并指定使用的API。

data API使得数据读取和输入模型训练变得非常容易,由程序读写不同格式数据时的“事无巨细”,变为仅仅使用一个for循环就可以轻松完成数据的读取和输入,让我们打开一个大型或者超大型数据集就像打开一个文本txt文件一样简单。

Keras API使得上手TensorFlow 2.0更容易。更为重要的是,Keras提供了几个模型构建API(Sequential、Functional以及Subclassing),因此用户可以选择正确的抽象化(Abstraction)级别,以及非常简便地编写符合项目需要的深度学习模型。

本书有何特色

1. 介绍全面,讲解详尽

本书全面地讲解TensorFlow 2.0的新框架设计思想和模型的编写,详细介绍TensorFlow 2.0的安装、使用以及TensorFlow 2.0官方所推荐的Keras编程方法与技巧等。

2. 作者经验丰富,代码编写细腻

本书的代码编写由低到高,针对各个环节都有详尽的说明,使得读者能够充分了解和掌握代码各个模块的编写方法和技巧,是一本非常好的TensorFlow 2.0学习教程。

作者是长期奋战在科研和工业界的一线算法设计和程序编写人员,实战经验丰富,对代码中可能会出现的各种问题和“坑”有丰富的处理经验,能够使得读者少走很多弯路。

3. 理论扎实,深入浅出

在代码设计的基础上,本书还深入浅出地介绍深度学习需要掌握的一些基本理论知识,通过大量的公式与图示结合的方式对理论进行介绍。

4. 提供完善的技术支持和售后服务

本书提供了专门的技术支持邮箱:[email protected]。读者在阅读本书过程中有任何疑问都可以通过该邮箱获得帮助。

本书内容及知识体系

本书是基于TensorFlow 2.0的新架构模式和框架,完整介绍TensorFlow 2.0使用方法和一些进阶教程,主要内容如下:

第1章详细介绍TensorFlow 2.0的安装方法以及对应的运行环境的安装,并且通过一个简单的例子验证TensorFlow 2.0的安装效果。在本章中,还将介绍TensorFlow 2.0硬件的采购。切记,一块能够运行TensorFlow 2.0 GPU版本的显卡能让学习效率事半功倍。

从第2章开始是本书的重点部分,这一章从Eager的引入开始介绍TensorFlow 2.0的编程方法和步骤,并结合Keras进行TensorFlow 2.0模型设计的完整步骤,以及自定义层的方法。第2章的内容看起来很简单,但是是本书的基础内容和核心精华,读者一定要反复阅读,认真掌握所有内容和代码的编写。

第3章是有关Keras的介绍。Keras是TensorFlow 2.0中新引入的一个高级API。本章从简单的例子开始,循序渐进地介绍使用Keras进行程序设计的方法和步骤,同时还将介绍深度学习中一个非常重要的模块,即全连接神经网络。

第4章是理论部分,初步涉及一些深度学习的基本理论和算法。

使用卷积神经网络去识别物体是深度学习的一个经典内容,在第5章中详细介绍卷积神经网络的原理和各个模型的使用和自定义内容,以及如何借助卷积神经网络(CNN)算法构建一个简单的CNN模型进行MNIST数字识别。此章和第3章同为本书的重点内容,能够极大地协助读者对TensorFlow 2.0框架的使用和程序的编写。

第6、7章是TensorFlow 2.0中一些高级API的介绍。通过使用集成在TensorFlow中的数据获取类和创建专用TFRecord的方法,TensorFlow 2.0在数据读取方面可以说是如虎添翼,极大地帮助读者解决数据的获取问题。模型训练的可视化是TensorFlow一项特有的功能,利用这个功能能够帮助读者更好地了解模型的训练过程和可能会遇到的问题。

第8章介绍ResNet的基本思想和内容。ResNet是一个具有里程碑性质的框架,标志着粗犷的卷积神经网络设计向着精确化和模块化的方向转化。ResNet本身的程序编写非常简单,但是其中蕴含的设计思想却是跨越性的。

第9章介绍具有“注意力”的多种新型网络模型,是未来的发展方向。在不同的维度和方面上加上“注意力”是需要读者加上所有注意力的地方。

第10章使用经典的卷积神经网络去解决文本分类的问题。实际上,除了传统的图像处理,使用卷积神经网络还能够对文本进行分类,一般采用的是循环神经网络。文本分类也可以引申到更多的序列化问题,这也是未来深度学习研究的方向。




示例代码、数据及开发环境下载

本书示例代码、数据及开发环境下载地址请扫描下方二维码获得。

如果下载有问题或需要技术支持,请联系[email protected],邮件主题为“TensorFlow 2.0深度学习从零开始学”。

适合阅读本书的读者

? TensorFlow深度学习的初学者

? 深度学习应用开发的程序员

? 高等院校相关专业的师生

? 专业培训机构的师生






作 者

2020年3月


目录
第1章 TensorFlow 2.0的安装
1.1 Python基本安装和用法
1.1.1 Anaconda的下载与安装
1.1.2 Python编译器PyCharm的安装
1.1.3 使用Python计算softmax函数
1.2 TensorFlow 2.0 GPU版本的安装
1.2.1 检测Anaconda中的TensorFlow版本
1.2.2 TensorFlow 2.0 GPU版本基础显卡推荐和前置软件安装
1.3 Hello TensorFlow 2.
1.4 本章小结

第2章 TensorFlow 2.0令人期待的变化
2.1 新的架构、新的运行、新的开始
2.1.1 API精简
2.1.2 Eager Execution
2.1.3 取消全局变量
2.1.4 使用函数而不是会话
2.1.5 弃用collection
2.2 配角转成主角:从TensorFlow Eager Execution转正谈起
2.2.1 Eager简介与调用
2.2.2 读取数据
2.3 使用TensorFlow 2.0模式进行线性回归的一个简单例子
2.3.1 模型的工具与数据的生成
2.3.2 模型的定义
2.3.3 损失函数的定义
2.3.4 梯度函数的更新计算
2.4 TensorFlow 2.0进阶-AutoGraph和t£缸lcdon
2.5 本章小结

第3章 TensorFlow和Keras
3.1 模型!模型!模型!还是模型
3.2 使用Keras API实现鸢尾花分类的例子(顺序模式)
3.2.1 数据的准备
3.2.2 数据的处理
3.2.3 梯度更新函数的写法
3.2.4 使用Keras函数式编程实现鸢尾花分类的例子(重点)
3.2.5 使用保存的Keras模式对模型进行复用
3.2.6 使用TensorFlow 2.0标准化编译对iris模型进行拟合
3.3 多输入单一输出TensorFlow 2.0编译方法(选学)
3.3.1 数据的获取与处理
3.3.2 模型的建立
3.3.3 数据的组合
3.4 多输入多输出TensorFlow 2.0编译方法(选学)
3.5 全连接层详解
3.5.1 全连接层的定义与实现
3.5.2 使用TensorFlow 2.0自带的API实现全连接层
3.5.3 打印显示TensorFlow 2.0设计的模型结构和参数
3.6 本章小结

第4章 TensorFlow 2.0语法基础
4.1 BP神经网络简介
4.2 BP神经网络的两个基础算法
4.2.1 最小二乘法(LS算法)
4.2.2 道士下山的故事——梯度下降算法
4.3 反馈神经网络反向传播算法
4.3.1 深度学习基础
4.3.2 链式求导法则
4.3.3 反馈神经网络原理与公式推导
4.3.4 反馈神经网络原理的激活函数
4.3.5 反馈神经网络原理的Python实现
4.4 本章小结

第5章 卷积层与MNIST实战
5.1 卷积运算
5.1.1 卷积运算的基本概念
5.1.2 TensorFlow2.0中卷积函数的实现
5.1.3 池化运算
5.1.4 softmax激活函数
5.1.5 卷积神经网络原理
5.2 TensorFlow2.0编程实战:MNIST手写体识别
5.2.1 MNIST数据集
5.2.2 MNIST数据集特征和标注
5.2.3 TensorFlow2.0编程实战:MNIST数据集
5.2.4 使用自定义的卷积层实现MNIST识别
5.3 本章小结
……
第6章 TensorFlow 2.0 Dataset使用详解
第7章 TensorFlow Datasets和TensorBoard详解
第8章 从冠军开始:ResNet
第9章 注意力机制
第10章 卷积神经网络实战:识文断字也可以
短评

很好的商品,已经开始用了

2020-06-02 08:49:40

很薄

2020-05-30 09:02:56

产品特色