LSTM(通常是神经网络)中的温度是多少?


Answers:


28

温度是LSTM(通常是神经网络)的超参数,用于通过在应用softmax之前缩放对数来控制预测的随机性。例如,在TensorFlow的LSTM 的Magenta 实现中,温度代表在计算softmax之前将logit除以多少。

当温度为1时,我们直接在logits(较早层的未缩放输出)上计算softmax,并使用温度为0.6的模型在上计算softmax ,从而得出更大的值。在更大的值上执行softmax可使LSTM 更加自信(需要较少的输入来激活输出层),但在其采样中也更加保守(从不太可能的候选对象中采样的可能性较小)。使用较高的温度会在各个类上产生较弱的概率分布,并使RNN更容易被样本“激发”,从而导致更多的多样性更多的错误logits0.6

神经网络产生具有分对数矢量类概率其中通过执行SOFTMAX函数来产生概率向量,将与其他logit 进行比较。zz=(z1,,zn)q=(q1,,qn)zi

(1)qi=exp(zi/T)jexp(zj/T)

其中是温度参数,通常设置为1。T

softmax函数通过确保网络输出在每个时间步长都在零到一之间,基于其指数值对候选网络的每次迭代进行归一化。

因此,温度增加了对低概率候选者的敏感性。在LSTM中,候选者或样本可以是字母,单词或音符,例如:

对于高温(),所有[样本]都具有几乎相同的概率,并且温度越低,预期的奖励对概率的影响就越大。对于低温(),具有最高预期奖励的[sample]的概率趋向于1。ττ0+

-来自Wikipedia上有关softmax函数的文章

参考

Hinton,Geoffrey,Oriol Vinyals和Jeff Dean。“在神经网络中提取知识。” arXiv预印本arXiv:1503.02531(2015)。arXiv


3
它暗示了玻尔兹曼分布(或吉布斯分布) -统计力学中使用的概率分布。
mc2
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.