CN109740162A - 文本表示方法、装置及介质 - Google Patents
文本表示方法、装置及介质 Download PDFInfo
- Publication number
- CN109740162A CN109740162A CN201910020074.4A CN201910020074A CN109740162A CN 109740162 A CN109740162 A CN 109740162A CN 201910020074 A CN201910020074 A CN 201910020074A CN 109740162 A CN109740162 A CN 109740162A
- Authority
- CN
- China
- Prior art keywords
- vector
- semantic
- target word
- text
- word
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 239000013598 vector Substances 0.000 claims abstract description 374
- 238000003058 natural language processing Methods 0.000 claims abstract description 18
- 238000003062 neural network model Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 9
- 238000012549 training Methods 0.000 description 32
- 241000220225 Malus Species 0.000 description 8
- 230000011218 segmentation Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 235000013399 edible fruits Nutrition 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 108010074506 Transfer Factor Proteins 0.000 description 1
- 235000021016 apples Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 210000004218 nerve net Anatomy 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开一种文本表示方法、装置及介质。该方法包括:确定文本中的目标词;获取所述目标词的词向量,以及所述目标词的每一种语义各自的语义向量;利用所述语义向量确定第一向量,所述第一向量为表示所述目标词在所述文本中的语义的向量;根据所述目标词的词向量和所述第一向量,生成第二向量,所述第二向量为表示所述文本中的所述目标词的向量。采用上述的文本表示方法,可以将词语的语义向量引入到文本中词语的数学化表示中,而不再仅以词向量来表示一个词语,从而丰富了文本的表示方式,从整体上提升模型完成自然语言处理任务的效果。
Description
技术领域
本发明涉及自然语言处理领域,具体涉及一种文本表示方法、装置及介质。
背景技术
神经网络模型在自然语言处理(Natural Language Processing,NLP)领域的应用已经非常普遍。要将自然语言交给神经网络模型中的算法来处理,首先需要将自然语言数学化,即将自然语言文本用数字的形式来表示。故而,自然语言数学化的方法也可以称为文本表示方法。文本表示作为神经网络过程中最基本的问题之一,其对神经网络的效果的影响也是基础性的。
词向量是一种常用的、较为有效的文本表示方法,其通过不同的稀疏或者稠密的向量来表示不同的词语,能够在一定程度上表示出文本的语义。在现有技术中,可以利用CBOW模型、Skip-gram模型等神经网络语言模型,通过训练来得到词向量。
对于一个具有多种语义的词语而言,其在不同的语境下所表述的语义可能不同。例如,“苹果”具有“电脑”和“水果”两种语义,在“我想买个苹果电脑”中其具有“电脑”的语义,而在“我想买两斤苹果”中其具有“水果”的语义。而利用CBOW模型、Skip-gram模型等训练得到的词向量,一旦训练好之后,无论词向量被应用于表示哪一个文本中的词语,其数值都是不变的。因此,采用词向量来单一地表示文本,无法准确地表示出不同语境下文本的语义,进而影响神经网络模型在后续的自然语言处理任务上的效果,这是本领域技术人员亟待解决的问题。
发明内容
本申请提供一种文本表示方法,通过引入语义向量,使用语义向量与原有的词向量共同来表示文本中的词语,从而丰富了词语的表示方式,更加准确地表示出词语在不同语境下的含义。
第一方面,本申请提供一种文本表示方法,包括:
确定文本中的目标词;
获取所述目标词的词向量,以及所述目标词的每一种语义各自的语义向量;
利用所述语义向量确定第一向量,所述第一向量为表示所述目标词在所述文本中的语义的向量;
根据所述目标词的词向量和所述第一向量,生成第二向量,所述第二向量为表示所述文本中的所述目标词的向量。
结合第一方面,在第一方面第一种可能的实现方式中,所述目标词的其中一种语义的语义向量的计算步骤,包括:
确定所述语义对应的全部义原;
将每一个所述义原的义原向量加权求和,得到所述语义的语义向量。
结合第一方面的第一种实现方式,在第一方面第二种可能的实现方式中,利用所述语义向量确定第一向量的步骤,包括:
确定所述目标词在所述文本中对应的上下文词;
利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,分别计算每一种所述语义各自对应的语义距离;
将最小的语义距离所对应的语义的语义向量,确定为第一向量。
结合第一方面及上述可能的实现方式,在第一方面第三种可能的实现方式中,利用所述上下文词的词向量,以及所述目标词的第j种语义的语义向量,计算第j种语义对应的语义距离,包括:
其中,w表示目标词;
sense_disj表示目标词的第j种语义对应的语义距离;
表示目标词的第j种语义的语义向量;
n表示目标词的上下文词的总数量;
wci表示目标词的n个上下文词中的第i个上下文词的词向量;
|s(w)|表示目标词的语义总数量。
结合第一方面及上述可能的实现方式,在第一方面第四种可能的实现方式中,利用所述语义向量确定第一向量的步骤,包括:
确定所述目标词在所述文本中对应的上下文词;
利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,分别计算每一种所述语义各自对应的语义权重;
利用每一种所述语义各自对应的语义权重,以及每一种所述语义各自的语义向量,计算得到第一向量。
结合第一方面及上述可能的实现方式,在第一方面第五种可能的实现方式中,利用所述上下文词的词向量,以及所述目标词的第j种语义的语义向量,计算第j种语义对应的语义权重的步骤,包括:
其中,w表示目标词;
表示目标词的第j种语义的语义向量;
表示目标词的第j种语义对应的语义权重;
n表示目标词的上下文词的总数量;
wci表示目标词的n个上下文词中的第i个上下文词的词向量;
|s(w)|表示目标词的语义总数量;
结合第一方面及上述可能的实现方式,在第一方面第六种可能的实现方式中,利用每一种所述语义各自对应的语义权重,以及每一个所述语义各自的语义向量,计算得到第一向量的步骤,包括:
其中,sensev表示第一向量。
结合第一方面及上述可能的实现方式,在第一方面第七种可能的实现方式中,根据所述目标词的词向量和所述第一向量,生成第二向量的步骤,包括:
将所述目标词的词向量与所述第一向量加权求和,生成第二向量;或者,
将所述目标词的词向量与所述第一向量求和并且归一化,生成第二向量;或者,
将所述目标词的词向量与所述第一向量水平拼接,生成第二向量。
结合第一方面及上述可能的实现方式,在第一方面第八种可能的实现方式中,所述文本表示方法在神经网络模型的文本表示层中执行,所述神经网络模型应用于自然语言处理。
第二方面,本申请提供一种文本表示装置,包括:
获取模块,用于获取目标词的词向量,以及所述目标词的每一种语义各自的语义向量;
处理模块,用于确定文本中的目标词;利用所述语义向量确定第一向量;以及,根据所述目标词的词向量和所述第一向量,生成第二向量;其中,所述第一向量为表示所述目标词在所述文本中的语义的向量,所述第二向量为表示所述文本中的所述目标词的向量。
第三方面,本申请提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得所述计算机执行第一方面的任一种方法。
上述的文本表示方法,首先确定文本中的目标词,获取目标词的词向量,以及目标词的每一种语义各自的语义向量。然后利用语义向量确定第一向量,所述第一向量为表示目标词在文本中的语义的向量。再根据目标词的词向量和第一向量,生成第二向量,从而以第二向量来表示文本中的目标词,而不再仅仅以目标词的词向量这一种单一的形式来表示目标词,进而使得到的第二向量能够更加准确地表示出词语在不同语境下的含义。由于文本中的全部或者大部分词语都可以作为目标词,故而通过上述方法,可以将词语的语义向量引入到文本中词语的数学化表示中,从而丰富了文本的表示方式,从整体上提升模型完成自然语言处理任务的效果。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的文本表示方法的具体实施方式之一的流程图;
图2为本申请的文本表示方法的具体实施方式之一中,S200步骤的一种实现方式的流程图;
图3为本申请的文本表示方法的具体实施方式之一中,S300步骤的一种实现方式的流程图;
图4为本申请的文本表示方法的具体实施方式之一中,S300步骤的另一种实现方式的流程图;
图5为本申请的文本表示装置的具体实施方式之一的结构示意图。
具体实施方式
下面对本申请的实施例作详细说明。为便于理解本申请的方案,以下先对义原、SAT模型、SAC模型等几个相关概念作简要介绍。
常识知识库如知网(HowNet)、OEC、同义词词林等,以汉语和英语的词语所代表的概念为描述对象,主要揭示了概念与概念之间,以及概念所具有的属性之间的关系。在知网中,一个词语(word)可以具有一种或多种语义(sense),每种语义可以对应一个或多个义原(sememe)。其中,义原是用来描述一个词的语义的最小意义单元,所有的语义都可以用义原来表示。例如,“是”具有四种语义,第一种语义对应一个义原——“是”;第二种语义对应的一个义原——“存在”;第三种语义对应的两个义原——“同意”、“表示”;第四种语义对应的一个义原——“特定”。又例如,“苹果”具有“电脑”和“水果”两种语义。其中,语义“电脑”对应四个义原——“样式值”、“能”、“携带”和“特定牌子”。相对于词语的数量来说,义原的数量十分有限(约2000多个),且词语的语义均可以用知网中的一个或多个义原来表示,所以不同词语的语义所对应的义原会存在交叉。
CBOW模型是神经网络语言模型的一种,其主要思想是根据中心词(w(t))的上下文,即中心词前面的C个词(例如w(t-2)、w(t-1)等)以及后面的C个词(例如w(t+1)、w(t+2)等),来计算中心词的概率。与CBOW模型相反,Skip-Gram模型的主要思想是根据中心词(w(t))来分别计算它前后的词(例如w(t-2)、w(t-1)、w(t+1)、w(t+2)等)的概率。通过训练CBOW模型、Skip-gram模型等模型,可以得到训练样本中每一个词的词向量。
SAT(SememeAttention over Target Model)模型是基于Skip-Gram模型改进得到的模型,SAC(SememeAttention over Context Model)模型是基于CBOW模型改进得到的模型。这两个模型引入了语义和义原,以便帮助模型更好地学习。其所引入的语义和义原可以来自于前述的知网,也可以来自于同义词词林、OEC等知识库。利用这两个模型进行训练,可以得到词语的词向量文件、词语的语义向量文件和义原的义原向量文件。这里,语义向量是指表示一个词语的某种语义的向量,义原向量是指表示一个义原的向量,语义向量、义原向量与词向量类似,都是具有一定维度的向量。
神经网络模型可以被应用在很多自然语言处理任务中,例如机器阅读理解、机器翻译等。神经网络模型一般包括输入层、隐含层和输出层。其中,输入层包括了文本表示层,训练样本或者待预测的文本在文本表示层中被数学化表示为向量。
为便于理解,以下以一个例子来简要说明一下文本表示层中的部分工作过程。
例如输入文本1:我想买个苹果电脑。
首先,将文本1分词,得到分词结果“我/想/买/个/苹果/电脑”。然后,从已经训练好的词向量中获取分词结果中6个词各自对应的词向量。将这6个词向量通过求和、加权求和或者拼接等方式,得到文本1的向量表示。
从上述文本表示的过程中可以发现,对于每一个词,现有技术中都是采用已经训练好的词向量来单一地表示。即,当一个词处在不同的文本中,其所采用的词向量是完全一样的。这就容易导致数学化表示文本时无法准确地表示出不同语境下文本的语义,进而影响神经网络模型在后续的自然语言处理任务上的效果。
为此,本申请的第一个实施例提供一种新的文本表示方法,通过引入语义向量,使用语义向量与原有的词向量共同来表示文本中的词语,从而丰富了词语的表示方式,更加准确地表示出词语在不同语境下的含义。该文本表示方法可以被应用在神经网络模型的文本表示层中,此外,也可以被应用到其他原本采用词向量来表示文本的自然语言处理任务中。
请参见图1,图1为本申请的文本表示方法的一种实施方式的流程示意图。该文本表示方法包括S100至S400的步骤。需要说明的是,在数学化表示文本时,一般会先对文本中的每一个词语进行数学化表示,然后利用每一个词的数据来表示整个文本。以下的步骤以文本中的一个词为目标词,就该目标词的数学化表示过程作详细说明。
S100:确定文本中的目标词。
目标词可以是该文本中的一个词。在一种实现方式中,可以对文本进行分词,得到分词结果,然后从分词结果中选取一个词,将其确定为目标词。该文本可以是输入到神经网络模型的输入层中的任何文本,例如可以是用于训练神经网络模型的训练样本中的文本数据,也可以是待预测数据中的文本。
举例来说,对于一个机器阅读理解模型而言,其训练样本是批量的,每一个训练样本都是(文章,问题,答案)的形式。本申请中的文本可以是训练样本中的文章,或者训练样本中的问题。对于训练好的机器阅读理解模型而言,其在被使用时,输入该模型中的待预测数据是(文章,问题)的形式。该模型将文章和问题分别数学化表示后进行计算,就可以得到预测结果,即预测答案。因此,本申请中的文本,也可以是待预测数据中的文章和问题。
S200:获取所述目标词的词向量,以及所述目标词的每一种语义各自的语义向量。
在一种实现方式中,目标词的每一种语义的语义向量可以直接从由SAT模型、SAC模型等模型所训练得到的语义向量文件中获取。
在另一种实现方式中,目标词的一种语义的语义向量可以利用义原向量来计算得到。一种语义对应的义原可以从知网等知识库中获取,这些义原的义原向量可以从由SAT模型、SAC模型等模型所训练得到的义原向量文件中获取。一般地,获取语义对应的义原所采用的知识库,与训练SAT等模型所采用的知识库相同。
以w表示目标词,|s(w)|表示目标词的语义总数量,表示目标词的第j种语义的语义向量,其中,j∈1,2,...|s(w)|。
请参见图2,对于目标词的第j种语义来说,其语义向量的计算可以包括以下步骤:
S201:确定所述第j种语义对应的全部义原;
S202:将每一个所述义原的义原向量加权求和,得到所述第j种语义的语义向量。
如前所述,目标词的第j种语义对应的全部义原,可以从知网等知识库中获取。
以表示目标词的第j种语义所对应的义原总数量;表示目标词的第j种语义对应的义原中,第k个义原的义原向量,其中,将第j种语义对应的全部义原中每一个义原的义原向量加权求和,可以得到第j种语义的语义向量在加权求和时,每一个义原向量对应的义原权重可以相同,也可以不同。
例如,当每一个义原对应的义原权重相同时,第j种语义的语义向量可以通过以下公式1求得:
在训练SAT、SAC等模型以得到词语的词向量文件、词语的语义向量文件、义原的义原向量文件时,如果所采用是训练样本较多,训练得较为充分,则在本步骤中,可以直接从语义向量文件中获取目标词的每一种语义各自的语义向量。此外,如果训练样本的应用场景与采用本申请的文本表示方法的后续步骤的应用场景比较相关,则也可以直接从语义向量文件中获取目标词的每一种语义各自的语义向量。例如,训练SAT、SAC等模型的训练样本是用于阅读理解的训练数据,而本申请的语义表示方法应用在一个机器阅读理解模型的文本表示层中,则二者的应用场景类似。此时,可以认为训练得到的语义向量能够较准确地表示词语的语义,故而可以直接从语义向量文件中获取每一种语义各自的语义向量。否则,就可以采用前述的利用义原向量来计算语义向量的方法。
当一个文本中的多个词或者所有词都分别作为目标词,以本申请的文本表示方法来表示时,如果用义原向量去生成目标词的语义向量,不仅能够更加准确地表达出目标词的真实语义,还能够体现出不同目标词的语义之间的关系。将这样的文本表示方法应用到神经网络模型的文本表示层中,可以从整体上提升模型完成自然语言处理任务的效果。
需要说明的是,由于SAT模型、SAC模型等利用知网、同义词词林等知识库来引入词语的语义和义原,因此如果训练语料中某些词并未收录在知识库中,则训练得到的词向量文件中包括这些词的词向量,但语义向量文件中不包括这些词的语义向量。也就是说,当这些词被确定为目标词时,可以获取到该目标词的词向量,而获取不到该目标词的任何一种语义的语义向量。此时,可以不执行S200至S400的步骤,而直接以该目标词的词向量来表示该目标词。或者,也可以取一个与其他语义向量维度相同的随机向量,将该随机向量作为该目标词的语义向量,继而执行S300和S400的步骤。
S300:利用所述语义向量确定第一向量,所述第一向量为表示所述目标词在所述文本中的语义的向量。
当目标词具有多种语义时,其在不同的文本中的语义可能存在区别,而在一个确定的文本中,其语义是确定的。因此,对于文本中的目标词而言,可以利用该目标词的语义的语义向量,以及目标词在文本中的上下文词,来确定一个第一向量,使该第一向量能够表示目标词在文本中的语义。
在第一种实现方式中,可以从目标词的所有语义中,选择一个与上下文词的语义距离最小的语义,将其作为目标词在文本中的语义。此时,第一向量就是目标词的所有语义各自的语义向量中的一个。具体来说,请参见图3,S300的步骤可以包括:
S311:确定所述目标词在所述文本中对应的上下文词;
S312:利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,计算每一种所述语义各自对应的语义距离;
S313:将最小的语义距离所对应的语义的语义向量,确定为第一向量。
在确定目标词在文本中对应的上下文词时,可以设定一个取词窗口。取词窗口的大小可以预先设置。例如,当设置取词窗口为1时,则将目标词在文本中的前一个词语和后一个词语,确定为该目标词对应的上下文词。当目标词为文本中的第一个词语时,仅取其后一个词语作为上下文词;当目标词为文本中的最后一个词语时,仅取其前一个词语作为上下文词。
以w表示目标词,wc表示目标词的上下文词,n表示目标词的上下文词的总数量,wci表示目标词的n个上下文词中的第i个上下文词的词向量。其中,n为正整数,i∈1,2,...n。一个目标词的在文本中的上下文词可以构成与该目标词对应的上下文词集合,即{wc1,wc2...wci...,wcn}。
上下文词的词向量可以从前述的词向量文件中直接获取。分别计算目标词的每一种语义与上下文词之间的语义距离,得到与语义对应的语义距离。对于目标词的第j种语义,其对应的语义距离可以用sense_disj来表示。
当以余弦相似度来表示语义距离时,sense_disj可以通过以下公式2求得:
公式2表示,分别计算目标词对应的上下文词集合中的每一个上下文词与目标词的第j种语义的余弦相似度,即将所有的余弦相似度求和,就得到了第j种语义与所有上下文词的整体的语义距离。
在第二种实现方式中,综合考虑目标词的所有语义,通过注意力加权计算,得到第一向量,用该第一向量来表示目标词在该文本中的语义。具体来说,请参见图4,S300的步骤可以包括:
S321:确定所述目标词在所述文本中对应的上下文词;
S322:利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,计算每一种所述语义各自对应的语义权重;
S323:利用每一种所述语义各自对应的语义权重,以及每一种所述语义各自的语义向量,计算得到第一向量。
确定目标词在文本中对应的上下文词,与前一种实现方式相同,可以参考前述相关描述,此处不再赘述。
上下文词的词向量可以从前述的词向量文件中直接获取。利用上下文词的词向量,以及每一种语义各自的语义向量,分别计算目标词的每一种语义对应的语义权重。在计算语义权重的一种实现方式中,可以将语义距离作为语义权重,这就使得与上下文词整体的语义距离越近的语义对应越大的语义权重,与上下文词整体的语义距离越远的语义对应越小的语义权重。对于目标词的第j种语义,其对应的语义权重可以用来表示。
当以余弦相似度来表示语义距离时,与前述计算sense_disj的方法相同,即:
利用每一种语义各自对应的语义权重,以及每一种语义各自的语义向量,做加权求和,得到第一向量sensev,即:
需要说明的是,在不同的应用场景中,可以采用不同的方法来计算第一向量。例如,可以根据自然语言处理任务的敏感性来选择前述的第一种或第二种实现方法。
如果任务对单个词语的语义较为敏感,比如应用在短文本的相似度判断任务中,则可以采用前述第一种实现方式来计算第一向量。举例来说,对于判断“苹果手机”和“苹果园”这两个短文本的相似度这一任务来说,两个短文本的分词结果中都含有词语“苹果”,并且两个分词结果中词语总数量均较少。对于这种情况,如果采用第二种实现方式,则最终用向量表示的两个短文本的相似度会比较高。为此,可以采用第一种实现方式,对一个特定的文本中的某一个词语而言,直接选择词语的一种语义,而不采用多种语义的加权计算结果,从而尽量增大两个短文本的区分度。
如果任务对单个词语的语义不太敏感,比如应用在阅读理解的任务中,则可以采用前述第二种实现方式来计算第一向量。对一个特定的文本中的某一个词语而言,通过将词语的多种语义做加权求和,从而增加输入到模型中的语义信息,以便增强模型的表示能力。
S400:根据所述目标词的词向量和所述第一向量,生成第二向量,所述第二向量为表示所述文本中的所述目标词的向量。
如前所述,第一向量数学化表示了目标词在文本中的语义。将第一向量与目标词原本的词向量结合起来,生成第二向量,以此来表示文本中的目标词。第二向量包含了第一向量和目标词原本的词向量这两种信息,与单独的词向量相比包含了更加丰富的信息,从而丰富了目标词的表示方式。
在数学化表示一个完整的文本时,一般会对文本中的每一个词语进行数学化表示,然后利用每一个词的数据来表示整个文本。因此,采用本申请中的文本表示方法来表示一个完整的文本时,可以遍历文本中的每一个词,将每一个词分别作为目标词,以第一向量和词向量来共同表示,从而更加准确地表示出词语在不同语境下的含义。当一个文本中所有的词语或者大部分词语都采用这样的方式来表示时,由于丰富了该文本的表示方式,故而能够更加准确地表示出整个文本所包含的语义信息。
上述文本表示方法可以在神经网络模型的文本表示层中执行,此时,相当于将一种新的语义资源,即第一向量,添加到原本的神经网络模型的文本表示层中。这使得模型可以采用第一向量与原本的词向量一起,共同来表示文本,从而更好地理解输入到其中的文本,进而从整体上提升模型完成自然语言处理任务的效果。
本申请的文本表示方法可以应用在自然语言处理领域的神经网络模型中,例如QA_NET、R_NET、DOC_QA、BiDAF等机器阅读理解模型、机器翻译模型、相似度计算模型等。当应用到不同的应用场景中,根据目标词的词向量和第一向量,生成第二向量的步骤,可以采用不同的计算方法。
例如,在一种实现方式中,可以将目标词的词向量和第一向量做加权求和,生成第二向量。在另一种实现方式中,可以将目标词的词向量和第一向量求和,并将求和结果归一化,生成第二向量。这样,第二向量内的元素数值就被限定在一定的范围内,例如限定在区间[0,1]或者[-1,1]内,以便于后续利用第二向量来进行训练或者预测。在又一种实现方式中,可以将目标词的词向量和第一向量水平拼接,生成第二向量。
需要说明的是,如前所述,对于知网、同义词词林等知识库中并未收录的词语,由于无法获取到其语义和义原,故而相应地无法获取到这些词的语义向量。当这些词作为目标词时,在一种实现方式中,可以取一个与其他语义向量维度相同的随机向量,以此作为该目标词的语义向量,继而确定第一向量,并根据目标词的词向量和第一向量生成第二向量。在另一种实现方式中,可以不引入语义向量,直接利用该词语的词向量来生成第二向量。
在后续使用时,例如训练机器阅读理解模型时,可以用第二向量代替原本单一的词向量,从而丰富了目标词的表示形式。由于针对每一个目标词,或者大部分目标词,都采用这样的方式来表示,故而可以使阅读理解模型学习到更多训练样本中的信息,进而提升模型预测时的准确率。
应理解,在某一些自然语言处理模型中,文本表示层中会采用词向量和其他向量,例如字向量,来共同表示词语。如果将本申请的文本表示方法应用到这样的模型中,可以根据原本的词向量、字向量,以及前述的第一向量,三者共同生成第二向量来表示词语。
为便于进一步理解本申请的方案,以下以QA_net这一机器阅读理解模型为例,对根据目标词的词向量和第一向量来生成第二向量的过程作详细地说明。
机器阅读理解主要是让机器阅读一篇文章,然后从文章中抽取出与问题对应的答案。因此,训练阅读理解模型的训练样本的格式为:(文章,问题,答案)。例如:
文章1:英国航空航天系统公司公布了该公司研制的第一款高科技隐形无人机雷电之神。这款无人机是耗资相当于14.6亿元人民币,用了4年时间研发出来的。
问题1:雷电之神耗时多久研制。
答案1:4年。
在训练QA_net模型的过程中,将训练样本中的文章和问题输入到模型的输入层中,经过模型的预测,从模型的输出层中得到一个预测答案。预测答案和训练样本中的答案,即真实答案,相比一般会存在一定的误差,这个误差模型的每一层之间反向传播。根据这个误差调整模型中的参数,直到该模型收敛,或达到预期的效果,则训练完成。在使用训练好的QA_net模型来做机器阅读理解任务时,将待预测的文本和问题输入到训练好的模型中,经过模型的预测,就可以得到模型预测的答案,从而完成该阅读理解的任务。可见,无论是模型训练的过程还是预测的过程,均需要先在模型的输入层的文本表示层中将文章、问题等文本数学化表示为向量或者向量矩阵,以便模型能够运算。
QA_net模型包括五层结构:第一层Input embedding layer,第二层EmbeddingEncoder Layer,第三层Context-QueryAttention Layer,第四层Model Encoder Layer,以及第五层Output layer。由于文本数学化表示主要涉及其中的第一层Input embeddinglayer,故而以下仅对第一层中的处理过程作说明。
在原本的QA_net模型中,采用词向量(word embedding)和字向量(characterembedding)两种向量来表示问题和文章。
词向量从预先训练好的词向量文件中直接读取,维度为p1。字向量可以从预先训练好的字向量文件中直接读取,也可以在模型训练的初始采用随机值,字向量的维度为p2。
获取到的目标词的词向量xw,维度为p1。假设目标词中含有d个字符,则目标词的所有字向量可以构成一个p2×d的矩阵。对于不同长度的目标词,如果都保留其所有的字向量,则不便于后续处理。为此,可以预设一个统一的长度g,使所有的目标词都可以构成一个p2×g的矩阵。当目标词的长度d<g时,可以将目标词的长度填充至g;当目标词的长度d>g时,可以将目标词的长度删减至g。这样,对于任意一个目标词,均可以转化得到一个p2×g的矩阵。然后对该矩阵做卷积得到一个卷积输出向量xc,该卷积输出向量为p2维。将xw与xc拼接得到向量[xw;xc],该向量的维度为(p1+p2)维,以该向量来表示目标词。
在引入第一向量之后,采用词向量、字向量和第一向量三种向量来共同表示问题和文章。目标词的词向量xw,维度为p1维;利用字向量得到的卷积输出向量xc,维度为p2;第一向量sensev的维度与语义向量的维度相同,也设定为p1维。将词向量xw和第一向量sensev中对应的元素分别相加,得到中间向量xv。然后将xv与xc拼接得到第二向量[xv;xc],该第二向量的维度为(p1+p2)维,以该第二向量来表示目标词。
对于问题或者文章中的所有词语,每一个均可以作为目标词,从而得到每一个词语对应的第二向量。再以这些第二向量来表示问题或者文章。
在一个基于QA_net模型的实验中,与仅采用词向量、字向量来表示文本的方法相比,采用本申请的文本表示方法,最后训练好的QA_net模型的ROUGE(Recall-OrientedUnderstudy for Gisting Evaluation)值从83.36,提高到85.24,提升效果显著。
需要说明的是,由于QA_net的五层结构的名称国内尚没有明确的中文名称,为避免不准确的翻译引起歧义,此处仍采用其英文名称。
在本申请的第二个实施例中,提供了一种与前述文本表示方法对应的装置。请参考图5,该装置包括:
获取模块1,用于获取目标词的词向量,以及所述目标词的每一种语义各自的语义向量;
处理模块2,用于确定文本中的目标词;利用所述语义向量确定第一向量;以及,根据所述目标词的词向量和所述第一向量,生成第二向量;其中,所述第一向量为表示所述目标词在所述文本中的语义的向量,所述第二向量为表示所述文本中的所述目标词的向量。
可选地,处理模块2还用于确定所述语义对应的全部义原;以及,将每一个所述义原的义原向量加权求和,得到所述语义的语义向量。
可选地,处理模块2还用于确定所述目标词在所述文本中对应的上下文词;利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,分别计算每一种所述语义各自对应的语义距离;以及,将最小的语义距离所对应的语义的语义向量,确定为第一向量。
可选地,处理模块2还用于通过以下公式,利用所述上下文词的词向量,以及所述目标词的第j种语义的语义向量,计算第j种语义对应的语义距离:
其中,w表示目标词;
sense_disj表示目标词的第j种语义对应的语义距离;
表示目标词的第j种语义的语义向量;
n表示目标词的上下文词的总数量;
wci表示目标词的n个上下文词中的第i个上下文词的词向量;
|s(w)|表示目标词的语义总数量。
可选地,处理模块2还用于确定所述目标词在所述文本中对应的上下文词;利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,分别计算每一种所述语义各自对应的语义权重;利用每一种所述语义各自对应的语义权重,以及每一种所述语义各自的语义向量,计算得到第一向量。
可选地,处理模块2还用于通过以下公式,利用所述上下文词的词向量,以及所述目标词的第j种语义的语义向量,计算第j种语义对应的语义权重的步骤:
其中,表示目标词的第j种语义对应的语义权重。
可选地,处理模块2还用于通过以下公式,利用每一种所述语义各自对应的语义权重,以及每一个所述语义各自的语义向量,计算得到第一向量的步骤:
其中,sensev表示第一向量。
可选地,处理模块2还用于将所述目标词的词向量与所述第一向量加权求和,生成第二向量。
可选地,处理模块2还用于将所述目标词的词向量与所述第一向量求和并且归一化,生成第二向量。
可选地,处理模块2还用于将所述目标词的词向量与所述第一向量水平拼接,生成第二向量。
可选地,神经网络模型的文本表示层包括所述处理模块2,所述神经网络模型应用于自然语言处理。
此外,本实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得所述计算机执行第一个实施例中的任一种文本表示方法的部分或全部步骤。
这里的可读存储介质可为磁碟、光盘、DVD、USB、只读存储记忆体(ROM)或随机存储记忆体(RAM)等,本申请对具体的存储介质形式不作限定。
文本表示装置以及计算机可读存储介质用于执行第一个实施例中的任一种方法的部分或全部步骤,相应地具有前述方法所具有的有益效果,此处不再赘述。
应理解,在本申请的各种实施例中,各步骤的执行顺序应以其功能和内在逻辑确定,各步骤序号的大小并不意味着执行顺序的先后,不对实施例的实施过程构成限定。
除非另外说明,本说明书中的“多个”,指的是两个或者两个以上。此外,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解,“第一”、“第二”等字样并不对数量和执行次序构成限定,并且“第一”、“第二”等字样也并不限定一定不同。
应理解,本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于文本表示装置、计算机可读存储介质的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。以上所述的本发明实施方式并不构成对本发明保护范围的限定。
Claims (10)
1.一种文本表示方法,其特征在于,包括:
确定文本中的目标词;
获取所述目标词的词向量,以及所述目标词的每一种语义各自的语义向量;
利用所述语义向量确定第一向量,所述第一向量为表示所述目标词在所述文本中的语义的向量;
根据所述目标词的词向量和所述第一向量,生成第二向量,所述第二向量为表示所述文本中的所述目标词的向量。
2.根据权利要求1所述的文本表示方法,其特征在于,所述目标词的其中一种语义的语义向量的计算步骤,包括:
确定所述语义对应的全部义原;
将每一个所述义原的义原向量加权求和,得到所述语义的语义向量。
3.根据权利要求1所述的文本表示方法,其特征在于,利用所述语义向量确定第一向量的步骤,包括:
确定所述目标词在所述文本中对应的上下文词;
利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,分别计算每一种所述语义各自对应的语义距离;
将最小的语义距离所对应的语义的语义向量,确定为第一向量。
4.根据权利要求3所述的文本表示方法,其特征在于,利用所述上下文词的词向量,以及所述目标词的第j种语义的语义向量,计算第j种语义对应的语义距离,包括:
其中,w表示目标词;
sense_disj表示目标词的第j种语义对应的语义距离;
表示目标词的第j种语义的语义向量;
n表示目标词的上下文词的总数量;
wci表示目标词的n个上下文词中的第i个上下文词的词向量;
|s(w)|表示目标词的语义总数量。
5.根据权利要求1所述的文本表示方法,其特征在于,利用所述语义向量确定第一向量的步骤,包括:
确定所述目标词在所述文本中对应的上下文词;
利用所述上下文词的词向量,以及所述目标词的每一种语义各自的语义向量,分别计算每一种所述语义各自对应的语义权重;
利用每一种所述语义各自对应的语义权重,以及每一种所述语义各自的语义向量,计算得到第一向量。
6.根据权利要求5所述的文本表示方法,其特征在于,利用所述上下文词的词向量,以及所述目标词的第j种语义的语义向量,计算第j种语义对应的语义权重的步骤,包括:
其中,w表示目标词;
表示目标词的第j种语义的语义向量;
表示目标词的第j种语义对应的语义权重;
n表示目标词的上下文词的总数量;
wci表示目标词的n个上下文词中的第i个上下文词的词向量;
|s(w)|表示目标词的语义总数量;
和/或,
利用每一种所述语义各自对应的语义权重,以及每一个所述语义各自的语义向量,计算得到第一向量的步骤,包括:
其中,sensev表示第一向量。
7.根据权利要求1所述的文本表示方法,其特征在于,根据所述目标词的词向量和所述第一向量,生成第二向量的步骤,包括:
将所述目标词的词向量与所述第一向量加权求和,生成第二向量;或者,
将所述目标词的词向量与所述第一向量求和并且归一化,生成第二向量;或者,
将所述目标词的词向量与所述第一向量水平拼接,生成第二向量。
8.根据权利要求1-7任一项所述的文本表示方法,其特征在于,所述文本表示方法在神经网络模型的文本表示层中执行,所述神经网络模型应用于自然语言处理。
9.一种文本表示装置,其特征在于,包括:
获取模块,用于获取目标词的词向量,以及所述目标词的每一种语义各自的语义向量;
处理模块,用于确定文本中的目标词;利用所述语义向量确定第一向量;以及,根据所述目标词的词向量和所述第一向量,生成第二向量;其中,所述第一向量为表示所述目标词在所述文本中的语义的向量,所述第二向量为表示所述文本中的所述目标词的向量。
10.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机上运行时,使得所述计算机执行权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910020074.4A CN109740162B (zh) | 2019-01-09 | 2019-01-09 | 文本表示方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910020074.4A CN109740162B (zh) | 2019-01-09 | 2019-01-09 | 文本表示方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109740162A true CN109740162A (zh) | 2019-05-10 |
CN109740162B CN109740162B (zh) | 2023-07-11 |
Family
ID=66364135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910020074.4A Active CN109740162B (zh) | 2019-01-09 | 2019-01-09 | 文本表示方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109740162B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399454A (zh) * | 2019-06-04 | 2019-11-01 | 深思考人工智能机器人科技(北京)有限公司 | 一种基于变压器模型和多参照系的文本编码表示方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700620B1 (en) * | 2010-04-27 | 2014-04-15 | Jeremy Lieberman | Artificial intelligence method and apparatus |
WO2015037815A1 (ko) * | 2013-09-16 | 2015-03-19 | 고려대학교 산학협력단 | 스마트 기기 내 시맨틱 검색 시스템 및 검색방법 |
CN108427670A (zh) * | 2018-04-08 | 2018-08-21 | 重庆邮电大学 | 一种基于语境词向量和深度学习的情感分析方法 |
CN108763217A (zh) * | 2018-06-01 | 2018-11-06 | 北京玄科技有限公司 | 基于多语义的集外词处理方法、智能问答方法及装置 |
CN108829670A (zh) * | 2018-06-01 | 2018-11-16 | 北京玄科技有限公司 | 基于单语义的未登录词处理方法、智能问答方法及装置 |
CN109033307A (zh) * | 2018-07-17 | 2018-12-18 | 华北水利水电大学 | 基于crp聚类的词语多原型向量表示及词义消歧方法 |
CN109165288A (zh) * | 2018-09-17 | 2019-01-08 | 北京神州泰岳软件股份有限公司 | 一种多语义监督的词向量训练方法及装置 |
-
2019
- 2019-01-09 CN CN201910020074.4A patent/CN109740162B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700620B1 (en) * | 2010-04-27 | 2014-04-15 | Jeremy Lieberman | Artificial intelligence method and apparatus |
WO2015037815A1 (ko) * | 2013-09-16 | 2015-03-19 | 고려대학교 산학협력단 | 스마트 기기 내 시맨틱 검색 시스템 및 검색방법 |
CN108427670A (zh) * | 2018-04-08 | 2018-08-21 | 重庆邮电大学 | 一种基于语境词向量和深度学习的情感分析方法 |
CN108763217A (zh) * | 2018-06-01 | 2018-11-06 | 北京玄科技有限公司 | 基于多语义的集外词处理方法、智能问答方法及装置 |
CN108829670A (zh) * | 2018-06-01 | 2018-11-16 | 北京玄科技有限公司 | 基于单语义的未登录词处理方法、智能问答方法及装置 |
CN109033307A (zh) * | 2018-07-17 | 2018-12-18 | 华北水利水电大学 | 基于crp聚类的词语多原型向量表示及词义消歧方法 |
CN109165288A (zh) * | 2018-09-17 | 2019-01-08 | 北京神州泰岳软件股份有限公司 | 一种多语义监督的词向量训练方法及装置 |
Non-Patent Citations (1)
Title |
---|
唐共波等: "基于知网义原词向量表示的无监督词义消歧方法", 《中文信息学报》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399454A (zh) * | 2019-06-04 | 2019-11-01 | 深思考人工智能机器人科技(北京)有限公司 | 一种基于变压器模型和多参照系的文本编码表示方法 |
CN110399454B (zh) * | 2019-06-04 | 2022-02-25 | 深思考人工智能机器人科技(北京)有限公司 | 一种基于变压器模型和多参照系的文本编码表示方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109740162B (zh) | 2023-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107562792B (zh) | 一种基于深度学习的问答匹配方法 | |
CN110427463B (zh) | 搜索语句响应方法、装置及服务器和存储介质 | |
CN109062939A (zh) | 一种面向汉语国际教育的智能导学方法 | |
US11631338B2 (en) | Deep knowledge tracing with transformers | |
CN110232122A (zh) | 一种基于文本纠错与神经网络的中文问句分类方法 | |
CN109992773A (zh) | 基于多任务学习的词向量训练方法、系统、设备及介质 | |
CN111143569A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN112100401B (zh) | 面向科技服务的知识图谱构建方法、装置、设备及存储介质 | |
CN111898636B (zh) | 一种数据处理方法及装置 | |
Lin et al. | Deep structured scene parsing by learning with image descriptions | |
Zheng et al. | Webly supervised knowledge embedding model for visual reasoning | |
CN112686025A (zh) | 一种基于自由文本的中文选择题干扰项生成方法 | |
CN110543551B (zh) | 一种问题语句处理方法和装置 | |
Hong et al. | Automatically extracting word relationships as templates for pun generation | |
CN109740163A (zh) | 应用于深度学习模型的语义表示资源生成方法及装置 | |
CN109189848A (zh) | 知识数据的抽取方法、系统、计算机设备和存储介质 | |
Jha | Mastering PyTorch: build powerful neural network architectures using advanced PyTorch 1. x features | |
CN109740162A (zh) | 文本表示方法、装置及介质 | |
CN117094390A (zh) | 一种面向海洋工程领域的知识图谱构建及智能搜索方法 | |
CN112052681A (zh) | 信息抽取模型训练方法、信息抽取方法、装置及电子设备 | |
Tashu et al. | Deep learning architecture for automatic essay scoring | |
Wang et al. | Knowledge base question answering system based on knowledge graph representation learning | |
Rao et al. | Smart-bot assistant for college information system | |
CN111126066B (zh) | 基于神经网络的中文修辞手法的确定方法和装置 | |
CN113821610A (zh) | 信息匹配方法、装置、设备及存储介质 |
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 |