基于GCN和句法依存分析的情感分析

简介: (1)构建/利用图结构核心问题:针对某个特定任务构建一个图来使用潜在的信息。因为有些任务中,图数据是给定的(如引用网络、社交网络、推荐系统的图数据等),但是有些图结构并不明显,所以需要转为一个图上可以解决的问题(如节点分类、链路预测等)。

一、知识铺垫

1.1 GNN的应用模式

(1)构建/利用图结构

核心问题:针对某个特定任务构建一个图来使用潜在的信息。

因为有些任务中,图数据是给定的(如引用网络、社交网络、推荐系统的图数据等),但是有些图结构并不明显,所以需要转为一个图上可以解决的问题(如节点分类、链路预测等)。

(2)图作为外部知识

虽然一些任务本身和图没有啥关系,但是可以找到一些图结构的辅助信息,如引入知识图谱等。ex:如药物交互图可以作为外部知识辅助药物推荐;实体关系图可以作为额外信息帮助阅读理解。

(3)创造新的图

如在NLP的文本生成,或者语义解析等任务中。

要生成文本 or 逻辑语言可以认为是一个图结构,所以需要一个基于图神经网络的解码器。

1.2 以往的方法

以往处理情感分析问题,虽然也用了深度学习的方法提取语义特征,但是文本中的句法结构信息(其实一种图数据)经常被忽略。如果仅将依存句法信息用于规则构造和特征抽取,那么句子中成分间的非线性语义关系便没有被学习和利用。

image.png

(2)Bastings 等[21]基于句子的依存句法树信息对句子中的词进行表示,之后利用GCN进行机器翻译任务。

二、本文的研究方法:

(1)依存句法分析图中的节点特征:结合LSTM和注意力机制,抽取的文本特征。

(2)用GCN对(1)中生成的节点特征,和依存句法分析图的邻接矩阵进行训练。

(3)输出负面情感类别(愤怒、厌恶、恐惧和悲伤)

三、模型思想

image.png

四、实验过程

(1)先用word2vec对舆情文本进行无监督训练,得到含语义信息的词向量,即文本表示l。

(2)对(1)得到的l句子,使用Bi-LSTM进行特征提取,获得隐含层特征(由正向和反向的LSTM抽取出的特征拼接而成)。

(3)在Bi-LSTM加入注意力机制:增强句子中的情感语义信息,提升因递归减少的捕捉长距离依赖的能力。PS:自注意力机制本质上是输入Query (Q ) 到一系列键值对( Key ( K ),Value (V ) ) 的映射函数。Q,K,V 分别是由查询向量、键向量、值向量构成的矩阵。

(4)如上图右边的依存句法树(的邻接矩阵),直接输入GCN模型,得到特征z i z_iz

i

image.png

其中:

R e L U ReLUReLU是激活函数

A为邻接矩阵

D ~ \tilde{D}

D

~

是A的度矩阵

W C W_{C}W

C

是GCN中的权重矩阵

具体的栗子(从依存句法树转为邻接矩阵):

image.png

(5)对(4)得到的句子特征进行平均池化,再输入全连接层(激活函数为softmax),得到分类的情感label。

指标:准确率(Accuracy)、宏精确率(Macro_Precision)、宏召回值(Macro_Recall)和宏F1值(Macro_F1)作为模型的评估指标。

PS:其中隐藏层单元数和 GCN 的层数等超参数,作者进行调节分析,找到最佳值,如GCN层数, GCN 层数超过 3 时,模型性能出现较大回落,学习能力锐减。所以将GCN层数设置为1:

image.png

五、优点和局限性

5.1 优点

有画出不同模型的在情感分类任务中的混淆矩阵,还特别提到在恐惧情感中,本文模型的准确率达到了93.535%,相比BiLSTM-GCN和BiLSTM-Attention有较大提升。也说明了说明引入文本的依存句法结构以及应用自注意力机制和GCN的优势。

image.png

【混淆矩阵】

下面涉及英文缩写,第一个字母T和F代表True和False;第二个字母P和N代表阴性(Positive)和阳性(Negative),即预测结果。

真阳性TP:预测值和真实值都为正例;

真阴性TN:预测值与真实值都为正例;

假阳性FP:实际值为负,但预测值为正;

假阴性FN:实际值为正,但预测值为负;

