CN110795411A - 一种基于类别门机制的文本分类方法 - Google Patents

一种基于类别门机制的文本分类方法 Download PDF

Info

Publication number
CN110795411A
CN110795411A CN201911059012.0A CN201911059012A CN110795411A CN 110795411 A CN110795411 A CN 110795411A CN 201911059012 A CN201911059012 A CN 201911059012A CN 110795411 A CN110795411 A CN 110795411A
Authority
CN
China
Prior art keywords
category
sentence
gate
vector
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911059012.0A
Other languages
English (en)
Other versions
CN110795411B (zh
Inventor
施重阳
姜欣雨
冯超群
郝戍峰
张奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201911059012.0A priority Critical patent/CN110795411B/zh
Publication of CN110795411A publication Critical patent/CN110795411A/zh
Application granted granted Critical
Publication of CN110795411B publication Critical patent/CN110795411B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于类别门机制的文本分类方法,属于自然语言理解技术领域。使用用户层次网络和产品层次网络两个独立的层次网络;前者使用用户注意力机制和用户门,后者使用产品注意力机制和产品门;两层次网络的词层级都安置一个词汇类别门,句子层级都安置一个句子类别门;此两层次网络分别将文本变为特征向量,再用特征向量做文本分类;从而准确把握单词所表达的真实含义,进而准确预测文本所属类别。所述分类方法从不同角度过滤冗余信息,让模型能够理解文本的真实含义;无论句子是否具有一词多义现象,模型都具有准确率且波动不大的优点;对词汇冗余信息清洗,使之不会干扰模型参数更新;弥补了注意力机制仅从单词间提取关键信息的不足。

Description

一种基于类别门机制的文本分类方法
技术领域
本发明涉及一种基于类别门机制的文本分类方法,属于自然语言理解技术领域。
背景技术
文本分类旨在理解自然语言句子并将其分类,是自然语言处理领域中的一项关键任务。基于神经网络的文本分类方法由于其高效性已成为当前的主流方法。这类方法大多数将单词嵌入到低维向量中,再将这些向量用作神经网络的初始输入;随后,使用精心设计的网络对文本进行编码,以获得文本特征向量;该向量进一步用于分析文本中包含的信息,进而预测其所属的类别。但是,大多数现有方法没有考虑到一词多义现象,即一个单词通常包含多种含义,并且这些含义共享相同的词向量。这种不精确的单词表示将导致以下问题:
(1)模型无法准确把握单词所表达的真实含义,进而无法准确理解文本,预测文本所属类别。
(2)一词多义现象少的句子被模型理解地更为透彻,导致类别预测准确率波动较大。
(3)同一词向量中包含过多的含义信息,导致训练的时候可能会引导模型往错误的方向更新参数。
杨等人提出了基于上下文向量的注意力机制编码文本信息,并应用于文本分类。陈等人利用循环神经网络(RNN)并用基于用户产品信息的注意力机制对文档进行编码以进行文本分类。吴等人分开考虑用户和产品对文本信息的影响,并分别用用户注意力机制和产品注意力机制编码文本信息。杜等人发现卷积操作结果可以在一定程度上代表特定文本段的重要程度,进而提出了一种基于卷积操作的注意力机制编码文本信息,并应用于文本分类。然而这些方法大都只是使用注意力机制从多个词汇中挑选关键词汇,或者是从多个句子中挑选重要句子,而忽略了同一个词向量中通常包含多种含义信息并且其中包含了大量冗余信息的事实,没有对每个单词(或句子)内部信息进行筛选、过滤。因此,我们提出了一个新的方法:HCGM(Hierarchical Neural Network with Category Gate Mechanism),将每个单词的类别(例如词性)及其上下文,用户和产品信息作为门来过滤掉词向量中冗余信息。通过这样的类别门,我们可以仅使用词汇向量来动态生成每个词在特定上下文所表示的含义向量。
发明内容
本发明的目的是针对现有的自然语言理解领域中将词向量作为神经网络初始输入的方法存在模型无法准确把握单词所表达的真实含义,进而无法准确预测这段文本代表含义的技术缺陷,提出一种基于类别门机制的文本分类方法,对文本类别进行预测。
本发明的核心思想为:使用用户层次网络和产品层次网络两个独立的层次网络;前者网络使用用户注意力机制和用户门,后者网络使用产品注意力机制和产品门;两层次网络的词层级都安置一个词汇类别门,句子层级都安置一个句子类别门;此两层次网络分别将文本变为特征向量,再用特征向量做文本分类。
本发明是基于以下技术方案实现的。
所述基于类别门机制的文本分类方法,包括如下步骤:
步骤1:确定评论文档中每个词汇的类别并为每个类别设置类别向量,具体为:
1.a:以词性作为类别,利用工具NLTK获取每个词汇的词性,将词性作为对应单词的类别,并为每个词性设置一个随机初始化的向量表示,称为类别向量;
1.b:以上下文信息作为类别,为HCGM引入一个自适应类别模块,这个模块以每个词自身的词向量以及其左右邻居的词向量作为输入,输出为每个词的类别向量;
步骤2:在不同层级从不同角度构建类别门;
其中,构建的类别门包括四种:词汇类别门、句子类别门、用户门和产品门;
其中,词汇类别门、句子类别门、用户门以及产品门分别从词汇角度、句子类别角度、用户喜好角度和产品属性角度过滤文本中冗余的信息,使得保留下来的文本信息向量能够更加精确地代表用户对某个产品的看法;
每个词汇都有自己的类别,所以在词层级构建词汇类别门来过滤词汇冗余信息;而同一个文档是某个用户对某件产品的评论文本,即一个文档仅有一个用户和一个产品,单个词汇和用户、产品没有很强的联系,而一整个句子则和用户、产品强相关,因此在句子层级构建用户门和产品门;并在句子层级构建句子类别门,进一步过滤冗余信息并在一定程度上补充被用户门和产品门过滤过度的信息;
下面详细介绍这四个类别门的构建,每个类别门都位于对应层级的LSTM入口处:
步骤2.a:构建词汇类别门,具体利用步骤1构建的类别向量处理对应单词的词向量;
处理方法为:将类别向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤原词向量中冗余信息,保留类别门保留原词向量中能够表示词汇真实含义的信息;
以sigmoid为激活函数的结果视为过滤类别门,因为sigmoid将向量中每个元素映射到0到1之间,0对应着“过滤”;而以tanh为激活函数的结果视为保留类别门,因为tanh将向量中的每个元素映射到-1到1之间,利用这样的向量处理词向量是对原向量的信息处理,并没有显式过滤掉词汇向量每个元素中包含的信息;
使用每个词的过滤类别门和保留类别门来处理的自身的词向量,得到的结果向量包含其在当前上下文的真实含义;
步骤2.b:构建句子类别门,具体使用句子类别门进一步过滤冗余信息;句子类别门位于神经网络的句子层级,以句子的类别过滤句子中的冗余信息;句子的类别源自于句子中每个词汇的类别,同一句子中的词汇含义向量
Figure BDA0002257355130000041
分成两份分别通过LSTM层获取两组不同的隐层向量
Figure BDA0002257355130000042
其中li代表句子si的长度;随后通过用户注意力机制压缩到一个向量si中,
Figure BDA0002257355130000045
通过产品注意力机制压缩到向量s′i中;
将每个词汇的注意力权重同样作为词汇对应类别的注意力权重,并利用这些权重值获取句子类别向量,同样分为用户注意力机制获取的sci和产品注意力机制获取的sc′i
与词汇类别门一样,将句子类别向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤句子向量中冗余信息,保留类别门保留原句子向量中能够表示句子真实含义的信息;
步骤2.c:构建用户门,具体为:每个用户有自己的向量,每个句子都通过对应的用户门,过滤冗余的和用户关联度不大的信息,保留用户相关的信息;
具体为,与词汇类别门一样,将用户向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤句子向量中冗余信息,保留类别门保留原句子向量中能够表示句子真实含义的信息;
步骤2.d:构建产品门,具体为:与词汇类别门一样,将产品向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤句子向量中冗余信息,保留类别门保留原句子向量中能够表示句子真实含义的信息;
其中,操作2.d的原因为:每个产品都有自己的向量,每个句子都通过对应的产品门,保留产品相关的信息;
步骤3:将文本信息通过步骤2中构建的4个类别门;
一个评论文本中包含多个句子,每个句子又包含多个词,将每个词向量通过步骤2中构建的词汇类别门;将得到的结果分成两份,分别通过用户网络和产品网络的LSTM层获取上下文信息;得到的结果分别通过用户注意力机制和产品注意力机制获取句子向量;用户网络中的句子向量分成两份,分别通过句子类别门和用户门,获取句子类别门过滤的句子向量和用户门过滤的句子向量;产品网络中的句子向量分成两份,分别通过句子类别门和产品门,获取句子类别门过滤的句子向量和产品门过滤的句子向量;
步骤4:整合从不同角度过滤得到的句子信息向量;
用户网络中,将每个句子的句子向量、句子类别门过滤的句子向量、用户门过滤的句子向量相加作为用户网络的句子向量表示产品网络中,将每个句子的句子向量、句子类别门过滤的句子向量、产品门过滤的句子向量相加作为产品网络的句子向量表示
Figure BDA0002257355130000062
步骤5:将
Figure BDA0002257355130000064
分别通过用户注意力机制和产品注意力机制获取文档向量dup
步骤6:预测文档类别分布,具体为:将dup通过softmax分类层获取预测的文档类别分布:sentiment∈Rm
sentiment=softmax(dup) (1)
其中,Rm为维度为m的实数向量,m为文本类别可以取到的类别值的个数;
步骤7:训练神经网络,使用交叉熵作为损失函数计算损失值;
步骤8:预测文本所属类别,预测的类别值pre由类别分布sentiment得到:
pre=ar gmax(sentiment) (2)
至此,从步骤1到步骤8,完成了类别门机制的文本分类方法,实现了文本类别的预测。
有益效果
一种基于类别门机制的文本分类方法,与现有类别分类器相比,具有以下有益效果:
1.所述类别分类方法从不同角度过滤冗余信息,让模型能够理解文本的真实含义;其中,词汇的类别角度为用户的喜好角度和产品的属性角度;
2.利用词汇真实的含义信息来预测文本段所蕴含的类别,使得无论某个句子是否具有一词多义现象,模型都可以一视同仁,并且准确率不会波动较大;
3.对词汇冗余信息进行清洗,让这些冗余信息不会干扰模型训练时候参数更新的方向;
4.从单词内部和单词之间两个方面获取关键信息,弥补了注意力机制仅仅从单词之间提取关键信息的不足。
附图说明
图1为本发明一种基于类别门机制的类别分类方法的模型结构图。
具体实施方式
根据上述技术方案,下面通过具体实施例对本发明一种基于类别门机制的类别分类方法进行详细说明。
实施例1
本实施例叙述了一种基于类别门机制的类别分类方法具体实施时,用户门仅仅用在用户层次网络中,产品门仅仅用在产品层次网络中的原因。
用户层次网络中和产品层次网络的词层级都安置一个词汇类别门,句子层级都安置一个句子类别门。
以产品门为例说明用户门和产品门仅仅设置在句子层级的原因:
给定产品glasses,描述glasses的一句话可能会包含很多不同的单词,而仅仅有几个单词和产品glasses相关程度较高,比如单词cool就会和产品glasses相关度较高,产品注意力机制会挑选出来单词cool,而用户注意力机制就未必会挑选出来单词cool;在注意力机制之后使用产品门过滤和产品glasses相关程度高的词cool,才能够保留cool在当前上下文的真实含义“酷”,但在和产品相关度不高的单词上使用产品门不会这样精确地过滤信息,并且甚至会错误地过滤了关键信息。
图1为本发明一种基于类别门机制的类别分类方法的模型结构图。从图1中可以看出每种类别门所处的位置,每个类别门都位于相应层的LSTM入口处,也可以视为被整合进LSTM细胞中。
整合了类别门的LSTM分别用C-LSTM(LSTM整合词汇类别门)、SC-LSTM(LSTM整合句子类别门)、UG-LSTM(LSTM整合用户门)和PG-LSTM(LSTM整合产品门)。
进一步地,本实例采用本发明提出的类别分类方法,采用词性作为每个词汇的类别,并使用以下三个数据集进行了实验操作。
三个数据集网址是:
http://ir.hit.edu.cu/%7Edytang/paper/acl2015/dataset.7z
现从某购物网站挑选某用户对某品牌的蓝牙耳机的评价:“性价比很高。音质很好。戴着很舒服。音效很不错。”使用我们的方法分析这段自然语言文本所属的情感类别,具体的操作是:
步骤A:获取词向量并获取词汇类别:给定评论文档“It is so cool.The qualityis very good.Very comfortable to wear.I like it very much.”用,d=(s1,...,sT),来表示,T代表文档长度,在这个实例中是T=3,其中的每个句子si又包含多个词汇,即
Figure BDA0002257355130000081
我们利用NLTK工具识别每个单词在对应上下文的词性,并将词性视为每个单词的类别,比如词汇“comfortable”的词性或者说类别为“形容词”,“quality”词性或者说类别为“名词”;将单词的词性按照单词顺序排序为类别列表
Figure BDA0002257355130000082
词性列表中每个元素和词汇列表一一对应,比如词汇w22在本实例中代表词汇“quality”,词性c22为w22对应的词性或者说类别,在本实例中为“名词”;需要注意的是,相同类别的词汇拥有相同类别向量,即如果词汇wi和wj都为动词,则ci=cj
步骤B:构建词汇类别门,获取词汇类别过滤的词汇信息:利用词性向量构建词汇类别门,过滤词汇中的冗余信息,得到词汇的含义向量
Figure BDA0002257355130000091
中保留词汇wt更精确的含义信息,比如本实例中词汇“like”的类别是“动词”,使用动词类别门过滤之后只保留like本身的动词含义“喜欢”,过滤掉了“like”中原先包含的“像”的含义,因为“像”的含义的类别为“介词”;
以第t个词向量wt为例,具体操作为:将第t个词向量的类别向量ct和LSTM第t-1个隐层向量ht-1拼接起来,即[ct;ht-1];
其中,[ct;ht-1]表示将ct和ht-1拼接;
将[ct;ht-1]复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别为过滤类别门
Figure BDA0002257355130000092
和保留类别门
Figure BDA0002257355130000093
Figure BDA0002257355130000094
Figure BDA0002257355130000095
以sigmoid为激活函数的结果视为过滤类别门,因为sigmoid将向量中每个元素映射到0到1之间,0对应着“过滤”;而以tanh为激活函数的结果视为保留类别门,因为tanh将向量中的每个元素映射到-1到1之间,利用这样的向量处理词向量是对原向量的信息处理,并没有显式过滤掉词汇向量每个元素中包含的信息;
随后使用过滤类别门
Figure BDA00022573551300000911
和保留类别门
Figure BDA0002257355130000097
来处理第t个词的词向量wt
Figure BDA0002257355130000098
得到的结果
Figure BDA0002257355130000099
为第t个词汇在当前上下文的真实含义的向量;
步骤C:获取隐层向量,将分成两份分别通过LSTM层获取两个不同的隐层向量ht和h′t
同一句子中的词汇含义向量
Figure BDA0002257355130000101
分成两份分别通过LSTM层获取两组不同的隐层向量
Figure BDA0002257355130000102
Figure BDA0002257355130000103
其中li代表句子si的长度;
步骤D:获取句子向量,将同一句子中的隐层向量通过注意力机制压缩为句子向量,其中(hi1,...,hit)通过用户注意力机制得到si,里面应该包含和用户相关的重要信息“like”,“good”;h′i通过产品注意力机制得到s′i,里面应该包含和产品相关的重要信息“comfortable”,“cool”;
随后
Figure BDA0002257355130000104
通过用户注意力机制压缩到一个向量si中,
Figure BDA0002257355130000105
通过产品注意力机制压缩到向量s′i中;
Figure BDA0002257355130000106
Figure BDA0002257355130000107
其中,αij是hij的注意力权重,α′ij是h′ij的注意力权重,向量si是通过用户注意力机制获取到的句子向量,s′i表示通过产品注意力机制获取到的句子向量;
步骤E:提取句子类别,将隐层向量的注意力权重同样视为类别向量的注意力权重,提取句子类别sci和sc′i,分别对应着用户注意力机制和产品注意力机制;
我们将每个词汇的注意力权重同样作为词汇对应类别的注意力权重,并利用这些权重值获取句子类别向量sci和sc′i
Figure BDA0002257355130000108
Figure BDA0002257355130000109
其中,cij是词汇wij的类别向量;
步骤F:构建句子类别门,获取句子类别过滤的句子信息。利用句子类别sci和sc′i构建句子类别门,从句子类别角度过滤句子冗余信息,进而获取句子含义向量
Figure BDA00022573551300001011
Figure BDA00022573551300001012
Figure BDA0002257355130000111
Figure BDA0002257355130000112
Figure BDA0002257355130000113
Figure BDA0002257355130000115
其中,hst为句子隐藏状态向量,
Figure BDA0002257355130000116
Figure BDA0002257355130000117
可以被视为句子在当前上下文语境的真实含义向量;随后通过句子层级LSTM获取隐层向量hsi随后通过另一个句子层级LSTM获取隐层向量hs′i
步骤G:构建用户门,获取用户过滤的句子信息,利用句子的用户信息u构建用户门,从用户角度过滤句子冗余信息,进而获取用户过滤的句子含义向量
Figure BDA00022573551300001110
比如,当前用户评论“like”代表非常喜欢,那么中保留的信息即为“very like”;而如果当前用户很喜欢说“like”这个单词,并且说“like”代表他并不是很满意这个产品,则
Figure BDA00022573551300001112
中将会保存的信息为“kind of like”:
Figure BDA00022573551300001113
Figure BDA00022573551300001114
其中,hut为句子隐藏状态向量,st是词汇通过用户注意力机制得到的句子向量,
Figure BDA00022573551300001116
可以被视为句子在当前上下文语境的真实含义向量,或者说与用户强相关的含义向量;
Figure BDA00022573551300001117
随后通过句子层级LSTM获取隐层向量hui
步骤H:构建产品门,获取产品过滤的句子信息,利用句子的产品信息p构建产品门,从产品角度过滤句子冗余信息,进而获取产品过滤的句子含义向量
Figure BDA00022573551300001118
比如,当前实例中产品是“蓝牙耳机”,那么单词“cool”所在句子的产品门过滤向量
Figure BDA0002257355130000121
中保留的信息将是“酷”而不是“cool”本身还存在的含义“寒冷的”;
Figure BDA0002257355130000122
其中,hpt为句子隐藏状态向量,s′t是词汇通过产品注意力机制得到的句子向量,可以被视为句子在当前上下文语境的真实含义向量,或者说与产品强相关的含义向量;
Figure BDA0002257355130000126
随后通过句子层级LSTM获取隐层向量hpi
步骤I:整合从不同角度过滤得到的句子信息代表:
Figure BDA0002257355130000127
Figure BDA0002257355130000128
其中,
Figure BDA0002257355130000129
是逐元素相加操作,
Figure BDA00022573551300001210
为用户网络中的第i个句子的向量,
Figure BDA00022573551300001211
为产品网络中的第i个句子的向量;
步骤J:获取文档向量,将
Figure BDA00022573551300001212
Figure BDA00022573551300001213
通过分别通过用户注意力机制和产品注意力机制获取用户相关的文档向量du和产品相关的文档向量dp
Figure BDA00022573551300001214
Figure BDA00022573551300001215
将du和dp拼接起来,即dup=[du;dp],dup是文档向量;
步骤K:预测文档情感类别,将dup通过softmax分类层获取预测的类别分布sentiment∈Rm,其中m为可以取到的类别值的个数,如IMDB数据集的类别值个数为10,Yelp数据集为5:
sentiment=softmax(dup) (26)
pre=ar gmax(sentiment) (27)
其中pre即为最终预测的类别值,比如本实例中情感类别值为5,因为用户对蓝牙耳机的评论体现出用户对其很满意;
根据上述步骤的操作过程,即可对文本所属类别进行预测。
实施例2
实施例2采用上下文信息获取词的类别,即发明内容的1.b部分。
1.b具体实施时:设置超参数类别个数为nc,将第i个词向量
Figure BDA0002257355130000131
及其相邻词的词向量
Figure BDA0002257355130000132
Figure BDA0002257355130000133
加起来,通过线性层基于公式(1)获取第i个词的类别分布
其中,softmax是线性层的激活函数;
Figure BDA0002257355130000136
代表逐元素相加;
Figure BDA0002257355130000137
是可训练权重参数;是cdi的转置;
Figure BDA0002257355130000139
为类别分布;
类别词汇向量表记为Vc
Figure BDA00022573551300001310
ci为第i个词的类别向量,nc为类别个数,dc为类别向量维度;
第i个词的类别向量ci通过(2)由类别分布和类别词汇向量表的乘积得到:
ci=cdi·Vc (29)
其中,·为矩阵乘法操作,
Figure BDA00022573551300001311
为类别分布;
实施例2随后的操作和实施例1中相同,即实施例1中的步骤B到K部分,根据上述步骤的操作过程,即可对文本所属类别进行预测。
经过上述步骤的操作,采用本发明提出的方法(基于类别门机制的类别分类方法),以词性作为类别得到的分类结果的准确率和RMSE如表1中倒数第三行所示,其中倒数第二行和最后一行分别为使用“位置”和“上下文”信息做为每个词的类别信息得到的实验结果。
表1 12种分类方式-3种数据集效果比较
Figure BDA0002257355130000141
需要强调的是,对于本领域技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,这些也应视为属于本发明的保护范围。

Claims (2)

1.一种基于类别门机制的文本分类方法,其特征在于:包括如下步骤:
步骤1:确定评论文档中每个词汇的类别并为每个类别设置类别向量,具体为:
1.a:以词性作为类别,利用工具NLTK获取每个词汇的词性,将词性作为对应单词的类别,并为每个词性设置一个随机初始化的向量表示,称为类别向量;
1.b:以上下文信息作为类别,为HCGM引入一个自适应类别模块,这个模块以每个词自身的词向量以及其左右邻居的词向量作为输入,输出为每个词的类别向量;
步骤2:在不同层级从不同角度构建类别门;
其中,构建的类别门包括四种:词汇类别门、句子类别门、用户门和产品门;每个类别门的构建都位于对应层级的LSTM入口处,具体为:
步骤2.a:构建词汇类别门,具体利用步骤1构建的类别向量处理对应单词的词向量;
处理方法为:将类别向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤原词向量中冗余信息,保留类别门保留原词向量中能够表示词汇真实含义的信息;
以sigmoid为激活函数的结果视为过滤类别门,因为sigmoid将向量中每个元素映射到0到1之间,0对应着“过滤”;而以tanh为激活函数的结果视为保留类别门,因为tanh将向量中的每个元素映射到-1到1之间,利用这样的向量处理词向量是对原向量的信息处理,并没有显式过滤掉词汇向量每个元素中包含的信息;
使用每个词的过滤类别门和保留类别门来处理的自身的词向量,得到的结果向量包含其在当前上下文的真实含义;
步骤2.b:构建句子类别门,具体使用句子类别门进一步过滤冗余信息;句子类别门位于神经网络的句子层级,以句子的类别过滤句子中的冗余信息;句子的类别源自于句子中每个词汇的类别,同一句子中的词汇含义向量
Figure FDA0002257355120000021
分成两份分别通过LSTM层获取两组不同的隐层向量
Figure FDA0002257355120000022
Figure FDA0002257355120000023
其中li代表句子si的长度;随后
Figure FDA0002257355120000024
通过用户注意力机制压缩到一个向量si中,通过产品注意力机制压缩到向量s′i中;
将每个词汇的注意力权重同样作为词汇对应类别的注意力权重,并利用这些权重值获取句子类别向量,同样分为用户注意力机制获取的sci和产品注意力机制获取的sc′i
与词汇类别门一样,将句子类别向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤句子向量中冗余信息,保留类别门保留原句子向量中能够表示句子真实含义的信息;
步骤2.c:构建用户门,具体为:每个用户有自己的向量,每个句子都通过对应的用户门,过滤冗余的和用户关联度不大的信息,保留用户相关的信息;
具体为,与词汇类别门一样,将用户向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤句子向量中冗余信息,保留类别门保留原句子向量中能够表示句子真实含义的信息;
步骤2.d:构建产品门,具体为:与词汇类别门一样,将产品向量复制两份分别通过使用sigmoid和tanh作为激活函数的线性层,得到的结果分别作为过滤类别门和保留类别门,过滤类别门过滤句子向量中冗余信息,保留类别门保留原句子向量中能够表示句子真实含义的信息;
其中,操作2.d的原因为:每个产品都有自己的向量,每个句子都通过对应的产品门,保留产品相关的信息;
步骤3:将文本信息通过步骤2中构建的4个类别门;
一个评论文本中包含多个句子,每个句子又包含多个词,将每个词向量通过步骤2中构建的词汇类别门;将得到的结果分成两份,分别通过用户网络和产品网络的LSTM层获取上下文信息;得到的结果分别通过用户注意力机制和产品注意力机制获取句子向量;用户网络中的句子向量分成两份,分别通过句子类别门和用户门,获取句子类别门过滤的句子向量和用户门过滤的句子向量;产品网络中的句子向量分成两份,分别通过句子类别门和产品门,获取句子类别门过滤的句子向量和产品门过滤的句子向量;
步骤4:整合从不同角度过滤得到的句子信息向量;
用户网络中,将每个句子的句子向量、句子类别门过滤的句子向量、用户门过滤的句子向量相加作为用户网络的句子向量表示
Figure FDA0002257355120000031
产品网络中,将每个句子的句子向量、句子类别门过滤的句子向量、产品门过滤的句子向量相加作为产品网络的句子向量表示
Figure FDA0002257355120000032
步骤5:将
Figure FDA0002257355120000033
分别通过用户注意力机制和产品注意力机制获取文档向量dup
步骤6:预测文档类别分布,具体为:将dup通过softmax分类层获取预测的文档类别分布:sentiment∈Rm
sentiment=softmax(dup) (1)
其中,Rm为维度为m的实数向量,m为文本类别可以取到的类别值的个数;
步骤7:训练神经网络,使用交叉熵作为损失函数计算损失值;
步骤8:预测文本所属类别,预测的类别值pre由类别分布sentiment得到:
pre=argmax(sentiment) (2)。
2.根据权利要求1所述的一种基于类别门机制的文本分类方法,其特征在于:步骤2中,词汇类别门、句子类别门、用户门以及产品门分别从词汇角度、句子类别角度、用户喜好角度和产品属性角度过滤文本中冗余的信息,使得保留下来的文本信息向量能够更加精确地代表用户对某个产品的看法;
每个词汇都有自己的类别,所以在词层级构建词汇类别门来过滤词汇冗余信息;而同一个文档是某个用户对某件产品的评论文本,即一个文档仅有一个用户和一个产品,单个词汇和用户、产品没有很强的联系,而一整个句子则和用户、产品强相关,因此在句子层级构建用户门和产品门;并在句子层级构建句子类别门,进一步过滤冗余信息并在一定程度上补充被用户门和产品门过滤过度的信息。
CN201911059012.0A 2019-11-01 2019-11-01 一种基于类别门机制的文本分类方法 Active CN110795411B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911059012.0A CN110795411B (zh) 2019-11-01 2019-11-01 一种基于类别门机制的文本分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911059012.0A CN110795411B (zh) 2019-11-01 2019-11-01 一种基于类别门机制的文本分类方法

Publications (2)

Publication Number Publication Date
CN110795411A true CN110795411A (zh) 2020-02-14
CN110795411B CN110795411B (zh) 2022-01-04

Family

ID=69440715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911059012.0A Active CN110795411B (zh) 2019-11-01 2019-11-01 一种基于类别门机制的文本分类方法

Country Status (1)

Country Link
CN (1) CN110795411B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256981A (zh) * 2020-11-13 2021-01-22 北京理工大学 一种基于线性和非线性传播的谣言检测方法
CN113255796A (zh) * 2021-06-02 2021-08-13 北京理工大学 一种基于教学机制的情感分析方法
CN113312452A (zh) * 2021-06-16 2021-08-27 哈尔滨工业大学 基于多任务学习的篇章级文本连贯性分类方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108875000A (zh) * 2018-06-14 2018-11-23 广东工业大学 一种融合多句法结构的语义关系分类方法
CN109145112A (zh) * 2018-08-06 2019-01-04 北京航空航天大学 一种基于全局信息注意力机制的商品评论分类方法
CN109325120A (zh) * 2018-09-14 2019-02-12 江苏师范大学 一种分离用户和产品注意力机制的文本情感分类方法
US20190311002A1 (en) * 2017-04-14 2019-10-10 Salesforce.Com, Inc. Deep reinforced model for abstractive summarization
CN110377725A (zh) * 2019-07-12 2019-10-25 深圳新度博望科技有限公司 数据生成方法、装置、计算机设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190311002A1 (en) * 2017-04-14 2019-10-10 Salesforce.Com, Inc. Deep reinforced model for abstractive summarization
CN108875000A (zh) * 2018-06-14 2018-11-23 广东工业大学 一种融合多句法结构的语义关系分类方法
CN109145112A (zh) * 2018-08-06 2019-01-04 北京航空航天大学 一种基于全局信息注意力机制的商品评论分类方法
CN109325120A (zh) * 2018-09-14 2019-02-12 江苏师范大学 一种分离用户和产品注意力机制的文本情感分类方法
CN110377725A (zh) * 2019-07-12 2019-10-25 深圳新度博望科技有限公司 数据生成方法、装置、计算机设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李俊杰等: "融合用户信息和评价对象信息的文本情感分类", 《厦门大学学报(自然科学版)》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256981A (zh) * 2020-11-13 2021-01-22 北京理工大学 一种基于线性和非线性传播的谣言检测方法
CN112256981B (zh) * 2020-11-13 2022-12-09 北京理工大学 一种基于线性和非线性传播的谣言检测方法
CN113255796A (zh) * 2021-06-02 2021-08-13 北京理工大学 一种基于教学机制的情感分析方法
CN113255796B (zh) * 2021-06-02 2022-11-04 北京理工大学 一种基于教学机制的情感分析方法
CN113312452A (zh) * 2021-06-16 2021-08-27 哈尔滨工业大学 基于多任务学习的篇章级文本连贯性分类方法
CN113312452B (zh) * 2021-06-16 2022-05-27 哈尔滨工业大学 基于多任务学习的篇章级文本连贯性分类方法

Also Published As

Publication number Publication date
CN110795411B (zh) 2022-01-04

Similar Documents

Publication Publication Date Title
Mai et al. Divide, conquer and combine: Hierarchical feature fusion network with local and global perspectives for multimodal affective computing
CN110795411B (zh) 一种基于类别门机制的文本分类方法
CN108363790A (zh) 用于对评论进行评估的方法、装置、设备和存储介质
CN111401077B (zh) 语言模型的处理方法、装置和计算机设备
JP4129987B2 (ja) テキスト・ドキュメントから表出されたオピニオンの分析方法、システム及びプログラム
CN109977413A (zh) 一种基于改进cnn-lda的情感分析方法
Wang et al. A low-rank approximation approach to learning joint embeddings of news stories and images for timeline summarization
CN110619044B (zh) 一种情感分析方法、系统、存储介质及设备
CN109597493B (zh) 一种表情推荐方法及装置
JP7139626B2 (ja) フレーズ生成関係性推定モデル学習装置、フレーズ生成装置、方法、及びプログラム
Zhao et al. Shap values for explaining cnn-based text classification models
CN112131383A (zh) 特定目标的情感极性分类方法
Zhang et al. Multi-modal multi-label emotion recognition with heterogeneous hierarchical message passing
CN108536735B (zh) 基于多通道自编码器的多模态词汇表示方法与系统
CN113326374B (zh) 基于特征增强的短文本情感分类方法及系统
CN109614611B (zh) 一种融合生成非对抗网络与卷积神经网络的情感分析方法
US20220147713A1 (en) Social bias mitigation in textual models
CN110298038A (zh) 一种文本打分方法及装置
CN112101042A (zh) 文本情绪识别方法、装置、终端设备和存储介质
Yan et al. Online doctor recommendation with convolutional neural network and sparse inputs
CN116049387A (zh) 一种基于图卷积的短文本分类方法、装置、介质
Pal et al. Future lens: Anticipating subsequent tokens from a single hidden state
CN111538841A (zh) 基于知识互蒸馏的评论情感分析方法、装置及系统
CN117377950A (zh) 使用机器学习加速文档归类
Gandhi et al. Multimodal sentiment analysis: review, application domains and future directions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant