样本不平衡问题小记

来准备用VGG来做些fine-tuning快速交个差,结果半天卡在0.3升不上去.入行没多久,不能肯定是方向有问题,找了个PASCAL VOC跑跑分类.

结果发现总是卡在0.2左右,在metric.py里改了几行(草根就该用MXNet),把predict_labelground truth打出来,发现跑着跑着预测值就跑到14上去了(g 的拼音输入法好像分不清yv这音...搜狗输入法好像又蹦了),一翻doc发现对应的是person…1994 ,第二名dog…632...(那个忠诚的什么来着,,,).

想想大神们肯定早就为小白们准备好方案了,之前建一个分割网络的时候也遇到了类似的问题不过用些草根方法糊弄过去了,这次准备走走学术路线高端一把,网上逛了一圈好像也没什么意外的收获(看到一些大神说9:1也不算不平衡的云云,我就在想是不是显卡太渣导致batch size太小了,还是其中另有玄机...恕小人愚钝了),想了一下还是老老实实去平衡迭代器的样本吧.
吃完晚饭回来看看,似乎能够work了.
贴一行输出,杀个尾.

    [2017-03-20 18:29:14,990] {/home/chen-k/mxnet/python/mxnet/callback.py:122} INFO - Epoch[5] Batch [2000] Speed: 5.40 samples/sec Train-accuracy=0.696000
    [2017-03-20 18:29:16,842] {/home/chen-k/mxnet/python/mxnet/metric.py:152} INFO - not equal, argmax_channel: [ 16. 8. 4. 15. 12. 18. 9. 13. 0. 5.]groundTruth: [ 16. 19. 10. 10. 12. 0. 9. 13. 0. 5.]
原文地址:https://www.cnblogs.com/chenyliang/p/6780362.html