- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试制作 char-rnn,它可以使用 Theano 预测关于先前字符的下一个字符。
因此,存在 4 个值得注意的张量(或矩阵)。
x: inputs shaped [timelength, inputsize]
h: hidden states shaped [timelength, hiddensize]
y: outputs shaped [timelength, inputsize]
t: target values shaped [timelength-1, inputsize]
这里,目标值张量 t 明确定义为:
t[i, j] := x[i+1, j]but how to define t using above definition?
x = T.matrix(name="x")
t = ? # t[i] := x[i+1] but how to define it in theano?
ps。我研究过 theano 的 nnet.conv2d 但没有运气
最佳答案
原始序列是一个整数向量,编码字符。这被转换为一种单热编码,给出输入。索引为 5 的字符的 one-hot 编码是一个向量,其中第 5 个元素为 1,其余元素为零。看起来您正在将目标设置为也使用 one-hot 编码。这是可以做到的,但并不是真正必要的。您可以只使用原始整数编码,在这种情况下 t
将是一个向量,而不是一个矩阵。长度应为 timelength
,而不是 timelength-1
。
相应的theano定义是:
t = ivector(name="t") # for 32-bit integer
t = lvector(name="t") # for 64-bit integer
您应该使用用于索引的任何整数类型,因为在计算交叉熵损失时,目标将用作输出 (y
) 的索引。
char-rnn 处理序列的连续 block 。假设字符编码整数的原始序列称为 chars
。序列中的当前位置是p
。 block 长度为timelength
。对于当前 block ,输入x
包含chars[p : p + timelength]
的one-hot编码。目标 t
包含 chars[p + 1 : p + timelength + 1]
。这样,每个目标都比输入提前一时间步。
原始char-rnn代码here相当简单。它使用 numpy 而不是 theano,并且编写方式会略有不同。但是,它对于理解概念非常有用。
关于python - theano 中张量的正式定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38195904/
我正在使用bootstrap templates与 angular-formly我想将 addonsLeft.text 绑定(bind)到模型,以便一旦选择选项发生更改,它就会动态更改。 这是输入的样
我正在尝试以 mm/dd/yyyy 格式向我的列添加一天,但它为我提供了 newdate 的空输出 日期1 = 27/03/2019 SELECT date1,DATE_ADD(CONCAT(date
我是一名优秀的程序员,十分优秀!