【发布时间】:2020-04-20 14:51:36
【问题描述】:
我已经使用 LSTM - Pytorch 中的线性模块构建了一个模型,用于分类问题(10 类)。我正在训练模型,并且对于每个 epoch,我都会在 training set 中输出 loss 和 accuracy。输出如下:
纪元:0 开始!
损失:2.301875352859497
账号:0.11388888888888889
纪元:1 开始!
损失:2.2759320735931396
累积:0.29
纪元:2 开始!
损失:2.2510263919830322
账号:0.4872222222222222
纪元:3 开始!
损失:2.225804567337036
账号:0.6066666666666667
纪元:4 开始!
损失:2.199286699295044
账号:0.6511111111111111
纪元:5 开始!
损失:2.1704766750335693
累计:0.6855555555555556
纪元:6 开始!
损失:2.1381614208221436
账号:0.7038888888888889
纪元:7 开始!
损失:2.1007182598114014
账号:0.7194444444444444
纪元:8 开始!
损失:2.0557992458343506
账号:0.7283333333333334
纪元:9 开始!
损失:1.9998993873596191
账号:0.7427777777777778
纪元:10 开始!
损失:1.9277743101119995
账号:0.7527777777777778
纪元:11 开始!
损失:1.8325848579406738
账号:0.7483333333333333
纪元:12 开始!
损失:1.712520718574524
账号:0.7077777777777777
纪元:13 开始!
损失:1.6056485176086426
账号:0.6305555555555555
纪元:14 开始!
损失:1.5910680294036865
账号:0.4938888888888889
纪元:15 开始!
损失:1.6259561777114868
累计:0.41555555555555557
纪元:16 开始!
损失:1.892195224761963
账号:0.3655555555555556
纪元:17 开始!
损失:1.4949012994766235
帐号:0.47944444444444445
纪元:18 开始!
损失:1.4332982301712036
账号:0.48833333333333334
对于损失函数,我使用了 nn.CrossEntropyLoss 和 Adam Optimizer。
尽管损失在不断减少,但准确度会一直提高到 epoch 10,然后由于某种原因开始下降。
为什么会这样?
即使我的模型是过拟合的,那不是说准确率应该很高吗?? (总是说在训练集而不是验证集上测量的准确性和损失)
【问题讨论】:
标签: neural-network pytorch lstm loss-function cross-entropy