论文笔记:A Sensitivity Analysis of Convolutional Neural Networks for Sentence Classification

A Sensitivity Analysis of (and Practitioners’ Guide to) Convolutional Neural Networks for Sentence Classification——Ye Zhang,Byron C. Wallace

这篇paper的主要工作是对“Convolutional Naural Networks for Sentence Classification”这篇论文的模型进行了各种各样的对比试验,进而得到了一些关于超参数的设置经验。
文中认为,在CNN模型中,超参数主要有词向量,Region Size的大小,Feature Map的数量,激活函数的选择,Pooling的方法,正则化的影响。论文前面几章对实验内容和结果进行了详细介绍,在9个数据集上基于Kim Y的模型做了大量的调参实验,得出AUC进行比较,最后在第五章给出结论如下:

Summary of Main Empirical Findings

  • 由于模型训练过程中的随机性因素,如随机初始化的权重参数,mini-batch,随机梯度下降优化算法等,造成模型在数据集上的结果有一定的浮动,如准确率(accuracy)能达到1.5%的浮动,而AUC则有3.4%的浮动;
  • 词向量是使用word2vec还是GloVe,对实验结果有一定的影响,具体哪个更好依赖于任务本身;
  • Filter的大小对模型性能有较大的影响,并且Filter的参数应该是可以更新的;
  • Feature Map的数量也有一定影响,但是需要兼顾模型的训练效率;
  • 1-max pooling的方式已经足够好了,相比于其他的pooling方式而言;
  • 正则化的作用微乎其微。

Specific advice to practitioners

  • 使用non-static版本的word2vec 词向量或者GloVe要比单纯的one-hot representation取得的效果好得多(虽然one-hot编码方式在文本分类任务中取得了比较好的效果)。
  • 为了找到最优的过滤器大小(Filter Region Size),可以使用线性搜索的方法。通常过滤器的大小范围在1-10之间,当然如果训练集中的句子长度较大(100+),可以考虑使用较大的ws以获取上下文关系。对不同尺寸ws的窗口进行结合会对结果产生影响。当把与最优ws相近的ws结合时会提升效果,但是如果将距离最优ws较远的ws相结合时会损害分类性能。一般取为3-5。所以刚开始,我们可以只用一个filter,调节Region Size来比对各自的效果,来看看那种size有最好的表现,然后在这个范围在调节不同Region的匹配。
  • **卷积核数量**num_filters也对实验结果比较重要。最好不要超过600,超过600可能会导致过拟合。一般设为100-200。
  • 可以尽量多尝试激活函数,实验发现ReLU和tanh两种激活函数表现较佳;
  • 使用简单的1-max pooling就已经足够了,可以没必要设置太复杂的pooling方式,mean或者k-max pooling效果都不太好。
  • 当发现增加Feature Map的数量使得模型的性能下降时,可以考虑增大正则化的力度,如调高dropout的概率。l2正则化效益很小,所以这里建议设置一个比较大的L2 norm constrain,相比而言,dropout在神经网络中有着广泛的使用和很好的效果,dropout一般设为0.5。
  • 为了检验模型的性能水平,多次反复的交叉验证是必要的,这可以确保模型的高性能并不是偶然。

论文附录中还附上了各种调参结果,感兴趣的可以前往阅读之。

相关阅读笔记参考:
https://github.com/llhthinker/NLP-Papers/blob/master/text%20classification/2017-10/A%20Sensitivity%20Analysis%20of%20(and%20Practitioners%E2%80%99%20Guide%20to)%20Convolutional/note.md

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值