image.png

TP反应预测为真的样本也是正样本的样本数。

image.png

5.2 局限性

和顶会相比是有不少局限性的:

(1)数据是用自己爬的数据,并没有用公开的数据集;

(2)模型进行比较时,用的baseline如CNN、logistic较为简单;当然也有用其他baseline如BiLSTM-GCN、BiLSTM-Attention、BiLSTM等进行对比试验。

(3)图神经网络算法并没有改动较大,只是进行模型的组装。

六、下一阶段

解读ACL论文:

Graph Convolutional Networks for Text Classification(用于文本分类的图卷积网络)

论文:https://arxiv.org/abs/1809.05679v1

相关文章
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
基于非英语数据集的图形机器学习和集成学习方法增强文本分类和文本情感分析
基于非英语数据集的图形机器学习和集成学习方法增强文本分类和文本情感分析 摘要 近年来,机器学习方法,特别是图学习方法,在自然语言处理领域,特别是文本分类任务中取得了巨大的成果。然而,许多这样的模型在不同语言的数据集上显示出有限的泛化能力。在本研究中,我们在非英语数据集(如波斯语Digikala数据集)上研究并阐述了图形机器学习方法,该方法由用户对文本分类任务的意见组成。更具体地说,我们研究了(Pars)BERT与各种图神经网络(GNN)架构(如GCN、GAT和GIN)的不同组合,并使用集成学习方法来处理某些知名的非英语数据集上的文本分类任务。我们的分析和结果表明,应用GNN模型可以更好地捕捉文
92 0
|
4月前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
143 1
|
2月前
|
机器学习/深度学习 数据采集 人工智能
Python实现深度神经网络RNN-LSTM分类模型(医学疾病诊断)
Python实现深度神经网络RNN-LSTM分类模型(医学疾病诊断)
Python实现深度神经网络RNN-LSTM分类模型(医学疾病诊断)
|
7天前
|
机器学习/深度学习 自然语言处理 计算机视觉
用于图像和用于自然语言的神经网络区别
主要区别总结 数据结构:图像数据是二维像素矩阵,具有空间结构;文本数据是一维序列,具有时间结构。 网络架构:图像处理常用CNN,注重局部特征提取;自然语言处理常用RNN/LSTM/Transformer,注重序列和全局依赖。 操作单元:图像处理中的卷积核在空间上操作;自然语言处理中的注意力机制在序列上操作。
9 2
|
4月前
|
机器学习/深度学习 算法框架/工具
数据分享|R语言用Keras长短期记忆LSTM神经网络分类分析问答文本数据
数据分享|R语言用Keras长短期记忆LSTM神经网络分类分析问答文本数据
|
4月前
|
机器学习/深度学习 移动开发 自然语言处理
基于BiLSTM-CRF模型的分词、词性标注、信息抽取任务的详解,侧重模型推导细化以及LAC分词实践
基于BiLSTM-CRF模型的分词、词性标注、信息抽取任务的详解,侧重模型推导细化以及LAC分词实践
基于BiLSTM-CRF模型的分词、词性标注、信息抽取任务的详解,侧重模型推导细化以及LAC分词实践
|
4月前
|
机器学习/深度学习 自然语言处理 算法
【Python自然语言处理】概率上下文无关文法(PCFG)及神经网络句法分析讲解(图文解释 超详细)
【Python自然语言处理】概率上下文无关文法(PCFG)及神经网络句法分析讲解(图文解释 超详细)
159 0
|
机器学习/深度学习 自然语言处理 搜索推荐
基于GCN和句法依存分析的情感分析
(1)构建/利用图结构 核心问题:针对某个特定任务构建一个图来使用潜在的信息。 因为有些任务中,图数据是给定的(如引用网络、社交网络、推荐系统的图数据等),但是有些图结构并不明显,所以需要转为一个图上可以解决的问题(如节点分类、链路预测等)。
557 0
基于GCN和句法依存分析的情感分析
|
自然语言处理
使用bert+lstm+crf做实体识别经验总结
使用bert+lstm+crf做实体识别经验总结
165 0
|
机器学习/深度学习 Python
python CNN和词向量的句子相似性计算系统
python CNN和词向量的句子相似性计算系统
95 0
python CNN和词向量的句子相似性计算系统