APP下载

基于多类型池化卷积神经网络的文本分类

2021-10-18张菊玲杨晓梅

无线互联科技 2021年16期
关键词:文本分类自然语言处理卷积神经网络

张菊玲 杨晓梅

摘 要:为了解决传统的基于机器学习方法的文本分类耗时耗力、不具备通用性、效果不好的问题及提高短文本分类的效果,文章提出了一种基于多类型池化的卷积神经网络分类方法。文章首先使用CNN(卷积神经网络)提取短文本的特征信息,然后利用多种类型的池化操作对提取的特征信息进行筛选,得到最终的分类依据。通过实验表明,文章提出的方法在短文本分类上要优于其他CNN分类模型和一些传统的机器学习方法。

关键词:自然语言处理;文本分类;卷积神经网络;特征提取;池化操作

0 引言

文本分类问题是自然语言处理领域中一个非常经典的问题,也是实际应用中管理文本信息的一种重要方法,并在信息过滤、信息组织管理、文本信息异常检测、语义辨析和情感分析等领域得到广泛的应用和发展。本文提出一种基于多类型池化的卷积神经网络模型对短文本进行分类,实验结果表明,基于多类型池化的神经网络结构在短文本分类上表现效果良好。

1 卷积神经网络

卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,它是一种深度学习的经典方法。一般的,CNN的基本结构包括3种类型的网络层:卷积层、激活函数层、池化层。卷积层是CNN中必不可少的一种网络层,是构成卷积神经网络的基本框架。在视觉中,卷积层的输入一般是一个二维的张量I,相应的,在张量I上进行卷积操作就需要一个二维的卷积核K,设mn分别为卷积核的长和宽,且卷积核一般小于输入张量大小,每個卷积核的参数在训练过程中都是通过BP算法[1]优化得到的。卷积运算是一种特殊的矩阵乘法运算,通过公式(1)或公式(2)的卷积运算得到包含数据信息的特征图S

(1)

(2)

由于mn的有效取值范围比较小,故一般采用公式(2)的实现方式。

激活函数层主要用来引入非线性因素,常用的激活函数有ReLU函数[2]、Tanh函数等。激活函数中线性整流单元ReLU是最常用的,其数学公式见公式(3)。

(3)

池化是指使用一定区域的统计特征来代替当前区域的操作。池化操作方法一般有最大池化和平均池化,如图1所示。

2 基于多类型池化的方法

2.1 模型训练基本流程

短文本分类模型在训练过程中一共经历4个阶段,整体模型训练流程如图2所示。

首先设置训练迭代次数Num和训练目标e;每次迭代开始,选取一小部分训练数据通过词向量矩阵映射成连续稠密的连续词向量数组;再将数据传入卷积神经网络层,进行特征提取、组合和特征筛选,得到模型的预测结果;再进行反向传播算法,更新相应的神经网络参数,训练次数加1,判断训练次数是否达到总训练次数Num或目标是否达到e。如果上述两个条件都没有达到就继续进行模型训练,否则模型训练结束。

2.2 词向量

进行文本分类时,得到的数据是由多个单词所组成的多个语句。显然这样的数据不能直接拿来使用,必须要对它们进行处理。传统的做法是使用one-hot编码[3]来对每个句子进行编码,假设词典的大小为vocab_size,文本中出现的每个词都在词典中,其中第i个词用向量x=[0,0, … ,0,1,0, … ,0]表示,向量x中第i位为1,其余位全为0,用one-hot编码表示文本很简单。

如公式(4)所示,word为文本单词,v为词向量化后所对应的词向量,d为向量v的维数:

(4)

2.3 多尺寸卷积

设卷积前的输入为xii=1,2,…,n),卷积核权重为wjj=1,2,…,k),卷积输出为yj(l=1,2,…,m),L为对应的损失函数,卷积可以分为前向传播和后向传播两个过程,如公式(5)和(6)所示。

(5)

(6)

本文引入多尺寸的卷积核,在进行短文本的卷积时,可以捕获更多的文本信息。

2.4 多类型池化

卷积层提取到对应的特征信息后,需要对这些特征信息进一步筛选。本文使用多种类型的池化操作对特征信息筛选。

设池化前的输入是xii=1,2,…,n),池化核权重是wjj=1,2,…,k),池化输出是yll=1,2,…,m),由公式(7)计算池化输出。

yj=max(wj×xi)(7)

池化层的作用是固定句子长度和特征筛选,多类型池化操作如图3所示。

3 实验结果

本文使用上述方法进行了TREC数据分类,基本学习率lr=0.025,衰减系数=0.95。本文使用stop-early的优化技巧,防止模型训练的过拟合。本研究设置了一组对比实验,只使用最大池化方式训练的模型Only-maxPooling,只使用平均池化方式训练的模型Only-argPooling和多类型池化方式Multi-typePool(见图3)。

TREC数据集涉及6类不同的问题类型,训练数据集包含 5 452條带标签问题,同时包含500条测试问题数据。在该数据集上,各个模型表现效果如表1所示。

从实验结果可以看出,本文所提出的模型在TREC数据集上的表现效果要优于其他的网络模型。

4 结语

本文所提出的基于多类型池化的卷积神经网络结构在短文本分类上相对于其他CNN系网络结构和传统机器学习方法来说优势明显。下一步可以对数据集和词向量进行操作。

[参考文献]

[1]JAAFAR H, RAMLI N H, NASIR A S A. An improvement to the k-nearest neighbor classifier for ECG database[J].IOP Conference Series Materials Science and Engineering,2018(1):12046.

[2]LI X,GUO Y. Active learning with Multi-Label SVM classi?cation[C]//Beijing:Proceedings of Twenty-Third International Joint Conference on Artificial Intelligence,2013.

[3]ASADI R,REGAN A. A spatial-temporal decomposition based deep neural network for time series forecasting[EB/OL].(2014-11-28)[2018-10-20].https://arxiv.org/pdf/1902.00636.

(编辑 王永超)

Text classification based on multi-type pooling convolution neural network

Zhang Juling, Yang Xiaomei

(School of Information Management, Xinjiang University of Finance and Economics, Urumqi 830000, China)

Abstract:To solve the problems of traditional text classification based on machine learning method, such as time consuming, labor consuming, lack of generality and poor effect, and to improve the effect of short text classification, a CNN(Convolution Neural Network)classification method based on multi-type pooling was proposed. Firstly, CNN is used to extract the feature information of the short text, and then various types of pooling operations are used to screen the extracted feature information to obtain the final classification basis. Experiments show that the short text classification in this paper is superior to other CNN classification models and some traditional machine learning methods.

Key words:natural language processing; text classification; convolutional neural network; feature extraction; pooling operation

基金项目:新疆自然科学基金项目;项目编号:2019D01A27。新疆财经大学校级一般项目;项目编号:2019XYB005。

作者简介:张菊玲(1977— ),女,四川简阳人,副教授,博士;研究方向:大数据,逻辑综合,信息安全风险评估。

猜你喜欢

文本分类自然语言处理卷积神经网络
基于深度卷积神经网络的物体识别算法
基于组合分类算法的源代码注释质量评估方法
基于贝叶斯分类器的中文文本分类
文本分类算法在山东女子学院档案管理的应用
基于卷积神经网络的树叶识别的算法的研究
面向机器人导航的汉语路径自然语言组块分析方法研究
汉哈机器翻译中的文字转换技术研究
HowNet在自然语言处理领域的研究现状与分析