CN109086267B - 一种基于深度学习的中文分词方法 - Google Patents

一种基于深度学习的中文分词方法 Download PDF

Info

Publication number
CN109086267B
CN109086267B CN201810756452.0A CN201810756452A CN109086267B CN 109086267 B CN109086267 B CN 109086267B CN 201810756452 A CN201810756452 A CN 201810756452A CN 109086267 B CN109086267 B CN 109086267B
Authority
CN
China
Prior art keywords
word
vector
sequence
current
character
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.)
Active
Application number
CN201810756452.0A
Other languages
English (en)
Other versions
CN109086267A (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.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN201810756452.0A priority Critical patent/CN109086267B/zh
Publication of CN109086267A publication Critical patent/CN109086267A/zh
Application granted granted Critical
Publication of CN109086267B publication Critical patent/CN109086267B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于深度学习的中文分词方法,包括如下步骤:基于字面字频将汉字映射为字面向量;对字面向量进行精化,提取携带上下文语义信息的特征向量和携带字性特征的特征向量;将字符级别向量有效融合成词级别的分布式表示,再将融合好的候选词向量送入深度学习模型中计算句子得分,运用集束搜索的方法进行解码,最终通过句子得分来选择合适的分词结果。如此使得分词任务从繁琐的特征工程中解脱出来,通过提取更丰富的特征信息能够获得更好的***性能,并且利用完整的分割历史进行建模,具有序列级别的分词能力。

Description

一种基于深度学习的中文分词方法
技术领域
本发明涉及自然语言处理技术领域,具体涉及一种基于深度学习的中文分词方法。
背景技术
当前大数据环境下,随着物联网数据感知、数据云计算、三网融合以及移动互联网的迅速发展,数据,尤其是非结构化文本的数据量以指数级别迅猛增长,并呈现类型多样化、异构化、信息碎片化和价值密度低等特征。数据的快速膨胀对信息的自动处理带来了巨大挑战,如何高效、准确地处理海量文本,抽取出有价值的信息,成为自然语言处理(Natural Language Processing,NLP)的重要课题。
在自然语言处理领域,特别是中文自然语言处理中,分词是一项重要的基准任务,其结果性能的好坏将直接影响到后续机器翻译、情感分析、自动摘要生成、信息检索等语用任务的最终性能。然而由于中文自身的句法和语法特殊性,直接将英语等语言的处理技术应用到中文并不能取得预期的理想效果。传统的中文分词方法分为基于字符串匹配和基于统计两种,基于字符串匹配的分词按照一定规则扫描句子,逐个查找词库进行分词,统计学的方法运用统计语言模型和无监督或半监督的学习算法得出最优的切分结果。诸如此类的方法虽然取得了一定的效果,但大多是面向特定领域任务的,并且需要较强的人工干预进行特征发现,这种干预不仅会导致对词典复杂的运行时依赖关系,而且要求研究人员须具备专业的语言学知识。
深度学习能够利用深层神经网络自动学习出数据表示,为数据构建一种具有更强决策能力、洞察发现力和流程化能力的统一内部表示,形成对数据事实的统一理解,在保留语义信息的基础上降低分布式向量的维度,极大地减少了训练时长,提升了***性能。
早期基于深度学习的中文分词任务使用简单的反馈神经网络对训练序列中的每个字进行标注,这种方法仅获取固定窗口内的上下文信息,无法很好的学习到数据与之前数据的关联。
递归神经网络,能够通过累积历史记忆,更充分地利用上下文关系,自动学习到更复杂的特征,但在实践中发现递归神经网络存在梯度***和梯度消失的问题,这使得它面临着不能很好处理长距离历史记忆的问题。
鉴于此,确有必要发明一种基于深度学习的中文分词方法,以解决上述问题。
发明内容
本发明的目的是提供一种基于深度学习的中文分词方法,该方法具有序列级别的分词能力。
为了实现上述目的,本发明采用如下技术方案:一种基于深度学习的中文分词方法,包括如下步骤:
S1,对大规模语料集D进行字面字频统计,基于连续词袋模型和层级归一化训练方法,将语料集D中的每个字初始化为字面向量,将获取得到的字面向量按索引保存到字典V中;
S2,将训练语料逐句转化为固定长度的向量,送入深度学习模型中,并对字典V中的字面向量进行精化更新,获取携带上下文语义的特征向量和包含字性特征的向量;
S3,对每个训练句,在逐字进行训练时,根据预设的最大词长切分出所有以当前目标字结尾的候选词,将精化后的特征向量融合成每一个候选词的词向量,递增的将候选词与先前的分词历史连接起来,利用集束搜索的方法进行动态分词。
作为本发明进一步改进的技术方案,步骤S1具体包括:
S11,提取每个汉字的基本特征,通过遍历语料集D进行字典V的构建,字典V面向训练语料记录字的字面、字频和对应的字嵌入向量;
S12,字典V基于字频构建一棵完全的Huffman树,字典V中的字都处于树的叶子结点,通过辅助的hash表建立快速索引与查找机制;
S13,基于连续词袋模型和层级归一化的思想将语料集D中的每个字初始化为字面向量,并构造得出***目标函数
Figure BDA0001726828550000039
Figure BDA0001726828550000031
其中,目标字ω为窗口中心,lω为从根结点到目标字ω的路径,dω为从根结点到目标字ω的编码,xω为目标字ω窗口内的上下文字面向量均值,
Figure BDA0001726828550000032
为计算上下文字面向量均值xω在当前分支结点携带的参数值;
S14,定义训练以对路径结点的遍历为一个迭代周期,训练在一个迭代周期内以梯度
Figure BDA0001726828550000033
对参数θ进行更迭,同时累积语义影响因子
Figure BDA0001726828550000034
一个迭代周期结束后,更新目标字ω的窗口内的各个上下文环境字面向量,目标字ω的环境字面向量
Figure BDA0001726828550000035
为:
Figure BDA0001726828550000036
其中,μ表示学习率。
作为本发明进一步改进的技术方案,步骤S2具体包括:
S21,对于当前序列时刻t,根据索引从字典V执行查找表操作,获取目标字ω的初始向量
Figure BDA0001726828550000037
S22,对目标字ω的窗口上下文,根据索引取出目标字ω窗口内上下文的初始向量
Figure BDA0001726828550000038
1≤l≤w,w表示窗口宽度,使用门限组合神经网络方法,将窗口内的环境字向量表达为一个组合向量,记为
Figure BDA0001726828550000041
S23,对于当前序列时刻t,使用门限组合神经网络方法,依照步骤S22的方法计算得到前1~t-1时刻隐态的选择性历史输出
Figure BDA0001726828550000042
同时计算t+1~n时刻隐态的选择性未来输出
Figure BDA0001726828550000043
S24,在当前序列时刻t,以目标字ω的初始向量
Figure BDA0001726828550000044
与组合向量
Figure BDA0001726828550000045
作为输入,分别送入到深度学习模型中,产生历史特征输出
Figure BDA0001726828550000046
和未来特征输出
Figure BDA0001726828550000047
S25,对当前序列时刻t上的历史特征输出
Figure BDA0001726828550000048
和未来特征输出
Figure BDA0001726828550000049
进行线性组合形成ht
Figure BDA00017268285500000410
使用tanh激活函数产生网络输出
Figure BDA00017268285500000411
将网络输出
Figure BDA00017268285500000412
更新到字典V中,获得融入上下文语义的精化字向量
Figure BDA00017268285500000413
Figure BDA00017268285500000414
其中,W(o)∈Rd*2d与偏置向量b(o)∈Rd为各个当前序列时刻上的共享参数;
S26,使用训练集β逐句逐字查表获取融入上下文语义的精化字向量
Figure BDA00017268285500000415
构造句子矩阵表示作为观态矩阵,使用viterbi算法展开迭代训练,定义句子得分公式,确定最佳的标注序列:
Figure BDA00017268285500000416
其中,Ayi,yi+1为状态转移矩阵,输出的标注序列选择使用{BIES}标记规则集,其中B表示是一个词的第一个字,I表示是一个词中间的字,E表示是一个词的最后一个字,S表示是单字成词的,将{BIES}标记规则集与词性标注标签组合以得到字符序列中的最佳标签转移矩阵
Figure BDA00017268285500000417
Figure BDA00017268285500000418
作为本发明进一步改进的技术方案,门限组合神经网络方法包括如下步骤:
步骤1,定义有w个需要组合的字符向量,分别为v1,v2…vw,其中v1,v2…vw∈Rd,定义权值矩阵W(r)∈Rd*d和偏置向量b(r)∈Rd为共享参数,定义重置门rl,通过重置门rl计算组合记忆的概率,重置门rl的计算公式为:
rl=σ(W(r)·vl+b(r))
其中,1≤l≤w;
步骤2,在字符组合中,使用重置门rl计算各个字符向量v1,v2…vw聚集成目标词所产生的语义特征
Figure BDA0001726828550000051
语义特征
Figure BDA0001726828550000052
的计算公式为:
Figure BDA0001726828550000053
其中,权值矩阵W(l)∈Rd*d和偏置向量b(l)∈Rd为共享参数;
步骤3,定义更新门zl(1≤l≤w+1)为d维的归一化向量,用于表达融合各个字符向量v1,v2…vw和语义特征
Figure BDA0001726828550000054
的更新概率,更新门zl为:
Figure BDA0001726828550000055
其中,使用因子矩阵W(z)∈Rd*d作为共享参数;
步骤4,利用更新门zl对字符向量v1,v2…vw和语义特征
Figure BDA0001726828550000056
进行选择性的混合与组合处理,聚集成词且得到定长向量vw,其中vw∈Rd,vw的计算公式为:
Figure BDA0001726828550000057
其中,1≤l≤w+1。
作为本发明进一步改进的技术方案,步骤S22具体包括:
S22.1定义重置门rl,计算对目标字ω的影响概率:
Figure BDA0001726828550000061
其中,1≤l≤w,权值矩阵W(r)∈Rd*d和偏置向量b(r)∈Rd为各个字符向量间的共享参数;
S22.2,利用重置门rl,计算窗口内各个字符向量对目标字ω的聚集影响的语义特征
Figure BDA0001726828550000062
Figure BDA00017268285500000612
其中,
Figure BDA0001726828550000063
为目标字ω窗口内上下文的初始向量;
S22.3,定义更新门zl(1≤l≤w+1)为d维的归一化向量,用于表达融合各个字符向量v1,v2…vw和语义特征
Figure BDA0001726828550000064
的更新概率,更新门zl为:
Figure BDA0001726828550000065
其中,因子矩阵W(z)∈Rd*d为共享参数;
S22.4,利用更新门zl融合目标字ω窗口内上下文的初始向量
Figure BDA0001726828550000066
和语义特征
Figure BDA0001726828550000067
通过选择性的混合与组合处理,聚集得到组合向量
Figure BDA0001726828550000068
Figure BDA0001726828550000069
Figure BDA00017268285500000610
其中,1≤l≤w。
作为本发明进一步改进的技术方案,在步骤S24中,送入深度学习模型后包括如下步骤:
步骤A1,使用门限组合神经网络方法,执行对当前输入vt的窗口上下文环境内字符序列的组合计算,得到窗口上下文的组合向量,记为
Figure BDA00017268285500000611
步骤A2,使用门限组合神经网络方法,执行对当前序列时刻t之前所有历史隐态输出的组合计算,得到历史隐态输出,记为
Figure BDA0001726828550000071
步骤A3,在序列遍历的每一个当前序列时刻t上,定义一个重置门rt计算历史隐态输出
Figure BDA0001726828550000072
对当前输入vt产生的记忆概率,重置门rt的计算公式为:
Figure BDA0001726828550000073
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
步骤A4,在序列遍历的每一个当前序列时刻t上,对当前输入vt定义一个更新门zt用以计算在历史隐态输出
Figure BDA0001726828550000074
的作用下,受窗口上下文的组合向量
Figure BDA0001726828550000075
影响产生的更新概率,更新门zt的计算公式为:
Figure BDA0001726828550000076
其中,权值矩阵W(z)∈Rd*d与偏置向量b(z)∈Rd为各个当前序列时刻上的共享参数;
步骤A5,在序列遍历的每一个当前序列时刻t上,对当前输入vt通过重置门rt强化在历史隐态输出
Figure BDA0001726828550000077
作用下受组合向量
Figure BDA0001726828550000078
影响产生的能量值
Figure BDA0001726828550000079
Figure BDA00017268285500000710
其中,权值矩阵W(c)∈Rd*d与偏置向量b(c)∈Rd为各个当前序列时刻上的共享参数;
步骤A6,在序列遍历的每一个当前序列时刻t上,通过更新门zt计算出当前输入vt受历史隐态输出
Figure BDA00017268285500000711
影响下的隐态输出ht
Figure BDA00017268285500000712
其中,zt为更新门。
作为本发明进一步改进的技术方案,步骤S3具体包括:
S31,在每一个当前序列时刻t上,根据预设的最大词长切分出所有以当前目标字结尾的候选词,对于每一个候选词,查表获取候选词中各字的特征向量
Figure BDA0001726828550000081
和对应的标签转移向量
Figure BDA0001726828550000082
线性组合为字符向量vl
Figure BDA0001726828550000083
其中,1≤l≤L,L为当前候选词中包含的字符数;
S32,使用门限组合网络方法,将候选词包含的字符向量vl融合为一个候选词向量
Figure BDA0001726828550000084
S33,将融合好的候选词向量选词向量
Figure BDA0001726828550000085
与一个共享的权值向量参数u内积,计算得到一个词得分
Figure BDA0001726828550000086
Figure BDA0001726828550000087
S34,将候选词向量
Figure BDA0001726828550000088
送入到深度学习模型中,经过编码获取当前候选词的历史特征,历史参照
Figure BDA0001726828550000089
使用集束搜索算法,根据预设的集束宽度k,在句子前向遍历的每个当前序列时刻t上,始终记录存储得分较好的k个历史切分,其中切分句尾词的隐态输出为ht
S35,在序列遍历的每一个当前序列时刻t上,计算出隐态输出ht
S36,以产生的ht作为输入,使用tanh激活函数为t+1时刻可能产生的候选分词提供预测,预测值Pt+1为:
Pt+1=tanh(W(p)·ht+b(p))
其中,W(p)∈Rd*d与偏置向量b(p)∈Rd为各个当前序列时刻上的共享参数;
S37,将候选词向量
Figure BDA00017268285500000810
输入到深度学习模型中,基于深度学习模型的输出ht计算获得对下一个词的预测Pt+1,深度学习模型能够获取到之前整个分词历史中的记忆信息,计算一个序列的连接得分linkScore(yt+1):
linkScore(yt+1)=Pt+1·yt+1
S38,设置集束宽度k,在每一步取得分最高的k个结果保留,新的输入在保留的分割上继续操作,利用完整的分割历史,直接对分词结果建模,定义经过深度学习模型预测产生词序列y[1:m],切分的词序列得分函数构造为:
Figure BDA0001726828550000091
S39,将给定的字符序列xi的正确分词序列表示为yi,定义用于预测分段句子的结构化间隔损失来构造损失函数,反向更新参数。。
作为本发明进一步改进的技术方案,步骤S35具体包括:
S35.1,在序列遍历的每一个当前序列时刻t上,定义一个重置门rt,计算历史隐态输出
Figure BDA0001726828550000092
对当前输入候选词向量
Figure BDA0001726828550000093
产生的记忆概率:
Figure BDA0001726828550000094
其中,权值矩阵
Figure BDA00017268285500000914
与偏置向量
Figure BDA00017268285500000915
为各个当前序列时刻上的共享参数;
S35.2,在序列遍历的每一个当前序列时刻t上,对当前输入候选词向量
Figure BDA0001726828550000095
定义一个更新门zt,计算在历史隐态输出
Figure BDA0001726828550000096
的作用下产生的更新概率;
Figure BDA0001726828550000097
其中,权值矩阵
Figure BDA00017268285500000916
与偏置向量
Figure BDA00017268285500000917
为各个当前序列时刻上的共享参数;
S35.3,在序列遍历的每一个当前序列时刻t上,对当前输入候选词向量
Figure BDA0001726828550000098
通过重置门rt强化在历史隐态输出
Figure BDA0001726828550000099
作用下产生的能量值
Figure BDA00017268285500000910
Figure BDA00017268285500000911
其中,权值矩阵
Figure BDA00017268285500000912
与偏置向量
Figure BDA00017268285500000913
为各个当前序列时刻上的共享参数;
S35.4,在序列遍历的每一个当前序列时刻t上,通过更新门zt计算出当前输入候选词向量
Figure BDA0001726828550000101
受历史隐态输出
Figure BDA0001726828550000102
影响下的隐态输出ht
Figure BDA0001726828550000103
作为本发明进一步改进的技术方案,步骤S39具体包括如下步骤:
S39.1,对于给定的训练句序列sen[1:n],经过模型预测产生词序列y[1:m],分词后的词序列得分函数为:
Figure BDA0001726828550000104
S39.2,训练采用最大间隔法,将给定的训练句序列sen[1:n]正确的分词序列表示为y(i),t,模型预测的分词序列表示为
Figure BDA0001726828550000106
定义结构化间隔损失为:
Figure BDA0001726828550000107
其中,μ为衰减参数;
S39.3给定训练集β,加入一个2范数项的损失函数,通过损失函数,反向更新参数:
Figure BDA0001726828550000108
其中:
Figure BDA0001726828550000109
本发明的有益效果是:本发明通过初始化每个训练字的字面向量,使用深度学习模型抓取训练字携带的历史特征、未来特征和字性特征,基于门限组合神经网络方法精化分布式向量以表征相应的候选词,将中文分词重新形式化为直接分割学习任务,直接评估不同分词句子的相对可能性,然后搜索分数最高的分词序列,从而获得更多序列级别的分词能力。
附图说明
图1为本发明基于深度学习的中文分词方法的流程示意图。
图2为本发明中门限组合神经网络方法的架构示意图。
图3为本发明中改进型LTSM模型的架构示意图。
图4为本发明中CRF层向量精化架构图。
图5为本发明中基于动态规划的集束搜索算法示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施方式对本发明进行详细描述。
如图1所示,一种基于深度学习的中文分词方法,包括如下步骤:
S1,对大规模语料集D进行字面字频统计,基于连续词袋模型(continuous bag-of-words,CBOW)和层级归一化(hierarchical softmax,HS)训练方法,将语料集D中的每个字初始化为字面向量,将获取得到的字面向量按索引保存到字典V中;
S2,将训练语料逐句转化为固定长度的向量,送入深度学习模型中,在此,深度学习模型选择改进型LSTM模型,并对字典V中的字面向量进行精化更新,获取携带上下文语义的特征向量和包含字性特征的向量;
S3,对每个训练句,在逐字进行训练时,根据预设的最大词长切分出所有以当前目标字结尾的候选词,将精化后的特征向量融合成每一个候选词的词向量,递增的将候选词与先前的分词历史连接起来,利用集束搜索的方法进行动态分词。
其中,步骤S1具体包括以下步骤:
S11,提取每个汉字的基本特征,通过遍历语料集D进行字典V的构建,字典V面向训练语料记录字的字面、字频和对应的字嵌入向量;
S12,字典V基于字频构建一棵完全的Huffman树,字典V中的字都处于树的叶子结点,通过辅助的hash表建立快速索引与查找机制;
S13,基于连续词袋模型和层级归一化的思想将语料集D中的每个字初始化为字面向量,并构造得出***目标函数
Figure BDA0001726828550000128
Figure BDA0001726828550000121
其中,目标字ω为窗口中心,lω为从根结点到目标字ω的路径,dω为从根结点到目标字ω的编码,xω为目标字ω窗口内的上下文字面向量均值,
Figure BDA0001726828550000129
为计算上下文字面向量均值xω在当前分支结点携带的参数值;
S14,定义训练以对路径结点的遍历为一个迭代周期,训练在一个迭代周期内以梯度
Figure BDA0001726828550000122
对参数θ进行更迭,同时累积语义影响因子
Figure BDA0001726828550000123
一个迭代周期结束后,更新目标字ω的窗口内的各个上下文环境字面向量,目标字ω的环境字面向量
Figure BDA0001726828550000124
为:
Figure BDA0001726828550000125
其中,μ表示学习率,训练中依据梯度变化率做出适当调整。
其中,步骤S13具体为:将语料集D中的语料按句输入,以一个动态可变窗口对训练句S做顺序遍历,窗口中心为目标字ω,窗口内的其它字构成了目标字ω的上下文环境context(ω),对于每一个训练样本(ω|context(ω)),都在Huffman树中预统计了从根结点到目标字ω的路径lω和编码dω,训练以对路径结点的遍历为一个迭代周期,以目标字ω窗口内的上下文字面向量均值xω为输入,以如下式所示的sigmoid激活函数,以梯度下降法更迭参数θ,计算上下文环境context(ω)对目标字ω的语义影响:
Figure BDA0001726828550000126
遍历中,路径上的每个分支结点都视为一个隐式二分类器,通过判定其Huffman编码中的每一个分量
Figure BDA0001726828550000127
的取值是1(左子树结点)或者0(右子树结点),计算上下文字面向量均值xω在当前分支结点携带的参数值
Figure BDA0001726828550000131
的作用下对目标字ω语义的影响因子,由此构造得出***目标函数
Figure BDA0001726828550000132
Figure BDA0001726828550000133
其中,目标字ω为窗口中心,lω为从根结点到目标字ω的路径,dω为从根结点到目标字ω的编码,xω为以目标字ω窗口内的上下文字面向量均值。
步骤S2具体包括如下步骤:
S21,对于当前序列时刻t,根据索引从字典V执行查找表操作,获取目标字ω的初始向量
Figure BDA0001726828550000134
S22,对目标字ω的窗口上下文,根据索引取出目标字ω上下文窗口内的初始向量
Figure BDA0001726828550000135
1≤l≤w,w表示窗口宽度,使用门限组合神经网络方法,将窗口内的环境字向量表达为一个组合向量,记为
Figure BDA0001726828550000136
S23,对于当前序列时刻t,使用门限组合神经网络方法,依照步骤S22的方法计算得到前1~t-1时刻隐态的选择性历史输出
Figure BDA0001726828550000137
作为前向改进型LTSM的输入;同时计算t+1~n时刻隐态的选择性未来输出
Figure BDA0001726828550000138
作为后向改进型LTSM的输入。
S24,在当前序列时刻t,以目标字ω的初始向量
Figure BDA0001726828550000139
与组合向量
Figure BDA00017268285500001310
作为输入,分别送入到改进型LSTM模型构建的Bi-LSTM架构中展开训练,产生历史特征输出
Figure BDA00017268285500001311
和未来特征输出
Figure BDA00017268285500001312
S25,对当前序列时刻t上的历史特征输出
Figure BDA00017268285500001313
和未来特征输出
Figure BDA00017268285500001314
进行线性组合形成ht
Figure BDA00017268285500001315
使用tanh激活函数产生网络输出
Figure BDA00017268285500001316
将网络输出
Figure BDA00017268285500001317
更新到字典V中,获得融入上下文语义的精化字向量
Figure BDA00017268285500001318
Figure BDA00017268285500001319
其中,W(o)∈Rd*2d与偏置向量b(o)∈Rd为各个当前序列时刻上的共享参数;
S26,使用训练集β逐句逐字查表获取融入上下文语义的精化字向量
Figure BDA0001726828550000141
送入到CRF层构造句子矩阵表示作为观态矩阵,使用viterbi算法展开迭代训练,定义句子得分公式,确定最佳的标注序列:
Figure BDA0001726828550000142
其中,Ayi,yi+1为状态转移矩阵;
输出的标注序列中的字位标签选择使用{BIES}标记规则集,其中B表示是一个词的第一个字,I表示是一个词中间的字,E表示是一个词的最后一个字,S表示是单字成词的,将{BIES}标记规则集与词性标注标签组合(例如S-V表示单字成词的动词)以得到字符序列中的最佳标签转移矩阵
Figure BDA0001726828550000143
以最佳标签转移矩阵作为后续分词的字性特征依据,标注训练句中字的最佳标签选择。
其中,步骤S22中获得组合向量
Figure BDA0001726828550000144
的步骤具体如下:
S22.1定义重置门rl,计算对目标字ω的影响概率:
Figure BDA0001726828550000145
其中,1≤l≤w,权值矩阵W(r)∈Rd*d和偏置向量b(r)∈Rd为各个字符向量间的共享参数;
S22.2,利用重置门rl,计算窗口内各个字符向量对目标字ω的聚集影响的语义特征
Figure BDA0001726828550000146
Figure BDA0001726828550000147
其中,
Figure BDA0001726828550000148
为目标字ω窗口内上下文的初始向量。
S22.3,定义更新门zl(1≤l≤w+1)为d维的归一化向量,用于表达融合各个字符向量v1,v2…vw和语义特征
Figure BDA0001726828550000149
的更新概率,更新门zl为:
Figure BDA0001726828550000151
其中,
Figure BDA0001726828550000152
为目标字ω窗口内上下文的初始向量,因子矩阵W(z)∈Rd*d为共享参数;
S22.4,利用更新门zl融合目标字ω窗口内上下文的初始向量
Figure BDA0001726828550000153
和语义特征
Figure BDA0001726828550000154
通过选择性的混合与组合处理,聚集得到组合向量
Figure BDA0001726828550000155
Figure BDA0001726828550000156
Figure BDA0001726828550000157
其中,1≤l≤w。
如图2所示,步骤S22和S23中所提到的门限组合神经网络方法包括如下步骤:
步骤1,定义字符组中有w个需要组合的字符向量,分别为v1,v2…vw,其中v1,v2…vw∈Rd,定义权值矩阵W(r)∈Rd*d和偏置向量b(r)∈Rd为共享参数,定义重置门rl,通过重置门rl计算组合记忆的概率,重置门rl的计算公式为:
rl=σ(W(r)·vl+b(r))
其中,1≤l≤w;
步骤2,在字符组合中,使用重置门rl计算各个字符向量v1,v2…vw聚集成目标词所产生的语义特征
Figure BDA0001726828550000158
语义特征
Figure BDA0001726828550000159
的计算公式为:
Figure BDA00017268285500001510
其中,权值矩阵W(l)∈Rd*d和偏置向量b(l)∈Rd为共享参数;
步骤3,定义更新门zl(1≤l≤w+1)为d维的归一化向量,用于表达融合各个字符向量v1,v2…vw和语义特征
Figure BDA0001726828550000161
的更新概率,更新门zl为:
Figure BDA0001726828550000162
其中,使用因子矩阵W(z)∈Rd*d作为共享参数;
步骤4,利用更新门zl对字符向量v1,v2…vw和语义特征
Figure BDA0001726828550000163
进行选择性的混合与组合处理,聚集成词且得到定长向量vw,其中vw∈Rd,vw的计算公式为:
Figure BDA0001726828550000164
其中,1≤l≤w+1。
如图3所示,步骤S24中所说的改进型LSTM模型,用于在序列标注问题的顺序遍历中抓取历史记忆信息,包括如下步骤:
步骤A1,使用门限组合神经网络方法,执行对当前输入vt的窗口上下文环境内字符序列的组合计算,得到窗口上下文的组合向量,记为
Figure BDA0001726828550000165
步骤A2,使用门限组合神经网络方法,执行对当前序列时刻t之前所有历史隐态输出的组合计算,得到历史隐态输出,记为
Figure BDA0001726828550000166
步骤A3,在序列遍历的每一个当前序列时刻t上,定义一个重置门rt计算历史隐态输出
Figure BDA0001726828550000167
对当前输入vt产生的记忆概率,重置门rt的计算公式为:
Figure BDA0001726828550000168
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
步骤A4,在序列遍历的每一个当前序列时刻t上,对当前输入vt定义一个更新门zt用以计算在历史隐态输出
Figure BDA0001726828550000171
的作用下,受组合向量
Figure BDA0001726828550000172
影响产生的更新概率,更新门zt的计算公式为:
Figure BDA0001726828550000173
其中,权值矩阵W(z)∈Rd*d与偏置向量b(z)∈Rd为各个当前序列时刻上的共享参数;
步骤A5,在序列遍历的每一个当前序列时刻t上,对当前输入vt通过重置门rt强化在历史隐态输出
Figure BDA0001726828550000174
作用下受组合向量
Figure BDA0001726828550000175
影响产生的能量值
Figure BDA0001726828550000176
Figure BDA0001726828550000177
其中,权值矩阵W(c)∈Rd*d与偏置向量b(c)∈Rd为各个当前序列时刻上的共享参数;
步骤A6,在序列遍历的每一个当前序列时刻t上,通过更新门zt计算出当前输入vt受历史隐态输出
Figure BDA0001726828550000178
影响下的隐态输出ht
Figure BDA0001726828550000179
另外,步骤S24中,在前向改进型LSTM过程中,首先,定义一个重置门
Figure BDA00017268285500001710
计算历史隐态输出
Figure BDA00017268285500001711
对当前输入
Figure BDA00017268285500001712
产生的记忆概率,重置门
Figure BDA00017268285500001713
为:
Figure BDA00017268285500001714
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
然后,定义一个更新门
Figure BDA00017268285500001715
计算在历史隐态输出
Figure BDA00017268285500001716
的作用下,受组合向量
Figure BDA00017268285500001717
影响产生的更新概率,更新门
Figure BDA00017268285500001718
为:
Figure BDA00017268285500001719
其中,权值矩阵W(z)∈Rd*d与偏置向量b(z)∈Rd为各个当前序列时刻上的共享参数;
接着,对当前输入的目标字
Figure BDA0001726828550000181
通过重置门
Figure BDA0001726828550000182
强化在历史隐态输出
Figure BDA0001726828550000183
作用下受组合向量
Figure BDA0001726828550000184
影响产生的能量值
Figure BDA0001726828550000185
Figure BDA0001726828550000186
其中,权值矩阵W(c)∈Rd*d与偏置向量b(c)∈Rd为各个当前序列时刻上的共享参数;
最后,更新门
Figure BDA0001726828550000187
主要决定了到底有多少信息需要遗忘和保留,由此计算出当前输入目标字
Figure BDA0001726828550000188
受历史隐态输出
Figure BDA0001726828550000189
和窗口上下文影响下的隐态输出
Figure BDA00017268285500001810
Figure BDA00017268285500001811
后向改进型LSTM过程与前向类似,首先,定义一个重置门
Figure BDA00017268285500001812
计算未来隐态输出
Figure BDA00017268285500001813
对当前输入
Figure BDA00017268285500001814
产生的预测概率,重置门
Figure BDA00017268285500001815
为:
Figure BDA00017268285500001816
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
然后,定义一个更新门
Figure BDA00017268285500001817
计算在来来隐态输出
Figure BDA00017268285500001818
的作用下,受组合向量
Figure BDA00017268285500001819
影响产生的更新概率,更新门
Figure BDA00017268285500001820
为:
Figure BDA00017268285500001821
其中,权值矩阵W(z)∈Rd*d与偏置向量b(z)∈Rd为各个当前序列时刻上的共享参数;
接着,对当前输入的目标字
Figure BDA00017268285500001822
通过重置门
Figure BDA00017268285500001823
强化在未来预测
Figure BDA00017268285500001824
作用下受组合向量
Figure BDA00017268285500001825
影响产生的能量值
Figure BDA00017268285500001826
Figure BDA00017268285500001827
其中,权值矩阵W(c)∈Rd*d与偏置向量b(c)∈Rd为各个当前序列时刻上的共享参数;
最后,更新门
Figure BDA0001726828550000191
主要决定了到底有多少信息需要遗忘和保留,由此计算出当前输入目标字
Figure BDA0001726828550000192
受未来预测和窗口上下文影响下的隐态输出
Figure BDA0001726828550000193
Figure BDA0001726828550000194
步骤S3具体包括:
S31,在每一个当前序列时刻t上,根据预设的最大词长切分出所有以当前目标字结尾的候选词,对于每一个候选词,查表获取候选词中各字融入了上下文语义的特征向量
Figure BDA0001726828550000195
和对应的标签转移向量
Figure BDA0001726828550000196
线性组合为字符向量vl
Figure BDA0001726828550000197
其中,1≤l≤L,L为当前候选词中包含的字符数;
S32,使用门限组合网络方法,将候选词包含的字符向量vl融合为一个候选词向量
Figure BDA0001726828550000198
S33,将融合好的候选词向量
Figure BDA0001726828550000199
与一个共享的权值向量参数u内积,计算得到一个词得分
Figure BDA00017268285500001910
Figure BDA00017268285500001911
S34,将候选词向量
Figure BDA00017268285500001912
送入到改进型LSTM模型中,经过编码获取当前候选词的历史特征,历史参照
Figure BDA00017268285500001913
使用集束搜索算法,根据预设的集束宽度k,在句子前向遍历的每个当前序列时刻t上,始终记录存储得分较好的k个历史切分,其中切分句尾词的隐态输出为ht
S35,在序列遍历的每一个当前序列时刻t上,计算出隐态输出ht
S36,以产生的ht作为输入,使用tanh激活函数为t+1时刻可能产生的候选分词提供预测,预测值Pt+1为:
Pt+1=tanh(W(p)·ht+b(p))
其中,W(p)∈Rd*d与偏置向量b(p)∈Rd为各个当前序列时刻上的共享参数;
S37,将候选词向量
Figure BDA0001726828550000201
输入到改进型LSTM模型中,基于改进型LSTM模型的输出ht计算获得对下一个词的预测Pt+1,改进型LSTM模型能够获取到之前整个分词历史中的记忆信息,计算一个序列的连接得分linkScore(yt+1):
linkScore(yt+1)=Pt+1·yt+1
S38,设置集束宽度k,在每一步取得分最高的k个结果保留,新的输入在保留的分割上继续操作,利用完整的分割历史,直接对分词结果建模,定义经过改进型LSTM模型预测产生词序列y[1:m],切分的词序列得分函数构造为:
Figure BDA0001726828550000202
S39,将给定的字符序列xi的正确分词序列表示为yi,定义用于预测分段句子的结构化间隔损失。
其中,步骤S35具体包括:
S35.1,在序列遍历的每一个当前序列时刻t上,定义一个重置门rt,计算历史隐态输出
Figure BDA0001726828550000203
对当前输入候选词向量
Figure BDA0001726828550000204
产生的记忆概率:
Figure BDA0001726828550000205
其中,权值矩阵
Figure BDA0001726828550000206
与偏置向量
Figure BDA0001726828550000207
为各个当前序列时刻上的共享参数;
S35.2,在序列遍历的每一个当前序列时刻t上,对当前输入候选词向量
Figure BDA0001726828550000208
定义一个更新门zt,计算在历史隐态输出
Figure BDA0001726828550000209
的作用下产生的更新概率;
Figure BDA00017268285500002010
其中,权值矩阵
Figure BDA00017268285500002011
与偏置向量
Figure BDA00017268285500002012
为各个当前序列时刻上的共享参数;
S35.3,在序列遍历的每一个当前序列时刻t上,对当前输入候选词向量
Figure BDA0001726828550000211
通过重置门rt强化在历史隐态输出
Figure BDA0001726828550000212
作用下产生的能量值
Figure BDA0001726828550000213
Figure BDA0001726828550000214
其中,权值矩阵
Figure BDA0001726828550000215
与偏置向量
Figure BDA0001726828550000216
为各个当前序列时刻上的共享参数;
S35.4,在序列遍历的每一个当前序列时刻t上,通过更新门zt计算出当前输入候选词向量
Figure BDA0001726828550000217
受历史隐态输出
Figure BDA0001726828550000218
影响下的隐态输出ht
Figure BDA0001726828550000219
步骤S39具体包括如下步骤:
S39.1,对于给定的训练句序列sen[1:n],经过模型预测产生词序列y[1:m],分词后的词序列得分函数为:
Figure BDA00017268285500002110
S39.2,训练采用最大间隔法,将给定的训练句序列sen[1:n]正确的分词序列表示为y(i),t,模型预测的分词序列表示为
Figure BDA00017268285500002111
定义结构化间隔损失为:
Figure BDA00017268285500002112
其中,μ为衰减参数,用于调节损失函数值;
S39.3给定训练集β,加入一个2范数项的损失函数,通过损失函数,反向更新参数:
Figure BDA00017268285500002113
其中:
Figure BDA00017268285500002114
实施例1
一种基于深度学习的中文分词方法,包括如下步骤:
步骤1:对大规模语料集D进行字面字频统计,基于CBOW模型和HS训练方法,将语料集D中的每个字初始化为基本分布式字面向量,将获取到的字面向量按索引保存到字典V中。
步骤2:将训练语料逐句转化为固定长度的向量,送入改进的双向LSTM模型中,通过训练该双向LSTM模型中的参数,对字典V中字符级别的字面向量进行精化更新,获取携带上下文语义的特征向量和包含字性特征的向量。
步骤3:对每个训练句,在逐字进行训练时,使用全切分的思想在最大词长范围内切分出所有以当前字结尾的候选词,将精化后的字符级别特征向量融合成每一个候选词的词向量,递增的将候选词与先前的分词历史连接起来,利用集束搜索的方法进行动态分词。
具体的,第一步提取每个汉字的基本特征,通过遍历大规模语料集D对语料集D中汉字进行字典V的构建,字典V面向训练语料记录了汉字的字面、字频和对应的字嵌入向量表示。对字典V基于字频构建起一棵完全的Huffman树,字典V中的字都处于树的叶子结点,并通过辅助的hash表建立快速索引与查找机制。字面向量的训练使用CBOW模型和HS训练方法构造了如下式所示的***目标函数:
Figure BDA0001726828550000221
将语料集D中的训练语料按句输入,以一个动态可变窗口对训练句S做顺序遍历,窗口中心为目标字ω,训练在一个迭代周期内以梯度
Figure BDA0001726828550000222
对参数θ进行更迭,同时累积语义影响因子
Figure BDA0001726828550000223
一个迭代周期结束后,以下式更新目标字ω的窗口内的各个上下文环境的字面向量:
Figure BDA0001726828550000231
其中μ表示学习率,训练中依据梯度变化率做出适当调整。
第二步对每个输入的训练句,逐字进行训练,根据索引从字典V中取出对应的初始向量,记为
Figure BDA0001726828550000232
训练中向量维度d取50,并根据索引取出对应上下文窗口内字向量,并将上下文窗口内字向量使用门限组合神经网络组合成组合向量,记为
Figure BDA0001726828550000233
表达窗口上下文对目标词的影响。
将字面向量
Figure BDA0001726828550000234
与窗口上下文组合向量
Figure BDA0001726828550000235
输入到改进的Bi-LSTM模型中,前向LSTM的输入是序列从左往右传递,后向LSTM的输入是序列从右往左的传递。最后,将两个隐藏层单元输出进行拼接,作为整体网络隐藏层的输出。
输出标签T,其词位标签选择使用{BIES}标记规则集,其中B表示是一个词的第一个字,M表示是一个词中间的字,E表示是一个词的最后一个字,而S表示是单字成词的,将S与词性标注标签组合,例如S-V表示单字成词的动词,词性标签共13种,与词位标签组合标签集共52种。将隐藏层输出进行映射变换,并进行非线性变换作为输出。
oi=tanh(wo·[hi1,hi2]+bo)
定义句子得分公式为:
Figure BDA0001726828550000236
其中,θ为模型参数集合,Ayi,yi+1是转移状态矩阵,N是训练句的字数。
在解码过程中使用动态规划算法,最终选择的标注序列为计算得分最高的序列:
Figure BDA0001726828550000237
其中YX为所有可能的标注序列。使用softmax归一化所有标签,得分被计算为一个条件标签路径概率,对条件标签路径概率取对数,得到有效路径的条件概率似然函数,反向训练更新参数和字面向量
Figure BDA0001726828550000241
时,网络通过最大化句子标签的似然函数来训练参数:
Figure BDA0001726828550000242
模型输出送入CRF层使用viterbi算法来确定最佳的标注序列,由转移状态矩阵与网络输出组成句子标签分数,通过最大化句子标签的似然函数来反向更新参数和字面向量
Figure BDA0001726828550000243
训练好的字面向量就是我们需要提取的携带上下文信息的特征向量,记为
Figure BDA0001726828550000244
在状态转移矩阵中,每一行代表了前一个字所有可能的标注转移到当前字某一字性标注的可能性,提取最佳标注序列对应的转移向量作为携带了字性特征的特征向量,记作
Figure BDA0001726828550000245
第三步为取词操作,逐字遍历第二步标注的训练句集合,对于训练句中每个字,通过查找表操作提取字的向量
Figure BDA0001726828550000246
根据预设的最大词长(比如词长取值为4),使用前向全切分的思想,在最大词长范围内切分出所有以当前字结尾的候选词,使用门限组合神经网络GCNN,基于候选词将字符级别向量融合表示为词级别向量
Figure BDA0001726828550000247
Figure BDA0001726828550000248
其中,L为当前候选词中的字符数;
将融合好的词级别向量
Figure BDA0001726828550000249
与一个共享的权值向量参数u内积,计算出当前候选词得分:
Figure BDA00017268285500002410
将词级别向量
Figure BDA00017268285500002411
输入到改进型LSTM模型中,经过编码获得当前候选词的历史特征表示:
Figure BDA00017268285500002412
由于模型使用动态规划基于最大词长进行全切分,所有可能的切分标注结果数是字符序列的长度的指数级,使得计算所有可能结果的得分是不可能的。另外由于计算当前候选分词表示引入了候选词的历史信息,传统的viterbi算法不再是最佳选择,为了在实际应用中更加发挥作用,模型采用集束算法搜索候选词合适的前一时刻的隐层输出处hj-1进行解码。具体的,集束搜索算法求解优化模型的详细过程如下:
Figure BDA0001726828550000251
上述算法中,遍历训练句的每一个t时刻产生的每一个候选词,通过改进型LSTM模型都融入了与其相匹配的分词历史记忆,并为t+1时刻可能产生的候选分词提供预测:
Pt+1=tanh(wpht+bp)
由此计算出t+1时刻的连接得分;
linkScore(yt+1)=pt+1·yt+1
并通过预设的集束宽度k,在每一步的动态前向中始终保留k个得分较高的句子切分,在此过程中,既有效地利用了完整的切分历史,又预测了未来的可能切分,使得模型具有了句子级别的判别能力。假设对于给定的训练句序列sen[1:n],经过模型预测产生了某个词序列y[1:m],此分词后的词序列得分函数为:
Figure BDA0001726828550000261
训练采用最大间隔法(max margin criterion),对于给定的训练句序列sen[1:n],其正确的分词序列表示为y(i),t,模型预测的分词序列表示为
Figure BDA0001726828550000262
定义结构化间隔损失:
Figure BDA0001726828550000263
其中μ为衰减参数,用于调节损失函数值,起到平滑作用。给定训练集β,加入一个2范数项的损失函数,通过损失函数,反向更新参数:
Figure BDA0001726828550000264
其中:
Figure BDA0001726828550000265
模型优化采用Adagard算法,并使用dropout正则化技术防止出现过拟合。
在本发明中,图4为字符级Bi-LSTM-CRF向量精化架构图;图5为基于动态规划的集束搜索算法示意图。
综上所述,本发明具有如下优点:
(1)无需工程化的特征提取,不需要过多先验知识的情况下就可以抓取到数据更加抽象的本质特征,通过分布式向量来对文本进行表征;
(2)对字面向量精化的过程使用改进Bi-LSTM模型使得字符级别向量能够同时获取前文以及后续文中的信息,并且基于注意力机制的方法能够更好地获取远距离的上下文信息;
(3)在字面向量精化过程中获取字面向量的字性特征,利用字性信息辅助分词提高分词的准确率;
(4)在精化字向量训练过程中加入目标字周围窗口内字的语义信息,增强了对目标字向量特征的提取;
(5)基于门控卷积神经网络的融合字向量方法中,在计算时使用共享参数矩阵使得需要训练的参数矩阵维度得到降低,提升了模型计算效率,并且使用门控机制能够更加合理对字符向量进行融合;
(6)集束搜索算法:在每一步取得分最高的k个结果保留,接下来新切分出的候选词在保留的这些分割上继续操作,相比于viterbi算法能够省下很多解码时间,并且能够利用完整的分割历史,直接对分词结果建模。
以上实施例仅用于说明本发明而并非限制本发明所描述的技术方案,对本说明书的理解应该以所属技术领域的技术人员为基础,尽管本说明书参照上述的实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,所属技术领域的技术人员仍然可以对本发明进行修改或者等同替换,而一切不脱离本发明的精神和范围的技术方案及其改进,均应涵盖在本发明的权利要求范围内。

Claims (8)

1.一种基于深度学习的中文分词方法,其特征在于,包括如下步骤:
S1,对大规模语料集D进行字面字频统计,基于连续词袋模型和层级归一化训练方法,将语料集D中的每个字初始化为字面向量,将获取得到的字面向量按索引保存到字典V中;
S2,将训练语料逐句转化为固定长度的向量,送入深度学习模型中,
并对字典V中的字面向量进行精化更新,获取携带上下文语义的特征向量和包含字性特征的向量;
S3,对每个训练句,在逐字进行训练时,根据预设的最大词长切分出
所有以当前目标字结尾的候选词,将精化后的特征向量融合成每一个候选词的词向量,递增的将候选词与先前的分词历史连接起来,利用集束搜索的方法进行动态分词;
其中,步骤S1具体包括:
S11,提取每个汉字的基本特征,通过遍历语料集D进行字典V的构建,字典V面向训练语料记录字的字面、字频和对应的字嵌入向量;
S12,字典V基于字频构建一颗完全的Huffman树,字典V中的字都处于树的叶子节点,通过辅助的hash表建立快速索引与查找机制;
S13,基于连续词袋模型和层级归一化的思想将语料集D中的每个字初始化为字面向量,并构造得出***目标函数
Figure FDA00036690436400000212
Figure FDA0003669043640000021
其中,目标字ω为窗口中心,lω为从根节点到目标字ω的路径,dω为从根节点到目标字ω的编码,xω为目标字ω窗口内的上下文字面向量均值,
Figure FDA0003669043640000022
为计算上下文字面向量均值xω在当前分支点携带的参数值;
S14,定义训练以对路径结点的遍历为一个迭代周期,训练在一个迭代周期内以梯度
Figure FDA0003669043640000023
对参数θ进行更迭,同时累积语义影响因子
Figure FDA0003669043640000024
一个迭代周期结束后,更新目标字ω的窗口内的各个上下文环境字面向量,目标字ω的环境字面向量
Figure FDA0003669043640000025
为:
Figure FDA0003669043640000026
其中,μ表示学习率。
2.如权利要求1所述的基于深度学习的中文分词方法,其特征在于,步骤S2具体包括:
S21,对于当前序列时刻t,根据索引从字典V执行查找表操作,获取目标字ω的初始向量
Figure FDA0003669043640000027
Figure FDA0003669043640000028
S22,根据索引取出目标字ω窗口内上下文的初始向量
Figure FDA0003669043640000029
Figure FDA00036690436400000210
w表示窗口宽度,使用门限组合神经网络方法,将窗口内的环境字向量表达为一个组合向量,记为
Figure FDA00036690436400000211
S23,对于当前序列时刻t,使用门限组合神经网络方法,依照步骤S22的方法计算得到前1~t-1时刻隐态的选择性历史输出
Figure FDA0003669043640000031
同时计算t+1~n时刻隐态的选择性未来输出
Figure FDA0003669043640000032
S24,在当前序列时刻t,以目标字ω的初始向量
Figure FDA0003669043640000033
与组合向量
Figure FDA0003669043640000034
作为输入,分别送入到深度学习模型中,产生历史特征输出
Figure FDA0003669043640000035
和未来特征输出
Figure FDA0003669043640000036
S25,对当前序列时刻t上的历史特征输出
Figure FDA0003669043640000037
和未来特征输出
Figure FDA0003669043640000038
进行线性组合形成ht,
Figure FDA0003669043640000039
使用tanh激活函数产生网络输出
Figure FDA00036690436400000310
将网络输出
Figure FDA00036690436400000311
更新到字典V中,获得融入上下文语义的精化字向量
Figure FDA00036690436400000312
Figure FDA00036690436400000313
其中,W(o)∈Rd*2d与偏置向量b(o)∈Rd为各个当前序列时刻上的共享参数;
S26,使用训练集β逐句逐字查表获取融入上下文语义的精化字向量构造句子矩阵表示作为观态矩阵,使用viterbi算法展开迭代训练,定义句子得分公式,确定最佳的标注序列:
Figure FDA00036690436400000314
其中,Ayi,yi+1为状态转移矩阵,输出的标注序列选择使用{BIES}标记规则集,其中B表示是一个词的第一个字,I表示是一个词中间的字,E表示是一个词的最后一个字,S表示是单字成词的,将{BIES}标记规则集与词性标注标签组合以得到字符序列中的最佳标签转移矩阵
Figure FDA00036690436400000315
3.如权利要求2所述的基于深度学习的中文分词方法,其特征在于,门限组合神经网络方法包括如下步骤:
步骤1,定义有w个需要组合的字符向量,分别为v1,v2...vw,其中v1,v2...vw∈Rd,定义权值矩阵W(r)∈Rd*d和偏置向量b(r)∈Rd为共享参数,定义重置门rl,通过重置门rl计算组合记忆的概率,重置门rl的计算公式为:
rl=σ(W(r)·vl+b(r))
其中,1≤l≤w;
步骤2,在字符组合中,使用重置门rl计算各个字符向量v1,v2...vw聚集成目标词所产生的语义特征
Figure FDA0003669043640000041
语义特征
Figure FDA0003669043640000042
的计算公式为:
Figure FDA0003669043640000043
其中,权值矩阵W(l)∈Rd*d和偏置向量b(l)∈Rd为共享参数;
步骤3,定义更新门zl(1≤l≤w+1)为d维的归一化向量,用于表达融合各个字符向量v1,v2...vw和语义特征
Figure FDA0003669043640000044
的更新概率,更新门Zl为:
Figure FDA0003669043640000045
其中,因子矩阵W(z)∈Rd*d为共享参数;
步骤4,利用更新门zl对字符向量v1,v2...vw和语义特征
Figure FDA0003669043640000046
进行选择性的混合与组合处理,聚集成词且得到定长向量vw,其中vw∈Rd,vw的计算公式为:
Figure FDA0003669043640000051
其中,1≤l≤w+1。
4.如权利要求3所述的基于深度学习的中文分词方法,其特征在于,步骤S22具体包括:
S22.1定义重置门rl,计算对目标字ω的影响概率:
Figure FDA0003669043640000052
其中,1≤l≤w,权值矩阵W(r)∈Rd*d和偏置向量b(r)∈Rd为各个字符向量间的共享参数;
S22.2,利用重置门rl,计算窗口内各个字符向量对目标字ω的聚集影响的语义特征
Figure FDA0003669043640000053
Figure FDA0003669043640000054
其中,
Figure FDA0003669043640000055
为目标字ω窗口内上下文的初始向量;
S22.3,定义更新门zl(1≤l≤w+1)为d维的归一化向量,用于表达融合各个字符向量v1,v2...vw和语义特征
Figure FDA0003669043640000056
的更新概率,更新门zl为:
Figure FDA0003669043640000057
其中,因子矩阵W(r)∈Rd*d为共享参数;
S22.4,利用更新门zl融合目标字ω窗口内上下文的初始向量
Figure FDA0003669043640000061
和语义特征
Figure FDA0003669043640000062
通过选择性的混合与组合处理,聚集得到组合向量
Figure FDA0003669043640000063
其中,1≤l≤w。
5.如权利要求2所述的基于深度学习的中文分词方法,其特征在于,在步骤S24中,送入深度学习模型后包括如下步骤:
步骤A1,使用门限组合神经网络方法,执行对当前输入vt的窗口上下文环境内字符序列的组合计算,得到窗口上下文的组合向量,记为
Figure FDA0003669043640000064
步骤A2,使用门限组合神经网络方法,执行对当前序列时刻t之前所有历史隐态输出的组合计算,得到历史隐态输出,记为
Figure FDA0003669043640000065
步骤A3,在序列遍历的每一个当前序列时刻t上,定义一个重置门rt计算历史隐态输出
Figure FDA0003669043640000066
对当前输入vt产生的记忆概率,重置门rt的计算公式为:
Figure FDA0003669043640000067
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
步骤A4,在序列遍历的每一个当前序列时刻t上,对当前输入vt定义一个更新门zt用以计算在历史隐态输出
Figure FDA0003669043640000068
的作用下,受窗口上下文的组合向量
Figure FDA0003669043640000069
影响产生的更新概率,
更新门zt的计算公式为:
Figure FDA00036690436400000610
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
步骤A5,在序列遍历的每一个当前序列时刻t上,对当前输入vt通过重置门rt强化在历史隐态输出
Figure FDA0003669043640000071
作用下受组合向量
Figure FDA0003669043640000072
影响产生的能量值
Figure FDA0003669043640000073
Figure FDA0003669043640000074
其中,权值矩阵W(r)∈Rd*d与偏置向量b(r)∈Rd为各个当前序列时刻上的共享参数;
步骤A6,在序列遍历的每一个当前序列时刻t上,通过更新门zt计算出当前输入vt受历史隐态输出
Figure FDA0003669043640000075
影响下的隐态输出ht,
Figure FDA0003669043640000076
其中,zt为更新门。
6.如权利要求5所述的基于深度学习的中文分词方法,其特征在于,步骤S3具体包括:
S31,在每一个当前序列时刻t上,根据预设的最大词长切分出所有以当前目标字结尾
的候选词,对于每一个候选词,查表获取候选词中各字的特征向量
Figure FDA0003669043640000077
和对应的标签转移向量
Figure FDA0003669043640000078
线性组合为字符向量vl;
Figure FDA0003669043640000079
其中,1≤l≤L,L为当前候选词中包含的字符数;
S32,使用门限组合网络方法,将候选词包含的字符向量vl融合为一个候选词向量
Figure FDA0003669043640000081
S33,将融合好的候选词向量选词向量
Figure FDA0003669043640000082
与一个共享的权值向量参数u内积,计算得到一个词得分
Figure FDA0003669043640000083
Figure FDA0003669043640000084
S34,将候选词向量
Figure FDA0003669043640000085
送入到深度学习模型中,经过编码获取当前候选词的历史特征,历史参照
Figure FDA0003669043640000086
使用集束搜索算法,根据预设的集束宽度k,在句子前向遍历的每个当前序列时刻t上,始终记录存储得分较好的k个历史切分,其中切分句尾词的隐态输出为ht;
S35,在序列遍历的每一个当前序列时刻t上,计算出隐态输出ht;
S36,以产生的ht作为输入,使用tanh激活函数为t+1时刻可能产生的候选分词提供预测,预测值Pt+1为:
Pt+1=tanh(W(p)·ht+b(p))
其中,W(p)∈Rd*d与偏置向量b(p)∈Rd为各个当前序列时刻上的共享参数;
S37,将候选词向量输入到深度学习模型中,基于深度学习模型的输出ht计算获得对下一个词的预测Pt+1,深度学习模型能够获取到之前整个分词历史中的记忆信息,计算一个序列的连接得分linkScore(yt+1):
linkScore(yt+1)=Pt+1·yt+1;
S38,设置集束宽度k,在每一步取得分最高的k个结果保留,新的输入在保留的分割上继续操作,利用完整的分割历史,直接对分词结果建模,定义经过深度学习模型预测产生词
序列y[1:m],切分的词序列得分函数构造为:
Figure FDA0003669043640000091
S39,将给定的字符序列xi的正确分词序列表示为yi,定义用于预测分段句子的结构化间隔损失来构造损失函数,反向更新参数。
7.如权利要求6所述的基于深度学习的中文分词方法,其特征在于,步骤S35具体包括:
S35.1,在序列遍历的每一个当前序列时刻t上,定义一个重置门rt,计算历史隐态输出
Figure FDA0003669043640000092
对当前输入候选词向量
Figure FDA0003669043640000093
产生的记忆概率:
Figure FDA0003669043640000094
其中,权值矩阵
Figure FDA00036690436400000915
与偏置向量
Figure FDA0003669043640000095
为各个当前序列时刻上的共享参数;
S35.2,在序列遍历的每一个当前序列时刻t上,对当前输入候选词向量
Figure FDA0003669043640000096
定义一个更新门zt,计算在历史隐态输出
Figure FDA0003669043640000097
的作用下产生的更新概率;
Figure FDA0003669043640000098
其中,权值矩阵
Figure FDA0003669043640000099
与偏置向量
Figure FDA00036690436400000910
为各个当前序列时刻上的共享参数;
S35.3,在序列遍历的每一个当前序列时刻t上,对当前输入候选词向量
Figure FDA00036690436400000911
通过重置门rt强化在历史隐态输出
Figure FDA00036690436400000912
作用下产生的能量值
Figure FDA00036690436400000913
Figure FDA00036690436400000914
其中,权值矩阵
Figure FDA0003669043640000101
与偏置向量
Figure FDA0003669043640000102
为各个当前序列时刻上的共享参数;
S35.4,在序列遍历的每一个当前序列时刻t上,通过更新门zt计算出当前输入候选词向量
Figure FDA0003669043640000103
受历史隐态输出
Figure FDA0003669043640000104
影响下的隐态输出ht:
Figure FDA0003669043640000105
8.如权利要求6所述的基于深度学习的中文分词方法,其特征在于,步骤S39具体包括如下步骤:
S39.1,对于给定的训练句序列sen[1:n],经过模型预测产生词序列y[1:m],分词后的词序列得分函数为:
Figure FDA0003669043640000106
S39.2,训练采用最大间隔法,将给定的训练句序列sen[1:n]正确的分词序列表示为y(i),t,模型预测的分词序列表示为
Figure FDA0003669043640000107
定义结构化间隔损失为:
Figure FDA0003669043640000108
其中,μ为衰减参数;
S39.3给定训练集β,加入一个2范数项的损失函数,通过损失函数,反向更新参数:
Figure FDA0003669043640000109
其中:
Figure FDA00036690436400001010
CN201810756452.0A 2018-07-11 2018-07-11 一种基于深度学习的中文分词方法 Active CN109086267B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810756452.0A CN109086267B (zh) 2018-07-11 2018-07-11 一种基于深度学习的中文分词方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810756452.0A CN109086267B (zh) 2018-07-11 2018-07-11 一种基于深度学习的中文分词方法

Publications (2)

Publication Number Publication Date
CN109086267A CN109086267A (zh) 2018-12-25
CN109086267B true CN109086267B (zh) 2022-07-26

Family

ID=64837409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810756452.0A Active CN109086267B (zh) 2018-07-11 2018-07-11 一种基于深度学习的中文分词方法

Country Status (1)

Country Link
CN (1) CN109086267B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109284358B (zh) * 2018-09-05 2020-08-28 普信恒业科技发展(北京)有限公司 一种中文地址名词分层级的方法和装置
CN109543764B (zh) * 2018-11-28 2023-06-16 安徽省公共气象服务中心 一种基于智能语义感知的预警信息合法性检测方法及检测***
CN110059188B (zh) * 2019-04-11 2022-06-21 四川黑马数码科技有限公司 一种基于双向时间卷积网络的中文情感分析方法
CN110222329B (zh) * 2019-04-22 2023-11-24 平安科技(深圳)有限公司 一种基于深度学习的中文分词方法和装置
CN110334338B (zh) * 2019-04-29 2023-09-19 北京小米移动软件有限公司 分词方法、装置及设备
CN110263320B (zh) * 2019-05-05 2020-12-11 清华大学 一种基于专用语料库字向量的无监督中文分词方法
CN110287961B (zh) * 2019-05-06 2024-04-09 平安科技(深圳)有限公司 中文分词方法、电子装置及可读存储介质
CN110413773B (zh) * 2019-06-20 2023-09-22 平安科技(深圳)有限公司 智能文本分类方法、装置及计算机可读存储介质
CN110287180B (zh) * 2019-06-25 2021-12-28 上海诚数信息科技有限公司 一种基于深度学习的风控建模方法
CN110516229B (zh) * 2019-07-10 2020-05-05 杭州电子科技大学 一种基于深度学习的领域自适应中文分词方法
CN110502746B (zh) * 2019-07-18 2021-04-09 北京捷通华声科技股份有限公司 一种在线域更新解码方法、装置、电子设备及存储介质
CN110489555B (zh) * 2019-08-21 2022-03-08 创新工场(广州)人工智能研究有限公司 一种结合类词信息的语言模型预训练方法
CN111126037B (zh) * 2019-12-18 2021-10-29 昆明理工大学 一种基于孪生循环神经网络的泰文句子切分方法
CN111160009B (zh) * 2019-12-30 2020-12-08 北京理工大学 一种基于树状网格记忆神经网络的序列特征提取方法
CN111274801A (zh) * 2020-02-25 2020-06-12 苏州跃盟信息科技有限公司 分词方法及装置
CN111816169B (zh) * 2020-07-23 2022-05-13 思必驰科技股份有限公司 中英语种混杂语音识别模型训练方法和装置
CN112036183B (zh) * 2020-08-31 2024-02-02 湖南星汉数智科技有限公司 基于BiLSTM网络模型及CRF模型的分词方法、装置、计算机装置及计算机存储介质
CN112150251B (zh) * 2020-10-09 2024-07-16 北京明朝万达科技股份有限公司 物品名称治理方法和装置
CN113781139A (zh) * 2020-10-19 2021-12-10 北京沃东天骏信息技术有限公司 物品推荐方法、物品推荐装置、设备和介质
CN112416931A (zh) * 2020-11-18 2021-02-26 脸萌有限公司 信息生成方法、装置和电子设备
CN112559729B (zh) * 2020-12-08 2022-06-24 申德周 一种基于层次多维变压器模型的文档摘要计算方法
CN112860889A (zh) * 2021-01-29 2021-05-28 太原理工大学 一种基于bert的多标签分类方法
CN112905591B (zh) * 2021-02-04 2022-08-26 成都信息工程大学 一种基于机器学习的数据表连接顺序选择方法
CN113361238B (zh) * 2021-05-21 2022-02-11 北京语言大学 一种语块重组题型的自动命题的方法及装置
CN114638222B (zh) * 2022-05-17 2022-08-16 天津卓朗科技发展有限公司 自然灾害数据的分类方法及其模型训练方法、装置
CN115455987B (zh) * 2022-11-14 2023-05-05 合肥高维数据技术有限公司 基于字频词频的字符分组方法、存储介质及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268444B (zh) * 2018-01-10 2021-11-02 南京邮电大学 一种基于双向lstm、cnn和crf的中文分词方法

Also Published As

Publication number Publication date
CN109086267A (zh) 2018-12-25

Similar Documents

Publication Publication Date Title
CN109086267B (zh) 一种基于深度学习的中文分词方法
CN109344391B (zh) 基于神经网络的多特征融合中文新闻文本摘要生成方法
CN108460013B (zh) 一种基于细粒度词表示模型的序列标注模型及方法
CN109657239B (zh) 基于注意力机制和语言模型学习的中文命名实体识别方法
CN109800437B (zh) 一种基于特征融合的命名实体识别方法
CN109635124B (zh) 一种结合背景知识的远程监督关系抽取方法
CN112487143B (zh) 一种基于舆情大数据分析的多标签文本分类方法
CN109858041B (zh) 一种半监督学习结合自定义词典的命名实体识别方法
CN106897371B (zh) 中文文本分类***及方法
CN110196980B (zh) 一种基于卷积网络在中文分词任务上的领域迁移
CN111046179B (zh) 一种面向特定领域开放网络问句的文本分类方法
CN110969020A (zh) 基于cnn和注意力机制的中文命名实体识别方法、***及介质
CN110688862A (zh) 一种基于迁移学习的蒙汉互译方法
CN111666758B (zh) 中文分词方法、训练设备以及计算机可读存储介质
CN113190656B (zh) 一种基于多标注框架与融合特征的中文命名实体抽取方法
CN114757182A (zh) 一种改进训练方式的bert短文本情感分析方法
CN112148888A (zh) 基于图神经网络的知识图谱构建方法
CN111581970B (zh) 一种网络语境的文本识别方法、装置及存储介质
CN113255366B (zh) 一种基于异构图神经网络的方面级文本情感分析方法
CN113435211A (zh) 一种结合外部知识的文本隐式情感分析方法
CN112163089A (zh) 一种融合命名实体识别的军事高技术文本分类方法及***
CN111428518B (zh) 一种低频词翻译方法及装置
CN110298046B (zh) 一种翻译模型训练方法、文本翻译方法及相关装置
US11941360B2 (en) Acronym definition network
CN111274826B (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