为了账号安全,请及时绑定邮箱和手机立即绑定

神经网络用以变形文本矫正系列第四篇

标签:
人工智能

0.前言

上一篇在假定样本数不变、网络结构不变的基础上,验证了随机选取样本对网络结果的影响。这一篇,验证在随机取样本、按规则取样本、dataFormat为1的情况下,尝试不同样本数对网络结果的影响。

1.实验条件

分别取样本数为:6600, 8800, 11000, 33000, 55000, 77000, 99000, 222000, 444000, 666000, 888000, 1111000以及最大数1336500。

1.1 样本数为33000按顺序选取样本的实验结果

(1)取样本数为33000

不随机取样本,dataFormat为1,网络结构不变:batch_size = 200,epochs = 200,firstLayerInputDim = 858,firstLayerOutput = 572,secondLayerOutput = 572, thirdLayerOutput = 5;

data_train需要相对应的改变。样本数为11000时,data_train为8000, 此时设置为26400;

  1. data_trainSamplesNum = int((4/5)*sampleNums)  

开始实验:

  1. Using TensorFlow backend.  

  2. load data begin...  

  3. dataFormat = 1  

  4. load data..., no random!  

  5. load done  

  6. Data.shape= (33000, 858)  

  7. label.shape= (33000, 5)  

  8. reshape data shape= (33000, 858)  

  9. reshape label shape= (33000, 5)  

  10. data_trainSamplesNum= 26400  

  11. data_train.shape= (26400, 858)  

  12. data_test.shape= (6600, 858)  

  13. label_train.shape= (26400, 5)  

  14. label_test.shape= (6600, 5)  

  15. construct net begin...  

  16. Training...  

  17. Epoch 1/200  

  18.   200/26400 [..............................] - ETA: 13:51 - loss: 0.2009 - acc: 0.2950  

  19.  1000/26400 [>.............................] - ETA: 2:42 - loss: 0.4578 - acc: 0.5780   

  20.  2000/26400 [=>............................] - ETA: 1:18 - loss: 0.3333 - acc: 0.5960  

  21.  3000/26400 [==>...........................] - ETA: 50s - loss: 0.2334 - acc: 0.5960   

  22.  4200/26400 [===>..........................] - ETA: 34s - loss: 0.1704 - acc: 0.6269  

  23.  5400/26400 [=====>........................] - ETA: 25s - loss: 0.1339 - acc: 0.6894  

  24.  6800/26400 [======>.......................] - ETA: 19s - loss: 0.1071 - acc: 0.7396  

  25.  8200/26400 [========>.....................] - ETA: 14s - loss: 0.0893 - acc: 0.7767  

  26.  9600/26400 [=========>....................] - ETA: 11s - loss: 0.0768 - acc: 0.8033  

  27. 10800/26400 [===========>..................] - ETA: 9s - loss: 0.0686 - acc: 0.8208   

  28. 12200/26400 [============>.................] - ETA: 8s - loss: 0.0610 - acc: 0.8365  

  29. 13600/26400 [==============>...............] - ETA: 6s - loss: 0.0550 - acc: 0.8491  

  30. 15000/26400 [================>.............] - ETA: 5s - loss: 0.0502 - acc: 0.8592  

  31. 16400/26400 [=================>............] - ETA: 4s - loss: 0.0462 - acc: 0.8673  

  32. 17800/26400 [===================>..........] - ETA: 3s - loss: 0.0427 - acc: 0.8739  

  33. 19200/26400 [====================>.........] - ETA: 2s - loss: 0.0398 - acc: 0.8802  

  34. 20600/26400 [======================>.......] - ETA: 2s - loss: 0.0373 - acc: 0.8846  

  35. 22000/26400 [========================>.....] - ETA: 1s - loss: 0.0351 - acc: 0.8887  

  36. 23400/26400 [=========================>....] - ETA: 0s - loss: 0.0332 - acc: 0.8917  

  37. 24800/26400 [===========================>..] - ETA: 0s - loss: 0.0314 - acc: 0.8935  

  38. 26200/26400 [============================>.] - ETA: 0s - loss: 0.0299 - acc: 0.8965  

  39. 26400/26400 [==============================] - 7s 283us/step - loss: 0.0297 - acc: 0.8967  

  40. Epoch 2/200  

  41.   

  42.   200/26400 [..............................] - ETA: 1s - loss: 0.0030 - acc: 0.9400  

  43.  1600/26400 [>.............................] - ETA: 0s - loss: 0.0026 - acc: 0.9275  

  44.  3000/26400 [==>...........................] - ETA: 0s - loss: 0.0026 - acc: 0.9343  

  45.  4400/26400 [====>.........................] - ETA: 0s - loss: 0.0026 - acc: 0.9343  

  46.  5800/26400 [=====>........................] - ETA: 0s - loss: 0.0026 - acc: 0.9348  

  47.  7200/26400 [=======>......................] - ETA: 0s - loss: 0.0025 - acc: 0.9369  

  48.  8600/26400 [========>.....................] - ETA: 0s - loss: 0.0025 - acc: 0.9362  

  49. 10000/26400 [==========>...................] - ETA: 0s - loss: 0.0026 - acc: 0.9368  

  50. 11400/26400 [===========>..................] - ETA: 0s - loss: 0.0025 - acc: 0.9368  

  51. 12800/26400 [=============>................] - ETA: 0s - loss: 0.0025 - acc: 0.9363  

  52. 14200/26400 [===============>..............] - ETA: 0s - loss: 0.0025 - acc: 0.9363  

  53. 15600/26400 [================>.............] - ETA: 0s - loss: 0.0025 - acc: 0.9365  

  54. 17000/26400 [==================>...........] - ETA: 0s - loss: 0.0025 - acc: 0.9356  

  55. 18400/26400 [===================>..........] - ETA: 0s - loss: 0.0025 - acc: 0.9348  

  56. 19800/26400 [=====================>........] - ETA: 0s - loss: 0.0025 - acc: 0.9344  

  57. 21200/26400 [=======================>......] - ETA: 0s - loss: 0.0025 - acc: 0.9349  

  58. 22600/26400 [========================>.....] - ETA: 0s - loss: 0.0025 - acc: 0.9349  

  59. 24000/26400 [==========================>...] - ETA: 0s - loss: 0.0025 - acc: 0.9348  

  60. 25400/26400 [===========================>..] - ETA: 0s - loss: 0.0025 - acc: 0.9345  

  61. 26400/26400 [==============================] - 1s 39us/step - loss: 0.0025 - acc: 0.9343  

  62.   

  63. Epoch 179/200  

  64.   

  65.   200/26400 [..............................] - ETA: 1s - loss: 4.4376e-04 - acc: 0.9500  

  66.  1400/26400 [>.............................] - ETA: 1s - loss: 4.2522e-04 - acc: 0.9543  

  67.  2800/26400 [==>...........................] - ETA: 0s - loss: 4.4004e-04 - acc: 0.9539  

  68.  4200/26400 [===>..........................] - ETA: 0s - loss: 4.4611e-04 - acc: 0.9533  

  69.  5400/26400 [=====>........................] - ETA: 0s - loss: 4.5499e-04 - acc: 0.9509  

  70.  6800/26400 [======>.......................] - ETA: 0s - loss: 4.5310e-04 - acc: 0.9522  

  71.  8200/26400 [========>.....................] - ETA: 0s - loss: 4.5498e-04 - acc: 0.9543  

  72.  9600/26400 [=========>....................] - ETA: 0s - loss: 4.5259e-04 - acc: 0.9547  

  73. 10800/26400 [===========>..................] - ETA: 0s - loss: 4.5429e-04 - acc: 0.9536  

  74. 12200/26400 [============>.................] - ETA: 0s - loss: 4.4919e-04 - acc: 0.9547  

  75. 13400/26400 [==============>...............] - ETA: 0s - loss: 4.5157e-04 - acc: 0.9546  

  76. 14600/26400 [===============>..............] - ETA: 0s - loss: 4.5520e-04 - acc: 0.9551  

  77. 15800/26400 [================>.............] - ETA: 0s - loss: 4.5481e-04 - acc: 0.9550  

  78. 17000/26400 [==================>...........] - ETA: 0s - loss: 4.5637e-04 - acc: 0.9545  

  79. 18400/26400 [===================>..........] - ETA: 0s - loss: 4.5843e-04 - acc: 0.9545  

  80. 19600/26400 [=====================>........] - ETA: 0s - loss: 4.5833e-04 - acc: 0.9542  

  81. 20800/26400 [======================>.......] - ETA: 0s - loss: 4.5992e-04 - acc: 0.9541  

  82. 22000/26400 [========================>.....] - ETA: 0s - loss: 4.5910e-04 - acc: 0.9539  

  83. 23400/26400 [=========================>....] - ETA: 0s - loss: 4.5795e-04 - acc: 0.9541  

  84. 24800/26400 [===========================>..] - ETA: 0s - loss: 4.5729e-04 - acc: 0.9542  

  85. 26000/26400 [============================>.] - ETA: 0s - loss: 4.5760e-04 - acc: 0.9543  

  86. 26400/26400 [==============================] - 1s 41us/step - loss: 4.5701e-04 - acc: 0.9543  

  87. Epoch 180/200  

  88.   

  89.   200/26400 [..............................] - ETA: 1s - loss: 4.5116e-04 - acc: 0.9750  

  90.  1400/26400 [>.............................] - ETA: 1s - loss: 4.2080e-04 - acc: 0.9593  

  91.  2600/26400 [=>............................] - ETA: 0s - loss: 4.4657e-04 - acc: 0.9550  

  92.  4000/26400 [===>..........................] - ETA: 0s - loss: 4.4213e-04 - acc: 0.9550  

  93.  5400/26400 [=====>........................] - ETA: 0s - loss: 4.4307e-04 - acc: 0.9543  

  94.  6800/26400 [======>.......................] - ETA: 0s - loss: 4.4529e-04 - acc: 0.9541  

  95.  8200/26400 [========>.....................] - ETA: 0s - loss: 4.5188e-04 - acc: 0.9538  

  96.  9400/26400 [=========>....................] - ETA: 0s - loss: 4.5175e-04 - acc: 0.9532  

  97. 10800/26400 [===========>..................] - ETA: 0s - loss: 4.5151e-04 - acc: 0.9530  

  98. 12200/26400 [============>.................] - ETA: 0s - loss: 4.5413e-04 - acc: 0.9531  

  99. 13600/26400 [==============>...............] - ETA: 0s - loss: 4.5633e-04 - acc: 0.9533  

  100. 14800/26400 [===============>..............] - ETA: 0s - loss: 4.5340e-04 - acc: 0.9541  

  101. 16200/26400 [=================>............] - ETA: 0s - loss: 4.5591e-04 - acc: 0.9536  

  102. 17600/26400 [===================>..........] - ETA: 0s - loss: 4.5815e-04 - acc: 0.9540  

  103. 19000/26400 [====================>.........] - ETA: 0s - loss: 4.5785e-04 - acc: 0.9539  

  104. 20400/26400 [======================>.......] - ETA: 0s - loss: 4.5802e-04 - acc: 0.9547  

  105. 21800/26400 [=======================>......] - ETA: 0s - loss: 4.5758e-04 - acc: 0.9550  

  106. 23200/26400 [=========================>....] - ETA: 0s - loss: 4.5662e-04 - acc: 0.9544  

  107. 24400/26400 [==========================>...] - ETA: 0s - loss: 4.5710e-04 - acc: 0.9543  

  108. 25800/26400 [============================>.] - ETA: 0s - loss: 4.5744e-04 - acc: 0.9546  

  109. 26400/26400 [==============================] - 1s 41us/step - loss: 4.5701e-04 - acc: 0.9543  

  110. Epoch 00180: early stopping  

  111.   

  112. Testing ------------  

  113.   

  114.  200/6600 [..............................] - ETA: 0s  

  115. 2600/6600 [==========>...................] - ETA: 0s  

  116. 4600/6600 [===================>..........] - ETA: 0s  

  117. 6600/6600 [==============================] - 0s 25us/step  

  118. test cost: [0.0021578490043545821, 0.94696969335729431]  

  119. ./saveProcessResult/processdataFormat1Random0.png  

