首页> 中国专利> 基于句内词对关系和上下文用户特征的反讽检测方法

基于句内词对关系和上下文用户特征的反讽检测方法

摘要

本发明公开了一种基于句内词对关系和上下文用户特征的反讽检测方法。本发明用自注意力机制(也称内部注意力机制)去分析文本中情感极性矛盾的词对。通过学习并融合用户的书写风格特征和性格特征得到用户嵌入(user embeddings),作为反讽检测的上下文信息。同时结合LSTM网络编码文本的序列信息。这种方法能够更好的检测反讽表达,在反讽表达明显或者隐晦的情况下都可以取得不错的准确率。其中具体发明的基于句内词对关系和上下文用户特征的反讽检测模型。本发明为反讽检测提供判别依据,有利于判别没有明显矛盾词对的反讽文本。从这两个角度提高了反讽检测的准确率。

著录项

  • 公开/公告号CN110162625A

    专利类型发明专利

  • 公开/公告日2019-08-23

    原文格式PDF

  • 申请/专利权人 杭州电子科技大学;

    申请/专利号CN201910315886.1

  • 申请日2019-04-19

  • 分类号

  • 代理机构杭州君度专利代理事务所(特殊普通合伙);

  • 代理人朱月芬

  • 地址 310018 浙江省杭州市下沙高教园区2号大街

  • 入库时间 2024-02-19 13:45:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-01-14

    授权

    授权

  • 2019-09-17

    实质审查的生效 IPC(主分类):G06F16/35 申请日:20190419

    实质审查的生效

  • 2019-08-23

    公开

    公开

说明书

技术领域

本发明涉及情感分类领域,具体涉及一种基于句内词对关系和上下文用户特征的反讽检测方法。

背景技术

反语(Irony)和讽刺(Sarcasm)是社会媒体中常用的修辞方法。反语是指运用跟本意相反的词语来表达此意,却含有否定、讽刺以及嘲弄的意思。讽刺则是用比喻、夸张等手法对人或事进行揭露、批评或嘲笑。关于反语和讽刺的关系,可以认为讽刺是包含情绪(比如攻击性情绪)的一种反语。本文将反语和讽刺统称为“反讽”,不再对反语和讽刺进行区分。反讽的比喻性质对情感分析任务提出了巨大的挑战。

目前,反讽检测研究主要存在以下难点:(1)单纯的文本信息,缺乏说话人的性格以及说话人的写作风格等信息,难以判断是否是反讽;(2)由于社交媒体或者会话中,以短文本多见,文本长度制约了反讽检测模型对上下文信息的获取;(3)反讽类型的表达方式与字面意思无关,需要获取深层的语义信息,才能准确的检测反讽;

现有方案大部分依赖LSTM或GRU等文本序列模型。首先,这类序列建模的方法无法有效挖掘句子内部词与词之间的矛盾不协调,不能捕获长距离依赖。其次,在句中不存在情感极性明显相反的词对的情况下,LSTM无法从上下文中学习到重要的用户背景等语境信息。

发明内容

本发明的目的是针对现有反讽检测技术的不足,提供一种新的对网络文本进行反讽检测的方法。提出了基于句内词对关系和上下文用户特征的反讽检测方法。首先,用自注意力机制捕获句子内部的词对关系,找出句子中存在矛盾的词对。既解决LSTM序列建模无法捕获长距离依赖的问题,又可以突出句子内部的不协调性。然后,用CNN预训练模型判断用户的性格类型,同时,用Paragraph Vector将用户发布的历史评论已文本向量的形式表示,代表用户的书写风格。接着,将两者融合后得到用户特征(user embedding),作为反讽检测的外部信息。最后,用LSTM编码句子的成分信息,结合句内词对关系和用户特征来判断目标句是否属于讽刺。

本发明解决其技术问题所采用的的技术方案如下:

步骤1、对需要进行反讽检测的评论文本进行预处理;

步骤2、用自注意力机制对每个单词进行关联建模,获得句内注意力表示;

步骤3、用Paragraph Vector将每个用户的评论以文档向量的形式表示,为每个用户生成书写风格特征向量;

步骤4、根据用户发布的文本,通过预训练的性格检测CNN模型判断用户的性格特征;

步骤5、用典型相关分析算法对用书写风格特征和用户个性特征进行特征融合,获取融合特征;

步骤6、用LSTM对每个文本评论进行序列化建模,得到句子表示特征;

步骤7、连接步骤4、5、6中学习到的特征,对句子是否反讽进行判断。

