一种基于LSTM的分词方法技术

技术编号:17561779 阅读:48 留言:0更新日期:2018-03-28 12:17
本发明专利技术公开了一种基于LSTM的分词方法。本方法为:1)将训练语料数据转化为字符级的语料数据;2)将该语料数据按照句子长度划分,得到若干句子;然后根据句子长度对得到的句子进行分组,得到包括n组句子的数据集合;3)从该数据集合中抽取若干数据作为迭代数据;4)将每次的迭代数据转换为固定长度的向量送入深度学习模型LSTM,训练该深度学习模型LSTM的参数,当深度学习模型产生的损失值迭代变化小于设定阈值不再降低或者达到最大迭代次数,则终止深度学习模型的训练,得到训练后的深度学习模型LSTM;5)将待预测的语料数据转换成转化为字符级的语料数据,并将其送入训练好的深度学习模型LSTM,得到分词结果。

A method of word segmentation based on LSTM

The invention discloses a word segmentation method based on LSTM. The method is as follows: 1) the training corpus data into data character level; 2) the data according to the length of sentence division, some sentences; then according to the length of sentence of sentence groups, including group n sentence data set; 3) from the data set from a number of data as iterative data; 4) will be converted to vector data for each iteration of fixed length into the deep learning model LSTM, training the deep learning parameters of the LSTM model, when deep learning model's loss is less than the threshold value iteration changes no longer reduces or reaches a maximum number of iterations is to terminate the deep learning training model, learning model LSTM after training the depth; 5) the data to be predicted converted into data character level, and put it into a good deep learning training model LST M, get the result of the participle.

