Text classification with CNN and Word2vec
本文是参考gaussic大牛的“text-classification-cnn-rnn”后,基于同样的数据集,嵌入词级别所做的CNN文本分类实验结果,gaussic大牛是基于字符级的;
进行了第二版的更新:1.加入不同的卷积核;2.加入正则化;3.词仅为中文或英文,删掉文本中数字、符号等类型的词;4.删除长度为1的词;
训练结果较第一版有所提升,验证集准确率从96.5%达到97.1%,测试准确率从96.7%达到97.2%。
本实验的主要目是为了探究基于Word2vec训练的词向量嵌入CNN后,对模型的影响,实验结果得到的模型在验证集达到97.1%的效果,gaussic大牛为94.12%;
更多详细可以阅读gaussic大牛的博客:text-classification-cnn-rnn
1 环境
python3
tensorflow 1.3以上CPU环境下
gensim
jieba
scipy
numpy
scikit-learn
2 CNN卷积神经网络
模型CNN配置的参数在text_model.py中,具体为:
模型CNN大致结构为:
3 数据集
本实验同样是使用THUCNews的一个子集进行训练与测试,数据集请自行到TH