前言

读完几篇论文后本打算对CNN的原理做一些个人的理解和分享,但在看完这几个博客后,完全打消了这种念头,因为,写的实在太好了,不好意思再插一脚,献个丑。废话不多说,献上传送门!

[1]YJango大神(生物学角度的解读):https://zhuanlan.zhihu.com/p/27642620

[2]Yoon Kim论文(CNN在文本分类中的应用):https://arxiv.org/pdf/1408.5882.pdf (EMNLP 2014);

CNN原理解读_CNN文本分类应用

论文图

CNN原理解读_CNN文本分类应用

论文中的实验

1.模型

1)CNN-rand: 所有的word vector都是随机初始化的,同时当做训练过程中优化的参数;

2)CNN-static: 所有的word vector直接使用无监督学习即Google的Word2Vector工具(COW模型)得到的结果,并且是固定不变的;

3)CNN-non-static: 所有的word vector直接使用无监督学习即Google的Word2Vector工具(COW模型)得到的结果,但是会在训练过程中被Fine tuned;

4)CNN-multichannel: CNN-static和CNN-non-static的混合版本,即两种类型的输入;

2.数据

word2vec使用谷歌预训练的GoogleNews-vectors-negative300.bin

3.数据集

CNN原理解读_CNN文本分类应用

4.训练和调参

1)filter window(kernel)的高度(h):3,4,5;每个高度的Feature Map的数量为100,一共300个Feature Map;

2)Dropout rate 0.5;

3)L2 constraint (正则化限制权值大小)不超过3;

4)mini-batch size 50;

5)通过网格搜索方法(Grid Search)得到的最优参数;

6)优化器使用Adadelta。

5.结果

CNN原理解读_CNN文本分类应用
(详细的实验解读:http://www.jianshu.com/p/594d1984fbd9

[3]对“卷积”的理解:https://www.zhihu.com/question/22298352?rf=21686447

[4]CNN在NLP中的应用:http://www.cnblogs.com/yelbosh/p/5808706.html

相关文章: