Python 模型的丢失是否反映了其准确性?

Python 模型的丢失是否反映了其准确性?,python,machine-learning,pytorch,Python,Machine Learning,Pytorch,这就是我每75个时代的损失: Epoch: 75, loss: 47382825795584.000000 Epoch: 150, loss: 47382825795584.000000 Epoch: 225, loss: 47382825795584.000000 Epoch: 300, loss: 47382825795584.000000 Epoch: 375, loss: 47382825795584.000000 Epoch: 450, loss: 47382825795584.000

这就是我每75个时代的损失:

Epoch: 75, loss: 47382825795584.000000
Epoch: 150, loss: 47382825795584.000000
Epoch: 225, loss: 47382825795584.000000
Epoch: 300, loss: 47382825795584.000000
Epoch: 375, loss: 47382825795584.000000
Epoch: 450, loss: 47382825795584.000000
Epoch: 525, loss: 47382825795584.000000
Epoch: 600, loss: 47382825795584.000000
Epoch: 675, loss: 47382825795584.000000
Epoch: 750, loss: 47382825795584.000000
这些分别是预测值和目标值

Predictions: tensor([[ 8109436.0000,  7734814.0000,  8737677.0000, 11230861.0000,
          3795826.7500,  3125072.7500,  1699706.1250,  5337285.0000,
          3474238.5000]], grad_fn=<TBackward>)
----------------------------------------
Targets: tensor([[ 8111607.,  7580798.,  8749436., 11183578.,  3822811.,  3148031.,
          2343278.,  5360924.,  3536146.]])
所以我真的不知道发生了什么。因为我有一个很大的损失,第一个元素有99%的准确度,第二个元素有98%的准确度?我的数学不是最好的,所以我不确定最后的百分比


有人能解释一下损失是否反映了准确性吗?

损失只是相对有意义的(即用于比较)。将你的损失函数乘以10,在同一型号上,你的损失是原来的10倍。这没有告诉你任何事情


但使用相同的损失函数,如果模型_1给出的损失比模型_2小10倍,那么模型_1很可能具有更好的准确性(尽管不是100%保证)。

损失仅相对有意义(即用于比较)。将你的损失函数乘以10,在同一型号上,你的损失是原来的10倍。这没有告诉你任何事情


但使用相同的损失函数,如果模型_1给出的损失比模型_2小10倍,那么模型_1很可能具有更好的精度(尽管不是100%保证)。

否,损失并不反映精度。在您的情况下,您应该使用另一个度量来量化您的准确性。因为您使用的是连续的目标变量,所以可以使用类似(MSE)的度量。注意这一点,因为MSE度量假定基础数据是正态分布的。在任何情况下,损失都是相对的,完全取决于优化中使用的损失函数。较大的损耗并不意味着精度/毫秒差。

不,损耗并不反映精度。在您的情况下,您应该使用另一个度量来量化您的准确性。因为您使用的是连续的目标变量,所以可以使用类似(MSE)的度量。注意这一点,因为MSE度量假定基础数据是正态分布的。在任何情况下,损失都是相对的,完全取决于优化中使用的损失函数。较大的损失并不意味着精度差/MSE。

使用的具体损失函数是什么?这里的真正问题不是损失的“大”值,而是您的模型似乎没有学习(损失是恒定的)。没有进一步的细节,很难说得更多。和免责声明:我的)中的答案可能有助于了解总体情况。使用的具体损失函数是什么?这里的真正问题不是损失的“大”值,而是您的模型似乎没有学习(损失是恒定的)。没有进一步的细节,很难说得更多。和免责声明:我的)中的答案可能有助于了解总体情况。
8109436.0000/8111607*100 #First element
Output: 99.9732358828528

print(7734814.0000/7580798*100) #Second element
Output: 102.03165946381898