pytorch中序数多分类的损失函数

Posted

技术标签:

【中文标题】pytorch中序数多分类的损失函数【英文标题】:Loss function for ordinal multi classification in pytorch 【发布时间】:2019-03-16 14:57:06 【问题描述】:

我是 DNN 和 pytorch 的初学者。 我正在处理一个多分类问题,其中我的标签被编码成一个单热向量,比如维度D。 为此,我使用了 CrossEntropyLoss。但是现在我想修改或更改此类标准以惩罚与实际值相距甚远的值,例如分类 4 而不是 5 优于 2 而不是 5。

Pytorch 中是否已经内置了实现此行为的函数?否则我该如何修改 CrossEntropyLoss 来实现呢?

【问题讨论】:

这听起来像是回归问题..不是吗? 已经回答:***.com/questions/38375401/… Neural Network Ordinal Classification for Age的可能重复 【参考方案1】:

这可以帮助你。这是一个 PyTorch 实现序数回归: https://www.ethanrosenthal.com/2018/12/06/spacecutter-ordinal-regression/

【讨论】:

以上是关于pytorch中序数多分类的损失函数的主要内容,如果未能解决你的问题,请参考以下文章

说话人识别损失函数的PyTorch实现与代码解读

无法在pytorch python中使用多目标损失函数

详解pytorch中的交叉熵损失函数nn.BCELoss()nn.BCELossWithLogits(),二分类任务如何定义损失函数,如何计算准确率如何预测

pytorch 中分类网络损失函数

PyTorch自定义损失函数实现

修改后的 PyTorch 损失函数 BCEWithLogitsLoss 返回 NaNs