【技术实现步骤摘要】
一种基于LSTM的分词方法
本专利技术属于计算机软件
,涉及一种基于LSTM的分词方法。
技术介绍
自然语言处理问题中亚洲类型的文字并非像西文具有天然的空格分隔符,很多西文处理方法并不能直接用于亚洲类型(中文、韩文和日文)文字的处理,这是因为亚洲类型(中文、韩文和日文)必须经过分词的这道工序才能保持和西文一致。因此,分词在亚洲类型文字的处理中是信息处理的基础,其应用场景包括:1.搜索引擎:搜索引擎中一个重要的功能就是做文档的全文索引,其内容是将文字进行分词,然后将文档的分词结果和文档形成一个倒排索引,用户在查询的时候也是先将查询的输入语句进行分词,而后将分词的结果和索引数据库进行对比,从而找出与当前输入最为相似的文档。2.自动摘要生成:自动摘要是指将一篇较长的文档用一段较短的语言文字去总结。而在总结的过程中,就需要计算一篇文档中关键词,因此在计算关键词之前必须先对文档做分词处理。3.自动校对:自动校对是指对一段文字作语法错误的检查,其检查的粒度还是基于词的方式做的检查,因此需要将用户输入的连续文字做分词处理。传统的分词方法可以分为基于词典的分词,基于词频统计的方法以及基于知识的方法;基于词典的分词严重依赖于词典库,词频统计的HMM(隐马尔可夫)和CRF(条件随机场)其只能关联当前词的前一个词的语义。基于知识的人工神经网络模型因模型训练时的梯度消失问题,在实际的应用中网络层数少,最终分词结果优势不明显。基于词典的分词方法严重依赖于词典库,效率比较低,且不能够识别未登录词;本专利技术中登录词指的是已经出现在语料词表中的词,未登录词指的是没有出现在语料词表中的词。基于词频统计分词方法(例如N-Gram),其只能关联当前词的前N-1个词的语义,识别精度不够高,当N增加的时,效率非常低。而且对未登录的识别率偏低。
技术实现思路
针对现有技术中存在的技术问题,本专利技术的目的在于提供一种基于LSTM(LongShort-TermMemory,长短期记忆神经网络)的分词方法。本专利技术通过自然语言处理中的序列标注(sequentiallabeling)将一个序列作为输入,并训练一个模型使其为每一序列片段数据产生正确的输出。针对与中文类似(英文天然带有空格作为词之间的分割符)的语言进行分词的方法。本专利技术的核心问题包含三个:1分词的效率,2分词的精度,3未登录词的识别精度。本专利技术的技术方案为:一种基于LSTM的分词方法,其步骤包括:1)将训练语料数据Original转化为字符级的语料数据New_Data;2)将该语料数据New_Data按照句子长度划分,得到若干句子;然后根据句子长度对得到的句子进行分组,得到包括n组句子的数据集合GroupData;3)从该数据集合GroupData中抽取若干数据作为迭代数据;4)将每次的迭代数据转换为固定长度的向量送入深度学习模型LSTM,训练该深度学习模型LSTM的参数,当深度学习模型产生的损失值迭代变化小于设定阈值不再降低或者达到最大迭代次数,则终止深度学习模型的训练,得到训练后的深度学习模型LSTM;5)将待预测的语料数据转换成转化为字符级的语料数据,并将其送入训练好的深度学习模型LSTM,得到分词结果。进一步的,该固定长度等于该深度学习模型LSTM中的第一层LSTM层的LSTM单元个数。进一步的,产生该损失值的方法为:31)将迭代数据在深度学习模型LSTM的字符向量量化层进行向量化,将迭代数据中的每个字符转换成一向量;32)将该迭代数据中的每一字符对应的向量分别传入该深度学习模型LSTM中第一LSTM层的一LSTM单元,获得分词中字符的特征,且将第一层LSTM第i个LSTM单元的输出同时作为第一层LSTM第i+1个LSTM单元的输入;然后将该第一层LSTM的输出输入到该深度学习模型LSTM中第二LSTM层,获得分词中词的特征,且将第二层LSTM第i个LSTM单元的输出同时作为第二层LSTM第i+1个LSTM单元的输入;33)将第二层LSTM每一LSTM单元的输出输入到该深度学习模型LSTM的DropOut层;35)将每一DropOut层的输出经一分类模型处理后,根据得到的输出利用基于熵的损失函数计算损失值。进一步的,所述损失值其中,yi为字符xi通过深度学习模型LSTM的输出结果,为字符xi的实际标记结果。进一步的,所述步骤4)中,当损失值迭代变化|Li-Li+1|<ε时终止深度学习模型的训练。进一步的,所述步骤3)中,每次随机无放回的从该数据集合GroupData中选取一句子分组,从该句子分组中抽取若干句子作为模型单次的迭代数据。进一步的,所述步骤2)中,将|li-lj|<δ的句子归入一组;其中,li表示第i句话的句子长度、lj表示第j句话的句子长度,δ表示句子长度间隔。进一步的,所述步骤1)中,按照BMES的标记方式将原始训练语料数据字符切分标记New_Data;设一词语对应的标签为Label,则位于该词语最开始的字符标记为LabelB,位于该词语中间的字符标记为LabelM,位于该词语末尾的字符标记为LabelE,如果该字符独立构成一个词则标记为LabelS。进一步的,使用Adam梯度下降算法训练该深度学习模型LSTM的参数。本专利技术方法的流程如图1,分两个阶段:训练阶段,预测阶段。(一)训练阶段:(参考图1的训练流程)步骤1:将带有标签的训练语料数据转换为字符级的语料数据。步骤2:使用Adam梯度下降算法训练LSTM分词深度学习模型。(二)预测阶段:(参考图1的预测流程)步骤1:将没有标签的测试语料数据转换为字符级的语料数据。步骤2:使用训练阶段训练好的LSTM分词深度学习模型进行预测。本专利技术主要具有以下优点:优点1:统计模型提高了未登录词识别识别率。这是因为传统的基于词(词典)的方式而采用的最长和最短等字符匹配的方式,倘若待分词并不存在于字典中,也就不能在字典中匹配到相应的结果,其一定不能正确的切分。而统计模型是预测所有词组合的最大可能性的一组分词方法,其带有预测的功能,因而能提高对未登录词的识别。另外在本模型中,专利技术者在输入分词序列标注的分类模型前面加入两层LSTM单元,第一层主要是提取字符之间的特征,这是因为由字符到词,比如中国的姓氏(赵钱孙李…)来表示一个人的姓名的时候,这些词一般都与后面的词有紧密的关系的特征,应该分为一个词。第二层LSTM主要是来提取词与词之间的特征,这又是因为分词的结果不仅仅与字符特征有关系,并且与语句所处的上下文语境是非常相关的。相比较与纯粹的TF-IDF特征输入到统计分类模型,该模型吸收了字符与词之间的特征。因此能进一步的提升未登录词的识别。优点2:两层的LSTM模型,同时吸收了字符之间和词之间的特征,因此其对比传统的统计分词方法其分词的准确度有进一步的提升。附图说明图1为本专利技术方法流程图。图2为本专利技术LSTM分词的模型架构图。具体实施方式为使本专利技术的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。本专利技术的流程图如图1所示,其实施方式可以分为2个阶段:1)训练阶段和2)预测阶段。(一)训练阶段:步骤1:如果存在多个分词的语料数据,将多个整合为一个训练语料数据OrgData,其格式为每一个分词结果占用本文档来自技高网
...
一种基于LSTM的分词方法

