当前位置:   article > 正文

NLP算法竞赛心得_nlp比赛trick

nlp比赛trick

前言

  • 文章来源:CSDN@LawsonAbs
  • 新的学期已经来临,必须要完成一篇顶会 + 一次比赛Top3 的经历!

笔者参加过一些深度学习相关的算法竞赛,但收获一般,这里小结一波,为后续参加比赛的同学提供一点儿经验值。

时常安慰自己,尽管没有拿到很好的名次,但每次比赛都能给自己带来收获和成长。很多事情自己如果没有亲自动手做的话,总会陷入“纸上谈兵”,比如:你真的能一口说出bert-large 和 bert-base 基本参数的差异吗?你是否发现其实真实生活中很多分类问题都存在“长尾问题”?比如每天限制提交的次数就要求我们早做比赛,早划分dev数据集?难分样本就是loss大的样本吗…

下面就说一下我个人认为比较有价值的比赛经验和教训。

1. 划分验证集(dev)

  • 因为很多算法比赛都会限制每天的提交次数,所以我们如果仅靠测评结果来告诉我们模型的效果是远远不够的,所以我们需要使用dev数据集来间接评测效果,如果在dev上效果好,那么就可以考虑提交成绩,否则更换方法重头再来。如果竞赛主办方已给出dev数据集,那就直接使用;如果没有,则需要我们自己手动分割,但是分割的同时又需要注意分割结果是否符合原来的数据集分布,比如在训练集中出现类别不均衡问题时,那么在dev中我们也必须保持同样的分布,即在dev中也要类别不均衡才行!
  • 划分dev的效果还不在与此,可以让我们更好的寻找到train的最优epoch,因为我们自己没有办法确定在test上具体需要train 到哪一epoch时才能达到最优,所以此时就需要使用dev来判断。

2. 模型保存

模型保存问题也很重要,而且尽量以dev的测评最优保存模型,这再次说明dev 的重要性。同时保存模型时,也必须要输出其运行使用的参数配置,比如学习率,lable smooth 中的 ϵ \epsilon ϵ ,训练用的数据集等等,这样方便自己回溯任务,否则实在难记忆这么多模型到底是怎么得到的!

3. 仔细分析问题

  • 拿到比赛题之后,首先要分析(这应该是我们做任何事情的黄金准则)。判断其是否在现有的资源情况下解决这个问题。比如说有的时候比赛就是靠卡+数据堆出来,所以当你没有显卡资源的时候,你是怎么都竞争不过对手的,所以拿到问题,就需要考虑一下是否能做?

  • 搞清楚网站评测的标准是什么。比如说:是用的F1,还是recall?还是precision? 如果是F1,且在多分类问题上,是 macro f1 还是 micro f1? 如果是 macro f1, 那么说明所有类别对最后的值都有影响,那么是否存在“类别不平衡”问题?针对这些评测标准,我们就需要考虑我们自己的模型到底在哪些地方存在问题,然后再选择改进。简言之:我们需要仔细考虑评测标准,然后再针对已有模型改进。

这些天在做【第五届达观杯】分类任务,深有体会:

  • 做好数据分析工作,这部分工作很重要,是因为只有了解数据,才能知道问题的难点是什么。比如在这个任务中,难点就在于难样本的分析。
    在这里插入图片描述
    下面几个黄色框中就是难样本,怎么提升这些类别才是整个问题的关键。

4. 猜测答案

如果时间充足,比如我们还有60天才结束,这个时候就可以使用一些trick 去猜测某类答案到底占最后的结果有多大的比例。比如我们提交一份结果,该结果中的所有类别都是其中某一类,这样我们就可以大概猜测出其分数占比。

5. 充分利用开源资源

其实有狠多比赛都是重复度极高的,换个马甲就可以参加下一场比赛了。所以强烈建议大家先搞懂一个比赛,熟悉其代码体系,然后整个研究生三年几乎都可以用同套代码来完成任务,这么说毫不夸张!所以先精通某个东西,然后将其迁移到其它方面是个很不错的选择!
还以我近期正在参加的【第五届达观杯】为例,因为官方给出的数据集是脱敏数据,所以这是一个需要预训练的任务,但是问题在于,该怎么预训练呢?很多人第一时间就会想到使用给出的 73G 的unlable数据集预训练,其实这么做完全没有必要,因为稍作分析就会发现 train+test 中的文本和 unlabel 的文本差的太远了。 train+test 中的数据分布(仅从文本长度考虑)长成如下这样:
在这里插入图片描述
但是 unlabel 中的数据则几乎每个文本长度都超过500+,如果在unlabel数据集上预训练,几乎是南辕北辙!事实也证明确实如此,在小范围的使用unlabel预训练之后,再在train+test上预训练,效果差不多提升4~5个点。但是仅仅使用初始的mlm这种方法预训练还是不够的,最好还要同时利用语句中的ngram信息,这就引出了 ngram mask 任务… 其实这些操作网上都有很好的开源代码,照着分析,照着读就能很好地解决问题!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/838667
推荐阅读
相关标签
  

闽ICP备14008679号