Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
大唐爆破僧
apachecn-dl-zh
提交
2029f5b9
A
apachecn-dl-zh
项目概览
大唐爆破僧
/
apachecn-dl-zh
与 Fork 源项目一致
Fork自
OpenDocCN / apachecn-dl-zh
通知
1
Star
0
Fork
0
代码
文件
提交
分支
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,发现更多精彩内容 >>
提交
2029f5b9
编写于
1月 22, 2021
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2021-01-22 16:59:49
上级
3817f649
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
6 addition
and
7 deletion
+6
-7
new/pt-ai-fund/1.md
new/pt-ai-fund/1.md
+2
-2
new/pt-ai-fund/4.md
new/pt-ai-fund/4.md
+1
-1
new/pt-dl-handson/7.md
new/pt-dl-handson/7.md
+3
-4
未找到文件。
new/pt-ai-fund/1.md
浏览文件 @
2029f5b9
...
...
@@ -79,7 +79,7 @@ import numpy
以下是各种张量:
*
**标量**
:这是一个零阶张量。 标量的示例是
<sub>
![](
img/28a0205b-6df0-43e3-aa3d-636e2874d00f.png
)
</sub>
。
*
**标量**
:这是一个零阶张量。 标量的示例是
`x[1]`
。
*
**向量**
:这是一阶张量; 以下是向量的示例:
![](
img/bc4636e9-4110-4074-8ac5-420cdab8ce74.png
)
...
...
@@ -548,7 +548,7 @@ False
我们可以看到,Autograd 可以跟踪操作。 当我们从
`x`
,
`y=2*x+3`
创建张量
`y`
时,我们会看到一个梯度函数
`grad_fn`
被附加到张量上。
我们首先创建一种新的张量,将
`require_grad`
设置为
`True`
,然后创建一个张量
`y`
,使得
<sub>
![](
img/594db8fc-d20e-4c5b-b232-bb8c64129af8.png
)
</sub>
并发现
`y`
具有一个 附加了不同的梯度函数。 我们还研究了使用
`requires_grad_()`
,最后使用了
`no_grad()`
。
我们首先创建一种新的张量,将
`require_grad`
设置为
`True`
,然后创建一个张量
`y`
,使得
`y = 2x^2 + 3`
并发现
`y`
具有一个 附加了不同的梯度函数。 我们还研究了使用
`requires_grad_()`
,最后使用了
`no_grad()`
。
PyTorch 有一个名为
`autograd`
的软件包,可以对张量上的所有操作执行所有跟踪和自动微分。 这是一个按运行定义的框架,这意味着您的反向传播是由代码的运行方式定义的,并且每次迭代都可以不同。 我们利用
`torch.Tensor`
类的
`require_grad`
属性来确定梯度计算的状态,并在调用
`.backward()`
方法后自动计算其
`.grad`
属性中的所有梯度和张量的梯度。
...
...
new/pt-ai-fund/4.md
浏览文件 @
2029f5b9
...
...
@@ -323,7 +323,7 @@ pip install torchtext
# 探索单词嵌入
单词嵌入是单词的学习表示。 它们是单词的密集表示,其中为每个单词分配一个向量,即预定义向量空间中的实值向量,而不是数字标识符。 例如,一个单词将表示为
!
[](
img/e8ab6120-79d8-46fd-aa75-470d721ff4e5.png
)
`n`
维向量
-例如,语料库中的单词
`book`
可能表示为
`[0.22, 0.242, ..., ..., 1.234]`
而不是
`[0, 0, 1, ..., 0]`
的单引号表示。
单词嵌入是单词的学习表示。 它们是单词的密集表示,其中为每个单词分配一个向量,即预定义向量空间中的实值向量,而不是数字标识符。 例如,一个单词将表示为
`n`
维向量
`[x[1], x[2], ..., x[n]]`
-例如,语料库中的单词
`book`
可能表示为
`[0.22, 0.242, ..., ..., 1.234]`
而不是
`[0, 0, 1, ..., 0]`
的单引号表示。
数字表示只是单词的表示; 但是,单词嵌入是标记的表示,其中该表示也包含标记/单词的含义。 模型从单词出现的上下文中获悉了此含义。 在词嵌入中,具有相似含义的词具有相似的表示形式,我们可以对这些词向量执行向量算术,如下所示:
...
...
new/pt-dl-handson/7.md
浏览文件 @
2029f5b9
...
...
@@ -172,15 +172,14 @@ MDP 定义有五件事:
我们的代码的训练循环如下所示:
*
随机初始化
`w`
![
Deep Q-learning
](
img/B09475_07_007.jpg
)
*
ε 贪婪
*
随机初始化
`w, π <- ε`
*
对于所有剧集:
*
观察
`S`
*
虽然
`S`
并非在每个时间步都是终端:
*
使用
!
[
Deep Q-learning
](
img/B09475_07_008.jpg
)
从
`S`
中选择
`A`
*
使用
`π, Q`
从
`S`
中选择
`A`
*
观察
`R`
和
`S'`
*
更新
`Q`
*
!
[
Deep Q-learning
](
img/B09475_07_009.jpg
)
*
`S <- S'`
这里要注意的一件事是,我们将使用相同的 ε 贪婪策略在“步骤 6”中选择动作,并在“步骤 8”中更新相同的策略。 这种算法称为策略上算法。 从某种意义上讲,这是很好的,因为在我们观察和更新同一策略时,将更快地学习该策略。 它收敛非常快。 它也有一些缺点,即所学习的策略和用于决策的策略彼此紧密地联系在一起。 如果我们想要一个更具探索性的策略,以便在“步骤 6”中选择观察结果,并在“步骤 8”中更新更优化的策略,该怎么办? 这样的算法被称为非策略算法。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录