本发明的优点及有益效果如下:

本发明主要为了解决对网络文本进行反讽检测的任务。现有的方法依靠一般的LSTM对文本进行序列建模,得到的结果准确率较低。本发明采用的技术方案是,用自注意力机制计算文本中词与词之间的相似性,找到文本中存在的矛盾的、不协调的关系,还解决了LSTM不能捕获远距离依赖的问题。同时,学习用户的书写习惯特征和个性特征,将两者融合后得到的用户嵌入(user embeddings)。用户嵌入包含的用户信息作为文本的上下文语境信息,为反讽检测提供判别依据,有利于判别没有明显矛盾词对的反讽文本。从这两个角度提高了反讽检测的准确率。

附图说明

图1是本发明所述方法的流程框图。

图2是本发明所述模型方法的架构图。

图3是本发明所述模型中自注意力机制的架构图。

图4是学习用户书写特征的架构图。

图5是检测用户性格特征的架构图。

具体实施方式

下面结合附图对本发明作进一步描述。

参照图1、图2、图3、图4和图5,基于句内词对关系和上下文用户特征的反讽检测方法,包括以下步骤:

步骤1、对需要进行反讽检测的评论文本进行预处理:

1.1.将在整个语料库中仅出现一次的单词删除并使用UNK标记进行替换;

1.2.删除少于5个单词的评论;

1.3.用W2V词向量模型将每一条评论表示为词向量形式列ni是句子长度。

步骤2、用自注意力机制对每个单词进行关联建模,获得句内注意力表示:

2.1对输入序列中的每个单词对关系(词与词之间)进行建模:其中,是需要通过训练学习的参数。表示拼接操作。sxy表示单词对中的两个单词之间的近似度分值,s是个对称矩阵。

2.2在矩阵s上逐行执行最大池化操作,计算得到注意力向量a=softmax(max s),是表示自注意力权重的向量。

2.3使用向量a来学习的加权表示:是输入序列的内部表示,且

步骤3、用Paragraph Vector将每个用户的评论以文档向量的形式表示,为每个用户生成书写风格特征向量:

3.1每条评论文本后添加特殊分隔符<END>。

3.2收集每个用户的所有文本,创建成一个文档。

3.3将每个用户所发表的评论作为输入,ui表示第i个用户,共Nu个用户。

3.4通过Paragraph Vector得到每个用户对应的评论特征di,3.5把所有用户的评论都映射到矩阵中,评论中的单词都被映射到矩阵ds是词向量维度。

3.6给定用户ui的评论文档共ni个单词,在窗口大小为k的滑动窗口内对文档向量和词向量计算平均对数概率:

3.7分别对滑动窗口内相邻的上下文词向量和文档向量di求平是softmax的参数,n是单词个数,h(·)由文档向量D中的di和评论单词矩阵W中的词向量wt-k,...,wt+k求平均所得。

3.8矩阵D学习到用户的文档表示向量。该文档表示向量可以代表用户的书写风格。

步骤4、根据用户发布的文本,通过预训练的性格检测CNN模型判断用户的性格特征:

4.1对于用户ui,遍历ui所有的vi条评论将它们作为预训练性格检测CNN模型的输入。

4.2激活CNN最后的隐藏层向量,获得性格特征向量

4.3计算该用户发表的所有评论对应的性格特征的期望,得到该用户的整体性格特征表示

步骤5、用典型相关分析算法对用书写风格特征和用户个性特征进行特征融合:

采用典型相关分析算法对3.8中的用户书写风格特征di和4.3中的用户个性特征pi进行特征融合,得到最终的用户特征A1和A2是训练参数。把记作

步骤6、用LSTM对每个文本评论进行序列化建模,得到句子表示:

6.1用一个初始的LSTM模型对固定长度的句子输入进行编码,如果句子编码后的向量长度不够,则末尾用数字0进行补齐;

6.2 LSTM隐藏层的输出是隐藏层特征矩阵[h1,h2,...,hN],表示句子级别特征;隐藏层特征hi,i∈[1,ni]与词向量wi是一一对应的关系。

6.3将LSTM序列建模后得到的最后一个隐藏层表示记作

步骤7、连接步骤4、5、6中学习到的特征,对句子是否反讽进行判断:

7.1利用非线性投影ReLU来学习用户特征自注意力层的输出结果和LSTM的隐藏层输出的连接表示:其中,

7.2把vi传入softmax层进行分类:是需要训练的参数。是基于句内词对关系和上下文用户特征的反讽模型的输出结果。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号