可以看到准确率上升了,之前是92%,现在是95.43%,loss已经变得很低,loss: 4.5701e-04 - acc: 0.9543;


可得出以下结论:

(1)在样本数从11000到33000增加之后,准确率增加了(11000时为92.34%)3.09%,loss(之前为0.0025)下降了0.00204299,数量级是100倍的。可见样本数增加了之后,效果极大地得到了提升。

(2)之前是在184epoch停止训练,这次是180, 收敛速度加快。

2 改变batch_size的实验结果

这是在batch_size=200时的结果,试试将batch_size加大会有何变化?试一下800;

也就是说此时,试一下改变网络结构,看看效果如何?

26400/26400 [==============================] - 1s 22us/step - loss: 0.0017 - acc: 0.9270

Epoch 00174: early stopping

更快结束训练,但是准确率却下降了, loss也变的不好了。这说明,越低的batch_size,能够得到约好的结果,但是越低意味着更多的时间。

恢复成200;

3 随机选取33000个样本的实验结果

样本数保持33000, batch_size为200, 网络结构不变,随机选取样本(isRandom为真),dataFormat为1;

结果如下:

23600/26400 [=========================>....] - ETA: 0s - loss: 0.0018 - acc: 0.9456
24800/26400 [===========================>..] - ETA: 0s - loss: 0.0018 - acc: 0.9461
26200/26400 [============================>.] - ETA: 0s - loss: 0.0018 - acc: 0.9457
26400/26400 [==============================] - 1s 40us/step - loss: 0.0018 - acc: 0.9458
Epoch 00032: early stopping

原文出处

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消