损失从第一个时代开始增加

时间:2018-01-30 18:04:04

标签: python optimization neural-network deep-learning pytorch

我正在为nlp训练我的暹罗网络。我在其中使用了lstm。和BCELoss。我的损失从第一个时代开始增加。前36个时代的损失是 0后的错误  272.4357 [大小为1的torch.FloatTensor]

1之后的

错误  271.8972 [大小为1的torch.FloatTensor]

2之后的

错误  271.5598 [大小为1的torch.FloatTensor]

3之后

错误  271.6979 [大小为1的torch.FloatTensor]

4之后的

错误  271.7315 [大小为1的torch.FloatTensor]

5之后的

错误  272.3965 [大小为1的torch.FloatTensor]

6后的

错误  273.3982 [大小为1的torch.FloatTensor]

7之后的

错误  275.1197 [大小为1的torch.FloatTensor]

8后的

错误  275.8228 [大小为1的torch.FloatTensor]

9之后的

错误  278.3311 [大小为1的torch.FloatTensor]

10后的

错误  277.1054 [大小为1的torch.FloatTensor]

11之后的

错误  277.8418 [大小为1的torch.FloatTensor]

12之后的

错误  279.0189 [大小为1的torch.FloatTensor]

13之后的

错误  278.4090 [大小为1的torch.FloatTensor]

14后的

错误  281.8813 [大小为1的torch.FloatTensor]

15后的

错误  283.4077 [大小为1的torch.FloatTensor]

16后的

错误  286.3093 [大小为1的torch.FloatTensor]

17后的

错误  287.6292 [大小为1的torch.FloatTensor]

18后的

错误  297.2318 [大小为1的torch.FloatTensor]

19岁以后出现

错误  307.4176 [大小为1的torch.FloatTensor]

20后的

错误  304.6649 [大小为1的torch.FloatTensor]

21之后的

错误  328.9772 [大小为1的torch.FloatTensor]

22后的

错误  300.0669 [大小为1的torch.FloatTensor]

23之后的

错误  292.3902 [大小为1的torch.FloatTensor]

24后的

错误  300.8633 [大小为1的torch.FloatTensor]

25后的

错误  305.1822 [大小为1的torch.FloatTensor]

26后的

错误  333.9984 [大小为1的torch.FloatTensor]

27之后的

错误  346.2062 [大小为1的torch.FloatTensor]

28后的

错误  354.6148 [大小为1的torch.FloatTensor]

29之后的

错误  341.3568 [大小为1的torch.FloatTensor]

30后的

错误  369.7580 [大小为1的torch.FloatTensor]

31之后的

错误  366.1615 [大小为1的torch.FloatTensor]

32后的

错误  368.2455 [大小为1的torch.FloatTensor]

33之后的

错误  391.4102 [大小为1的torch.FloatTensor]

34之后的

错误  394.3190 [大小为1的torch.FloatTensor]

35后的

错误  401.0990 [大小为1的torch.FloatTensor]

36后的

错误  422.3723 [大小为1的torch.FloatTensor]

1 个答案:

答案 0 :(得分:1)

可能你的学习率太高了。尝试降低学习率。学习率太大是从第一个时期开始增加损失的最常见原因。

你的损失也非常高。如此高的损失是不寻常的。你可能在损失函数中有一笔金额,用均值替换这笔金额可能更明智。虽然如果你使用Adam优化器没有任何区别,如果使用简和SGD使用或不使用动量使用总和而不是均值,意味着如果维度(或序列的长度)需要不同地调整学习速率由你的系统处理你的系统更改。