diff --git a/new/handson-dl-img-tf/1.md b/new/handson-dl-img-tf/1.md index de667a4a50123c17f7e933f7953f833603389b9c..c2c4ea26df1ebf52cf66b84b5c64a63151a5eba8 100644 --- a/new/handson-dl-img-tf/1.md +++ b/new/handson-dl-img-tf/1.md @@ -93,7 +93,7 @@ Docker 文件代码 现在我们已经准备好 Docker 文件,让我们看一下一些安全设置以及如何与容器共享数据。 -# 共享资料 +# 共享数据 在本节中,我们将研究在 Docker 容器和桌面之间共享数据。 我们将介绍一些必要的安全设置以允许访问。 然后,我们将运行自检以确保正确设置了这些安全性设置,最后,我们将运行实际的 Docker 文件。 @@ -230,7 +230,7 @@ IPython 笔记本 这是我们将在本书中运行的环境:充分准备并准备就绪的 Docker 容器,因此您需要做的就是启动它,运行它,然后与内部托管的 Keras 和 IPython 笔记本一起使用。 这样您每次都可以拥有一个轻松,可重复的环境。 -# 概要 +# 总结 在本章中,我们研究了如何安装 Docker,包括从[这里](https://www.docker.com/)获取它,设置机器学习 Docker 文件,与主机共享数据回传。 ,然后最后,运行 REST 服务以提供我们将在本书中使用的环境。 diff --git a/new/handson-dl-img-tf/2.md b/new/handson-dl-img-tf/2.md index 216963831540a5e95862476542b7dfa2de262d54..9c1bd3886d9db8b3c155bde45e9aa946e63b8a13 100644 --- a/new/handson-dl-img-tf/2.md +++ b/new/handson-dl-img-tf/2.md @@ -1,4 +1,4 @@ -# 图片资料 +# 图片数据 在上一章中,我们准备了机器学习工具包,在其中设置了 Keras 和 Docker,以便允许我们运行 Jupyter 笔记本来处理机器学习。 @@ -42,7 +42,7 @@ Python 元组 绘制图像 -# 张量–多维数组 +# 张量 – 多维数组 现在,我们已经了解了一些 MNIST 数字,我们将花一些时间看一看张量以及张量是什么。 我们将要看一看多维数组的 NumPy。 多维数组也称为**张量**。 数学词汇可能会让人有些不知所措,但我们将向您展示它比您想象的要简单得多。 然后,我们来看看张量形状。 张量形状实际上是维度的数量,或者就数组而言,是用于访问它们的不同索引的数量。 最后,我们将研究数据类型。 张量或多维数组可以容纳各种各样的不同数据类型,我们将解释其中的一些区别。 @@ -64,7 +64,7 @@ Python 元组 这是构成我们的三个张量的三个维度。 它只是一个多维数组。 然后,当然是数据类型,即`dtype`,就像您在 NumPy 多维数组上在这里所说的那样。 您可以看到这些图像存储为`uint8`或 8 位整数,以记录`0`至`255`值。 好吧,我们经常将这种数据类型用于源数据,特别是对于像前一个图像一样的黑白图像。 当我们将其转换为实际的机器学习格式时,我们将使用浮点数。 -# 将图像转变为张量 +# 将图像转换为张量 在上一节中,我们了解了张量是什么。 现在,我们将使用这些知识来准备图像数据作为机器学习的张量。 首先,我们会问一个问题:为什么要使用浮点数据? 然后,我们将了解样本与样本末尾数据点之间的差异。 最后,我们将规范化数据以用于机器学习。 @@ -86,7 +86,7 @@ Python 元组 就是这样! 我们已经看到了如何处理输入数据。 需要记住的两件事:我们将把所有东西都变成浮点数,最好是将`0`到`1`范围内的数据标准化。 -# 将类别转化为张量 +# 将类别转换为张量 在上一节中,我们研究了将图像转换为用于机器学习的张量,在本节中,我们将研究将输出值(类别)转换为用于机器学习的张量。 @@ -112,7 +112,7 @@ Python 元组 创建机器学习算法时,我们要做的是让计算机学习或发现将一个图像(数字 9)转换为另一图像(在第 9 列上设置一位的位图)的功能, 这就是我们所说的机器学习。 请记住,张量只是多维数组,`x`和`y`值只是像素。 我们对这些值进行归一化,这意味着我们将它们从零到一的范围中获取,以便它们在机器学习算法中很有用。 标签或输出类只是我们要映射的值的数组,并且我们将使用单热编码对这些值进行编码,这又意味着只有一个是热的或设置为一个。 -# 概要 +# 总结 在本章中,我们了解了 MNIST 数字,以及如何获取它们。 张量实际上只是多维数组; 我们如何将图像数据编码为张量; 我们如何将分类或分类数据编码为张量; 然后我们进行了快速回顾,并采用了食谱的方法来考虑尺寸和张量,以获取用于机器学习的数据。 diff --git a/new/handson-dl-img-tf/3.md b/new/handson-dl-img-tf/3.md index fa91cd4ad624fcedbbf5d0a4467f9f66c1425fec..54fd8a1f78e3680ccae9515ed4dea3304481e877 100644 --- a/new/handson-dl-img-tf/3.md +++ b/new/handson-dl-img-tf/3.md @@ -1,4 +1,4 @@ -# 古典神经网络 +# 经典神经网络 现在我们已经准备好图像数据,是时候采用我们所学的知识并将其用于构建经典的或密集的神经网络了。 在本章中,我们将介绍以下主题: @@ -65,7 +65,7 @@ ReLu 非线性函数-大于零。 幕后进行了大量数学运算,因此大量非线性的相互作用使机器学习者可以在概念上围绕答案绘制高维数学形状。 -# 软最大 +# Softmax 在本节中,我们将学习称为`softmax`的输出激活函数。 我们将研究它与输出类的关系,并了解`softmax`如何产生概率。 @@ -79,7 +79,7 @@ ReLu 非线性函数-大于零。 现在您可能想知道为什么我们应该考虑这一点,因为您可以轻松地从数字`1`,`2`和`5`看出`5`是最大的值。 好吧,这个想法是,如果您将事情表示为概率,则可以模拟信心。 从某种意义上讲,您可以在模型之间共享分数,并且知道您的模型实际的自信程度。 另外,不同的模型将在不同的范围内输出不同的数字。 仅仅因为您在尝试的第一个模型中放入了`1`,`2`或`5`,这并不意味着它们在另一个模型中具有相同的相对值。 因此,将它们粉碎成概率可以进行比较。 现在,有了这些数学知识,我们就可以开始研究构建实际的神经网络了。 好消息是您实际上不需要记住或知道我们刚才列出的数学。 您只需要记住数学部分的名称,因为在 Keras 中,您使用简单的名称引用了激活函数。 -# 培训和测试数据 +# 训练和测试数据 在本节中,我们将研究引入训练和测试数据。 我们将研究如何加载实际数据,然后再回顾规范化和一键编码,然后快速讨论为什么我们实际上使用训练和测试数据集。 @@ -133,7 +133,7 @@ Keras 功能模型 好的,现在该运行模型了。 现在,我们了解了如何将包括`Dropout`和`Flatten`层在内的模型放到一起,我们将继续使用求解器,这是我们实际执行机器学习模型所使用的。 -# 解算器 +# 优化器 在本节中,我们将设置学习和优化功能,编译模型,使其适合训练和测试数据,然后实际运行模型并查看动画,该动画指示对损失和准确性的影响。 @@ -205,7 +205,7 @@ Keras 功能模型 您可以看到我们的分数不错:整体准确率为 96%。 -# 概要 +# 总结 在本章中,我们实际上涵盖了很多内容。 我们看到了经典或密集神经网络的结构。 我们了解了激活和非线性,并了解了`softmax`。 然后,我们建立测试和训练数据,并学习了如何使用`Dropout`和`Flatten`构建网络。 我们还学习了有关求解器的所有知识,或者机器学习的实际学习方式。 然后,我们探索了超参数,最后,我们通过网格搜索对模型进行了微调。 diff --git a/new/handson-meta-learn-py/01.md b/new/handson-meta-learn-py/01.md index 5c53a4000cf9d9935a784f09237e0f9948fb9e79..df7c2a3c30ec794d1042d96315528d174aa5a27e 100644 --- a/new/handson-meta-learn-py/01.md +++ b/new/handson-meta-learn-py/01.md @@ -142,7 +142,7 @@ ![](img/d1c6ebed-3fa7-4963-b40f-d5c562899c7c.png) -# 概要 +# 总结 我们首先了解了元学习是什么,以及元学习中如何使用单发,少发和零发学习。 我们了解到,支持集和查询集更像是火车集和测试集,但每个类中都有`k`个数据点。 我们还看到了`n`-方式 k 次的含义。 后来,我们了解了不同类型的元学习技术。 然后,我们探索了通过梯度下降学习梯度下降的学习方法,其中我们看到了 RNN 如何用作优化器来优化基础网络。 后来,我们将优化视为快速学习的模型,其中我们使用 LSTM 作为元学习器,以在快速学习环境中进行优化。 diff --git a/new/handson-meta-learn-py/02.md b/new/handson-meta-learn-py/02.md index a3a5bbb11aa7db840f4ea6744d644285e8014a24..5eb90c85df54ddbb13956c612d49460dc701521d 100644 --- a/new/handson-meta-learn-py/02.md +++ b/new/handson-meta-learn-py/02.md @@ -604,7 +604,7 @@ Epoch 13/13 - 0s - loss: 819.8594 - val_loss: 120.3017 ``` -# 概要 +# 总结 在本章中,我们学习了什么是连体网络,以及如何使用连体网络构建人脸和音频识别模型。 我们探索了连体网络的架构,该网络基本上由两个相同的神经网络组成,它们具有相同的权重和架构,并且将这些网络的输出插入到一些能量函数中以了解相似性。 diff --git a/new/handson-meta-learn-py/03.md b/new/handson-meta-learn-py/03.md index 70c4c96f30e525e29c2e9507c9322a6990bb7234..d0e7b85cb3a0995caf4e8470dbb7a63201abb06f 100644 --- a/new/handson-meta-learn-py/03.md +++ b/new/handson-meta-learn-py/03.md @@ -543,7 +543,7 @@ elif inverse_transform_type == "other": 因此,我们将分心器类重塑为示例,这些示例不在所有类原型的某个阈值距离之内。 我们如何计算该阈值? 首先,我们计算所有类原型的未标记集合`R`中未标记示例之间的标准化距离。 接下来,我们通过将归一化距离的各种统计数据(例如最小,最大,偏度和峰度)输入神经网络来计算每个类原型的阈值。 基于此阈值,我们向类原型添加或忽略未标记的示例。 -# 概要 +# 总结 在本章中,我们从原型网络开始,我们了解了原型网络如何使用嵌入函数计算类原型,并通过比较类原型和查询集嵌入之间的欧几里得距离来预测查询集的类标签。 之后,我们通过对 omniglot 数据集进行分类,对原型网络进行了实验。 然后,我们了解了高斯原型网络,该网络与嵌入一起还使用协方差矩阵来计算类原型。 之后,我们探索了半原型网络,该网络用于处理半监督类。 在下一章中,我们将学习关系和匹配网络。 diff --git a/new/handson-meta-learn-py/04.md b/new/handson-meta-learn-py/04.md index a3b97ebc0d7ed9d622c527888c2611e57c588765..d34237d7d4761035bcb02091fa37cb572ae360e6 100644 --- a/new/handson-meta-learn-py/04.md +++ b/new/handson-meta-learn-py/04.md @@ -668,7 +668,7 @@ class Matching_network(): tf.train.AdamOptimizer(self.lr).minimize(self.loss_op) ``` -# 概要 +# 总结 在本章中,我们学习了在几次学习中如何使用匹配网络和关系网络。 我们看到了一个关系网络如何学习支持和查询集的嵌入,并将这些嵌入进行组合并将其馈送到关系函数以计算关系得分。 我们还看到了匹配的网络如何使用两种不同的嵌入函数来学习我们的支持集和查询集的嵌入,以及它如何预测查询集的类。 diff --git a/new/handson-meta-learn-py/05.md b/new/handson-meta-learn-py/05.md index e4c36ee8cb8d0707fd9e09e6c85482c1373d16a1..a9c72990c44dc0abad2f2da407e06eb56257add4 100644 --- a/new/handson-meta-learn-py/05.md +++ b/new/handson-meta-learn-py/05.md @@ -779,7 +779,7 @@ M_ = prev_M * tf.expand_dims(1\. - tf.one_hot(prev_indices[:, -1], self.memory_s M = M + tf.matmul(w, k) ``` -# 概要 +# 总结 我们看到了神经图灵机如何从内存中存储和检索信息,以及它如何使用不同的寻址机制(例如基于位置和基于内容的寻址)来读写信息。 我们还学习了如何使用 TensorFlow 实现 NTM 以执行复制任务。 然后,我们了解了 MANN 以及 MANN 与 NTM 的不同之处。 我们还了解了 MANN 如何使用最近最少使用的访问方法来克服 NTM 的缺点。 diff --git a/new/handson-meta-learn-py/06.md b/new/handson-meta-learn-py/06.md index 240be1d8184b7cb2df5fc4eddff6fd70e0b8c1a3..69b4a0efa34aeb6c6d7c55787ee5c435a6e93d4e 100644 --- a/new/handson-meta-learn-py/06.md +++ b/new/handson-meta-learn-py/06.md @@ -1063,7 +1063,7 @@ Sampling Next Batch of Tasks 5. 对`n`次迭代重复步骤 2 到步骤 4。 -# 概要 +# 总结 在本章中,我们学习了如何找到可在各个任务之间推广的最佳模型参数`θ`,以便我们可以减少梯度步骤,并快速学习新的相关任务。 我们从 MAML 开始,我们看到了 MAML 如何执行元优化来计算最佳模型参数。 接下来,我们看到了对抗性元学习,其中我们使用了干净样本和对抗性样本来查找可靠的初始模型参数。 后来,我们了解了 CAML,并看到了 CAML 如何使用两个不同的参数,一个用于在任务中学习,另一个用于更新模型参数。 diff --git a/new/handson-meta-learn-py/07.md b/new/handson-meta-learn-py/07.md index 31f44c1c21601e88521d613e929b76ccdd953d85..4e253f9a5ec1e4bb8bcb7f27c1c55e86c796bc4e 100644 --- a/new/handson-meta-learn-py/07.md +++ b/new/handson-meta-learn-py/07.md @@ -763,7 +763,7 @@ Sampling Next Batch of Tasks --------------------------------- ``` -# 概要 +# 总结 在本章中,我们学习了 Meta-SGD 和 Reptile 算法。 我们看到了 Meta-SGD 与 MAML 有何不同,以及如何在监督学习和强化学习设置中使用 Meta-SGD。 我们看到了 Meta-SGD 如何学习模型参数以及学习率和更新方向。 我们还了解了如何从头开始构建 Meta-SGD。 然后,我们了解了 Reptile 算法。 我们看到了 Reptile 与 MAML 的不同之处,以及 Reptile 对 MAML 算法的改进。 我们还学习了如何在正弦波回归任务中使用 Reptile。 diff --git a/new/handson-meta-learn-py/08.md b/new/handson-meta-learn-py/08.md index c3968201afa370e3d77d00eed4708effbd231684..a7081d77229805a394ffa04adb7cd80d1ddcc34a 100644 --- a/new/handson-meta-learn-py/08.md +++ b/new/handson-meta-learn-py/08.md @@ -476,7 +476,7 @@ Sampling Next Batch of Tasks --------------------------------- ``` -# 概要 +# 总结 在本章中,我们学习了梯度一致性算法。 我们已经看到了梯度一致性算法如何使用加权梯度来找到更好的初始模型参数`θ`。 我们还看到了这些权重如何与任务梯度的内积和采样批次任务中所有任务的梯度平均值的乘积成正比。 我们还探讨了如何将梯度一致性算法与 MAML 和 Reptile 算法结合使用。 之后,我们看到了如何使用梯度一致性算法在分类任务中找到最佳参数`θ'[i]`。 diff --git a/new/handson-meta-learn-py/09.md b/new/handson-meta-learn-py/09.md index 438d4569d4e6c9a8932ae724464446ba45848f69..c9b2ec61a3a54ab1fcf849a313b6aecb85b79597 100644 --- a/new/handson-meta-learn-py/09.md +++ b/new/handson-meta-learn-py/09.md @@ -275,7 +275,7 @@ MIL 中涉及的步骤如下: 再次恭喜您学习了所有重要且流行的元学习算法。 元学习是 AI 的一个有趣且最有前途的领域,它将使我们更接近**广义人工智能**(**AGI**)。 现在,您已经阅读完本书,可以开始探索元学习的各种进步,并开始尝试各种项目。 学习和元学习! -# 概要 +# 总结 在本章中,我们学习了 TAML 来减少任务偏差。 我们看到了两种类型的方法:基于熵的 TAML 和基于不等式的 TAML。 然后,我们探索了元模仿学习,它将元学习与模仿学习相结合。 我们看到了元学习如何帮助模仿学习从更少的模仿中学习。 我们还看到了如何在使用 CACTUS 的无监督学习环境中应用模型不可知元学习。 然后,我们探索了一种称为学习在概念空间中学习的深度元学习算法。 我们看到了深度学习的力量如何促进元学习。 diff --git a/new/handson-rl-py/01.md b/new/handson-rl-py/01.md index 754899315a0a9f0261d33103d2311dac04005808..65aa20ec79bc890b4885b1a554797894411e7469 100644 --- a/new/handson-rl-py/01.md +++ b/new/handson-rl-py/01.md @@ -182,7 +182,7 @@ RL 被广泛用于金融投资组合管理,这是将资金不断重新分配 凭借深度学习和 RL 的统一能力,**深度强化学习**(**DRL**)在**自然语言处理**(**NLP**)和**计算机视觉**(**CV**)领域中得到了极大的发展。。 DRL 已用于文本摘要,信息提取,机器翻译和图像识别,比当前系统具有更高的准确性。 -# 概要 +# 总结 在本章中,我们学习了 RL 的基础知识以及一些关键概念。 我们了解了 RL 的不同元素和 RL 环境的不同类型。 我们还介绍了各种可用的 RL 平台以及 RL 在各个领域中的应用。 diff --git a/new/handson-rl-py/02.md b/new/handson-rl-py/02.md index 756b318c923df4f1b88dfe0b9326e49a32237f78..0c5c6ca1fb8178c1d99a23b5b5de9728ef34db46 100644 --- a/new/handson-rl-py/02.md +++ b/new/handson-rl-py/02.md @@ -746,7 +746,7 @@ with tf.Session() as sess: ![](img/00017.jpeg) -# 概要 +# 总结 在本章中,我们学习了如何通过安装 Anaconda,Docker,OpenAI Gym,Universe 和 TensorFlow 来设置机器。 我们还学习了如何使用 OpenAI 创建模拟,以及如何训练代理在 OpenAI 环境中学习。 然后,我们了解了 TensorFlow 的基础知识,然后在 TensorBoard 中可视化了图形。 diff --git a/new/handson-rl-py/03.md b/new/handson-rl-py/03.md index 6e7db51b47d0b2cbd313dc4ffa481948944c8418..ece26f73a12097772cb76481e66c718526aa187f 100644 --- a/new/handson-rl-py/03.md +++ b/new/handson-rl-py/03.md @@ -849,7 +849,7 @@ print (policy_iteration(env)) 因此,我们可以得出最佳策略,该策略使用值和策略迭代来解决冻结湖问题,从而指定在每种状态下要执行的操作。 -# 概要 +# 总结 在本章中,我们了解了什么是马尔可夫链和马尔可夫过程,以及如何使用 MDP 表示 RL 问题。 我们还研究了贝尔曼方程,并解决了贝尔曼方程,从而使用 DP 推导了最优策略。 在下一章第 4 章,“使用蒙特卡洛方法进行游戏”中,我们将研究蒙特卡洛树搜索以及如何使用它进行智能游戏的构建。 diff --git a/new/handson-rl-py/04.md b/new/handson-rl-py/04.md index e1d2bf89cc50e3acd83e093c26b1c998ee84bc04..cf89829a90f6f076c440e646029385993dbd0c1a 100644 --- a/new/handson-rl-py/04.md +++ b/new/handson-rl-py/04.md @@ -605,7 +605,7 @@ def epsilon_greedy_policy(state, epsilon): ![](img/00110.jpeg) -# 概要 +# 总结 在本章中,我们了解了蒙特卡洛方法的工作原理,以及当我们不了解环境模型时如何使用它来解决 MDP。 我们研究了两种不同的方法:一种是用于估计值函数的蒙特卡洛预测,另一种是用于优化值函数的蒙特卡洛控制。 diff --git a/new/handson-rl-py/05.md b/new/handson-rl-py/05.md index b2c73ec3e74d0cc20acd62018b569a09fe064e34..7b5b01d7c157f4fb10e2a20df78fcc1027a90273 100644 --- a/new/handson-rl-py/05.md +++ b/new/handson-rl-py/05.md @@ -547,7 +547,7 @@ Q 学习和 SARSA 对许多人来说总是很困惑。 让我们分解一下两 您看得出来差别吗? 在 Q 学习中,我们使用`ε`贪婪策略采取行动,并且在更新 Q 值的同时,我们仅采取最大行动。 在 SARSA 中,我们使用`ε`贪婪策略采取措施,并且在更新 Q 值的同时,我们使用`ε`贪婪策略采取措施。 -# 概要 +# 总结 在本章中,我们学习了一种克服了蒙特卡洛方法局限性的不同的无模型学习算法。 我们看到了预测和控制方法。 在 TD 预测中,我们根据下一个状态更新了状态的状态值。 在控制方法方面,我们看到了两种不同的算法:Q 学习和 SARSA。 diff --git a/new/handson-rl-py/06.md b/new/handson-rl-py/06.md index 9875e67b46be1cbac3c1cf9f13ccc20ab21fb071..3a3ccfc1edead5f019c397817a6b9820c91c667f 100644 --- a/new/handson-rl-py/06.md +++ b/new/handson-rl-py/06.md @@ -487,7 +487,7 @@ sns.distplot(banner_selected) 在正常的 MAB 问题中,我们执行操作并获得奖励。 但是对于情境老虎机,我们不仅要单独采取行动,还要采取环境状态。 国家拥有环境。 在这里,状态指定了用户的行为,因此我们将根据状态(用户行为)采取行动(展示广告),从而获得最大的回报(广告点击)。 因此,上下文老虎机被广泛用于根据用户的偏好行为来个性化内容。 它们用于解决推荐系统中面临的冷启动问题。 Netflix 使用上下文盗贼根据用户行为来个性化电视节目的插图。 -# 概要 +# 总结 在本章中,我们了解了 MAB 问题以及如何将其应用于不同的应用程序。 我们了解了解决探索-利用困境的几种方法。 首先,我们查看了`ε`贪婪策略,在其中我们以概率`epsilon`进行了探索,并以概率 1 `epsilon`进行了探索。 我们查看了 UCB 算法,在该算法中我们选择了具有最大上限值的最佳操作,其次是 TS 算法,在此我们通过 beta 分布获得了最佳操作。 diff --git a/new/handson-rl-py/07.md b/new/handson-rl-py/07.md index 10b28788079da319f5cc3b2e8cc0a20ef070ebd7..6183f8055771c305c5d390e9a9cdcdedf5d860f9 100644 --- a/new/handson-rl-py/07.md +++ b/new/handson-rl-py/07.md @@ -1052,7 +1052,7 @@ with tf.Session() as sess: print(sess.run(accuracy, feed_dict={x: mnist.test.images, y: mnist.test.labels})) ``` -# 概要 +# 总结 在本章中,我们学习了神经网络的实际工作原理,然后使用 TensorFlow 构建了一个神经网络来对手写数字进行分类。 我们还看到了不同类型的神经网络,例如 RNN,可以记住内存中的信息。 然后,我们看到了 LSTM 网络,该网络用于通过保持多个门来将信息保留在内存中(只要需要)来克服消失的梯度问题。 我们还看到了另一个有趣的神经网络,用于识别图像,称为 CNN。 我们看到了 CNN 如何使用不同的图层来理解图像。 之后,我们学习了如何使用 TensorFlow 构建 CNN 以识别时尚产品。 diff --git a/new/handson-rl-py/08.md b/new/handson-rl-py/08.md index c8cdf868a093f620b57b033b773f73c1fb385d8d..d3151ce00b8f94c38528bb3d8189d58484badb7d 100644 --- a/new/handson-rl-py/08.md +++ b/new/handson-rl-py/08.md @@ -453,7 +453,7 @@ with tf.Session() as sess: 聚合器层合并这两个流的值,并产生`Q`函数。 因此,决斗网络比标准 DQN 架构更有效,更健壮。 -# 概要 +# 总结 在本章中,我们学习了一种非常流行的深度强化学习算法,称为 DQN。 我们看到了如何使用深度神经网络来近似 Q 函数。 我们还学习了如何建立代理来玩 Atari 游戏。 后来,我们研究了 DQN 的一些改进,例如双 DQN,它用于避免高估 Q 值。 然后,我们研究了优先级经验重放,优先级经验和决斗的网络架构,该架构将 Q 函数计算分为两个流,分别称为值流和优势流。 diff --git a/new/handson-rl-py/09.md b/new/handson-rl-py/09.md index 1aa8874ce91cb8ec9f903d9d0bb0b66e53699029..63465d63404f8f1249f7feabb894c39d37aaf168 100644 --- a/new/handson-rl-py/09.md +++ b/new/handson-rl-py/09.md @@ -579,7 +579,7 @@ DARQN 的架构如下所示: * **软注意力**:我们知道,卷积层产生的特征映射将作为输入提供给关注层,然后生成上下文向量。 轻描淡写地,这些上下文向量只是卷积层产生的所有输出(特征映射)的加权平均值。 根据功能的相对重要性选择权重。 * **硬注意力**:硬注意力,根据某些位置选择策略`π`,我们仅关注图像在特定时间步长`t`上的特定位置。 该策略由神经网络表示,其权重是策略参数,网络的输出是位置选择概率。 但是,硬注意力不比软注意力好多少。 -# 概要 +# 总结 在本章中,我们学习了如何使用 DRQN 记住有关先前状态的信息,以及它如何克服部分可观察的 MDP 问题。 我们已经看到了如何训练我们的特工使用 DRQN 算法玩《毁灭战士》游戏。 我们还了解了 DARQN 作为 DRQN 的改进,它在卷积层的顶部增加了一个关注层。 在此之后,我们看到了两种类型的注意力机制: 即软硬关注。 diff --git a/new/handson-rl-py/10.md b/new/handson-rl-py/10.md index 22f9750f32ecb32f3adf89ff4fb75b0c05d82bca..be76b1e11344f6bd16dc37f2d24ab78158ed9466 100644 --- a/new/handson-rl-py/10.md +++ b/new/handson-rl-py/10.md @@ -439,7 +439,7 @@ tensorboard --logdir=logs --port=6007 --host=127.0.0.1 ![](img/00303.jpeg) -# 概要 +# 总结 在本章中,我们学习了 A3C 网络的工作方式。 在 A3C 中,“异步”表示多个代理通过与环境的多个副本进行交互而独立工作,“优势”表示“优势”功能,即 Q 函数和值函数之间的差异,“演员评论家”是指演员评论家网络,其中演员网络负责生成策略,评论家网络评估由演员网络生成的策略。 我们已经了解了 A3C 的工作原理,并了解了如何使用该算法解决山地车问题。 diff --git a/new/handson-rl-py/11.md b/new/handson-rl-py/11.md index e8210c62098053a4e9235ffeca479d2a6d970858..3db99aca3d8ecb74c8e119649cb4174be45fb9cc 100644 --- a/new/handson-rl-py/11.md +++ b/new/handson-rl-py/11.md @@ -672,7 +672,7 @@ Kakade 和 Langford 从`(1)`得出以下方程式: `S`是熵增。 -# 概要 +# 总结 我们从策略梯度方法开始,该方法无需 Q 函数即可直接优化策略。 我们通过解决 Lunar Lander 游戏了解了策略梯度,并研究了 DDPG,它具有策略梯度和 Q 函数的优点。 diff --git a/new/handson-rl-py/12.md b/new/handson-rl-py/12.md index 12b13de1c923390bdc3085e71c56cace31307cd6..e7d62737607c58834455a0a7c6557a6ad9bb1e71 100644 --- a/new/handson-rl-py/12.md +++ b/new/handson-rl-py/12.md @@ -734,7 +734,7 @@ env.monitor.close() ![](img/00407.gif) -# 概要 +# 总结 在本章中,我们学习了如何详细实现决斗 DQN。 我们从用于游戏画面预处理的基本环境包装器功能开始,然后定义了`QNetworkDueling`类。 在这里,我们实现了决斗 Q 网络,该网络将 DQN 的最终全连接层分为值流和优势流,然后将这两个流组合以计算`q`值。 之后,我们看到了如何创建回放缓冲区,该缓冲区用于存储经验并为网络训练提供经验的小批量样本,最后,我们使用 OpenAI 的 Gym 初始化了赛车环境并训练了我们的代理。 在下一章第 13 章,“最新进展和后续步骤”中,我们将看到 RL 的一些最新进展。 diff --git a/new/handson-rl-py/13.md b/new/handson-rl-py/13.md index 8f1c84fc5b03267eb658081a81dbd09c6ae5767e..929706016b56b2091a1e00b9f884c41127febf22 100644 --- a/new/handson-rl-py/13.md +++ b/new/handson-rl-py/13.md @@ -165,7 +165,7 @@ MAXQ 值函数分解是 HRL 中最常用的算法之一。 让我们看看 MAXQ RL 周围有各种改进和进步。 现在,您已经阅读完本书,可以开始探索强化学习的各种进步,并开始尝试各种项目。 学习和加强! -# 概要 +# 总结 在本章中,我们了解了 RL 的一些最新进展。 我们看到了 I2A 架构如何将想象力核心用于前瞻性计划,然后如何根据人的喜好来训练代理。 我们还了解了 DQfd,它可以通过从演示中学习来提高 DQN 的性能并减少其培训时间。 然后,我们研究了事后的经验回放,从中我们了解了代理商如何从失败中学习。 diff --git a/new/intel-proj-py/01.md b/new/intel-proj-py/01.md index 8a6e2c8c98ed2424c3e5385d396d704432802b7b..b7985dfe4d5becf464a4f680527ea991a0516a06 100644 --- a/new/intel-proj-py/01.md +++ b/new/intel-proj-py/01.md @@ -558,7 +558,7 @@ Figure 1.14: GAN architecture  自编码器用于多种目的,例如学习数据的潜在表示,降噪和特征检测。 降噪自编码器将实际输入的噪声版本作为其输入。 他们尝试构建实际的输入,以作为重建的标签。 类似地,自编码器可以用作生成模型。 可以用作生成模型的一类这样的自编码器称为**变分自编码器**。 当前,变分自编码器和 GAN 作为图像处理的生成模型非常受欢迎。 -# 概要 +# 总结 现在,我们到了本章的结尾。 我们已经研究了人工神经网络的几种变体,包括用于图像处理目的的 CNN 和用于自然语言处理目的的 RNN。 此外,我们将 RBM 和 GAN 视为生成模型,将自编码器视为无监督方法,可以解决许多问题,例如降噪或解密数据的内部结构。 此外,我们还谈到了强化学习,这对机器人技术和 AI 产生了重大影响。 diff --git a/new/intel-proj-py/02.md b/new/intel-proj-py/02.md index a49e4d95bf83f7cad756e8073078d02fd6e7e950..e55e2bac25497ae339310b8637357e3d7885ab08 100644 --- a/new/intel-proj-py/02.md +++ b/new/intel-proj-py/02.md @@ -1216,7 +1216,7 @@ Processing Time 138.52878069877625 secs 从前面的日志中可以看到,假设我们刚刚使用回归得分将模型映射到最接近的严重性条件,该模型可实现约 66% 的不错的验证准确性和`0.466`的二次 Kappa 得分。 建议读者进行实验,看看是否基于预测的二级模型对进行评分,并且眼睛是左眼还是右眼比将朴素的评分映射到最近的严重性类别给出了更好的结果。 -# 概要 +# 总结 在本章中,我们介绍了迁移学习的实际方面,以解决医疗保健领域的现实问题。 希望读者通过尽可能尝试定制这些示例来进一步构建这些概念。 diff --git a/new/intel-proj-py/03.md b/new/intel-proj-py/03.md index 5677264d26291c42acceef527b7f6f4b8d456bf4..c0613a613ad8c99c8c279ccea99b85287f1662fa 100644 --- a/new/intel-proj-py/03.md +++ b/new/intel-proj-py/03.md @@ -963,7 +963,7 @@ Decoded sentence: Où fut ? ``` -# 概要 +# 总结 读者现在应该对几种机器翻译方法以及神经翻译机器与传统机器有何不同有很好的理解。 现在,我们还应该深入了解如何从头开始构建神经机器翻译系统,以及如何以有趣的方式扩展该系统。 借助提供的信息和实现演示,建议读者探索其他并行语料库数据集。 diff --git a/new/intel-proj-py/04.md b/new/intel-proj-py/04.md index e54bea1787c16d5bb256b3d1de433231e593aad8..ecefc0b007edcee35be199288bb042b8aa9f6697 100644 --- a/new/intel-proj-py/04.md +++ b/new/intel-proj-py/04.md @@ -742,7 +742,7 @@ Epoch: [ 0] [ 19/ 156] time: 13.7525 我们可以看到 DiscoGAN 在将任一域中的图像转换为另一域中的高质量逼真的图像方面做得非常出色。 -# 概要 +# 总结 现在,我们到了本章的结尾。 您现在应该精通 DiscoGAN 的技术知识和实现复杂性。 我们在本章中探讨的概念可用于实现各种生成性对抗性网络,这些网络具有适合当前问题的细微变化。 DiscoGAN 网络的端到端实现位于 GitHub 存储库中,位于[这里](https://github.com/PacktPublishing/Intelligent-Projects-using-Python/tree/master/Chapter04)。 diff --git a/new/intel-proj-py/05.md b/new/intel-proj-py/05.md index 0a0e8d10325276ee0d49f389c194b3e8816c4c89..689d159621e8672fae17838a7dd4b6f1edb20b83 100644 --- a/new/intel-proj-py/05.md +++ b/new/intel-proj-py/05.md @@ -856,6 +856,6 @@ python Video_seq2seq.py process_main --path_prj '/media/santanu/9eb9b6dc-b380-48 该项目的代码可以在 [GitHub](https://github.com/PacktPublishing/Python-Artificial-Intelligence-Projects/tree/master/Chapter05) 中找到。 `VideoCaptioningPreProcessing.py`模块可用于预处理视频并创建卷积神经网络功能,而`Video_seq2seq.py`模块可用于训练端到端视频字幕系统和运行推断。 -# 概要 +# 总结 现在,我们已经完成了令人兴奋的视频字幕项目的结尾。 您应该能够使用 TensorFlow 和 Keras 构建自己的视频字幕系统。 您还应该能够使用本章中介绍的技术知识来开发其他涉及卷积神经网络和循环神经网络的高级模型。 下一章将使用受限玻尔兹曼机构建智能的推荐系统。 期待您的参与! \ No newline at end of file diff --git a/new/intel-proj-py/06.md b/new/intel-proj-py/06.md index 5aa8a201e5d8ee82a5e683bbe31cee7102afe435..3dedcd90ccdf6789b2ec574dee3745e042c7b829 100644 --- a/new/intel-proj-py/06.md +++ b/new/intel-proj-py/06.md @@ -711,7 +711,7 @@ test RMSE : 1.1999306704742303 建议您将最终收视率预测作为对每个电影收视率预测的多项式概率分布的收视率的期望值,并与采用最高收视率的方法进行比较,了解多项式分布的概率的效果如何。 可以在[这个页面](https://www.cs.toronto.edu/~rsalakhu/papers/rbmcf.pdf)上找到用于协同过滤的 RBM 论文。受限玻尔兹曼机有关的代码位于[这里](https://github.com/PacktPublishing/Intelligent-Projects-using-Python/blob/master/Chapter06/rbm.py)。 -# 概要 +# 总结 阅读完本章后,您现在应该能够使用受限玻尔兹曼机构建智能推荐系统,并根据您的领域和要求以有趣的方式对其进行扩展。 有关本章中说明的项目的详细实现,请参考[此项目的 GiHub 链接](https://github.com/PacktPublishing/Intelligent-Projects-using-Python/blob/master/Chapter06)。 diff --git a/new/intel-proj-py/07.md b/new/intel-proj-py/07.md index 3f36eca98a5ad54f1c4b4922e7acc9783f93c364..871e904cff6508e4e4aa9a24c2956c4568a68bdd 100644 --- a/new/intel-proj-py/07.md +++ b/new/intel-proj-py/07.md @@ -762,7 +762,7 @@ org.tensorflow:tensorflow-android:1.7.0 正如您在前面的两个插图中看到的那样,移动电影评论分级应用程序在为电影评论提供合理的分级方面做得很好。 -# 概要 +# 总结 完成本章后,读者应该对如何使用 TensorFlow 的移动功能在 Android 应用程序中部署深度学习模型有一个清晰的认识。 本章所涉及的技术和实现细节将对读者有所帮助,帮助他们构建智能 Android 移动应用程序并以有趣的方式扩展它们。 该项目的详细代码位于[这里](https://github.com/PacktPublishing/Python-Artificial-Intelligence-Projects/Chapter07)。 diff --git a/new/intel-proj-py/08.md b/new/intel-proj-py/08.md index 8394e9ebed800ff9e0cef541c089963319ec8240..b432abfd684c7283997a33d3ab34494443df35c6 100644 --- a/new/intel-proj-py/08.md +++ b/new/intel-proj-py/08.md @@ -413,7 +413,7 @@ python chatbot.py --max_vocab_size 50000 --max_seq_len 30 --embedding_dim 100 -- | `@__cname__` is the worst ISP I've ever had. | `@__cname__` Hey there! Can you dm us your account's email address? We'll take a look backstage / dn https://t.co/ldfdzrinat | | `@__cname__` fix your app it won't even open. | `@__cname__` Hi there! We don't have any info on this issue. Please send us a dm with your name and phone number and the full service address. | -# 概要 +# 总结 现在,我们到本章的结尾。 看完本章中说明的与聊天机器人和序列到序列模型相关的各种概念之后,读者现在应该能够构建自己的聊天机器人实现并以有趣的方式对其进行扩展。 众所周知,序列到序列模型不仅适用于聊天机器人,还适用于整个自然语言处理领域,例如机器翻译。 本章的代码位于 [GitHub](https://github.com/PacktPublishing/Python-Artificial-Intelligence-Projects/tree/master/Chapter08)。 diff --git a/new/intel-proj-py/09.md b/new/intel-proj-py/09.md index 47c66f3043cce9ce680dc29b3b063286439eeccb..236a3f6ea54958d1411221014f49934c8b62356d 100644 --- a/new/intel-proj-py/09.md +++ b/new/intel-proj-py/09.md @@ -879,7 +879,7 @@ def model_save(path,name,agent,R): 图 9.5(B):经过充分培训后,汽车成功驾驶 -# 概要 +# 总结 至此,我们到了本章的结尾。 本章中讨论的主题将帮助您快速掌握强化学习范例,并使您能够构建智能 RL 系统。 另外,希望读者将在该项目中学到的技术应用于其他基于 RL 的问题。 diff --git a/new/intel-proj-py/10.md b/new/intel-proj-py/10.md index 52e2bca2cced20daf83ed5fc3a0e245fa418580e..f72ff6960d43fc60a8058277eb5b6b8b891950c7 100644 --- a/new/intel-proj-py/10.md +++ b/new/intel-proj-py/10.md @@ -717,6 +717,6 @@ python captcha_gan.py generate-captcha --gen_input_dim 100 --num_images 200 --mo 图 10.8:使用经过训练的 GAN 网络的生成器生成的验证码 -# 概要 +# 总结 这样,我们到了本章的结尾。 与本章相关的所有代码都可以[在 GitHub 链接中找到](https://github.com/PacktPublishing/Intelligent-Projects-using-Python/tree/master/Chapter10)。 现在,您将对深度学习如何影响验证码有一个清晰的认识。 在频谱的一端,我们可以看到使用具有深度学习的 AI 应用程序的机器人如何轻松地解决 CAPTCHA。 但是,另一方面,我们看到了如何使用深度学习来利用给定的数据集并根据随机噪声创建新的验证码。 您可以在本章中扩展有关生成对抗网络的技术知识,以使用深度学习构建智能的验证码生成系统。 现在,我们到本书的结尾。 我希望通过九个基于人工智能的实用应用程序的旅程是一次充实的旅程。 祝一切顺利! \ No newline at end of file diff --git a/new/master-pred-anal-sklearn-tf/1.md b/new/master-pred-anal-sklearn-tf/1.md index ed419d51523b4d29cad7bb0c235bd7fc0ae4061d..f66392e6f504d3ae298429646c1455c3e9a80bcc 100644 --- a/new/master-pred-anal-sklearn-tf/1.md +++ b/new/master-pred-anal-sklearn-tf/1.md @@ -331,7 +331,7 @@ def CMatrix(CM, labels=['pay', 'default']): 根据无免费午餐定理,没有一个模型可以最好地解决每个数据集中的每个问题。 这意味着整体学习不能总是胜过简单的方法,因为有时简单的方法比复杂的方法表现更好。 因此,对于每个机器学习问题,我们必须使用简单的方法而不是复杂的方法,然后评估这两种方法的性能以获得最佳结果。 -# 概要 +# 总结 在本章中,我们介绍了不同的集成方法,例如引导程序采样,装袋,随机森林和增强方法,并通过一些示例说明了它们的工作原理。 然后,我们将它们用于回归和分类。 对于回归,我们以菱形数据集为例,还训练了一些 KNN 和其他回归模型。 后来,对它们的性能进行了比较。 为了进行分类,我们以信用卡数据集为例。 同样,我们训练了所有回归模型。 我们比较了它们的性能,发现随机森林模型的性能最佳。 diff --git a/new/master-pred-anal-sklearn-tf/2.md b/new/master-pred-anal-sklearn-tf/2.md index 95f9466efdd3b7e10391510413fb7e969d35bea0..6666b14bfafacc2e4d0d33050c74e3e0666259b7 100644 --- a/new/master-pred-anal-sklearn-tf/2.md +++ b/new/master-pred-anal-sklearn-tf/2.md @@ -376,7 +376,7 @@ RF_tunned_test_mse = mean_squared_error(y_pred=RF_classifier.predict(X_test), y_ 在这里,经过调整的模型比未调整的模型提高了 4.6%,这实际上非常好。 在这些模型中,提高 1% -3% 的百分比也可能具有巨大的实际意义。 -# 概要 +# 总结 在本章中,我们学习了交叉验证以及各种交叉验证方法,包括保持交叉验证和 k 折交叉验证。 我们知道 k 折交叉验证不过是多次进行保持交叉验证而已。 我们使用`diamond`数据集实现了 k 折交叉验证。 我们还使用 K 折交叉验证比较了不同的模型,并找到了性能最佳的模型,即随机森林模型。 diff --git a/new/master-pred-anal-sklearn-tf/3.md b/new/master-pred-anal-sklearn-tf/3.md index 6e0c7046255e793371700cc9f9fc2c77d98b5393..317bcc7af090b020eb210687955b4206b6bcdb8c 100644 --- a/new/master-pred-anal-sklearn-tf/3.md +++ b/new/master-pred-anal-sklearn-tf/3.md @@ -379,7 +379,7 @@ RFE 是我们将使用`RandomForestClassifier`模型的第三种技术,请记 现在,**不可减少的误差**项是该随机项的方差。 您对此词没有任何控制权。 总会有一个不可减少的错误成分。 因此,您的模型总是会出错; 无论您拥有多少个特征和数据点,您的模型都不能总是 100% 正确的。 我们必须尝试使用​​更好和更复杂的方法来执行特征工程,并尝试将我们的估计近似为真实函数。 仅仅因为您使用的是更复杂的模型或您有更多的数据,您的模型就不会是完美的,并且您将无法准确预测`y`是什么,因为几乎所有过程都存在需要处理的随机性。 这是一个非常有趣的部分的结尾。 -# 概要 +# 总结 在本章中,我们讨论了特征选择方法,如何区分有用的特征和对预测没有帮助的特征。 我们讨论了降维,并学习了如何在`scikit-learn`中执行 PCA。 我们还讨论了特征工程,并尝试在迄今为止一直在使用的数据集中提出新特征。 最后,我们尝试通过提供新功能以及使用本章学到的所有技术来改进信用卡模型。 希望您喜欢本章。 diff --git a/new/master-pred-anal-sklearn-tf/4.md b/new/master-pred-anal-sklearn-tf/4.md index 656f2e83f52ebd4bc7fff73e0e08c8333a642283..fa49ba6f109f32f33e86dd73f3f8845bedff0baf 100644 --- a/new/master-pred-anal-sklearn-tf/4.md +++ b/new/master-pred-anal-sklearn-tf/4.md @@ -307,7 +307,7 @@ adder_node = mult_node + quadruple_node 我们也可以使用一些线性代数进行此操作,但请记住,机器学习的目标是实际从数据中学习参数,在这种情况下,我们已经使用 TensorFlow 运行了我们的第一个机器学习模型。 -# 概要 +# 总结 在本章中,我们讨论了人工神经网络,深度学习以及深度学习模型的要素。 然后,我们安装了 TensorFlow,并了解了我们在 TensorFlow 中使用的核心概念。 diff --git a/new/master-pred-anal-sklearn-tf/5.md b/new/master-pred-anal-sklearn-tf/5.md index 29b939ba2c83d706801c997dab2caa903193bdfa..69e76d937594b00bb7d9194467eb7a9a71e87041 100644 --- a/new/master-pred-anal-sklearn-tf/5.md +++ b/new/master-pred-anal-sklearn-tf/5.md @@ -430,6 +430,6 @@ TensorFlow,`tf.nn.elu`中获得此功能,从中您可以获得许多功能 通过计算,我们得出的召回得分为`82.53`%,准确度为`34.02`%,准确度为`60.7`%。 -# 概要 +# 总结 在本章中,我们学习了如何使用 TensorFlow 进行预测。 我们研究了 MNIST 数据集和使用该数据集的模型分类。 我们遇到了 DNN 模型的元素以及 DNN 的构建过程。 后来,我们开始研究 DNN 的回归和分类。 我们对手写数字进行了分类,并进一步了解了 TensorFlow 中的构建模型。 这使我们到本书的结尾! 我们学习了如何使用集成算法来生成准确的预测。 我们应用了各种技术来组合和构建更好的模型。 我们学习了如何有效执行交叉验证。 我们还实现了各种技术来解决预测分析领域中的当前问题。 最好的部分是,我们使用建立的 DNN 模型来解决分类和回归问题。 本书帮助我们实现了各种机器学习技术,以构建高级的预测模型并将其应用于现实世界。 \ No newline at end of file diff --git a/new/whats-new-tf2/1.md b/new/whats-new-tf2/1.md index 6317d244137ea1c8f16be945bdce9b730c7b5d82..1f5772997525be8ea4f42362b282443300168b4b 100644 --- a/new/whats-new-tf2/1.md +++ b/new/whats-new-tf2/1.md @@ -235,7 +235,7 @@ import tensorflow_datasets as tfdsdataset = tfds.load(name="mnist", split=tfds.S 从该库中获取的数据集是`tf.data.Dataset`对象,这些对象... -# 概要 +# 总结 TF 2.0 包含许多主要更改,例如 API 清理,热切执行和面向对象的哲学。 API 清理包括弃用具有等效标准 Python 库的冗余模块,以及删除`tf.contrib`模块并将其重新组织到主要 API 和 TensorFlow Addons 包中。 急切的执行和面向对象的 API 使调试更加有效和直接,并且导致变量被视为普通的 Python 变量。 这意味着不再需要变量集合和其他专用于处理全局变量的 API,因此在 TF 2.0 中已将其删除。 diff --git a/new/whats-new-tf2/2.md b/new/whats-new-tf2/2.md index a8dba2061dfda5796f8c57fa5a93a9e0a417ca35..6102afe99017e63e21f925ddcaf941e6636d5088 100644 --- a/new/whats-new-tf2/2.md +++ b/new/whats-new-tf2/2.md @@ -463,7 +463,7 @@ Value outside session: 42 TF 2.0 与 Python 编程语言紧密集成。 急切的执行使张量可以无缝用作本机 Python 对象,而不必担心评估计算图以及管理会话或基础硬件。 好处不止于此。 急切的执行使程序员能够利用宿主编程语言的强大控制流结构。 TensorFlow 代码现在与平台的其余部分更加直观地集成,这为开发人员带来了巨大的价值,因为它不再需要特殊的流控制结构。 这也为实验,调试和笔记本环境增加了重要价值。 -# 概要 +# 总结 在本章中,我们了解了 TF 2.0 中可用于模型构建,训练,保存和加载的高级抽象。 深入研究 Keras API,我们了解了如何通过使用`Sequential`和`functional` API 组合图层来构建模型。 我们还了解了如何利用 Keras API 的高级抽象来训练模型。 本章还研究了在各种配置和模式下加载和保存模型的复杂性。 我们已经了解了保存模型,架构和权重的不同方法,本章对每种方法进行了深入的说明,并描述了何时应该选择一种方法。 diff --git a/new/whats-new-tf2/3.md b/new/whats-new-tf2/3.md index 56526e8f61deb1987aaac569efbaaf9047ffe1dc..6ca4335386c81a88785af303f287fe2daf483aeb 100644 --- a/new/whats-new-tf2/3.md +++ b/new/whats-new-tf2/3.md @@ -474,7 +474,7 @@ import tensorflow_datasets as tfdstfds.list_builders() ['abstract_reasoning', 'bair_robot_pushing_small', 'caltech101', ... ``` -# 概要 +# 总结 本章以简单而富于启发性的方式展示了使用 TF 2.0 API 设计和构建输入数据管道的总体方法。 它提供了数据管道的不同组件的构建块,并提供了构建管道所需的 API 的详细信息。 提供了 TF 1.x API 和 TF 2.0 API 之间的比较。 diff --git a/new/whats-new-tf2/4.md b/new/whats-new-tf2/4.md index ce1060922cc158e19506047bfca2133b982f0af4..51b2d3ba2509b151dc692e591db02de376a164f6 100644 --- a/new/whats-new-tf2/4.md +++ b/new/whats-new-tf2/4.md @@ -580,7 +580,7 @@ WIT 的某些功能是可以将具有相同工作流程的多个模型进行比 ![](img/399c1540-e609-4b46-8f9e-529b55c2beba.png) -# 概要 +# 总结 本章详细介绍了如何使用 TF 2.0 `tf.keras` API 构建训练管道,以及如何使用分布策略在 GPU 上以分布方式在 GPU 上使用各种可用的损失函数,优化器和超参数查看构建,编译和拟合模型。 。 它还详细介绍了如何在训练时保存,恢复模型以进行将来的训练以及进行推断。 TensorBoard 是 TF 2.0 的主要优势之一,我们提供了有关如何有效地使用它来监视训练性能损失和准确性以及如何调试和分析它的详细信息。 diff --git a/new/whats-new-tf2/5.md b/new/whats-new-tf2/5.md index ac9ceb5418ef093908d9c4524490ceb319391d29..90791a906b417d063db5a3ce7cc282a3ff9b67c3 100644 --- a/new/whats-new-tf2/5.md +++ b/new/whats-new-tf2/5.md @@ -352,7 +352,7 @@ Detailed resources for getting started with TensorFlow.js are available at the f 在过去几年中,智能手机的使用呈指数增长,并且以不减缓的方式持续增长。 其他物联网设备在我们的日常生活中也变得越来越普遍。 使用率的这些上升趋势对机器学习系统产生了有趣的影响。 与普通主机相比,这些平台通常资源有限。 结果,需要其他优化来在此类设备上进行推理。 TensorFlow 平台支持构建机器学习和基于深度学习的应用程序,这些应用程序可以在不同类型的边缘设备(例如手机和其他 IoT 设备)上运行。 实现此目的的主要工具是... -# 概要 +# 总结 在本章中,我们详细介绍了推理阶段。 首先,通过对端到端机器学习工作流的外观有了基本了解,我们了解了每个阶段涉及的主要步骤。 我们还了解了将模型从训练阶段转移到推理阶段时所起作用的不同抽象。 详细了解`SavedModel`格式和基础数据流模型,我们了解了可用于构建和导出模型的不同选项。 我们还了解了`tf.function`和`tf.autograph`等出色功能,使我们能够使用本地 Python 代码构建 TensorFlow 图。 在本章的后半部分,我们学习了如何构建推理管道,以便在后端服务器,Web 浏览器甚至边缘设备等不同环境中运行 TensorFlow 模型。 diff --git a/new/whats-new-tf2/6.md b/new/whats-new-tf2/6.md index cfd8b78e753e2aabcedccbfbe4ae636b575ac3dc..2e70656948f00c7ee0df33c778b2ca0180981b8f 100644 --- a/new/whats-new-tf2/6.md +++ b/new/whats-new-tf2/6.md @@ -179,7 +179,7 @@ Google 为语音和视觉应用发布了自己的制造商套件,称为 AIY。 和以前一样,可以按照[这里](https://aiyprojects.withgoogle.com/vision/#assembly-guide)。 该设备有一个简单的... -# 概要 +# 总结 TFLite 是 TF2.0 的一项功能,它采用 TF 模型并对其进行压缩和优化,以在嵌入式 Linux 设备或低功耗和低二进制设备上运行。 可以通过三种方式将 TF 模型转换为 TFLite 模型:从已保存的模型,`tf.keras`模型或具体函数。 转换模型后,将创建一个`.tflite`文件,然后可以将其传输到所需的设备并使用 TFLite 解释器运行。 该模型经过优化以使用硬件加速,并以`FlatBuffer`格式存储,以提高读取速度。 可以将其他优化技术应用于该模型,例如量化,以最小的精度权衡将 32 位浮点数转换为 8 位定点数。 可以在 TFLite 上运行的某些设备是 Edge TPU,NVIDIA Jetson Nano 和 Raspberry Pi。 Google 还提供了两个工具包,可为用户提供创建与视觉和语音相关的机器学习应用程序所需的硬件。 diff --git a/new/whats-new-tf2/7.md b/new/whats-new-tf2/7.md index 8dae1c055f051a09bb0fe3e7b9dcc7cc61f1a0d6..c94cd9eec297a372b38298e4489c3877f3bb8395 100644 --- a/new/whats-new-tf2/7.md +++ b/new/whats-new-tf2/7.md @@ -385,7 +385,7 @@ TF 2.0 基本 API 将包括针对任务的更多预制估算器,例如增强 TensorFlow Medium 博客还提供有关 TensorFlow 库和服务状态的许多更新,并且源源不断的有用新闻和... -# 概要 +# 总结 本章介绍了两种将 TF 1.x 代码转换为 TF 2.0 代码的方法。 第一种方法是使用随附的升级脚本,该脚本会将所有 API 调用从`tf.x`更改为`tf.compat.v1.x`。 这允许 TF 1.x 代码在 TF 2.0 中运行,但不会从 TF 2.0 中带来的升级中受益。 第二种方法是将 TF 1.x 更改为惯用的 TF 2.0 代码,这涉及两个步骤。 第一步是将所有模型创建代码更改为 TF 2.0 代码,这涉及使用对函数的`sess.run`调用,以及将占位符和字典馈入函数的参数来更改张量。 使用`tf.layers` API 创建的模型与`tf.keras.layers`具有一对一的比较。 第二步是通过使用`tf.keras.Model.fit`或带有`tf.GradientTape`的自定义训练循环来升级训练管道。