Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
apachecn-dl-zh
提交
0bbda538
A
apachecn-dl-zh
项目概览
OpenDocCN
/
apachecn-dl-zh
10 个月 前同步成功
通知
298
Star
83
Fork
35
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
apachecn-dl-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
0bbda538
编写于
1月 21, 2021
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2021-01-21 17:31:25
上级
4fe8df8d
变更
16
隐藏空白更改
内联
并排
Showing
16 changed file
with
20 addition
and
20 deletion
+20
-20
new/dl-pt-workshop/4.md
new/dl-pt-workshop/4.md
+2
-2
new/dl-pt-workshop/6.md
new/dl-pt-workshop/6.md
+2
-2
new/dl-pt-workshop/7.md
new/dl-pt-workshop/7.md
+1
-1
new/handson-nlp-pt-1x/5.md
new/handson-nlp-pt-1x/5.md
+2
-2
new/handson-nlp-pt-1x/6.md
new/handson-nlp-pt-1x/6.md
+1
-1
new/pt-tut-17/02.md
new/pt-tut-17/02.md
+1
-1
new/pt-tut-17/27.md
new/pt-tut-17/27.md
+1
-1
new/pt-tut-17/28.md
new/pt-tut-17/28.md
+1
-1
new/pt-tut-17/31.md
new/pt-tut-17/31.md
+1
-1
new/pt-tut-17/46.md
new/pt-tut-17/46.md
+2
-2
new/pt-tut-17/52.md
new/pt-tut-17/52.md
+1
-1
new/pt-tut-17/53.md
new/pt-tut-17/53.md
+1
-1
new/pt-tut-17/57.md
new/pt-tut-17/57.md
+1
-1
new/pt-tut-17/64.md
new/pt-tut-17/64.md
+1
-1
new/rl-tf/02.md
new/rl-tf/02.md
+1
-1
new/rl-tf/03.md
new/rl-tf/03.md
+1
-1
未找到文件。
new/dl-pt-workshop/4.md
浏览文件 @
0bbda538
...
...
@@ -608,7 +608,7 @@ test_loader = torch.utils.data.DataLoader(test_data, \
能够识别图像中的物体而不管变化的 CNN 具有不变性。 实际上,CNN 对于每种类型的变化都可以是不变的。
##
使用 PyTorch 进行
数据扩充
##
PyTorch
数据扩充
使用
`Torchvision`
包在 PyTorch 中执行数据扩充非常容易。 该软件包除了包含流行的数据集和模型架构之外,还包含可以在数据集上执行的常见图像转换功能。
...
...
@@ -723,7 +723,7 @@ test_data = datasets.CIFAR10('data', train=False, download=True, \
此外,通常在卷积层以及 FC 层(不包括输出层)上执行批归一化。
##
使用 PyTorch 进行
批量归一化
##
PyTorch
批量归一化
在 PyTorch 中,考虑到有两种不同的类型,添加批归一化就像向网络架构添加新层一样简单,如下所述:
...
...
new/dl-pt-workshop/6.md
浏览文件 @
0bbda538
...
...
@@ -248,7 +248,7 @@ for i in range(1, epochs+1):
最后,计算损失函数,该函数用于更新网络参数。 然后,该过程再次开始,直到达到所需的时期数。
## 活动 6.01:使用简单
的 RNN 进行
时间序列预测
## 活动 6.01:使用简单
RNN 的
时间序列预测
对于此活动,您将使用简单的 RNN 解决时间序列问题。 让我们考虑以下情况:您的公司希望能够提前预测所有产品的需求。 这是因为生产每种产品都需要花费相当长的时间,并且该过程花费大量金钱。 因此,除非产品很可能被出售,否则他们不希望在生产上花费金钱和时间。 为了预测未来需求,他们为您提供了一个数据集,其中包含去年销售中所有产品的每周需求(在销售交易中)。 请按照以下步骤完成此活动:
...
...
@@ -668,7 +668,7 @@ while starter[-1] != "." and counter < 50:
3.
只要循环和循环用于执行新字符的预测,只要字符数不超过 50,并且直到新字符是一个句点即可。
4.
每个新字符都添加到起始句子中,以形成新的文本序列。
## 活动 6.02:使用 LSTM 网络
进行
文本生成
## 活动 6.02:使用 LSTM 网络
的
文本生成
注意
...
...
new/dl-pt-workshop/7.md
浏览文件 @
0bbda538
...
...
@@ -1509,7 +1509,7 @@
# 6.使用 RNN 分析数据序列
## 活动 6.01:使用简单
的 RNN 进行
时间序列预测
## 活动 6.01:使用简单
RNN 的
时间序列预测
### 解决方案
...
...
new/handson-nlp-pt-1x/5.md
浏览文件 @
0bbda538
...
...
@@ -41,7 +41,7 @@ RNN 由循环层组成。 尽管它们在许多方面类似于标准前馈神经
稍后我们将看到,我们实际上可以在每个时间步长都采用隐藏状态,而不是使用最终的隐藏状态,这对于 NLP 中的序列到序列翻译任务很有用。 但是,暂时来说,我们只是将隐藏层作为对网络其余部分的输出。
## 使用 RNN
进行
情感分析
## 使用 RNN
的
情感分析
在情感分析的上下文中,我们的模型是根据评论的情感分析数据集训练的,该数据集由多个文本评论和 0 或 1 的标签组成,具体取决于评论是负面还是正面 。 这意味着我们的模型成为分类任务(两个类别为负/正)。 我们的句子经过一层学习的单词嵌入,以形成包含多个向量的句子的表示(每个单词一个)。 然后将这些向量顺序地馈入我们的 RNN 层,最终的隐藏状态将通过另一个全连接层。 我们的模型输出是介于 0 到 1 之间的单个值,具体取决于我们的模型是根据句子预测的是消极情感还是正面情感。 这意味着我们完整的分类模型如下所示:
...
...
@@ -493,7 +493,7 @@ print("Test Accuracy: {:.2f}".format(num_correct/len(test_loader.dataset)))
然后,我们将模型预测与真实标签进行比较,以获得
`correct_tensor`
,这是一个评估我们模型的每个预测是否正确的向量。 然后,我们对该向量求和,然后将其除以其长度,以获得模型的总精度。 在这里,我们获得了 76% 的准确率。 尽管我们的模型肯定还远非完美,但鉴于我们的训练量很小且训练时间有限,这一点也不差! 仅用于说明从 NLP 数据学习时 LSTM 的有用性。 接下来,我们将展示如何使用模型从新数据进行预测。
##
使用我们的模型进行
预测
##
将我们的模型用于
预测
既然我们已经有了训练有素的模型,那么应该可以对一个新句子重复我们的预处理步骤,并将其传递给我们的模型,并对其情感进行预测。 我们首先创建一个函数来预处理输入句子以预测:
...
...
new/handson-nlp-pt-1x/6.md
浏览文件 @
0bbda538
...
...
@@ -495,7 +495,7 @@ print(f'\t Val. Loss: {valid_loss:.3f} | Val. Acc: {valid_acc*100:.2f}%')
值得庆幸的是,我们发现确实存在。 训练和验证损失在每个时期都会下降,准确率也会提高,这表明我们的模型确实在学习! 经过多次训练后,我们可以采用最佳模型并进行预测。
## 使用经过训练的 CNN
进行
预测
## 使用经过训练的 CNN
的
预测
幸运的是,使用我们训练有素的模型进行预测是一个相对简单的任务。 我们首先使用`load_state_dict`函数加载最佳模型:
...
...
new/pt-tut-17/02.md
浏览文件 @
0bbda538
#
使用 PyTorch 进行
深度学习:60 分钟的突击
#
PyTorch
深度学习:60 分钟的突击
> 原文:<https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html>
...
...
new/pt-tut-17/27.md
浏览文件 @
0bbda538
# 使用`nn.Transformer`和`torchtext`
进行
序列到序列建模
# 使用`nn.Transformer`和`torchtext`
的
序列到序列建模
> 原文:<https://pytorch.org/tutorials/beginner/transformer_tutorial.html>
...
...
new/pt-tut-17/28.md
浏览文件 @
0bbda538
# 从零开始的 NLP:使用字符级 RNN
对名称进行
分类
# 从零开始的 NLP:使用字符级 RNN
的名称
分类
> 原文:<https://pytorch.org/tutorials/intermediate/char_rnn_classification_tutorial.html>
...
...
new/pt-tut-17/31.md
浏览文件 @
0bbda538
# 使用`torchtext`
进行
文本分类
# 使用`torchtext`
的
文本分类
> 原文:<https://pytorch.org/tutorials/beginner/text_sentiment_ngrams_tutorial.html>
...
...
new/pt-tut-17/46.md
浏览文件 @
0bbda538
...
...
@@ -120,7 +120,7 @@ conda install opencv
```
###
使用 CMake 进行
构建
###
将 CMake 用于
构建
为了使用
[
CMake
](
https://cmake.org
)
构建系统将自定义运算符构建到共享库中,我们需要编写一个简短的
`CMakeLists.txt`
文件并将其与我们先前的
`op.cpp`
文件放置在一起。 为此,让我们就一个看起来像这样的目录结构达成一致:
...
...
@@ -633,7 +633,7 @@ $ ./example_app example.pt
第一种方法是使用 C++ 扩展程序的
[
方便的即时(JIT)编译界面
](
https://pytorch.org/docs/stable/cpp_extension.html#torch.utils.cpp_extension.load
)
在您首次运行 PyTorch 脚本时在后台编译代码。 第二种方法依赖于古老的
`setuptools`
包,并涉及编写单独的
`setup.py`
文件。 这样可以进行更高级的配置,并与其他基于
`setuptools`
的项目集成。 我们将在下面详细探讨这两种方法。
### 使用 JIT 编译
进行
构建
### 使用 JIT 编译
的
构建
PyTorch C++ 扩展工具包提供的 JIT 编译功能可将自定义运算符的编译直接嵌入到您的 Python 代码中,例如 在训练脚本的顶部。
...
...
new/pt-tut-17/52.md
浏览文件 @
0bbda538
...
...
@@ -22,7 +22,7 @@ import torch.autograd.profiler as profiler
```
## 使用 Profiler
进行
性能调试
## 使用 Profiler
的
性能调试
Profiler 有助于识别模型中的性能瓶颈。 在此示例中,我们构建了一个自定义模块,该模块执行两个子任务:
...
...
new/pt-tut-17/53.md
浏览文件 @
0bbda538
# 使用 Ray Tune
进行
超参数调整
# 使用 Ray Tune
的
超参数调整
> 原文:<https://pytorch.org/tutorials/beginner/hyperparameter_tuning_tutorial.html>
...
...
new/pt-tut-17/57.md
浏览文件 @
0bbda538
#
在 PyTorch 中使用 Eager 模式进行
静态量化(beta)
#
PyTorch 中使用 Eager 模式的
静态量化(beta)
> 原文:<https://pytorch.org/tutorials/advanced/static_quantization_tutorial.html#>
...
...
new/pt-tut-17/64.md
浏览文件 @
0bbda538
...
...
@@ -18,7 +18,7 @@
[
`torch.distributed.rpc`
](
https://pytorch.org/docs/master/rpc.html
)
程序包可以帮助解决上述情况。 在情况 1 中,
[
RPC
](
https://pytorch.org/docs/master/rpc.html#rpc
)
和
[
RRef
](
https://pytorch.org/docs/master/rpc.html#rref
)
允许将数据从一个工作程序发送到另一个工作程序,同时轻松引用远程数据对象。 在情况 2 中,
[
分布式 Autograd
](
https://pytorch.org/docs/master/rpc.html#distributed-autograd-framework
)
和
[
分布式优化器
](
https://pytorch.org/docs/master/rpc.html#module-torch.distributed.optim
)
使执行反向传递和优化器步骤就像本地训练一样。 在接下来的两节中,我们将使用强化学习示例和语言模型示例来演示
[
`torch.distributed.rpc`
](
https://pytorch.org/docs/master/rpc.html
)
的 API。 请注意,本教程并非旨在构建最准确或最有效的模型来解决给定的问题,相反,此处的主要目标是演示如何使用
[
`torch.distributed.rpc`
](
https://pytorch.org/docs/master/rpc.html
)
包来构建分布式训练 应用。
## 使用 RPC 和 RRef
进行
分布式强化学习
## 使用 RPC 和 RRef
的
分布式强化学习
本节介绍了使用 RPC 建立玩具分布式强化学习模型以解决
[
OpenAI Gym
](
https://gym.openai.com
)
中的 CartPole-v1 的步骤。 策略代码主要是从现有的单线程
[
示例
](
https://github.com/pytorch/examples/blob/master/reinforcement_learning
)
中借用的,如下所示。 我们将跳过
`Policy`
设计的详细信息,并将重点介绍 RPC 的用法。
...
...
new/rl-tf/02.md
浏览文件 @
0bbda538
...
...
@@ -136,7 +136,7 @@ Discrete(16)
`Discrete(16)`
输出表示冻结湖环境的观察(状态)空间是一组离散值,并具有 16 种要由代理探索的不同状态。
# 使用 OpenAI Gym 环境对代理
进行
编程
# 使用 OpenAI Gym 环境对代理编程
本节考虑的环境是
**FrozenLake-v0**
。 有关环境的实际文档可以在
[
这个页面
](
https://gym.openai.com/envs/FrozenLake-v0/
)
中找到。
...
...
new/rl-tf/03.md
浏览文件 @
0bbda538
...
...
@@ -223,7 +223,7 @@ MDP 试图通过将网格划分为状态,动作,模型/转换模型和奖励
让我们尝试通过示例来理解这一点。
# 使用 Bellman 方程
进行
值迭代的示例
# 使用 Bellman 方程
的
值迭代的示例
请考虑以下环境和给定的信息:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录