我来自这个tutorial,它使用急需执行的多项式分布,基于来自我们RNN的预测张量,为文本生成的下一个字符获得最终预测。
# using a multinomial distribution to predict the character returned by the model
temperature = 0.5
predictions = predictions / temperature
predicted_id = tf.multinomial(predictions, num_samples=1)[-1,0].numpy()
我的问题是:
温度(这里为0.5)不仅会缩放所有预测,那为什么会影响多项式选择呢?
[0.2、0.4、0.3、0.1] /温度= [0.4、0.8、0.6、0.2]
那么多项式不是对概率进行归一化吗?因此,在缩放时,我们只是增加每个字符的概率,限制为1?
[-1,0] .numpy()有什么作用?我完全迷失了这个。
任何提示都值得赞赏。
答案 0 :(得分:0)
因此,当温度小于1时,首先出现的可能性越小,变得越大;对于大于1的温度,则可能性越大。
math.exp(0.4)/math.exp(0.8) = 0.670
math.exp(0.3)/ math.exp(0.6) = 0.7408
math.exp(0.2)/ math.exp(0.4) = 0.818
math.exp(0.1)/ math.exp(0.2) = 0.9048
[-1, 0].numpy()
仅获得多项式张量的值 例如:
tf.multinomial(predictions, num_samples=1)
tf.Tensor([[3]], shape=(1, 1), dtype=int64)
to 3