【问题标题】:What should be output size of image classifier model?图像分类器模型的输出大小应该是多少?
【发布时间】:2021-04-12 00:13:53
【问题描述】:

我正在执行图像分类任务。图像被标记为 0 1 2。模型输出中最后一个线性层的大小应该是 3 还是 1 ?一般来说,对于 3 类操作,输出设置为 3,作为这三个的结果,返回最大概率。但是我看到在某些代码中最后一层设置为1。我认为这实际上是合乎逻辑的。你有什么想法 ? (我也不在最后一层使用 softmax 或 sigmoid 函数。)

【问题讨论】:

标签: pytorch conv-neural-network image-classification


【解决方案1】:

要对c 类进行分类(在您的示例中为c = 3),您需要预测每个类的概率,因此您需要输出c-dim 输出。
通常您不会明确softmax 应用于“原始预测”(又名“logits”) - 损失函数通常会以一种在数值上更稳健的方式为您执行此操作(例如,参见 @ 987654321@).

训练模型后,在推理时间,您可以将 argmax 与预测的 c 对数相乘,并输出一个标量 - 预测类的索引。这只能在推理期间完成,因为argmax 不是可微操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-06
    • 2016-12-19
    • 2014-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多