shi*_*iva 5 python numpy deep-learning keras tensorflow
我最近读了一篇题为“通过惩罚可信输出分布来调整神经网络https://arxiv.org/abs/1701.06548”的论文。作者讨论了通过向负对数似然添加负熵项并为模型训练创建自定义损失函数来惩罚低熵输出分布来正则化神经网络。
价值 ?控制置信惩罚的强度。我为分类交叉熵编写了一个自定义函数,如下所示,但需要将负熵项添加到损失函数中。
import tensorflow as tf
def custom_loss(y_true, y_pred):
cce = tf.keras.losses.CategoricalCrossentropy()
cce_loss = cce(y_true, y_pred)
return cce_loss
Run Code Online (Sandbox Code Playgroud)
的熵y_pred本质上是 和 自身之间的分类交叉熵y_pred:
def custom_loss(y_true, y_pred, beta):
cce = tf.keras.losses.CategoricalCrossentropy()
return cce(y_true, y_pred) - beta*cce(y_pred, y_pred)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
70 次 |
| 最近记录: |