【技术保护点】
一种基于LSTM的分词方法,其步骤包括:1)将训练语料数据Original转化为字符级的语料数据New_Data;2)将该语料数据New_Data按照句子长度划分,得到若干句子;然后根据句子长度对得到的句子进行分组,得到包括n组句子的数据集合GroupData;3)从该数据集合GroupData中抽取若干数据作为迭代数据;4)将每次的迭代数据转换为固定长度的向量送入深度学习模型LSTM,训练该深度学习模型LSTM的参数,当深度学习模型产生的损失值迭代变化小于设定阈值不再降低或者达到最大迭代次数,则终止深度学习模型的训练,得到训练后的深度学习模型LSTM;5)将待预测的语料数据转换成转化为字符级的语料数据,并将其送入训练好的深度学习模型LSTM,得到分词结果。

【技术特征摘要】
1.一种基于LSTM的分词方法,其步骤包括:1)将训练语料数据Original转化为字符级的语料数据New_Data;2)将该语料数据New_Data按照句子长度划分,得到若干句子;然后根据句子长度对得到的句子进行分组,得到包括n组句子的数据集合GroupData;3)从该数据集合GroupData中抽取若干数据作为迭代数据;4)将每次的迭代数据转换为固定长度的向量送入深度学习模型LSTM,训练该深度学习模型LSTM的参数,当深度学习模型产生的损失值迭代变化小于设定阈值不再降低或者达到最大迭代次数,则终止深度学习模型的训练,得到训练后的深度学习模型LSTM;5)将待预测的语料数据转换成转化为字符级的语料数据,并将其送入训练好的深度学习模型LSTM,得到分词结果。2.如权利要求1所述的方法,其特征在于,该固定长度等于该深度学习模型LSTM中的第一层LSTM层的LSTM单元个数。3.如权利要求2所述的方法,其特征在于,产生该损失值的方法为:31)将迭代数据在深度学习模型LSTM的字符向量量化层进行向量化,将迭代数据中的每个字符转换成一向量;32)将该迭代数据中的每一字符对应的向量分别传入该深度学习模型LSTM中第一LSTM层的一LSTM单元,获得分词中字符的特征,且将第一层LSTM第i个LSTM单元的输出同时作为第一层LSTM第i+1个LSTM单元的输入;然后将该第一层LSTM的输出输入到该深度学习模型LSTM中第二LSTM层,获得分词中词的特征,且将第二层LSTM第i个LS...

【专利技术属性】
技术研发人员:岳永鹏唐华阳
申请(专利权)人:北京知道未来信息技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1