提交 4be0d719 编写于 作者: W wizardforcel

2020-12-25 22:20:30

上级 12900daf
......@@ -218,7 +218,7 @@ print(device_lib.list_local_devices())
浏览器窗口(`localhost`
糟糕! 由于`0.0.0.0`不是真实的计算机,因此无法达到; 我们将其切换为`localhost`,点击“输入”,然后确定我们有一个 IPython 笔记本:
糟糕! 由于`0.0.0.0`不是真实的计算机,因此无法达到; 我们将其切换为`localhost`,点击`Enter`,然后确定我们有一个 IPython 笔记本:
![](img/86137a83-e41c-4ca7-b6a7-d8756db60446.png)
......
......@@ -46,7 +46,7 @@ Python 元组
现在,我们已经了解了一些 MNIST 数字,我们将花一些时间看一看张量以及张量是什么。 我们将要看一看多维数组的 NumPy。 多维数组也称为**张量**。 数学词汇可能会让人有些不知所措,但我们将向您展示它比您想象的要简单得多。 然后,我们来看看张量形状。 张量形状实际上是维度的数量,或者就数组而言,是用于访问它们的不同索引的数量。 最后,我们将研究数据类型。 张量或多维数组可以容纳各种各样的不同数据类型,我们将解释其中的一些区别。
让我们从基础开始。 您可以想象的最基本的张量是一个张量,在编程语言中该张量仅称为数组。 它只是一个打包在一起的有序数字序列。 接下来是两个张量。 如果查看“灰度图像(阵列的数组)”屏幕截图,则每一行都是一维的,而每一列是另一维的。
让我们从基础开始。 您可以想象的最基本的张量是一个张量,在编程语言中该张量仅称为数组。 它只是一个打包在一起的有序数字序列。 接下来是两个张量。 如果查看“灰度图像(数组的数组)”屏幕截图,则每一行都是一维的,而每一列是另一维的。
因此,一行一行地加起来就是两个张量。 同样,它只是一个数组数组。 您会看到其中的训练图像的括号为零; 我们实际上是在选择图像数组中的第一个图像。 因此,在图像数据之前的三个张量实际上是图像阵列,每个图像阵列都有像素的列和行。 因此,三张量是我们存储黑白图像的基本方法。
......@@ -72,7 +72,7 @@ Python 元组
现在,让我们谈谈样本。 按照惯例,样本始终是多维数据数组中的第一维。 在这里,我们有多个样本,因为机器学习从根本上来说是通过查看大量不同样本中的大量不同数据点,然后学习基于此预测结果的函数来进行的。
因此,`train_images`多维数组中的每个图像都是我们要查看的样本之一。 但是,正如您在“灰度图像(阵列数组)”屏幕截图中所看到的那样,我们现在拥有的样本绝对不是浮点数; 这些仍然是 8 位整数。
因此,`train_images`多维数组中的每个图像都是我们要查看的样本之一。 但是,正如您在“灰度图像(数组的数组)”屏幕截图中所看到的那样,我们现在拥有的样本绝对不是浮点数; 这些仍然是 8 位整数。
因此,我们必须想出一种原理性的方法将图像从 8 位转换为浮点。
......@@ -98,7 +98,7 @@ Python 元组
0 到 9 的预测
因此,为此,我们将使用数据转换技巧。 这种事情称为“一次热编码”,在这里您可以获取一系列标签可能性,在这种情况下,将数字`0``9`转换为一种位图,其中每个选项都编码为 一列,并且对于每个给定的数据样本,只有一列设置为`1`(因此为一热):
因此,为此,我们将使用数据转换技巧。 这种事情称为“热编码”,在这里您可以获取一系列标签可能性,在这种情况下,将数字`0``9`转换为一种位图,其中每个选项都编码为 一列,并且对于每个给定的数据样本,只有一列设置为`1`(因此为一热):
![](img/d8a1f493-a432-4a27-8247-bfd255324106.png)
......
......@@ -539,7 +539,7 @@ elif inverse_transform_type == "other":
但是,这种方法的问题在于,由于我们使用的是软 k 均值,因此所有未标记的示例将属于任何类原型。 让我们说,我们的支持集中有三个类别,`{Lion, Eleph, Dog}`; 如果我们的未标记示例具有代表猫的数据点,则将猫放置在支持集中的任何类别中是没有意义的。 因此,我们没有将数据点添加到现有的类中,而是为未标记的示例分配了一个新类,称为`Distractor`类。
但是即使采用这种方法,我们也会遇到另一个问题,因为干扰项类别本身将具有很大的差异。 例如,考虑我们的未标记集合`R`包含完全不相关的数据点,例如`{cats, helicopter, bus, others}`; 在这种情况下,建议不要将所有未标记的示例都放在一个称为“干扰项”的类中,因为它们已经不纯且彼此无关。
但是即使采用这种方法,我们也会遇到另一个问题,因为干扰项类别本身将具有很大的差异。 例如,考虑我们的未标记集合`R`包含完全不相关的数据点,例如`{cats, helicopter, bus, others}`; 在这种情况下,建议不要将所有未标记的示例都放在一个称为“干扰项”的类中,因为它们已经不纯且彼此无关。
因此,我们将分心器类重塑为示例,这些示例不在所有类原型的某个阈值距离之内。 我们如何计算该阈值? 首先,我们计算所有类原型的未标记集合`R`中未标记示例之间的标准化距离。 接下来,我们通过将归一化距离的各种统计数据(例如最小,最大,偏度和峰度)输入神经网络来计算每个类原型的阈值。 基于此阈值,我们向类原型添加或忽略未标记的示例。
......
......@@ -186,7 +186,7 @@ RL 被广泛用于金融投资组合管理,这是将资金不断重新分配
在本章中,我们学习了 RL 的基础知识以及一些关键概念。 我们了解了 RL 的不同元素和 RL 环境的不同类型。 我们还介绍了各种可用的 RL 平台以及 RL 在各个领域中的应用。
在下一章第 2 章, “OpenAI 和 TensorFlow” 入门中,我们将学习 OpenAI 和 TensorFlow 的基础知识以及如何安装 OpenAI 和 TensorFlow,然后模拟环境并教给代理如何 在环境中学习。
在下一章第 2 章,“OpenAI 和 TensorFlow 入门”中,我们将学习 OpenAI 和 TensorFlow 的基础知识以及如何安装 OpenAI 和 TensorFlow,然后模拟环境并教给代理如何 在环境中学习。
# 问题
......
......@@ -290,7 +290,7 @@ plt.imshow(img1, cmap='Greys')
x = tf.placeholder(tf.float32, [None, 784])
```
`None`表示什么? “无”指定传递的样本数(批大小),这将在运行时动态确定。
`None`表示什么? `None`指定传递的样本数(批大小),这将在运行时动态确定。
由于我们将`10`类作为输出,因此可以将`placeholder`输出定义为:
......
......@@ -23,7 +23,7 @@
# 使用策略梯度的 Lunar Lander
假设我们的经纪人正在驾驶航天器,而我们的经纪人的目标是正确着陆在着陆垫上。 如果我们的特工(着陆器)从着陆点着陆,则它会失去奖励,并且如果特工崩溃或休息,情节将终止。 在环境中可用的四个离散动作是“不执行任何操作”,“向左射击引擎”,“向主机射击”和“向右引擎”。
假设我们的经纪人正在驾驶航天器,而我们的经纪人的目标是正确着陆在着陆垫上。 如果我们的特工(着陆器)从着陆点着陆,则它会失去奖励,并且如果特工崩溃或休息,情节将终止。 在环境中可用的四个离散动作是“不执行任何操作”,“点火向左的引擎”,“点火主引擎”和“点火向右的引擎”。
现在,我们将看到如何训练我们的代理商以策略梯度正确降落在降落区。 本节中使用的代码属于 [Gabriel](https://github.com/gabrielgarza/openai-gym-policy-gradient)
......
......@@ -72,7 +72,7 @@ I2A 的架构如下:
DQfd 中的损失函数将是各种损失的总和。 为了防止我们的代理人过度适合演示数据,我们在网络权重上计算 L2 正则化损失。 我们像往常一样计算 TD 损失,也计算监督损失,以了解我们的特工如何从演示数据中学习。 本文的作者在 DQfd 和各种环境下进行了实验,并且 DQfd 的性能比双重决斗 DQN 优先排序的性能更好,更快。
您可以观看此视频,[以了解 DQfd 如何学会玩“私眼”游戏](https://youtu.be/4IFZvqBHsFY)
您可以观看此视频,[以了解 DQfd 如何学会玩“Private Eye”游戏](https://youtu.be/4IFZvqBHsFY)
# 事后经验回放
......
......@@ -965,4 +965,4 @@ Decoded sentence: Où fut ?
读者现在应该对几种机器翻译方法以及神经翻译机器与传统机器有何不同有很好的理解。 现在,我们还应该深入了解如何从头开始构建神经机器翻译系统,以及如何以有趣的方式扩展该系统。 借助提供的信息和实现演示,建议读者探索其他并行语料库数据集。
在本章中,我们定义了嵌入层,但未使用预训练的嵌入(例如 GloVe,FastText 等)来加载它们。 建议读者使用预训练的词向量嵌入为嵌入层加载,并查看是否会产生更好的结果。 在第 4 章中,“使用 GAN 进行时装行业中的样式迁移”,我们将通过与生成性对抗网络(这是现代的革命)进行与时装业中样式迁移有关的项目。 人工智能领域。
\ No newline at end of file
在本章中,我们定义了嵌入层,但未使用预训练的嵌入(例如 GloVe,FastText 等)来加载它们。 建议读者使用预训练的词向量嵌入为嵌入层加载,并查看是否会产生更好的结果。 在第 4 章,“使用 GAN 进行时装行业中的样式迁移”中,我们将通过与生成性对抗网络(这是现代的革命)进行与时装业中样式迁移有关的项目。 人工智能领域。
\ No newline at end of file
......@@ -152,7 +152,7 @@ RFE 是我们将使用`RandomForestClassifier`模型的第三种技术,请记
这些是在进行预测分析时拥有大量功能的原因:
* 它可以简化模型,从而使模型更易于理解和解释。 如果要处理成千上万的功能,可能需要一些计算方面的考虑。 减少功能部件数量以节省计算资源可能是一个好主意。
* 另一个原因是要避免“维数的诅咒”。 现在,这是一个技术术语,在处理高维数据时会出现一系列问题。
* 另一个原因是要避免“维诅咒”。 现在,这是一个技术术语,在处理高维数据时会出现一系列问题。
* 这也有助于我们最大程度地减少过拟合,因为如果您包含许多不相关的特征来预测目标,则您的模型可能会过拟合该噪声。 因此,删除不相关的功能将帮助您进行过拟合。
在本章前面看到的特征选择可以认为是降维的一种形式。 当您具有一组紧密相关甚至冗余的功能时,PCA 将是使用较少功能对相同信息进行编码的首选技术。 那么,什么是 PCA? 这是一种统计过程,将一组可能相关的变量的观测值转换为一组线性无关的变量,称为**主成分**。 我们不要讨论有关 PCA 发生了什么的数学细节。
......@@ -278,7 +278,7 @@ RFE 是我们将使用`RandomForestClassifier`模型的第三种技术,请记
如您在前面的屏幕快照中所见,我们将克拉数除以体积,以获得钻石对象的密度。
这就是我们从给定的上下文中创建两个功能的方式,这证明了该陈述的正确性:“问题的知识或上下文越多越好”。 如您所见,仅通过提供的有关问题的知识,我们就可以提出新功能。
这就是我们从给定的上下文中创建两个功能的方式,这证明了该陈述的正确性:“问题的知识或上下文越多越好”。 如您所见,仅通过提供的有关问题的知识,我们就可以提出新功能。
现在,让我们尝试看看这些功能可能对预测模型有多大帮助。 我们将在这里使用的示例是如何组合现有功能以产生新功能。 下图显示了数量和价格之间的紧密关系:
......
......@@ -4,4 +4,4 @@
本节包含以下章节:
* 第 7 章和“从 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.
先完成此消息的编辑!
想要评论请 注册