您的代码没有任何问题,因为您正在打印测试准确性,并且它很快就会提供良好的准确性。您的训练损失也在减少。
如果您有兴趣降低学习速度,可以降低学习率(例如 0.000003)。如果您希望网络学习缓慢,您甚至可以尝试减少隐藏层中的层数或单元数。
这是我在前 10 个 epoch 的学习率为 0.000003 的代码中得到的准确度。
e0_0, loss: 2.3103301525115967, accuracy: 0.09469999372959137
e1_550, loss: 2.2732467651367188, accuracy: 0.11469998955726624
e2_1100, loss: 2.233933210372925, accuracy: 0.1590999811887741
e3_1650, loss: 2.185560941696167, accuracy: 0.2231999933719635
e4_2200, loss: 2.1254842281341553, accuracy: 0.31909993290901184
e5_2750, loss: 2.051886558532715, accuracy: 0.40129992365837097
e6_3300, loss: 1.9651522636413574, accuracy: 0.4681999087333679
e7_3850, loss: 1.8645144701004028, accuracy: 0.5381998419761658
e8_4400, loss: 1.750971794128418, accuracy: 0.6107000112533569
e9_4950, loss: 1.6259007453918457, accuracy: 0.6584999561309814
e10_5500, loss: 1.4947171211242676, accuracy: 0.6923999786376953