gpt4 book ai didi

machine-learning - 如何在 Keras 中实现 Perplexity?

转载 作者:行者123 更新时间:2023-11-30 08:51:24 24 4
gpt4 key购买 nike

我一直在尝试评估语言模型,并且需要跟踪困惑度指标。

我尝试的是:因为困惑度是 2^-J,其中 J 是交叉熵:

def perplexity(y_true, y_pred):
oneoverlog2 = 1.442695
return K.pow(2.0,K.mean(-K.log(y_pred)*oneoverlog2))

但奇怪的是,在几个批处理的训练过程中,这个值会达到无穷大。

实现是否有问题或者有其他实现困惑的方法吗?

最佳答案

您正在计算 y_pred=0 未定义的交叉熵公式,而且它在数值上不稳定。

我建议您使用tf.sparse_cross_entropy_with_logits而不是编写自己的公式。该函数可以为您处理数值不稳定问题以及输入为零的情况。

如果您确实想自己编写公式,请在 t_pred 中添加少量内容,以使其不同于零或从非常小的值中剪辑 y_pred和 1。

关于machine-learning - 如何在 Keras 中实现 Perplexity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44697318/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com