文本分类是NLP自然语言处理中一项基本功能,它在新闻分类、主题分类、问答匹配、意图识别、情感分类、推断等领域都有涉及。
学习应用文本分类任务的难点有被识别语言的复杂性和评测函数的设计等,本篇将介绍一个NLP中的深度学习模型——TextCNN模型,CNN的核心思想是捕捉局部特征,对于文本来说,局部特征就是由若干单词组成的滑动窗口,形同N-gram,CNN的优势在于能够自动地对N-gram特征进行组合筛选从而获得不同抽象层的语义信息。下面这张图是很多博客中引用的一张TextCNN介绍图,具体介绍可以参考下面链接中的一篇文章:1510.03820.pdf (arxiv.org)
这张图最左边是一个初始文本(初始数据集),我们把句子中的每一个单词提取出来,为他构建一个五维的向量描述一个词,第二步就是选择卷积核,这里可以根据实际情况自己选择,可以把他理解为一个滑动窗口,没构造一个卷积核后就将滑动窗口向下滑动若干行,在第三步中就是对每个卷积核来通过过滤层对数据做处理,这里用到的就是文本分类的核心卷积神经网络,具体实现方法也推荐一篇文章,里面对卷积神经网络讲解的也十分清楚: