1.一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述分类方法具体如下:步骤1、对数据进行预处理;
步骤2、根据所述预处理后的数据,通过Word2vec方法完成对每个单词的词向量的生成与训练;
步骤3、根据所述词向量,对该词向量进行文本语义特征抽取,并融合注意力机制和双向循环神经网络,计算出每个单词对于整体的权重,并将所述权重转换为模型的输出值Y(4);
步骤4、根据特征向量Y(4),将所述特征向量Y(4)作为softmax分类器的输入,进行分类识别。
2.根据权利要求1所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤1具体过程如下:步骤1.1、数据清洗,去除噪声和无关数据;
步骤1.2、数据集成,将多源数据结合起来存放在统一的数据仓库中;
步骤1.3、构造实验数据集,选择80%数据作为训练集,其余20%数据作为测试集;
步骤1.4、对数据集进行按词语为单位做分词处理;
步骤1.5、去除停用词,清除文本中对表征文本不起作用的词语。
3.根据权利要求1或2所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤2具体过程如下:步骤2.1、将分词后的文本输入到Word2vec模型中,随机生成一个词向量矩阵E={e(w1),e(w2),...,e(wn)},其中每个词的语义都是由一个向量进行表示;
步骤2.2、在每一个单词上均使用逻辑回归算法进行训练,预测出最有可能在该单词周围词的词向量,具体公式如下:其中:wi为当前词;Cij为当前词的上下文;c为上下文窗口内的词;θ为后验概率参数;
步骤2.3、在模型逐渐达到收敛的过程中,获取词向量在词向量矩阵中的值,得到所有词的词向量。
4.根据权利要求3所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤3具体过程如下:步骤3.1、采用双向循环结构,获取每个词语的上下文表示;
步骤3.2、根据每个词语的上下文表示,获取每个词语的语义表示Xi,具体公式如下:Xi=[Ml(wi);e(wi);Mr(wi)]其中:Mr(wi)为当前词的左侧语义表示;Mr(wi)为当前词的右侧语义表示;e(wi)为当前词的词向量;
步骤3.3、将单词语义表示Xi经过一个双向循环神经网络,获取其隐含表示Ui;
步骤3.4、根据单词最终隐含表示Ui,进行注意力分配概率计算,将单词表示进行一个Encoder-Decoder的过程,将某一时刻的输入值的权重与上一时刻的隐含层的状态进行相似度检测,得到每个单词对于整体的权重,对每个单词的语义表示分配以不同的权重;
步骤3.5、通过池化层进行降维操作,将不同长度的文本转换为固定长度的向量Y(3),具体计算公式如下:步骤3.6、通过一个线性神经网络得到模型的输出值Y(4),具体计算公式如下:Y(4)=W(4)Y(3)+b(4)
其中:W(4)为初始化的转换矩阵;b(4)为偏置单元。
5.根据权利要求4所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤3.1具体过程如下:步骤3.1.1、获取单词的前文语义表示Ml(wi),其中Ml(wi)具体定义如下:Ml(wi)=f(W(i)Ml(wi-1)+W(sl)e(wi-1))其中:f为sigmod激活函数;W(l)为用于隐藏层中前文语义转化为下一层隐藏层的矩阵;
W(sl)为用于连接当前词与前文语义的矩阵;wi-1为当前词的前一个词;e(wi-1)为当前词前文词语的词向量;
步骤3.1.2、获取单词的后文语义表示Mr(wi),其中Mr(wi)具体定义如下:Mr(wi)=f(W(r)Mr(wi+1)+W(sr)e(wi+1))其中:f为sigmod激活函数;W(r)为用于隐藏层中后文语义转化为下一层隐藏层的矩阵;
(sr)
W 为用于连接当前词与后文语义的矩阵;wi+1为当前词的后一个词;e(wi+1)为当前词后文词语的词向量。
6.根据权利要求4所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤3.3具体过程如下:步骤3.3.1、通过正向传输,获取当前单词的正向隐含表示 具体计算公式如下:其中:f为tanh激活函数; 当前词之前状态的隐含表示;Xi为当前词语义表示;
步骤3.3.2、通过逆向传输,获取当前单词的逆向隐含表示 具体计算公式如下:其中:f为tanh激活函数; 为当前词之后状态的隐含表示;Xi为当前词语义表示;
步骤3.3.3、根据所述当前单词的正向隐含表示 和当前单词的逆向隐含表示 获取当前单词的最终隐含表示Ui,具体计算公式如下:。
7.根据权利要求4所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤3.4具体过程如下:步骤3.4.1、在Encoder编码阶段得到句子的隐含表示序列[U1,U2,U3,...,Un];
步骤3.4.2、在Decoder解码阶段,计算第i-1时刻隐含层状态与输入中各个隐含表示之间的关联程度Pij,具体计算公式如下:Pij=f(Ti-1,Uj)
其中:f为一个小型神经网络,用于计算Ti-1和Uj两者之间的关系分数;Ti-1为解码器在第i-1时刻的隐含层节点状态;
步骤3.4.3、使用softmax函数进行归一化操作,获取i时刻的输出值在n个隐藏状态中的注意力分配向量Aij,具体计算公式如下:步骤3.4.4、根据所述单词的隐含表示Uj与注意力权重Aij,进行加权和得到每个单词wi基于整体内容权重的表示Yi(2),具体计算公式如下:。
8.根据权利要求3所述一种基于双向循环注意力神经网络的文本分类方法,其特征在于,所述步骤4具体过程如下:步骤4.1、将已经标注好类别的训练集特征向量及其类别均输入到分类器进行训练;
(4)
步骤4.2、将训练好的softmax模型对测试集文本的特征向量Y 进行分类操作,得到一个一维向量Pθ(Y(4)),具体公式如下:其中:θm为模型训练第m类别的参数; 为θm的转置操作结果;k为预设的文本分类种类数量;
步骤4.3、根据所述一维向量Pθ(Y(4)),选取一维向量Pθ(Y(4))中值最大的元素。