提交 23e11427 编写于 作者: W wizardforcel

2020-12-20 17:44:35

上级 a7b56505
......@@ -14,15 +14,15 @@ TensorFlow 是 Google 流行的机器学习和深度学习产品。 它已迅速
# 本书涵盖的内容
[第 1 章](1.html)*机器学习工具包*着眼于安装 Docker,设置机器学习 Docker 文件,与主机共享数据并运行 REST 服务以提供环境。
第 1 章和“机器学习工具包”着眼于安装 Docker,设置机器学习 Docker 文件,与主机共享数据并运行 REST 服务以提供环境。
[第 2 章](2.html)*图像数据*,教 MNIST 数字,如何获取它们,张量实际上只是多维数组,以及如何将图像数据和分类或分类数据编码为张量 。 然后,我们进行了快速回顾并采用了食谱的方法来考虑尺寸和张量,以便为机器学习准备数据。
第 2 章,“图像数据”,教 MNIST 数字,如何获取它们,张量实际上只是多维数组,以及如何将图像数据和分类或分类数据编码为张量 。 然后,我们进行了快速回顾并采用了食谱的方法来考虑尺寸和张量,以便为机器学习准备数据。
[第 3 章](3.html)*经典神经网络*涵盖了很多内容! 我们看到了经典的或密集的神经网络的结构。 我们了解激活,非线性和 softmax。 然后我们建立测试和训练数据,并学习如何使用`Dropout``Flatten`构建网络。 我们还将学习有关求解器的所有知识,或者机器实际学习的方法。 然后,我们探索超参数,最后,通过网格搜索对模型进行微调。
第 3 章和“经典神经网络”涵盖了很多内容! 我们看到了经典的或密集的神经网络的结构。 我们了解激活,非线性和 softmax。 然后我们建立测试和训练数据,并学习如何使用`Dropout``Flatten`构建网络。 我们还将学习有关求解器的所有知识,或者机器实际学习的方法。 然后,我们探索超参数,最后,通过网格搜索对模型进行微调。
[第 4 章](4.html)*卷积神经网络*教您卷积,卷积是一种在图像上移动以提取特征的松散连接方式。 然后,我们学习有关池化的知识,该池总结了最重要的功能。 我们将使用这些技术构建卷积神经网络,并将卷积和池化的许多层结合起来,以生成一个深度神经网络。
第 4 章,“卷积神经网络”教您卷积,卷积是一种在图像上移动以提取特征的松散连接方式。 然后,我们学习有关池化的知识,该池总结了最重要的功能。 我们将使用这些技术构建卷积神经网络,并将卷积和池化的许多层结合起来,以生成一个深度神经网络。
[第 5 章](5.html)*图像分类服务器*使用 Swagger API 定义创建 REST API 模型,然后声明性地生成 Python 框架,以便我们为该 API 提供服务。 然后,我们创建一个 Docker 容器,该容器不仅捕获我们正在运行的代码(即我们的服务),而且还捕获我们的预训练机器学习模型。 然后形成一个包,以便我们能够部署和使用我们的容器。 最后,我们使用此容器提供服务并做出预测。
第 5 章和“图像分类服务器”使用 Swagger API 定义创建 REST API 模型,然后声明性地生成 Python 框架,以便我们为该 API 提供服务。 然后,我们创建一个 Docker 容器,该容器不仅捕获我们正在运行的代码(即我们的服务),而且还捕获我们的预训练机器学习模型。 然后形成一个包,以便我们能够部署和使用我们的容器。 最后,我们使用此容器提供服务并做出预测。
# 充分利用这本书
......
......@@ -116,4 +116,4 @@ o 到 9 个预测
在本章中,我们了解了 MNIST 数字,以及如何获取它们。 张量实际上只是多维数组; 我们如何将图像数据编码为张量; 我们如何将分类或分类数据编码为张量; 然后我们进行了快速回顾,并采用了食谱的方法来考虑尺寸和张量,以获取用于机器学习的数据。
现在,我们已经学习了如何为机器学习设置输入和输出数据,我们将继续下一章,在该章中,我们将创建一个**经典神经网络****CNN** )。
\ No newline at end of file
现在,我们已经学习了如何为机器学习设置输入和输出数据,我们将继续下一章,在该章中,我们将创建一个*“经典神经网络”***CNN** )。
\ No newline at end of file
......@@ -8,31 +8,31 @@
# 本书涵盖的内容
[第 1 章](01.html#K0RQ0-3c5bb317ad314d43ac43a332c0db6f00)*强化学习简介*帮助我们了解强化学习是什么以及它如何工作。 我们将学习强化学习的各种要素,例如代理,环境,策略和模型,并且还将看到用于强化学习的不同类型的环境,平台和库。 在本章的后面,我们将看到强化学习的一些应用。
第 1 章*强化学习简介*帮助我们了解强化学习是什么以及它如何工作。 我们将学习强化学习的各种要素,例如代理,环境,策略和模型,并且还将看到用于强化学习的不同类型的环境,平台和库。 在本章的后面,我们将看到强化学习的一些应用。
[第 2 章](02.html#1LCVG0-3c5bb317ad314d43ac43a332c0db6f00)*OpenAI 和 TensorFlow* 入门可帮助我们为各种强化学习任务设置机器。 我们将学习如何通过安装 Anaconda,Docker,OpenAI Gym,Universe 和 TensorFlow 来设置机器。 然后,我们将学习如何在 OpenAI Gym 中模拟代理,并且将了解如何构建视频游戏机器人。 我们还将学习 TensorFlow 的基础知识,并了解如何使用 TensorBoard 进行可视化。
第 2 章*OpenAI 和 TensorFlow* 入门可帮助我们为各种强化学习任务设置机器。 我们将学习如何通过安装 Anaconda,Docker,OpenAI Gym,Universe 和 TensorFlow 来设置机器。 然后,我们将学习如何在 OpenAI Gym 中模拟代理,并且将了解如何构建视频游戏机器人。 我们还将学习 TensorFlow 的基础知识,并了解如何使用 TensorBoard 进行可视化。
[第 3 章](03.html#2BASE0-3c5bb317ad314d43ac43a332c0db6f00)*马尔可夫决策过程和动态规划*首先说明什么是马尔可夫链和马尔可夫过程,然后我们将了解如何将强化学习问题建模为马尔可夫 决策过程。 我们还将学习一些基本概念,例如值函数,Q 函数和 Bellman 方程。 然后,我们将了解什么是动态规划以及如何使用价值和策略迭代来解决冻湖问题。
第 3 章*马尔可夫决策过程和动态规划*首先说明什么是马尔可夫链和马尔可夫过程,然后我们将了解如何将强化学习问题建模为马尔可夫 决策过程。 我们还将学习一些基本概念,例如值函数,Q 函数和 Bellman 方程。 然后,我们将了解什么是动态规划以及如何使用价值和策略迭代来解决冻湖问题。
[第 4 章](04.html#2VBO80-3c5bb317ad314d43ac43a332c0db6f00)*使用蒙特卡洛方法进行的游戏*解释了蒙特卡洛方法和不同类型的蒙特卡洛预测方法,例如首次访问 MC 和每次访问 MC。 我们还将学习如何使用蒙特卡洛方法玩二十一点。 然后,我们将探讨不同的策略上和策略外的蒙特卡洛控制方法。
第 4 章*使用蒙特卡洛方法进行的游戏*解释了蒙特卡洛方法和不同类型的蒙特卡洛预测方法,例如首次访问 MC 和每次访问 MC。 我们还将学习如何使用蒙特卡洛方法玩二十一点。 然后,我们将探讨不同的策略上和策略外的蒙特卡洛控制方法。
[第 5 章](05.html#3CN040-3c5bb317ad314d43ac43a332c0db6f00)*时间差异学习*涵盖了时差(TD)学习,TD 预测以及 TD 脱离策略和基于策略的控制方法,例如 Q 学习和 SARSA。 我们还将学习如何使用 Q 学习和 SARSA 解决出租车问题。
第 5 章*时间差异学习*涵盖了时差(TD)学习,TD 预测以及 TD 脱离策略和基于策略的控制方法,例如 Q 学习和 SARSA。 我们还将学习如何使用 Q 学习和 SARSA 解决出租车问题。
[第 6 章](06.html#3O56S0-3c5bb317ad314d43ac43a332c0db6f00)*多臂强盗问题*处理强化学习的经典问题之一,即多臂强盗(MAB)或 k 臂强盗问题。 我们将学习如何使用各种探索策略(例如 epsilon-greedy,softmax 探索,UCB 和 Thompson 采样)解决此问题。 在本章的后面,我们将看到如何使用 MAB 向用户显示正确的广告横幅。
第 6 章*多臂强盗问题*处理强化学习的经典问题之一,即多臂强盗(MAB)或 k 臂强盗问题。 我们将学习如何使用各种探索策略(例如 epsilon-greedy,softmax 探索,UCB 和 Thompson 采样)解决此问题。 在本章的后面,我们将看到如何使用 MAB 向用户显示正确的广告横幅。
[第 7 章](07.html#43JDK0-3c5bb317ad314d43ac43a332c0db6f00)*深度学习基础知识*涵盖了深度学习的各种基本概念。 首先,我们将学习神经网络是什么,然后我们将看到不同类型的神经网络,例如 RNN,LSTM 和 CNN。 我们将通过构建一些应用程序来学习,这些应用程序执行诸如生成歌曲歌词和对时尚产品进行分类等任务。
第 7 章*深度学习基础知识*涵盖了深度学习的各种基本概念。 首先,我们将学习神经网络是什么,然后我们将看到不同类型的神经网络,例如 RNN,LSTM 和 CNN。 我们将通过构建一些应用程序来学习,这些应用程序执行诸如生成歌曲歌词和对时尚产品进行分类等任务。
[第 8 章](08.html#4PHAI0-3c5bb317ad314d43ac43a332c0db6f00)*带有深度 Q 网络的 Atari 游戏*涵盖了最广泛使用的深度强化学习算法之一,称为深度 Q 网络(DQN)。 我们将通过探索 DQN 的各个组成部分来学习 DQN,然后我们将了解如何构建一个代理来使用 DQN 玩 Atari 游戏。 然后,我们将研究 DQN 体系结构的一些升级,例如双 DQN 和决斗 DQN。
第 8 章*带有深度 Q 网络的 Atari 游戏*涵盖了最广泛使用的深度强化学习算法之一,称为深度 Q 网络(DQN)。 我们将通过探索 DQN 的各个组成部分来学习 DQN,然后我们将了解如何构建一个代理来使用 DQN 玩 Atari 游戏。 然后,我们将研究 DQN 体系结构的一些升级,例如双 DQN 和决斗 DQN。
[第 9 章](09.html#57R300-3c5bb317ad314d43ac43a332c0db6f00)*使用深度递归 Q 网络*玩末日游戏,介绍了深度递归 Q 网络(DRQN)及其与 DQN 的区别。 我们将看到如何构建使用 DRQN 播放 Doom 的代理。 在本章的后面,我们将学习深度注意力递归 Q 网络,该网络将注意力机制添加到 DRQN 体系结构中。
第 9 章*使用深度递归 Q 网络*玩末日游戏,介绍了深度递归 Q 网络(DRQN)及其与 DQN 的区别。 我们将看到如何构建使用 DRQN 播放 Doom 的代理。 在本章的后面,我们将学习深度注意力递归 Q 网络,该网络将注意力机制添加到 DRQN 体系结构中。
[第 10 章](10.html#5IAP60-3c5bb317ad314d43ac43a332c0db6f00)*异步优势参与者批评者网络*解释了异步优势参与者批评者(A3C)网络的工作方式。 我们将详细探讨 A3C 架构,然后将学习如何构建使用 A3C 上山的代理。
第 10 章*异步优势参与者批评者网络*解释了异步优势参与者批评者(A3C)网络的工作方式。 我们将详细探讨 A3C 架构,然后将学习如何构建使用 A3C 上山的代理。
[第 11 章](11.html#5RRUQ0-3c5bb317ad314d43ac43a332c0db6f00)*策略梯度和优化*涵盖了策略梯度如何帮助我们找到合适的策略而无需 Q 函数。 我们还将探索深度确定性策略梯度方法。 在本章的后面,我们将看到最新的策略优化方法,例如信任区域策略优化和近端策略优化。
第 11 章*策略梯度和优化*涵盖了策略梯度如何帮助我们找到合适的策略而无需 Q 函数。 我们还将探索深度确定性策略梯度方法。 在本章的后面,我们将看到最新的策略优化方法,例如信任区域策略优化和近端策略优化。
[第 12 章](12.html#65D4E0-3c5bb317ad314d43ac43a332c0db6f00)*Capstone 项目–使用 DQN 进行赛车*提供了逐步的方法,以使用对决 DQN 构建代理以赢得赛车游戏。
第 12 章*Capstone 项目–使用 DQN 进行赛车*提供了逐步的方法,以使用对决 DQN 构建代理以赢得赛车游戏。
[第 13 章](13.html#6DVPG0-3c5bb317ad314d43ac43a332c0db6f00)*最近的进展和后续步骤*提供了有关强化学习的各种进展的信息,例如想象力增强代理,从人的偏好中学习,从示威活动中进行深度学习以及后见之明 ,然后我们将研究不同类型的强化学习方法,例如分层强化学习和逆强化学习。
第 13 章*最近的进展和后续步骤*提供了有关强化学习的各种进展的信息,例如想象力增强代理,从人的偏好中学习,从示威活动中进行深度学习以及后见之明 ,然后我们将研究不同类型的强化学习方法,例如分层强化学习和逆强化学习。
# 充分利用这本书
......
......@@ -441,7 +441,7 @@ while True:
显然,特工(汽车)无法在整个游戏中前进; 它需要转弯,避免障碍物,并且还会撞到其他车辆。 但是它必须确定是否应该转弯,如果需要转弯,则应朝哪个方向转弯。
首先,我们将计算到目前为止获得的奖励的平均值; 如果是`0`,则很明显我们在前进时被卡在某处,我们需要转弯。 然后,我们需要转向哪个方向? 您是否还记得我们在[第 1 章](01.html#K0RQ0-3c5bb317ad314d43ac43a332c0db6f00)*强化学习简介*中研究的**策略功能**
首先,我们将计算到目前为止获得的奖励的平均值; 如果是`0`,则很明显我们在前进时被卡在某处,我们需要转弯。 然后,我们需要转向哪个方向? 您是否还记得我们在第 1 章*强化学习简介*中研究的**策略功能**
关于同一概念,我们这里有两个策略:一个是左转,另一个是右转。 我们将在这里采取随机政策,并计算出奖励并加以改善。
......
......@@ -107,7 +107,7 @@ MDP 由五个重要元素表示:
# 政策功能
我们已经在[第 1 章](01.html#K0RQ0-3c5bb317ad314d43ac43a332c0db6f00)*强化学习简介*中了解了策略功能,该功能将状态映射到操作。 用π表示。
我们已经在第 1 章*强化学习简介*中了解了策略功能,该功能将状态映射到操作。 用π表示。
策略功能可以表示为![](img/00042.jpeg),指示从状态到动作的映射。 因此,基本上,策略功能会说明在每种状态下要执行的操作。 我们的最终目标在于找到最佳策略,该策略指定在每个状态下执行的正确操作,从而最大化回报。
......
# 蒙特卡洛方法进行游戏
蒙特卡洛算法是从物理,机械到计算机科学的各个领域中最受欢迎和最常用的算法之一。 当未知环境模型时,在**强化学习****RL** )中使用 Monte Carlo 算法。 在上一章[第 3 章](03.html#2BASE0-3c5bb317ad314d43ac43a332c0db6f00)*马尔可夫决策过程和动态规划*中,我们着眼于使用**动态规划****DP** )查找 我们了解模型动态的最佳策略,即过渡和奖励概率。 但是,当我们不知道模型动态时,如何确定最佳策略? 在这种情况下,我们使用蒙特卡洛算法; 当我们不了解环境时,它对于找到最佳策略非常有用。
蒙特卡洛算法是从物理,机械到计算机科学的各个领域中最受欢迎和最常用的算法之一。 当未知环境模型时,在**强化学习****RL** )中使用 Monte Carlo 算法。 在上一章第 3 章*马尔可夫决策过程和动态规划*中,我们着眼于使用**动态规划****DP** )查找 我们了解模型动态的最佳策略,即过渡和奖励概率。 但是,当我们不知道模型动态时,如何确定最佳策略? 在这种情况下,我们使用蒙特卡洛算法; 当我们不了解环境时,它对于找到最佳策略非常有用。
在本章中,您将了解以下内容:
......@@ -163,7 +163,7 @@ print("Approximate value of pi is {}" .format(calculate_pi(points_inside_circle,
在 DP 中,我们通过使用值迭代和策略迭代来解决**马尔可夫决策过程****MDP** )。 这两种技术都需要转换和奖励概率才能找到最佳策略。 但是,当我们不知道过渡和奖励概率时,如何解决 MDP? 在这种情况下,我们使用蒙特卡洛方法。 蒙特卡洛方法仅需要状态,动作和奖励的样本序列。 蒙特卡罗方法仅适用于情节任务。 由于 Monte Carlo 不需要任何模型,因此称为无模型学习算法。
蒙特卡洛方法的基本思想非常简单。 您还记得我们在上一章[第 3 章](03.html#2BASE0-3c5bb317ad314d43ac43a332c0db6f00)*马尔可夫决策过程和动态规划*中如何定义最佳值函数以及如何得出最佳策略吗?
蒙特卡洛方法的基本思想非常简单。 您还记得我们在上一章第 3 章*马尔可夫决策过程和动态规划*中如何定义最佳值函数以及如何得出最佳策略吗?
值函数基本上是状态 *S* 与策略*π*的预期收益。 在这里,我们使用均值回报代替预期回报。
......@@ -497,7 +497,7 @@ plot_blackjack(value, axes[0], axes[1])
估计动作值比估计状态值更直观,因为状态值根据我们选择的策略而变化。 例如,在二十一点游戏中,假设我们处于某些纸牌为 20 的状态。该状态的价值是什么? 这完全取决于政策。 如果我们选择政策作为命中目标,那将不是一个好的状态,而且此状态的价值非常低。 但是,如果我们选择我们的政策作为立场,那肯定是一个好的国家。因此,国家的价值取决于我们选择的政策。 因此,估计操作的值而不是状态的值更为重要。
我们如何估算作用值? 还记得我们在[第 3 章](03.html#2BASE0-3c5bb317ad314d43ac43a332c0db6f00)*马尔可夫决策过程和动态规划*中学习的 *Q* 函数吗? 表示为 *Q(s,a)**Q* 函数用于确定特定状态下的动作有多好。 它基本上指定了状态-动作对。
我们如何估算作用值? 还记得我们在第 3 章*马尔可夫决策过程和动态规划*中学习的 *Q* 函数吗? 表示为 *Q(s,a)**Q* 函数用于确定特定状态下的动作有多好。 它基本上指定了状态-动作对。
但是,这里出现了探索的问题。如果我们还没有处于状态状态值,我们如何知道状态状态值? 如果我们不采取所有可能的措施探索所有州,我们可能会错过丰厚的回报。
......
......@@ -14,7 +14,7 @@
# 什么是深度 Q 网络?
在继续之前,首先让我们回顾一下 Q 函数。 什么是 Q 函数? Q 函数(也称为状态动作值函数)指定*和**s* 状态下的状态。 因此,我们将每个状态下所有可能动作的值存储在一个称为 Q 表的表中,并选择一个状态下具有最大值的动作作为最佳动作。 还记得我们是如何学习这个 Q 函数的吗? 我们使用了 Q 学习,这是一种非政策性的时差学习算法,用于估算 Q 函数。 我们在[第 5 章](05.html#3CN040-3c5bb317ad314d43ac43a332c0db6f00)*时间差异学习中对此进行了研究。*
在继续之前,首先让我们回顾一下 Q 函数。 什么是 Q 函数? Q 函数(也称为状态动作值函数)指定*和**s* 状态下的状态。 因此,我们将每个状态下所有可能动作的值存储在一个称为 Q 表的表中,并选择一个状态下具有最大值的动作作为最佳动作。 还记得我们是如何学习这个 Q 函数的吗? 我们使用了 Q 学习,这是一种非政策性的时差学习算法,用于估算 Q 函数。 我们在第 5 章*时间差异学习中对此进行了研究。*
到目前为止,我们已经看到了状态数量有限且动作有限的环境,并且我们对所有可能的状态动作对进行了详尽搜索,以找到最佳 Q 值。 想想一个环境,我们有很多状态,并且在每个状态下,我们都有很多动作可以尝试。 仔细检查每个状态下的所有操作将非常耗时。 更好的方法是使用某些参数![](img/00240.jpeg)*Q* 函数近似为![](img/00241.jpeg)。 我们可以使用权重为![](img/00242.jpeg)的神经网络来估计每种状态下所有可能动作的 *Q* 值。 当我们使用神经网络来近似 *Q* 函数时,我们可以称其为 Q 网络。 好的,但是我们如何训练网络,我们的目标功能是什么? 回顾我们的 Q 学习更新规则:
......
......@@ -20,7 +20,7 @@
为了克服这个问题,我们将不仅仅考虑当前的游戏屏幕,而将使用过去的四个游戏屏幕来了解球的方向和速度。 这就是我们在 DQN 中看到的。 我们将过去的四个游戏屏幕以及当前的游戏屏幕作为输入输入到卷积层,并接收该状态下所有可能动作的 Q 值。 但是,您认为仅使用过去的四个屏幕将有助于我们了解不同的环境吗? 在某些环境下,我们甚至可能需要过去的 100 个游戏屏幕来更好地了解当前游戏状态。 但是,堆叠过去的 *n* 游戏画面会减慢我们的训练过程,而且还会增加我们的体验重播缓冲区的大小。
因此,只要需要,我们就可以利用 RNN 的优势来理解和保留有关先前状态的信息。 在[第 7 章](07.html#43JDK0-3c5bb317ad314d43ac43a332c0db6f00)*深度学习基础知识中,*我们了解了如何将**长短期记忆循环神经网络****LSTM RNN** )用于 通过保留,忘记和更新所需的信息来生成文本以及了解文本的上下文。 我们将通过扩展 LSTM 层来修改 DQN 体系结构,以了解先前的信息。 在 DQN 架构中,我们用 LSTM RNN 替换了第一卷积后全连接层。 这样,我们也可以解决部分可观察性的问题,因为现在我们的代理可以记住过去的状态并可以改进策略。
因此,只要需要,我们就可以利用 RNN 的优势来理解和保留有关先前状态的信息。 在第 7 章*深度学习基础知识中,*我们了解了如何将**长短期记忆循环神经网络****LSTM RNN** )用于 通过保留,忘记和更新所需的信息来生成文本以及了解文本的上下文。 我们将通过扩展 LSTM 层来修改 DQN 体系结构,以了解先前的信息。 在 DQN 架构中,我们用 LSTM RNN 替换了第一卷积后全连接层。 这样,我们也可以解决部分可观察性的问题,因为现在我们的代理可以记住过去的状态并可以改进策略。
# DRQN 的体系结构
......
......@@ -218,7 +218,7 @@ class PolicyGradient:
# 深度确定性政策梯度
[第 8 章](08.html#4PHAI0-3c5bb317ad314d43ac43a332c0db6f00)*具有深度 Q 网络的 Atari 游戏*,中,我们研究了 DQN 的工作原理,并应用了 DQN 玩 Atari 游戏。 但是,在那些离散的环境中,我们只有一组有限的动作。 想象一个连续的环境空间,例如训练机器人走路; 在那些环境中,应用 Q 学习是不可行的,因为要找到一个贪婪的策略将需要在每一步进行很多优化。 即使我们使连续的环境离散,我们也可能会失去重要的功能并最终获得大量的动作空间。 当我们拥有巨大的行动空间时,很难实现融合。
第 8 章*具有深度 Q 网络的 Atari 游戏*,中,我们研究了 DQN 的工作原理,并应用了 DQN 玩 Atari 游戏。 但是,在那些离散的环境中,我们只有一组有限的动作。 想象一个连续的环境空间,例如训练机器人走路; 在那些环境中,应用 Q 学习是不可行的,因为要找到一个贪婪的策略将需要在每一步进行很多优化。 即使我们使连续的环境离散,我们也可能会失去重要的功能并最终获得大量的动作空间。 当我们拥有巨大的行动空间时,很难实现融合。
因此,我们使用称为 Actor Critic 的新架构,该架构具有两个网络-Actor 和 Critic。 Actor Critic 体系结构结合了策略梯度和状态操作值功能。 **Actor** 网络的作用是通过调整参数![](img/00310.jpeg)来确定**状态**中的最佳动作,而 **Critic** 的作用是评估 **Actor** 产生的动作。 **评论家**通过计算时间差异误差来评估演员的行动。 也就是说,我们在 **Actor** 网络上执行策略渐变以选择操作, **Critic** 网络评估由 **Actor** 产生的操作 ]网络使用 TD 错误。 下图显示了 Actor Critic 体系结构:
......
......@@ -8,25 +8,25 @@
# 本书涵盖的内容
[第 1 章](01.html)*基于人工智能的系统*的基础知识,涵盖了如何使用机器学习,深度学习和强化学习来构建智能人工智能系统的基础知识。 我们将讨论各种人工神经网络,包括用于图像处理目的的 CNN 和用于自然语言处理目的的 RNN。
第 1 章*基于人工智能的系统*的基础知识,涵盖了如何使用机器学习,深度学习和强化学习来构建智能人工智能系统的基础知识。 我们将讨论各种人工神经网络,包括用于图像处理目的的 CNN 和用于自然语言处理目的的 RNN。
[第 2 章](02.html)*转移学习*涵盖了如何使用转移学习来检测人眼中糖尿病性视网膜病变的情况以及确定视网膜病变的严重程度。 我们将探索 CNN,并学习如何使用能够在人眼眼底图像中检测出糖尿病性视网膜病变的 CNN 训练模型。
第 2 章*转移学习*涵盖了如何使用转移学习来检测人眼中糖尿病性视网膜病变的情况以及确定视网膜病变的严重程度。 我们将探索 CNN,并学习如何使用能够在人眼眼底图像中检测出糖尿病性视网膜病变的 CNN 训练模型。
[第 3 章](03.html)*神经机器翻译*涵盖了**递归神经网络****RNN** )体系结构的基础。 我们还将学习三种不同的机器翻译系统:基于规则的机器翻译,统计机器翻译和神经机器翻译。
第 3 章*神经机器翻译*涵盖了**递归神经网络****RNN** )体系结构的基础。 我们还将学习三种不同的机器翻译系统:基于规则的机器翻译,统计机器翻译和神经机器翻译。
[第 4 章](04.html)*在 GAN 中使用 GAN* 进行时尚行业中的样式转换,说明如何创建智能 AI 模型以生成具有与给定手袋相似样式的鞋子,反之亦然。 我们将使用 Vanilla GAN 通过 GAN 的定制版本(例如 DiscoGAN 和 CycleGAN)来实施项目。
第 4 章*在 GAN 中使用 GAN* 进行时尚行业中的样式转换,说明如何创建智能 AI 模型以生成具有与给定手袋相似样式的鞋子,反之亦然。 我们将使用 Vanilla GAN 通过 GAN 的定制版本(例如 DiscoGAN 和 CycleGAN)来实施项目。
[第 5 章](05.html)*视频字幕应用程序*讨论了 CNN 和 LSTM 在视频字幕中的作用,并说明了如何利用序列到视频(视频到文本)架构来构建视频字幕系统。
第 5 章*视频字幕应用程序*讨论了 CNN 和 LSTM 在视频字幕中的作用,并说明了如何利用序列到视频(视频到文本)架构来构建视频字幕系统。
[第 6 章](06.html)*智能推荐系统*讨论了推荐器系统,这些系统是处理数字数据过载问题的信息过滤系统,以便根据这些信息或信息提取信息。 我们将使用潜在分解进行协同过滤,并使用受限的 Boltzmann 机器来构建推荐系统。
第 6 章*智能推荐系统*讨论了推荐器系统,这些系统是处理数字数据过载问题的信息过滤系统,以便根据这些信息或信息提取信息。 我们将使用潜在分解进行协同过滤,并使用受限的 Boltzmann 机器来构建推荐系统。
[第 7 章](07.html)*用于电影评论情感分析的移动应用程序*解释了如何使用机器学习即服务来使移动应用程序受益。 我们将使用 TensorFlow 创建一个 Android 移动应用,该应用将以电影评论作为输入并基于情感分析提供评分。
第 7 章*用于电影评论情感分析的移动应用程序*解释了如何使用机器学习即服务来使移动应用程序受益。 我们将使用 TensorFlow 创建一个 Android 移动应用,该应用将以电影评论作为输入并基于情感分析提供评分。
[第 8 章](08.html)*用于客户服务的会话式 AI 聊天机器人*,介绍了聊天机器人在此期间的发展历程,并探讨了使用会话聊天机器人的好处。 我们还将研究如何创建聊天机器人以及什么是 LSTM 序列到序列模型。 我们还将为 Twitter 支持聊天机器人构建序列到序列模型。
第 8 章*用于客户服务的会话式 AI 聊天机器人*,介绍了聊天机器人在此期间的发展历程,并探讨了使用会话聊天机器人的好处。 我们还将研究如何创建聊天机器人以及什么是 LSTM 序列到序列模型。 我们还将为 Twitter 支持聊天机器人构建序列到序列模型。
[第 9 章](09.html)*通过强化学习*进行的自主式无人驾驶汽车,介绍了强化学习和 Q 学习。 我们还将使用深度学习和强化学习来创建自动驾驶汽车。
第 9 章*通过强化学习*进行的自主式无人驾驶汽车,介绍了强化学习和 Q 学习。 我们还将使用深度学习和强化学习来创建自动驾驶汽车。
[第 10 章](10.html)*从深度学习角度*验证码,我们讨论了验证码是什么以及为什么需要验证码。 我们还将创建一个模型,以使用深度学习来打破验证码,然后如何使用对抗学习来生成它们。
第 10 章*从深度学习角度*验证码,我们讨论了验证码是什么以及为什么需要验证码。 我们还将创建一个模型,以使用深度学习来打破验证码,然后如何使用对抗学习来生成它们。
# 充分利用这本书
......
......@@ -416,7 +416,7 @@ Figure 1.14: GAN architecture 
因此,我们可以看到生成器最小化![](img/18728b2c-5f24-4bbc-888d-541116e69eeb.png)等于最小化实际分布 *P(x)*与生成器生成的样本分布*之间的 Jensen Shannon 散度 G* (即 *G(x)*)。
训练 GAN 并不是一个简单的过程,在训练这样的网络时我们需要考虑几个技术方面的考虑。 我们将使用高级 GAN 网络在[第 4 章](04.html)*使用 GANs* 的时装行业中的样式传递中构建跨域样式传递应用程序。
训练 GAN 并不是一个简单的过程,在训练这样的网络时我们需要考虑几个技术方面的考虑。 我们将使用高级 GAN 网络在第 4 章*使用 GANs* 的时装行业中的样式传递中构建跨域样式传递应用程序。
# 强化学习
......@@ -490,7 +490,7 @@ Figure 1.14: GAN architecture 
**x** 表示的输入图像被馈送到**预训练的 VGG 16** 网络,以及 **4096** 维输出特征向量 **x'***是从最后一个完全连接的层中提取的。 提取的特征 **x'**以及相应的类别标签 **y** 用于训练简单的分类网络,从而减少解决问题所需的数据。*
我们将通过使用[第 2 章](02.html)*转移学习*中的转移学习来解决医疗保健领域中的图像分类问题。
我们将通过使用第 2 章*转移学习*中的转移学习来解决医疗保健领域中的图像分类问题。
# 受限玻尔兹曼机
......@@ -526,7 +526,7 @@ Figure 1.14: GAN architecture 
通过最大化训练数据的可能性来训练 RBM。 在成本函数相对于权重和偏差的梯度下降的每次迭代中,都会出现采样,这会使训练过程变得昂贵并且在计算上有些棘手。 一种名为**对比发散**的聪明采样方法(使用吉布斯采样)用于训练 RBM。
[第 6 章](06.html)*智能推荐系统*中,我们将使用 RBM 构建推荐系统。
第 6 章*智能推荐系统*中,我们将使用 RBM 构建推荐系统。
# 汽车编码器
......@@ -562,4 +562,4 @@ Figure 1.14: GAN architecture 
您现在应该熟悉本书其余各章中构建智能 AI 应用程序时将要使用的核心技术。 在构建应用程序时,我们将在需要时进行一些技术上的改动。 建议不熟悉深度学习的读者探索更多有关本章涉及的核心技术的信息,以便更全面地理解。
在随后的章节中,我们将讨论实用的 AI 项目,并使用本章中讨论的技术来实现它们。 在[第 2 章](02.html)*转移学习*中,我们将从使用转移学习实现医疗保健应用程序进行医学图像分析开始。 我们希望您期待您的参与。
\ No newline at end of file
在随后的章节中,我们将讨论实用的 AI 项目,并使用本章中讨论的技术来实现它们。 在第 2 章和*转移学习*中,我们将从使用转移学习实现医疗保健应用程序进行医学图像分析开始。 我们希望您期待您的参与。
\ No newline at end of file
......@@ -1219,4 +1219,4 @@ Processing Time 138.52878069877625 secs
在本章中,我们介绍了迁移学习的实际方面,以解决医疗保健领域的现实问题。 希望读者通过尽可能尝试定制这些示例来进一步构建这些概念。
我们通过分类和基于回归的神经网络获得的准确性和 kappa 分数足以用于生产实施。 在[第 3 章](03.html)*神经机器翻译*中,我们将致力于实现智能机器翻译系统,这是比本章介绍的主题更为高级的主题。 我期待您的参与。
\ No newline at end of file
我们通过分类和基于回归的神经网络获得的准确性和 kappa 分数足以用于生产实施。 在第 3 章,*神经机器翻译*中,我们将致力于实现智能机器翻译系统,这是比本章介绍的主题更为高级的主题。 我期待您的参与。
\ No newline at end of file
......@@ -964,4 +964,4 @@ Decoded sentence: Où fut ?
读者现在应该对几种机器翻译方法以及神经翻译机器与传统机器有何不同有很好的理解。 现在,我们还应该深入了解如何从头开始构建神经机器翻译系统,以及如何以有趣的方式扩展该系统。 借助提供的信息和实现演示,建议读者探索其他并行语料库数据集。
在本章中,我们定义了嵌入层,但未使用预先训练的嵌入(例如 GloVe,FastText 等)来加载它们。 建议读者使用预训练的词向量嵌入为嵌入层加载,并查看是否会产生更好的结果。 在[第 4 章](04.html)中,*使用 GAN* 进行时装行业中的样式转换,我们将通过与生成性对抗网络(这是现代的革命)进行与时装业中样式转换有关的项目。 人工智能领域。
\ No newline at end of file
在本章中,我们定义了嵌入层,但未使用预先训练的嵌入(例如 GloVe,FastText 等)来加载它们。 建议读者使用预训练的词向量嵌入为嵌入层加载,并查看是否会产生更好的结果。 在第 4 章中,*使用 GAN* 进行时装行业中的样式转换,我们将通过与生成性对抗网络(这是现代的革命)进行与时装业中样式转换有关的项目。 人工智能领域。
\ No newline at end of file
......@@ -745,4 +745,4 @@ Epoch: [ 0] [ 19/ 156] time: 13.7525
现在,我们到了本章的结尾。 您现在应该精通 DiscoGAN 的技术知识和实施复杂性。 我们在本章中探讨的概念可用于实施各种生成性对抗性网络,这些网络具有适合当前问题的细微变化。 DiscoGAN 网络的端到端实现位于 GitHub 存储库中,位于[这里](https://github.com/PacktPublishing/Intelligent-Projects-using-Python/tree/master/Chapter04)
[第 5 章](05.html)*视频字幕应用程序*中,我们将研究视频到文本翻译应用程序,它们属于人工智能领域的专家系统。
\ No newline at end of file
在第 5 章和*视频字幕应用程序*中,我们将研究视频到文本翻译应用程序,它们属于人工智能领域的专家系统。
\ No newline at end of file
......@@ -18,7 +18,7 @@
# 马尔可夫决策过程
任何强化学习问题都可以看作是**马尔可夫决策过程**,我们在[第 1 章](01.html)*基于人工智能的系统基础*中进行了简要介绍。 为了您的利益,我们将再次详细研究。 在马尔可夫决策过程中,我们有一个与环境交互的主体。 在任何给定的情况下, *t* 代理处于多种状态之一:*(s <sup>(t)</sup> = s)∈S* 。 根据主体的动作*(a <sup>(t)</sup> = a)∈A* 处于状态 *s <sup>(t)</sup>* 具有新状态*(s <sup>(t + 1)</sup> = s <sup>'</sup>* *)∈S* 。 在这里, *S* 表示代理可能会暴露的所有状态,而 *A* 则表示代理可以参与的可能动作。
任何强化学习问题都可以看作是**马尔可夫决策过程**,我们在第 1 章*基于人工智能的系统基础*中进行了简要介绍。 为了您的利益,我们将再次详细研究。 在马尔可夫决策过程中,我们有一个与环境交互的主体。 在任何给定的情况下, *t* 代理处于多种状态之一:*(s <sup>(t)</sup> = s)∈S* 。 根据主体的动作*(a <sup>(t)</sup> = a)∈A* 处于状态 *s <sup>(t)</sup>* 具有新状态*(s <sup>(t + 1)</sup> = s <sup>'</sup>* *)∈S* 。 在这里, *S* 表示代理可能会暴露的所有状态,而 *A* 则表示代理可以参与的可能动作。
您现在可能想知道座席如何采取行动。 应该是随机的还是基于启发式的? 好吧,这取决于代理与相关环境的交互程度。 在初始阶段,代理可能会采取随机行动,因为他们不了解环境。 但是,一旦代理与环境进行了足够的交互(基于奖励和惩罚),代理就会了解在给定状态下采取哪种适当的措施。 类似于人们倾向于采取有益于长期奖励的行动一样,RL 代理商也采取行动,最大限度地提高了长期奖励。
......
......@@ -12,15 +12,15 @@ Python 是一种编程语言,可提供数据科学领域的各种功能。 在
# 本书涵盖的内容
[第 1 章](1.html)*回归和分类的集成方法*涵盖了集成方法或算法的应用,以产生模型的准确预测。 我们将通过集成方法来解决回归和分类问题。
第 1 章*回归和分类的集成方法*涵盖了集成方法或算法的应用,以产生模型的准确预测。 我们将通过集成方法来解决回归和分类问题。
[第 2 章](2.html)*交叉验证和参数调整*探索了各种技术来组合和构建更好的模型。 我们将学习不同的交叉验证方法,包括保持交叉验证和 k 折交叉验证。 我们还将讨论什么是超参数调整。
第 2 章*交叉验证和参数调整*探索了各种技术来组合和构建更好的模型。 我们将学习不同的交叉验证方法,包括保持交叉验证和 k 折交叉验证。 我们还将讨论什么是超参数调整。
[第 3 章](3.html)*处理要素*,探讨了要素选择方法,降维,PCA 和要素工程。 我们还将研究通过特征工程改进模型的方法。
第 3 章*处理要素*,探讨了要素选择方法,降维,PCA 和要素工程。 我们还将研究通过特征工程改进模型的方法。
[第 4 章](4.html)*人工神经网络和 TensorFlow 简介*是 ANN 和 TensorFlow 的简介。 我们将探索网络中的各种元素及其功能。 我们还将在其中学习 TensorFlow 的基本概念。
第 4 章*人工神经网络和 TensorFlow 简介*是 ANN 和 TensorFlow 的简介。 我们将探索网络中的各种元素及其功能。 我们还将在其中学习 TensorFlow 的基本概念。
[第 5 章](5.html)*使用 TensorFlow 和深度神经网络*进行预测分析,在 TensorFlow 和深度学习的帮助下探索预测分析。 我们将研究 MNIST 数据集和使用该数据集的模型分类。 我们将学习 DNN,它们的功能以及 DNN 在 MNIST 数据集中的应用。
第 5 章*使用 TensorFlow 和深度神经网络*进行预测分析,在 TensorFlow 和深度学习的帮助下探索预测分析。 我们将研究 MNIST 数据集和使用该数据集的模型分类。 我们将学习 DNN,它们的功能以及 DNN 在 MNIST 数据集中的应用。
# 充分利用这本书
......
......@@ -89,9 +89,9 @@ y = diamonds[target_name]
#X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=55)
```
这与我们在[第 1 章](1.html)*回归和分类的组合方法*中使用的单元格相同。 此处的区别在于我们不使用`train_test_split`功能。 在这里,我们正在生成`X`矩阵,该矩阵包含所有功能并具有我们的目标功能。 因此,我们有了`X`矩阵和`y`向量。
这与我们在第 1 章*回归和分类的组合方法*中使用的单元格相同。 此处的区别在于我们不使用`train_test_split`功能。 在这里,我们正在生成`X`矩阵,该矩阵包含所有功能并具有我们的目标功能。 因此,我们有了`X`矩阵和`y`向量。
为了训练模型,我们将实例化`RandomForestRegressor`函数,该函数在此数据集的[第 1 章](1.html)*回归和分类集成方法*中是最佳模型。 。 以下显示了用于实例化`RandomForestRegressor`函数**的代码:**
为了训练模型,我们将实例化`RandomForestRegressor`函数,该函数在此数据集的第 1 章*回归和分类集成方法*中是最佳模型。 。 以下显示了用于实例化`RandomForestRegressor`函数**的代码:**
```py
from sklearn.ensemble import RandomForestRegressor
......
......@@ -27,7 +27,7 @@ TF 1.x 和 TF 2.0 之间的第一个主要区别是 API 的组织。 TF 2.0 减
`tf.contrib`库现在也已从主要 TensorFlow 存储库中删除。 该库中实现的代码已移至其他位置或已移至 TensorFlow 附加库。 这样做的原因是`contrib`模块已经超出了单个存储库中可以维护的范围。
其他更改包括删除`QueueRunner`模块以支持使用`tf.data`,删除图形集合以及更改如何处理变量。 `QueueRunner`模块是一种向模型提供数据以进行训练的方法,但是它比`tf.data`复杂且难于使用,后者现在是将数据提供给模型的默认方法。 在[第 3 章](3.html)*设计和构造输入数据管道*中,说明了将`tf.data`用于数据管道的其他好处。
其他更改包括删除`QueueRunner`模块以支持使用`tf.data`,删除图形集合以及更改如何处理变量。 `QueueRunner`模块是一种向模型提供数据以进行训练的方法,但是它比`tf.data`复杂且难于使用,后者现在是将数据提供给模型的默认方法。 在第 3 章*设计和构造输入数据管道*中,说明了将`tf.data`用于数据管道的其他好处。
TF 2.0 的另一个主要变化是没有更多的全局变量。 在 TF 1.x 中,使用`tf.Variable`创建的变量将被放在默认图中,并且仍可以通过其名称恢复。 TF 1.x 具有各种机制,旨在帮助用户恢复变量,例如变量作用域,全局集合以及诸如`tf.get_global_step``tf.global_variables_initializer`之类的辅助方法。 对于 TF 中的默认变量行为,所有这些都已在 TF 2.0 中删除。
......
......@@ -39,7 +39,7 @@ TFRecords 的创建是输入数据管道的核心,因此您可以创建`tf.dat
* `TFRecord`格式,用于存储二进制记录或数据序列。
* [协议缓冲区](https://developers.google.com/protocol-buffers/)是跨平台的,并且具有跨语言库,用于以协议消息的形式对结构化数据进行有效的序列化。
* 协议消息是信息的小型逻辑记录,其中包含一系列名称/值对。
* `tf.Example`是一种灵活的协议消息(也称为`protobuf`),旨在与 TensorFlow 一起使用。 **TensorFlow Extended****TFX** )是 TF 2.0 中的另一个重要功能,用于部署生产级 ML 管道,我们将在[第 5 章](5.html)中进行学习,[ *模型推理管道–多平台部署*。
* `tf.Example`是一种灵活的协议消息(也称为`protobuf`),旨在与 TensorFlow 一起使用。 **TensorFlow Extended****TFX** )是 TF 2.0 中的另一个重要功能,用于部署生产级 ML 管道,我们将在第 5 章中进行学习,[ *模型推理管道–多平台部署*。
请注意,在 TF 2.0 中,`tf.Examples`已在诸如 [TFX](https://www.tensorflow.org/tfx/) 的所有 TensorFlow 高级 API 中使用。。
......@@ -372,7 +372,7 @@ dataset = dataset.repeat(count = None)
dataset = dataset.batch(batch_size, drop_remainder=True)
```
`batch(...)` API 将此数据集的连续元素合并为批处理。 `batch_size`是传递给此 API 的超参数。 在[第 4 章](4.html)*模型训练和 TensorBoard* 的使用中,我们将讨论并提供批量建议。
`batch(...)` API 将此数据集的连续元素合并为批处理。 `batch_size`是传递给此 API 的超参数。 在第 4 章*模型训练和 TensorBoard* 的使用中,我们将讨论并提供批量建议。
# 预取
......
......@@ -39,7 +39,7 @@ TensorFlow 1.x 已建议为其高级 API 集使用`tf.estimator` API,该 API
生成模型和判别模型可以与这三种机器学习技术一起使用。 生成模型尝试从具有未知分布的给定数据集中凭经验学习模式和分布,并可能使用学习的模型来生成新数据,就好像它来自同一分布。 一些流行的生成模型是高斯混合模型,隐马尔可夫模型,贝叶斯网络(例如朴素贝叶斯)等。 生成对抗模型是 2014 年非常流行的生成模型,由于其强大的成功和潜力而备受关注。 除了仅学习可用于无监督学习的分布之外,生成模型还可以用于执行分类或预测任务(有监督学习),该任务使用样本 *x* 的条件概率, 通过使用朴素贝叶斯定理计算概率 *P(y | x)*,属于 *y* 类。 与生成模型相反,判别模型用于直接学习条件概率 *P(y | x)*,用于回归,分类和其他类型的监督学习问题。 深度神经网络可用于构建生成模型或判别模型。
TensorFlow 提供了丰富的 API 集来构建上述生成模型和判别模型。 此外,在 TF 2.0 中,通过引入急切的执行(在[第 2 章](2.html)*Keras 默认集成和急切执行*中进行了解释),创建这些模型的理念发生了整体变化, 这使得`tf.keras`的使用非常简单且易于调试。 此外,TensorFlow 2.0 中的`tf.keras` API 丰富了 TF 在 TF 1.x 版本中可以执行的全部功能。 在本书中,除非另有说明,否则我们主要使用`tf.keras` API 来构建,训练和预测神经网络模型,并且不会讨论低级或中级 TF API。
TensorFlow 提供了丰富的 API 集来构建上述生成模型和判别模型。 此外,在 TF 2.0 中,通过引入急切的执行(在第 2 章*Keras 默认集成和急切执行*中进行了解释),创建这些模型的理念发生了整体变化, 这使得`tf.keras`的使用非常简单且易于调试。 此外,TensorFlow 2.0 中的`tf.keras` API 丰富了 TF 在 TF 1.x 版本中可以执行的全部功能。 在本书中,除非另有说明,否则我们主要使用`tf.keras` API 来构建,训练和预测神经网络模型,并且不会讨论低级或中级 TF API。
TensorFlow 建立深度学习模型并对其进行训练时的理念是,首先定义神经网络层(也称为构建由节点和边组成的计算图); 定义损失函数,准确性度量和适当的优化器; 然后训练模型以更新渐变。 这三个步骤在使用构建,编译和拟合的`tf.keras` API 中得到了体现,如下图所示:
......@@ -570,7 +570,7 @@ for num_units in HP_NUM_UNITS.domain.values:
# 假设工具
TensorFlow 2.0 引入了一个非常强大的工具,即**假设工具****WIT** ),该工具可在 TensorBoard 仪表板内部提供易于使用的界面。 但是,仅当使用 TensorFlow Serving 为模型提供服务时,才可以使用 WIT。 在[第 5 章](5.html)*模型推理管道–* *多平台部署*中解释了 TensorFlow Serving。 另外,为了使用 WIT,推理数据集必须为`TFRecords`格式。
TensorFlow 2.0 引入了一个非常强大的工具,即**假设工具****WIT** ),该工具可在 TensorBoard 仪表板内部提供易于使用的界面。 但是,仅当使用 TensorFlow Serving 为模型提供服务时,才可以使用 WIT。 在第 5 章*模型推理管道–* *多平台部署*中解释了 TensorFlow Serving。 另外,为了使用 WIT,推理数据集必须为`TFRecords`格式。
WIT 的某些功能是可以将具有相同工作流程的多个模型进行比较,推理结果的可视化,基于相似度的数据排列以及通过编辑数据点执行模型的敏感性分析的能力。
......
......@@ -11,7 +11,7 @@
* **TensorFlow 2.0****TF 2.0** )或更高版本(CPU 或 GPU 版本都足够)
* Python 3.4+(当前,TensorFlow 支持的最高 Python 版本是 3.6)
* NumPy(如果不是由 TensorFlow 自动安装)
* Docker(请参阅[第 1 章](1.html)*TensorFlow 2.0 入门*,有关如何安装 Docker 的详细信息)
* Docker(请参阅第 1 章*TensorFlow 2.0 入门*,有关如何安装 Docker 的详细信息)
* [curl](https://curl.haxx.se/docs/install.html)
* 具有命令行界面的 Linux 计算机
......@@ -58,7 +58,7 @@ import tensorflow as tf
# tf.function API
正如我们在[第 1 章](1.html)中看到的那样, *TensorFlow 2.0*[入门第 2 章](2.html)*Keras 默认集成和急切执行*,渴望 默认情况下启用执行是 TF 2.0 中引入的主要更改之一。 [第 1 章](1.html)*TensorFlow 2.0 入门*还简要提到了 TF 2.0 与 Python 编程语言更紧密地结合在一起。 此更改的核心是低级`tf.function` API。 实际上,这是通过使用户能够从 Python 函数创建 TensorFlow 图而将 TensorFlow 1.x 的功能与渴望执行的优点相结合。 它既可以用作可调用函数,也可以用作装饰器。 在本节中,我们将简要介绍一下如何在每个人中使用它。
正如我们在第 1 章中看到的那样, *TensorFlow 2.0*[入门第 2 章](2.html)*Keras 默认集成和急切执行*,渴望 默认情况下启用执行是 TF 2.0 中引入的主要更改之一。 第 1 章*TensorFlow 2.0 入门*还简要提到了 TF 2.0 与 Python 编程语言更紧密地结合在一起。 此更改的核心是低级`tf.function` API。 实际上,这是通过使用户能够从 Python 函数创建 TensorFlow 图而将 TensorFlow 1.x 的功能与渴望执行的优点相结合。 它既可以用作可调用函数,也可以用作装饰器。 在本节中,我们将简要介绍一下如何在每个人中使用它。
# tf.autograph 函数
......@@ -258,7 +258,7 @@ Result for output key output_0:
如果容器映像对您不起作用,请在[这个页面](https://www.tensorflow.org/tfx/serving/setup)上获取其他安装 TensorFlow Serving 方法的摘要。
使用 Docker 设置 TensorFlow 服务涉及一个简单的步骤。 但是,此步骤需要将 Docker 安装在主机上。 有关设置 Docker 的说明,请参阅[第 1 章](1.html)*TensorFlow 2.0 入门*或本章的*技术要求*部分。 您需要做的就是拉相关的 Docker 映像以...
使用 Docker 设置 TensorFlow 服务涉及一个简单的步骤。 但是,此步骤需要将 Docker 安装在主机上。 有关设置 Docker 的说明,请参阅第 1 章*TensorFlow 2.0 入门*或本章的*技术要求*部分。 您需要做的就是拉相关的 Docker 映像以...
# 设置并运行推理服务器
......
......@@ -4,5 +4,5 @@
本节包含以下章节:
* [第 1 章](1.html)*TensorFlow 2.0 入门*
* [第 2 章](2.html)*Keras 默认集成和急切执行*
\ No newline at end of file
* 第 1 章和 *TensorFlow 2.0 入门*
* 第 2 章和 *Keras 默认集成和急切执行*
\ No newline at end of file
......@@ -4,5 +4,5 @@
本节包含以下章节:
* [第 3 章](3.html)*设计和构建输入数据管道*
* [第 4 章](4.html)*模型训练和 TensorBoard 的使用*
\ No newline at end of file
* 第 3 章和*设计和构建输入数据管道*
* 第 4 章,*模型训练和 TensorBoard 的使用*
\ No newline at end of file
......@@ -4,5 +4,5 @@
本节包含以下章节:
* [第 5 章](5.html)*模型推理管道–多平台部署*
* [第 6 章](6.html)*AIY 项目和 TensorFlow Lite*
\ No newline at end of file
* 第 5 章和*模型推理管道–多平台部署*
* 第 6 章, *AIY 项目和 TensorFlow Lite*
\ No newline at end of file
......@@ -4,4 +4,4 @@
本节包含以下章节:
* [第 7 章](7.html)*从 TensorFlow 1.x 迁移到 2.0*
\ No newline at end of file
* 第 7 章和*从 TensorFlow 1.x 迁移到 2.0*
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册