CN111026848B - 一种基于相似上下文和强化学习的中文词向量生成方法 - Google Patents
一种基于相似上下文和强化学习的中文词向量生成方法 Download PDFInfo
- Publication number
- CN111026848B CN111026848B CN201911301344.5A CN201911301344A CN111026848B CN 111026848 B CN111026848 B CN 111026848B CN 201911301344 A CN201911301344 A CN 201911301344A CN 111026848 B CN111026848 B CN 111026848B
- Authority
- CN
- China
- Prior art keywords
- chinese
- word
- words
- similar
- representing
- 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.)
- Expired - Fee Related
Links
- 239000013598 vector Substances 0.000 title claims abstract description 102
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000002787 reinforcement Effects 0.000 title claims abstract description 55
- 238000007781 pre-processing Methods 0.000 claims abstract description 10
- 230000009471 action Effects 0.000 claims description 32
- 239000003795 chemical substances by application Substances 0.000 claims description 31
- 230000003044 adaptive effect Effects 0.000 claims description 29
- 230000006399 behavior Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 12
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 150000001875 compounds Chemical class 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 3
- 230000007613 environmental effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 8
- 238000003058 natural language processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000002474 experimental method Methods 0.000 description 6
- 238000011160 research Methods 0.000 description 5
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于相似上下文和强化学习的中文词向量生成方法,解决了现有的中文词向量生成方法都是考虑基于目标词的相邻上下文和目标词的关系来进行预测的,没有考虑到在中文中有些单词虽然相邻,但是语义不相关的情况,且词向量的表示质量不高问题。本发明方法包括:选取语料库,进行语料库预处理,从而构建中文语料库;对中文目标词进行相似上下文发现,获得与中文目标词的语义相关的相似上下文;构建中文词向量强化学习框架,并进行强化学习,得到中文目标词的词向量表示。本发明能够解决中文相邻词不相关的问题,生成高质量的中文词向量。
Description
技术领域
本发明涉及自然语言处理技术领域,尤其涉及一种基于相似上下文和强化学习的中文词向量生成方法。
背景技术
自然语言处理是计算机科学与人工智能领域中的一个重要方向。目前自然语言处理任务有机器翻译、情感分析、文本摘要、文本分类和信息抽取等。在自然语言处理任务中,首先第一步,需要考虑如何让计算机能够表示自然语言。计算机是无法直接表示自然语言的,因此,我们需要设计一种方法把自然语言数学化,让计算机能够进行处理,这就是词向量。词向量就是将自然语言表示为包含语义的实数向量。具体来说,就是将单词映射到向量空间里,并用向量来表示。一般而言,词向量的质量越高,其包含的语义信息就越丰富和精确,也更容易让计算机理解自然语言中的语义,也可以从根本上提高自然语言处理任务的处理结果。所以如何生成高质量的词向量是自然语言处理的基础和重要的研究。
目前关于词向量的研究主要有两个方向:第一,通用词向量方法:适用于各种语言的方法,如中文、英文、日文等,在多种语言上都可以将单词表示为词向量。该类方法又有两种分类,一种是将单词表示为向量空间的一个点向量,一种是将单词表示为高斯分布。第二,特定语言词向量方法:只适用于特定语言的方法,只能将某种语言的单词表示为词向量,其考虑了特定语言的各种细粒度特征,如中文的部首、笔画和拼音等特征,英文的字母、前后缀等。中国专利“CN107273355A一种基于字词联合训练的中文词向量生成方法”提供了一种中文词向量方法。此专利将词语中的字信息作为重要特征,结合上下文词和字,联合训练中文的词向量表示。在基于词本身的词向量模型的基础上,通过引入词的组成汉字信息,在基于上下文词预测目标词的同时,基于上下文字预测目标词。中国专利“CN109815476A一种基于中文语素和拼音联合统计的词向量表示方法”提供了一种中文词向量生成方法。此专利利用汉字的语素和拼音特征,基于上下文词语的语素和拼音联合特征,训练一个三层神经网络预测中心目标词,然后生成词向量。
上述现有方法为词向量的研究,特别是中文词向量的研究奠定了基础,但存在如下缺点:第一,通用词向量方法由于适用于大多数语言,没有考虑特定语言特征,其泛化性强,但准确度较低,不能很好地提高后续自然语言处理任务的精度。第二,中文词向量方法单纯地增加中文特征,而没有改进神经网络基础架构,其准确率不能进一步提高。同时,上述研究方法都是考虑基于目标词的相邻上下文和目标词的关系来进行预测的,没有考虑到在中文中有些单词虽然相邻,但是语义不相关的情况。现有词向量生成方法都是基于词语的相邻上下文的特征预测单词,同时只使用了简单的神经网络架构,没有改进神经网络,不能更好地获得高质量的中文词向量。
发明内容
本发明所要解决的技术问题是现有的中文词向量生成方法都是考虑基于目标词的相邻上下文和目标词的关系来进行预测的,没有考虑到在中文中有些单词虽然相邻,但是语义不相关的情况,且词向量的表示质量不高的问题。本发明提供了解决上述问题的一种基于相似上下文和强化学习的中文词向量生成方法,通过自适应地选择目标词的相似上下文,同时提出中文词向量强化学习框架,与语料库交互并获得反馈,自动学习语料库词语之间的关系,并寻找相似上下文,减小语料库规模,基于相似上下文预测目标词,进而生成中文词向量,避免中文相邻上下文的语义不相关性,增强学习架构性能,减少训练时间,提高中文词向量质量。
本发明通过下述技术方案实现:
一种基于相似上下文和强化学习的中文词向量生成方法,该方法包括:
选取语料库,进行语料库预处理,从而构建中文语料库;
对中文目标词进行相似上下文发现,获得与中文目标词的语义相关的相似上下文;
构建中文词向量强化学习框架,并进行强化学习,得到中文目标词的词向量表示。
本发明通过自适应地选择中文目标词的相似上下文,同时提出中文词向量强化学习框架,与语料库交互并获得反馈,自动学习语料库词语之间的关系,并寻找相似上下文,减小语料库规模,基于相似上下文预测目标词,进而生成中文词向量,避免中文相邻上下文的语义不相关性,增强学习架构性能,减少训练时间,提高中文词向量质量。本发明能够解决中文相邻词不相关的问题,生成高质量的中文词向量。
进一步地,所述语料库预处理包括:对下载的互联网文本进行简繁体转化,去除乱码、英文和标点,中文分词。
进一步地,对中文目标词进行相似上下文发现,包括对中文目标词进行相似上文发现,在中文目标词wt的历史词汇中寻找和wt相似的词语,其中,wt的历史词汇代表在wt附近,同时也在wt左边的词,t表示中文目标词的下标,具体步骤如下:
①确定上文窗口大小c;
②计算自适应相似阈值T,其等于中文目标词wt和范围[wt-c,wt+c]内所有词相似性的平均值;
③针对范围[wt-c,0)内的词wi,如果和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似上文,相似上文词语数量n1加1;
④如果n1<c,则向左扩展寻找范围,增加c个词语,即在范围[wt-2c,wt-c]内寻找相似上文,此时需要更新自适应相似阈值T,其等于中文目标词wt和范围[wt-2c,wt+2c]内所有词相似性的平均值,如果范围内的词和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似上文,相似上文词语数量n1加1;
⑤一直向左寻找,每次增加c个词并更新自适应阈值T,迭代寻找,直到相似上文词语数量等于c为止。
进一步地,对中文目标词进行相似上下文发现,还包括对中文目标词进行相似下文发现,在中文目标词wt的未来词汇中寻找和wt相似的词语,其中,wt的未来词汇代表在wt附近,同时也在wt右边的词,t表示中文目标词的下标,具体步骤如下:
①首先确定下文窗口大小c,其中,下文窗口和上文窗口大小一样大;
②计算自适应相似阈值T,其等于中文目标词wt和范围[wt-c,wt+c]内所有词相似性的平均值;
③针对范围(0,wt+c]内的词wj,如果和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似下文,相似下文词语数量n2加1;
④如果n2<c,则向右扩展寻找范围,增加c个词语,即在范围[wt+c,wt+2c]内寻找相似下文,此时需要更新自适应相似阈值T,其等于中文目标词wt和范围[wt-2c,wt+2c]内所有词相似性的平均值,如果范围内的词和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似下文,相似下文词语数量n2加1;
⑤一直向右寻找,每次增加c个词语并更新自适应阈值T,迭代寻找相似下文,直到相似下文词语数量等于c为止。
进一步地,所述词相似性通过相似度来表示词语语义的相似程度,其中,相似度s(wi,wj)的计算公式如下:
进一步地,所述构建中文词向量强化学习框架并进行强化学习过程中:将语料库定义为环境Environment,中文目标词wt和其相似上下文SCt定义为状态State,拥有CBOW和SG两种行为的分类器定义为代理Agent;当代理处于环境的一个状态时,其采取一个行为Action,然后环境根据这个行为给出一个回报Reward,代理通过回报判断目前行为的好坏,进行学习,然后在下一个状态采取更好的行为;当代理处理不同状态时,上述过程不断迭代,直到达到设置的最大迭代次数为止,强化学习完成,最后生成中文词向量。
进一步地,所述构建中文词向量强化学习框架并进行强化学习,具体包括如下步骤:
①初始化一个代理πθ,其参数为θ;
②设置学习率η和最大迭代次数Tmax,输入中文语料库E;
③让代理πθ和环境E进行交互,采样获得N个轨迹片段τs={τ1,…,τn,…,τN};
④计算每段轨迹总的回报,计算公式如下:
⑤计算N段轨迹总回报的期望
式中,表示N段轨迹总的回报的期望,N表示轨迹的总数,R(τn)表示第n段轨迹总的回报,τn表示第n段轨迹,表示第n段轨迹中第t个状态采取行为后的回报,t表示第t个状态,|E|表示中文语料库中单词的总数;
⑥计算N段轨迹总回报的期望的梯度
式中,表示N段轨迹总回报的期望的梯度,N表示轨迹的总数,R(τn)表示N段轨迹总的回报,τn表示第n段轨迹,t表示第t个状态,|E|表示中文语料库中单词的总数,表示代理πθ在参数θ的前提下,获得第n段轨迹的概率的梯度,表示代理πθ在第n段轨迹的第t个状态下采取的行为,可以为acbow(CBOW行为)或者asg(SG行为),表示第n段轨迹的第t个状态,wt表示中文目标词,SCt表示中文目标词的相似上下文,wi表示相似上下文中的单词,c表示相似上文窗口大小;
⑦更新参数θ
⑧迭代次数加1,如果达到最大迭代次数则停止,输出中文词向量,否则返回②继续迭代训练。
进一步地,CBOW行为基于中文目标词的相似上下文预测目标词,SG行为基于中文目标词预测其相似上下文,其中,CBOW行为、SG行为均为三层神经网络。
本发明与现有技术相比,具有如下的优点和有益效果:
1、本发明一种基于相似上下文和强化学习的中文词向量生成方法,利用词语之间的相似度,计算相似上下文,代替传统的相邻上下文,避免中文相邻不相关的词语,增加了上下文的语义相关性;
2、本发明一种基于相似上下文和强化学习的中文词向量生成方法,利用强化学习生成中文词向量,可以在各个大小的语料库上生成质量优秀的中文词向量;
3、本发明一种基于相似上下文和强化学习的中文词向量生成方法,本发明训练好的强化学习代理,可以直接应用在新的语料库生成中文词向量,减少了训练时间;
4、本发明一种基于相似上下文和强化学习的中文词向量生成方法,该方法适用范围广,只要给出语料库,就可以进行后续的中文词向量生成;本发明适用于自然语言处理技术领域。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1是本发明一种基于相似上下文和强化学习的中文词向量生成方法的总体流程图。
图2是本发明相似上下文发现示意图。
图3是本发明相似上文发现的流程图。
图4是本发明相似下文发现的流程图。
图5是本发明强化学习的模型图。
图6是本发明强化学习的具体流程图。
图7是本发明的类比任务在不同语料大小的扩展性实验结果图。
图8是本发明的相似任务在不同语料大小的扩展性实验结果图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例
如图1至8所示,本发明一种基于相似上下文和强化学习的中文词向量生成方法,该方法包括:
选取语料库,进行语料库预处理,从而构建中文语料库;
对中文目标词进行相似上下文发现,获得与中文目标词的语义相关的相似上下文;
构建中文词向量强化学习框架,并进行强化学习,得到中文目标词的词向量表示。
本发明总体流程如图1所示,具体实施步骤如下:
步骤1、语料库构建:选取语料库,进行语料库预处理,从而构建中文语料库;
1.1、语料库预处理:将下载的互联网文本利用opencc工具包进行简繁体转换,利用正则表达式去除乱码,英文和标点,利用jieba分词进行中文分词,对文本进行预处理;
1.2、将最后的结果进行存储,构建中文语料库。
步骤2、相似上下文发现:对中文目标词进行相似上下文发现,获得与中文目标词的语义相关的相似上下文;
2.1、词语相似性计算
通过分配所有词一个初始词向量,计算词语之间的相似度s(wi,wj),以表示词语语义的相似程度:
2.2、词语相似上文发现
在中文目标词wt的历史词汇中寻找和wt相似的词语,其中,wt的历史词汇代表在wt附近,同时也在wt左边的词,t表示中文目标词的下标,示意图如图2,流程图如图3,具体步骤如下:
①确定上文窗口大小c,也就是针对每个词,需要在上文中寻找多少个语义相似的词(下文窗口和上文窗口大小一样大,即都为c);
②计算自适应相似阈值T,其等于中文目标词wt和范围[wt-c,wt+c]内所有词相似性的平均值;
③针对范围[wt-c,0)内的词wi,如果和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似上文,相似上文词语数量n1加1;
④如果n1<c,则向左扩展寻找范围,增加c个词语,即在范围[wt-2c,wt-c]内寻找相似上文,此时需要更新自适应相似阈值T,其等于中文目标词wt和范围[wt-2c,wt+2c]内所有词相似性的平均值,如果范围内的词和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似上文,相似上文词语数量n1加1;
⑤一直向左寻找,每次增加c个词并更新自适应阈值T,迭代寻找,直到相似上文词语数量等于c为止(如果找到语料库边界仍然不够c个词,则停止迭代,以目前的相似上文词语数量为准)。
2.3、词语相似下文发现
在中文目标词wt的未来词汇中寻找和wt相似的词语,其中,wt的未来词汇代表在wt附近,同时也在wt右边的词,t表示中文目标词的下标,示意图如图2,流程图如图4,具体步骤如下:
①首先确定下文窗口大小c,也就是针对每个词,需要在下文中寻找多少个语义相似的词语;其中,下文窗口和上文窗口大小一样大;
②计算自适应相似阈值T,其等于中文目标词wt和范围[wt-c,wt+c]内所有词相似性的平均值;
③针对范围(0,wt+c]内的词wj,如果和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似下文,相似下文词语数量n2加1;
④如果n2<c,则向右扩展寻找范围,增加c个词语,即在范围[wt+c,wt+2c]内寻找相似下文,此时需要更新自适应相似阈值T,其等于中文目标词wt和范围[wt-2c,wt+2c]内所有词相似性的平均值,如果范围内的词和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似下文,相似下文词语数量n2加1;
⑤一直向右寻找,每次增加c个词语并更新自适应阈值T,迭代寻找相似下文,直到相似下文词语数量等于c为止(如果找到语料库边界仍然不够c个词,则停止迭代,以目前的相似下文词语数量为准)。
步骤3、强化学习:构建中文词向量强化学习框架,并进行强化学习,得到中文目标词的词向量表示。
3.1、基础定义
针对中文词向量生成,本发明提出了一个强化学习框架,如图5所示,将语料库定义为环境(Environment),中文目标词wt和其相似上下文SCt定义为状态(State),拥有CBOW和SG两种行为的分类器定义为代理(Agent)。强化学习过程如下:当代理处于环境的一个状态时,其采取一个行为(Action),然后环境根据这个行为给出一个回报(Reward),代理通过回报判断目前行为的好坏,进行学习,然后在下一个状态采取更好的行为,如图5所示。当代理处理不同状态时,上述过程不断迭代,直到达到设置的最大迭代次数,强化学习完成,最后生成中文词向量。具体的定义如下:
①环境(Environment E):中文词向量生成方法的环境就是给定的处理好的中文语料库。
②状态(State S):每个状态st定义为中文目标词wt和它的相似上下文SCt的组合。环境中有很多状态,每个词和它的相似上下文都构成一个状态。
③行为(Action A):定义代理在不同的状态下可能采取的行为有两个,分别为CBOW行为和SG行为,即A={aCBOW,aSG},CBOW行为基于中文目标词的相似上下文预测目标词,SG行为基于中文目标词预测其相似上下文,具体如下:
a)CBOW行为
已知中文目标词wt的相似上下文SCt的前提下预测中文目标词wt,如图5中的Action1部分;CBOW是一个三层的神经网络,对应各层具体为:
输入层:用来输入中文目标词wt的相似上下文的初始词向量,包含相似上下文SCt中2c个词的词向量;
投影层:将输入层的2c个向量做累加求和,其输出为
输出层:根据相似上下文准确预测中文目标词的可能性p(wt|SCt),其等于中文目标词wt在语料库中所有词语中的预测权重,通过softmax函数进行计算;
CBOW的目标函数为如下的最大似然:
式中,ζCBOW是目标函数;p(wt|SCt)表示CBOW根据上下文SCt准确预测中文目标词wt的概率;E表示语料库;|E|表示语料库词语的总数;t表示单词的下标;
b)SG行为
已知中文目标词wt的前提下,预测其相似上下文SCt,使用每个中文目标词作为输入,并预测中文目标词的相似上下文,如图5的Action2部分,SG也是一个三层神经网络,对应各层具体为:
输出层:根据中文目标词wt准确预测上下文SCt的可能性p(wt+i|wt),其等于每个上下文单词在语料库中所有词语中的预测权重,通过softmax函数进行计算;
式中,p(wt+i|wt)表示SG根据中文目标词wt准确预测上下文中每个单词的概率;
SG目标函数为如下的最大似然函数:
式中,ζSG是目标函数;|E|表示语料库词语的总数;t和i表示单词的下标;c是上下文数量的一半。
④回报(Reward R):回报rt是环境对行为的反馈,用来评价代理采取行为的成功或者失败。定义在不同行为下的回报为:
式中,logpθ()表示代理πθ在参数θ的前提下,获得第n段轨迹的概率,wt表示中文目标词,SCt表示中文目标词的相似上下文,表示代理πθ在第n段轨迹的第t个状态下采取的行为,可以为acbow(CBOW行为)或者asg(SG行为),wi表示相似上下文中的单词,c表示相似上文窗口大小。
⑤代理(Agentπθ):代理就是一个映射函数π:S→A,可以看作参数为θ的分类器,其输入为状态,输出是采取的行为。
3.2、强化学习过程
中文词向量强化学习过程就是代理持续地和环境进行交互,处于环境不同的状态,然后代理采取不同的行为,环境根据代理的行为给出回报,代理根据回报判断采取行为的好坏,学习在下一个状态应该采取什么行为更好。不停地迭代,直到设置的最大迭代次数为止,如图5所示,其具体步骤如下,流程图如图6所示。
本发明实施例中,选用2008年的搜狗新闻作为语料库,通过语料库预处理,利用opencc工具包进行简繁体转换,利用正则表达式去除乱码,英文和标点,利用jieba分词进行中文分词,最后得到中文语料库,包括3亿个中文单词,词典大小约为420000。
本发明实施例中,对上述标准语料库进行相似上下文发现,相似上下文发现模型如图2所示,流程如图3和图4所示。本发明实施例中,我们设置学习率为0.01,最大迭代次数为4次进行强化学习。强化学习的模型图如图5所示,流程图如图6所示。我们在类比任务,相似任务(WS-240,WS-296),文本分类和命名实体识别任务上与7个对比方法进行对比,在100%的语料库上进行实验,实验结果如表1所示。然后在25%,50%,75%的语料库上进行扩展性实验,实验结果如图7和图8所示。(本发明方法命名为sc2vec)。
表1实验结果
从实验结果可以看出,本发明方法sc2vec在类比任务,相似任务,文本分类和命名实体识别任务上都取得了最好的结果。在扩展性性实验中,在不同大小的语料中都取得了最好的结果。可以观察出,本发明方法在不同情况都有更好地表现,说明相似上下文克服了相邻上下文的语义不相关性,强化学习增强了学习架构性能,说明本发明的确是一个性能更好,语义信息捕捉更准确的中文词向量生成模型。从各个实验结果可以看出,本发明一种基于相似上下文和强化学习的中文词向量生成方法的可行性。
本发明通过自适应地选择中文目标词的相似上下文,同时提出中文词向量强化学习生成框架,与语料库交互并获得反馈,自动学习语料库词语之间的关系,并寻找相似上下文,减小语料库规模,基于相似上下文预测目标词,进而生成中文词向量,避免中文相邻上下文的语义不相关性,增强学习架构性能,减少训练时间,提高中文词向量质量。本发明能够解决中文相邻词不相关的问题,生成高质量的中文词向量。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于相似上下文和强化学习的中文词向量生成方法,其特征在于,该方法包括:
选取语料库,进行语料库预处理,从而构建中文语料库;
对中文目标词进行相似上下文发现,获得与中文目标词的语义相关的相似上下文;
构建中文词向量强化学习框架,并进行强化学习,得到中文目标词的词向量表示;
对中文目标词进行相似上下文发现,包括对中文目标词进行相似上文发现,在中文目标词wt的历史词汇中寻找和wt相似的词语,其中,wt的历史词汇代表在wt附近,同时也在wt左边的词,t表示中文目标词的下标,具体步骤如下:
①确定上文窗口大小c;
②计算自适应相似阈值T,其等于中文目标词wt和范围[wt-c,wt+c]内所有词相似性的平均值;
③针对范围[wt-c,0)内的词wi,如果和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似上文,相似上文词语数量n1加1;
④如果n1<c,则向左扩展寻找范围,增加c个词语,即在范围[wt-2c,wt-c]内寻找相似上文,此时需要更新自适应相似阈值T,其等于中文目标词wt和范围[wt-2c,wt+2c]内所有词相似性的平均值,如果范围内的词和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似上文,相似上文词语数量n1加1;
⑤一直向左寻找,每次增加c个词并更新自适应阈值T,迭代寻找,直到相似上文词语数量等于c为止;
对中文目标词进行相似上下文发现,还包括对中文目标词进行相似下文发现,在中文目标词wt的未来词汇中寻找和wt相似的词语,其中,wt的未来词汇代表在wt附近,同时也在wt右边的词,t表示中文目标词的下标,具体步骤如下:
①首先确定下文窗口大小c,其中,下文窗口和上文窗口大小一样大;
②计算自适应相似阈值T,其等于中文目标词wt和范围[wt-c,wt+c]内所有词相似性的平均值;
③针对范围(0,wt+c]内的词wj,如果和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似下文,相似下文词语数量n2加1;
④如果n2<c,则向右扩展寻找范围,增加c个词语,即在范围[wt+c,wt+2c]内寻找相似下文,此时需要更新自适应相似阈值T,其等于中文目标词wt和范围[wt-2c,wt+2c]内所有词相似性的平均值,如果范围内的词和中文目标词wt的相似度大于自适应相似阈值T,则将该词确定为相似下文,相似下文词语数量n2加1;
⑤一直向右寻找,每次增加c个词语并更新自适应阈值T,迭代寻找相似下文,直到相似下文词语数量等于c为止;
所述构建中文词向量强化学习框架并进行强化学习过程中:将语料库定义为环境Environment,中文目标词wt和其相似上下文SCt定义为状态State,拥有CBOW和SG两种行为的分类器定义为代理Agent;当代理处于环境的一个状态时,其采取一个行为Action,然后环境根据这个行为给出一个回报Reward,代理通过回报判断目前行为的好坏,进行学习,然后在下一个状态采取更好的行为;当代理处理不同状态时,上述过程不断迭代,直到达到设置的最大迭代次数为止,强化学习完成,最后生成中文词向量;
所述构建中文词向量强化学习框架并进行强化学习,具体包括:
A1:初始化一个代理πθ,
A2:设置学习率η和最大迭代次数Tmax,并输入中文语料库E,作为环境E;
A3:根据代理πθ和环境E,让代理πθ和环境E进行交互,采样获得N个轨迹片段τs;
A4:根据N个轨迹片段τs,计算每段轨迹总的回报;
A5:根据每段轨迹总的回报,计算N段轨迹总回报的期望;
A6:根据轨迹总回报的期望,计算N段轨迹总回报的期望的梯度;
A7:根据轨迹总回报的期望的梯度,更新参数θ;
A8:按照上述过程,迭代次数加1,如果达到最大迭代次数则停止,输出中文词向量,否则返回A2继续迭代训练;
CBOW行为基于中文目标词的相似上下文预测目标词,SG行为基于中文目标词预测其相似上下文,其中,CBOW行为、SG行为均为三层神经网络。
2.根据权利要求1所述的一种基于相似上下文和强化学习的中文词向量生成方法,其特征在于,所述语料库预处理包括:对下载的互联网文本进行简繁体转化,去除乱码、英文和标点,中文分词。
4.根据权利要求1所述的一种基于相似上下文和强化学习的中文词向量生成方法,其特征在于,所述构建中文词向量强化学习框架并进行强化学习,具体包括如下步骤:
①初始化一个代理πθ,其参数为θ;
②设置学习率η和最大迭代次数Tmax,输入中文语料库E;
③让代理πθ和环境E进行交互,采样获得N个轨迹片段τs={τ1,...,τn,...,τN};
④计算每段轨迹总的回报,计算公式如下:
⑤计算N段轨迹总回报的期望
式中,表示N段轨迹总的回报的期望,N表示轨迹的总数,R(τn)表示第n段轨迹总的回报,τn表示第n段轨迹,表示第n段轨迹中第t个状态采取行为后的回报,t表示第t个状态,|E|表示中文语料库中单词的总数;
⑥计算N段轨迹总回报的期望的梯度
式中,表示N段轨迹总回报的期望的梯度,N表示轨迹的总数,R(τn)表示N段轨迹总的回报,τn表示第n段轨迹,t表示第t个状态,|E|表示中文语料库中单词的总数,表示代理πθ在参数θ的前提下,获得第n段轨迹的概率的梯度,表示代理πθ在第n段轨迹的第t个状态下采取的行为,为CBOW行为acbow或者SG行为asg;表示第n段轨迹的第t个状态,wt表示中文目标词,SCt表示中文目标词的相似上下文,wi表示相似上下文中的单词,c表示相似上文窗口大小;
⑦更新参数θ
⑧迭代次数加1,如果达到最大迭代次数则停止,输出中文词向量,否则返回②继续迭代训练。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911301344.5A CN111026848B (zh) | 2019-12-17 | 2019-12-17 | 一种基于相似上下文和强化学习的中文词向量生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911301344.5A CN111026848B (zh) | 2019-12-17 | 2019-12-17 | 一种基于相似上下文和强化学习的中文词向量生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111026848A CN111026848A (zh) | 2020-04-17 |
CN111026848B true CN111026848B (zh) | 2022-08-02 |
Family
ID=70209462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911301344.5A Expired - Fee Related CN111026848B (zh) | 2019-12-17 | 2019-12-17 | 一种基于相似上下文和强化学习的中文词向量生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111026848B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291165B (zh) * | 2020-05-09 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 训练词向量嵌入模型的方法及装置 |
CN112883169B (zh) * | 2021-04-29 | 2021-07-16 | 南京视察者智能科技有限公司 | 一种基于大数据的矛盾演化分析方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090061399A1 (en) * | 2007-08-30 | 2009-03-05 | Digital Directions International, Inc. | Educational software with embedded sheltered instruction |
EP3454260A1 (en) * | 2017-09-11 | 2019-03-13 | Tata Consultancy Services Limited | Bilstm-siamese network based classifier for identifying target class of queries and providing responses thereof |
CN108763504B (zh) * | 2018-05-30 | 2020-07-24 | 浙江大学 | 一种基于强化双通道序列学习的对话回复生成方法及*** |
CN109597876B (zh) * | 2018-11-07 | 2023-04-11 | 中山大学 | 一种基于强化学习的多轮对话答复选择模型及其方法 |
CN109918162B (zh) * | 2019-02-28 | 2021-11-02 | 集智学园(北京)科技有限公司 | 一种可学习的海量信息高维图形交互式展示方法 |
-
2019
- 2019-12-17 CN CN201911301344.5A patent/CN111026848B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN111026848A (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107924680B (zh) | 口语理解*** | |
Chang et al. | Chinese named entity recognition method based on BERT | |
CN108984526B (zh) | 一种基于深度学习的文档主题向量抽取方法 | |
CN107273355B (zh) | 一种基于字词联合训练的中文词向量生成方法 | |
CN107358948B (zh) | 基于注意力模型的语言输入关联性检测方法 | |
CN106502985B (zh) | 一种用于生成标题的神经网络建模方法及装置 | |
Deng et al. | Use of kernel deep convex networks and end-to-end learning for spoken language understanding | |
CN110046248B (zh) | 用于文本分析的模型训练方法、文本分类方法和装置 | |
CN109887484B (zh) | 一种基于对偶学习的语音识别与语音合成方法及装置 | |
CN113239700A (zh) | 改进bert的文本语义匹配设备、***、方法及存储介质 | |
CN112541356B (zh) | 一种生物医学命名实体识别的方法和*** | |
CN110619034A (zh) | 基于Transformer模型的文本关键词生成方法 | |
CN109299479A (zh) | 通过门控机制将翻译记忆融入神经机器翻译的方法 | |
CN110162789A (zh) | 一种基于汉语拼音的词表征方法及装置 | |
CN111026848B (zh) | 一种基于相似上下文和强化学习的中文词向量生成方法 | |
Deng et al. | Self-attention-based BiGRU and capsule network for named entity recognition | |
Mocialov et al. | Transfer learning for british sign language modelling | |
Wu et al. | An effective approach of named entity recognition for cyber threat intelligence | |
CN115831102A (zh) | 基于预训练特征表示的语音识别方法、装置及电子设备 | |
CN114417851A (zh) | 一种基于关键词加权信息的情感分析方法 | |
CN114387537A (zh) | 一种基于描述文本的视频问答方法 | |
Seilsepour et al. | Self-supervised sentiment classification based on semantic similarity measures and contextual embedding using metaheuristic optimizer | |
US11941360B2 (en) | Acronym definition network | |
CN112560440A (zh) | 一种基于深度学习的面向方面级情感分析的句法依赖方法 | |
CN113869065B (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220802 |