Ai challenger 2017 image caption小结

参加了今年的ai challenger image caption比赛,最终很幸运的获得了第二名。这里小结一下。

 

  1. Pytorch 越来越火了。。 前五名有三个pytorch 两个tensorflow 关于哪个learning frame work 更适合图像nlp相关的应用 我觉得用户用脚投票使用程度说明一切。tensorflow有强大的slim图像库支持,比如nasnet是slim最先支持的毕竟google原版。。。,但是在很多比赛灵活性上对比pytorch还有欠缺 比如强化学习feed dict较慢,比如多模型ensemble实现per step的投票 beam search比较麻烦,甚至一个in graph的beam seach相比pytorch也麻烦很多,希望后面eagar模式能改变这些。
  2. 最佳的caption利器当属微软的

    Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering

       

    来自 <https://arxiv.org/abs/1707.07998>

    前五名除了我都使用这个思路, 因此我的单模型效果(show attention and tell)是相对最差的。。

  3. 强化学习非常重要

    其它选手都通过强化学***提升了客观分数,但是仅仅优化类似cider这样的指标的强化学习可能会使得句子通顺度弱于优化cross entropy可能是这个原因我的主观流畅性打分最高..

  4. 调参和一些细节是至关重要的
    1. 比如lstm hidden size 大部分选手可能使用512 而有的选手使用2048 提升明显
  5. 我使用light gbm 进行gbdt rerankcider提升了10个点 这里为 lightgbm call 194w样本,52维特征,5交叉验证regression 只需要3分钟, lamdamart 排序只需要5分钟。
  6. 这里开源了本次比赛我使用的代码,欢迎contribute,特别是对强化学习的修改及改进,很遗憾尽管我也实现了scst但是没有达到理想效果几个指标只有meteor提升,其余指标下降。

https://github.com/chenghuige/image-caption-ai-challenger2017

   

   

posted @ 2017-12-23 15:48  阁子  阅读(4359)  评论(1编辑  收藏  举报