趁机总结一下之前遇到过的一些小trick吧:
- 数据预处理时vocab的选取(前N个高频词或者过滤掉出现次数小于3的词等等)
- 词向量的选择,可以使用预训练好的词向量如谷歌、facebook开源出来的,当训练集比较大的时候也可以进行微调或者随机初始化与训练同时进行。训练集较小时就别微调了
- 结合要使用的模型,这里可以把数据处理成char、word或者都用等
- 有时将词性标注信息也加入训练数据会收到比较好的效果
- 至于PAD的话,取均值或者一个稍微比较大的数,但是别取最大值那种应该都还好
- 神经网络结构的话到没有什么要说的,可以多试几种比如fastText、TextCNN、RCNN、char-CNN/RNN、HAN等等。哦,对了,加上dropout和BN可能会有意外收获。反正模型这块还是要具体问题具体分析吧,根据自己的需求对模型进行修改(比如之前参加知乎竞赛的时候,最终的分类标签也有文本描述,所以就可以把这部分信息也加到模型之中等等)
- 超参数的话,推荐看看之前TextCNN的一篇论文,个人感觉足够了“A Sensitivity Analysis of (and Practitioners’ Guide to) Convolutional Neural Networks for Sent