CN111428479B - 一种文本中预测标点的方法和装置 - Google Patents
一种文本中预测标点的方法和装置 Download PDFInfo
- Publication number
- CN111428479B CN111428479B CN202010207942.2A CN202010207942A CN111428479B CN 111428479 B CN111428479 B CN 111428479B CN 202010207942 A CN202010207942 A CN 202010207942A CN 111428479 B CN111428479 B CN 111428479B
- Authority
- CN
- China
- Prior art keywords
- punctuation
- text
- character
- sequence
- predicted
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 78
- 238000007781 pre-processing Methods 0.000 claims abstract description 21
- 230000006870 function Effects 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 15
- 238000005520 cutting process Methods 0.000 claims description 14
- 238000012512 characterization method Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 4
- 239000000758 substrate Substances 0.000 claims 1
- 241000220317 Rosa Species 0.000 description 12
- 238000003860 storage Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 241000208140 Acer Species 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 7
- 241000234282 Allium Species 0.000 description 6
- 235000002732 Allium cepa var. cepa Nutrition 0.000 description 6
- 244000070406 Malus silvestris Species 0.000 description 6
- 235000013399 edible fruits Nutrition 0.000 description 6
- 235000011511 Diospyros Nutrition 0.000 description 5
- 244000236655 Diospyros kaki Species 0.000 description 5
- 244000284380 Hibiscus rosa sinensis Species 0.000 description 4
- 235000000664 Rosa chinensis Nutrition 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 241001412225 Firmiana simplex Species 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 244000046151 Acer negundo Species 0.000 description 2
- 235000004422 Acer negundo Nutrition 0.000 description 2
- 241000218993 Begonia Species 0.000 description 2
- 235000000100 Hibiscus rosa sinensis Nutrition 0.000 description 2
- 235000005087 Malus prunifolia Nutrition 0.000 description 2
- 241000233805 Phoenix Species 0.000 description 2
- 235000016785 Rosa della China Nutrition 0.000 description 2
- 230000005094 fruit set Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 235000006647 Eugenia jambos Nutrition 0.000 description 1
- 241001412224 Firmiana Species 0.000 description 1
- 240000002834 Paulownia tomentosa Species 0.000 description 1
- 235000010678 Paulownia tomentosa Nutrition 0.000 description 1
- 241000590419 Polygonia interrogationis Species 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000994 depressogenic effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种文本中预测标点的方法,包括:对带有标点的文本进行预处理,获得训练语料;利用所述训练语料对预定的训练模型进行训练,得到预测模型;将待预测的无标点的文本输入所述预测模型,得到预测结果。本发明还公开了一种文本中预测标点的装置。
Description
技术领域
本发明涉及计算机技术领域,尤指一种无标点文本中预测标点的方法和装置。
背景技术
自动语音识别(ASR)系统生成的文本通常是不加标点且未分段的。然而,标点符号的存在可以很大程度上提高文本的可读性,以及基于标点位置对文本进行的分段也会提高许多下游自然语言处理任务的效能,如关系抽取、语义解析或机器翻译等。
在公安领域,每天都会产生大量的有价值语音文件,但其存储成本和使用成本较高,利用率较低。为了降低存储和使用成本,并有效利用这些语音信息,人们想通过ASR技术来将语音文件转化成文本文件,但这些语音文本中不含标点且未分段,以致其可读性较差且难以直接给其他任务使用,于是构建一种能够对语音文本进行标点化处理的方案是非常有意义的。
发明内容
为了解决上述技术问题,本发明提供了一种文本中预测标点的方法和装置,以具备标点的文本作为训练语料,进行模型训练,获得对应的预测模型,进而进行无标点文本的标点预测,提升无标点文本的可读性和进一步被利用的便利性。
本发明实施例提供一种文本中预测标点的方法,包括,
对带有标点的文本进行预处理,获得训练语料;
利用所述训练语料对预定的训练模型进行训练,得到预测模型;
将待预测的无标点的文本输入所述预测模型,得到预测结果。
本发明实施例还提供一种文本中预测标点的装置,包括,
语料预处理模块,用于对带有标点的文本进行预处理,获得训练语料;
训练模块,用于利用所述训练语料对预定的训练模型进行训练,得到预测模型;
预测模块,用于将待预测的无标点的文本输入所述预测模型,得到预测结果。
本发明实施例还提供一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述文本中预测标点的方法。
本发明实施例还提供一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述文本中预测标点的方法。
附图说明
图1为实施例一提供的一种文本中预测标点方法的流程图;
图2为实施例二提供的一种文本中预测标点方法的流程图;
图3为实施例二提供的一种BERT-CRF解决序列标注问题过程的示意图;
图4为实施例二提供的BERT模型输入表示示意图;
图5为实施例三提供的一种文本中预测标点的装置的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步的详细描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在本发明的实施例中用到了BERT模型,BERT是基于Transformer的深度双向语言表征模型,本质上是利用Transformer结构构造了一个多层双向的Encoder网络,其性能超越许多使用任务特定架构的系统,刷新了11项NLP任务的当前最优性能记录。BERT预训练模型的出现很大程度上降低了词向量训练的难度,提高了包括文本分类、序列标注等多种自然语言处理任务的准确性。
实施例一
本发明实施例提供一种文本中预测标点的方法,其流程如图1所示,包括:
步骤101,对带有标点的文本进行预处理,获得训练语料;
步骤102,利用所述训练语料对预定的训练模型进行训练,得到预测模型;
步骤103,将待预测的无标点的文本输入所述预测模型,得到预测结果。
可选地,步骤101中所述对带有标点的文本进行预处理,获得训练语料,包括:
确定需要预测的标点类别;
根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换后,对转换后的文本进行切分,得到至少一个序列;
将所述至少一个序列添加标点标签后,根据预设规则写入文件,得到所述训练语料。
可选地,所述将所述至少一个序列添加标点标签后,根据预设规则写入文件,得到所述训练语料,包括:
对所述至少一个序列中的每一个序列依次执行如下操作:
给序列中的每一个字符设置标点标签,将该序列中的非标点字符和对应的标签组合,构成该序列对应的带标签行;
将每一个序列对应的带标签行,按照所述预设规则写入文件,得到所述训练语料。
可选地,所述给序列中的每一个字符设置标点标签,包括:
所述标点标签,包括:逗号标签、句号标签和其他标签;
根据所述每一个字符的下一个字符设置所述每一个字符的标点标签,包括:
每一个字符的标点标签默认设置为其他标签;
当所述下一个字符是逗号时,当前字符的标点标签修改为逗号标签;当所述下一个字符是句号时,当前字符的标点标签修改为句号标签;当所述每一个字符为末尾字符时,当前字符的标点标签仍为其他标签。
可选地,所述预定的训练模型,包括:
增加有一层全连接层以及条件随机场CRF层的基于Transformer的深度双向语言表征BERT模型;其中,所述全连接层连接BERT模型的输出层,用于把BERT模型的输出向量映射到预先定义的标签集合;所述CRF层连接全连接层的输出。
可选地,所述将待预测的无标点的文本输入所述预测模型,得到预测结果,包括:
将所述待预测的无标点的文本进行切分,得到至少一个序列;
将所述至少一个序列输入所述预测模型,确定每一个序列中每个字符对应的标点标签;
根据所述每一个序列中每个字符对应的标点标签,合并形成预测后的带标点的文本。
可选地,所述将所述待预测的无标点的文本进行切分,得到至少一个序列,包括:以字符为单位进行切分,得到所述至少一个序列。
可选地,所述需要预测的标点类别至少包括:逗号和句号;
所述根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换,包括:
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有逗号功能时,该标点被替换为逗号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有句号功能时,该标点被替换为句号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中既不具有逗号功能也不具有句号功能时,从所述带有标点的文本中删除该标点。
可选地,当所述带有标点的文本和所述待预测的无标点的文本包含英语时,所述字符为英语单词。
实施例二
本发明实施例提供一种文本中预测标点的方法,其流程如图2所示,包括:
步骤201:对带有标点的文本进行预处理,得到训练语料,也称为训练文本;
步骤202:对BERT模型进行微调确定训练模型,并使用训练语料来训练所述训练模型,得到预测模型;
步骤203:将无标点的文本根据预定规则形成待预测语料,将所述待预测语料输入所述预测模型,得到预测结果。
其中,步骤201对带有标点的文本进行预处理之前,所述方法还包括步骤200,标点分类数据准备,包括:
步骤20001:确定需要预测的标点的类别,例如,本实施例中确定需要预测的标点有两类:逗号和句号。可选地,根据待预测文本的需要,选择相关的训练语料,并确定对应的需要预测的标点的类别,可以不限于只包括逗号和句号。
步骤20002:根据需要预测的标点的类别,把可能存在的标点进行归类;例如,上述所确定的需要预测的标点有两类,逗号和句号。则,将可能出现在训练文本中的逗号、顿号和分号等表示一句话中间停顿的标点,归类为与逗号功能相同或相似;将可能出现在训练文本中的句号、叹号或问号等表示一句话结束的标点,归类为与句号功能相同或相似;将训练文本中其他不能归类为逗号或句号的标点,如破折号、引号等,归类为其他类别的标点。
步骤20003:可能存在的标点分类后,对应保存标点类别和所包括的相同或相近的标点。如,本实施例中,保存为:
逗号,对应的相同或相近的标点为:逗号、顿号和分号等表示一句话中间停顿的标点;这些相同或相近的标点保存在对应的逗号列表中;
句号,对应的相同或相近的标点为:句号、叹号或问号等表示一句话结束的标点;这些相同或相近的标点保存在对应的句号列表中;
其他,对应的标点为:破折号、引号等不能归类为逗号类型或句号类型的标点;这些其他标点保存在对应的其他标点列表中。
可选地,如果20001中确定需要预测的标点类别还包括标点类别A,则步骤20002中对应归类也扩展包括标点类别A的相同或相似的标点的归类,步骤20003步骤中还保存标点类别A和所包括的相同或相近的标点。根据上述记载,本领域技术人员能够理解如何确定需要预测的标点类别和对应进行可能出现在训练文本中的多种标点进行归类。不限于本实施例例举的示例。
可选地,步骤201中对带有标点的文本进行预处理,得到训练语料,包括:
步骤20101:对带有标点的文本,即训练文本,以字符为单位进行切分,得到字符序列,例如:对于文本“花园里有月季、玫瑰、海棠,五颜六色;花园里还有梧桐、枫树,郁郁葱葱;真是一派生机勃勃!”,其切分为序列:[‘花’‘园’‘里’‘有’‘月’‘季’‘、’‘玫’‘瑰’‘、’‘海’‘棠’‘,’‘五’‘颜’‘六’‘色’‘;’‘花’‘园’‘里’‘还’‘有’‘梧’‘桐’‘、’‘枫’‘树’‘,’‘郁’‘郁’‘葱’‘葱’‘;’‘真’‘是’‘一’‘派’‘生’‘机’‘勃’‘勃’‘!’];
步骤20102:进行标点转换与过滤,包括,对于切分后的每个字符进行转换,包括替换和/或过滤,如下:
如果字符出现在逗号列表,则替换为逗号;如果字符出现在句号列表,则替换为句号;如果字符出现在其他标点列表,则删除该字符;其他字符则保留。
例,上述符号序列,替换和/或过滤后,得到:[‘花’‘园’‘里’‘有’‘月’‘季’‘,’‘玫’‘瑰’‘,’‘海’‘棠’‘,’‘五’‘颜’‘六’‘色’‘,’‘花’‘园’‘里’‘还’‘有’‘梧’‘桐’‘,’‘枫’‘树’‘,’‘郁’‘郁’‘葱’‘葱’‘,’‘真’‘是’‘一’‘派’‘生’‘机’‘勃’‘勃’‘。’];
步骤20103:将替换或过滤后的序列合并成序列S“花园里有月季,玫瑰,海棠,五颜六色,花园里还有梧桐,枫树,郁郁葱葱,真是一派生机勃勃。”;
步骤20104:将序列S进行动态切分,其中,切分时的操作参数至少包括:动态序列的最大长度sentenceLen,和当前序列与上文的最大重叠字符数preTextLen;动态序列的最大长度sentenceLen表示进行切分时,一个子序列的最大字符数。
例如,sentenceLen为10,preTextLen为3,则上述序列S切分为如下子序列:
S1:花园里有月季,玫瑰,
S2:海棠,五颜六色,花园
S3:花园里还有梧桐,枫树
S4:枫树,郁郁葱葱,真是
S5:真是一派生机勃勃。
切分步骤如下:
根据sentenceLen=10,切分得到S1“花园里有月季,玫瑰,”;
继续切分下一个子序列,S1中的最后一个标点“,”与下一个序列的开始“海”距离为0,0小于preTextLen(3),故直接从“海”开始切分,根据sentenceLen=10,切分得到S2“海棠,五颜六色,花园”;
继续切分下一个子序列,S2中的最后一个标点“,”与下一个序列的开始“里”的距离是2,2小于preTextLen(3),故可以重复2个字符,从“花”开始切分,根据sentenceLen=10,切分得到S3“花园里还有梧桐,枫树”;
继续切分下一个子序列,S3中的最后一个标点“,”与下一个序列的开始“,”的距离是2,2小于preTextLen(3),故可以重复2个字符,从“枫”开始切分,根据sentenceLen=10,切分得到S4“枫树,郁郁葱葱,真是”;
继续切分下一个子序列,S4中的最后一个标点“,”与下一个序列的开始“一”的距离是2,2小于preTextLen(3),故可以重复2个字符,从“真”开始切分,根据sentenceLen=10,切分得到S5“真是一派生机勃勃。”。
又例如,S为“今天,我家花园里有月季,玫瑰,…”,则先根据sentenceLen=10,切分得到S1“今天,我家花园里有月”;继续切分下一个子序列,由于S1中的最后一个标点“,”与下一个序列的开始“季”的距离是7,7大于preTextLen(3),故只能最多重复3个字符,从“里”开始切分,切分得到S2“里有月季,玫瑰,…”。
上述sentenceLen为10,preTextLen为3是为了便于示例。可选地,在实际应用中,可以设置为sentenceLen为150,preTextLen为20,等。可以根据训练文本的语句的长短进行调整。
步骤20105,给各个子序列的每一个字符添加标点标签,后按照预设的格式合并形成训练语料。
其中,所述标点标签,包括:逗号标签、句号标签和其他标签;给子序列的每一个字符添加标点标签,如下:
每个字符的标点标签默认设置为其他标签O;
当所述下一个字符是逗号时,当前字符的标点标签修改为逗号标签C;当所述下一个字符是句号时,当前字符的标点标签修改为句号标签P;当所述每一个字符为末尾字符时,当前字符的标点标签仍为其他标签O;
以上述S1子序列为例,其标签设置结果如下:
S1:花O;园O;里O;有O;月O;季C;,O;玫O;瑰C;,O;
给上述子序列S1设置标签完毕后,将字符是标点的去掉,即将其中标点的“,O”和“,O”去掉;
子序列S1处理成S1’:花O;园O;里O;有O;月O;季C;玫O;瑰C;
其中,根据全部子序列的上述设置和处理结果,按照如下预定的格式合并写入文件,形成训练语料:
1)各子序列中的每个字符及其标签之间使用空格隔开;
2)每个序列及其标签值为一行;
3)子序列之间使用空行隔开。
可选地,上述预定的格式是与步骤202中微调后的模型(训练模型)能够识别的格式相对应,可以根据微调后的模型的具体需要对应规定所述预定的格式,不限于本实施例所例举的上述示例。
可选地,步骤202中,对BERT模型进行微调确定训练模型,包括:
增加有一层全连接层以及条件随机场CRF层的基于Transformer的深度双向语言表征BERT模型;其中,所述全连接层连接BERT模型的输出层,用于把BERT模型的输出向量映射到预先定义的标签集合;所述CRF层连接全连接层的输出。
图3展示了使用BERT-CRF方法解决中文文本序列标注问题的过程。
图4为BERT-CRF模型的输入表示,在模型输入时需为每个序列附加一个特殊符号[CLS]来标识起始。图4中输入序列input中的起始符[CLS]和每个字符均为Token。对于每个输入的Token,它的向量表示由其对应的词向量、段向量和位置向量相加得到,而词向量、段向量和位置向量都是通过事先随机初始化然后模型训练来进行调整。当模型收敛时,这些向量表示也便分别学习到了该Token所对应的词表征、段表征和位置表征。
在BERT模型输出中,每个输入token对应着一个输出向量,由于BERT使用了基于Transformer模型的双向编码器,每个字符的输出向量包含了上下文信息,所以它具有很强的表征能力。对于序列标注问题,在BERT的基础上增加一层全连接层并且确定全连接层的输出维度,便可把输出向量映射到预先定义的标签集合。
BERT模型与全连接层结合就可解决序列标注问题。以标点预测为例,BERT的编码向量通过全连接层映射到标点标签集合后,单个token的输出向量再经过Softmax函数处理,每一维数值就表示该token为某一标点标签的概率。本实施例方案在BERT与全连接层结合的基础上增加CRF层。CRF是一种经典的概率图模型,CRF层通过加入一些约束来保证最终的预测结果是有效的,而这些约束在训练数据时能被CRF层自动学习得到,能够明显减少预测序列的错误。
可选地,步骤202中,使用训练语料来训练所述训练模型,得到预测模型,还包括:
在训练之前,预先设置所述训练模型的最大序列长度参数,maxSeqLen,该参数大于步骤20104中的动态序列的最大长度sentenceLen。
将无标点的文本根据预定规则形成待预测语料,将所述待预测语料输入所述预测模型,得到预测结果,包括:
所述待预测的无标点的文本进行切分,得到至少一个序列;
将所述至少一个序列输入所述预测模型,确定每一个序列中每个字符对应的标点标签;
根据所述每一个序列中每个字符对应的标点标签,合并形成预测后的带标点的文本。
假如,本实施例中,待预测的文本为“盛产水果包括苹果橘子柿子等”,以字符为单位进行切分后,得到多个子序列:
T1:盛
T2:产
T3:水
T4:果
T5:包
T6:括
T7:苹
T8:果
T9:橘
T10:子
T11:柿
T12:子
T13:等
将上述子序列T1-T13输入到步骤202中训练得到的预测模型中,得到每一个字符预测的标点标签,每一个字符所预测得到的标点标签代表该字符后面可能紧跟的标点,其结果示例如下:
T1:盛O
T2:产O
T3:水O
T4:果C
T5:包O
T6:括O
T7:苹O
T8:果C
T9:橘O
T10:子C
T11:柿O
T12:子C
T13:等P
其中,逗号标签C表示该字符后面紧跟的标点是逗号,句号标签P表示该字符后面紧跟的标点是句号,其他标签O表示该字符后面无标点。
则,根据上述对子序列(每一个字符)预测了标点标签后,拼接得到预测结果:盛产水果,包括苹果,橘子,柿子,等。
可选地,如果待预测的文本中包括英文,则对应选择包括英文的带标点的文本作为训练语料。上述示例中以字符为单位的处理步骤,相应地更改为以英语单词为单位。如果包括其他语言,则根据不同语言的特点,对应推定即可。
可选地,步骤20104中对替换和/或过滤后的合并序列S动态切分的相关程序实现如下:
符号变量说明
S为整个字符序列;
设senti表示动态切分后的第i个序列;
puncti,end为senti中的最后一个标点;
characteri,first表示senti的第一个字符;
punctIdi-1=index(puncti-1,end)表示puncti-1,end在S中的下标;
characterIid=index(characteri,first)表示characteri,first在S中的下标;
disti=punctIdi-1-characterIid表示punctIdi-1和characterIid的距离。
S[start:end]表示下标在[start,end)区间段内的字符组成的字符序列;
min(a,b)表示从a和b中取最小值;
len(S)表示S中所有字符数的个数;
D为存放动态序列的有序列表。
切分步骤:
(1)首先将S中位置落在0~sentenceLen之间的character取出作为第一个动态序列senti(i=0)的字序列,即sent0=S[0:sentenceLen];
(2)获取第i(i>0)个动态序列时:
1)若disti≤preTextLen,则第i个动态序列在S中的初始位置和结束位置分别为
starti=punctIdi-1+1,
endi=min(len(S),starti+preTextLen)
2)若disti>preTextLen,则
starti=characterIid-preTextLen,
endi=min(len(S),starti+preTextLen)
此时,第i个动态句子为
senti=S[starti:endi]
3)将序列senti保存在D中;
4)当endi与len(S)相等时结束切分。
实施例三
本发明实施例提供一种文本中预测标点的装置50,其结构如图5,包括,
语料预处理模块501,用于对带有标点的文本进行预处理,获得训练语料;
训练模块502,用于利用所述训练语料对预定的训练模型进行训练,得到预测模型;
预测模块503,用于将待预测的无标点的文本输入所述预测模型,得到预测结果。
可选地,所述语料预处理模块501对带有标点的文本进行预处理,获得训练语料,包括:
确定需要预测的标点类别;
根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换后,对转换后的文本进行切分,得到至少一个序列;
将所述至少一个序列添加标点标签后,根据预设规则写入文件,得到所述训练语料。
可选地,所述语料预处理模块501将所述至少一个序列添加标点标签后,根据预设规则写入文件,得到所述训练语料,包括:
对所述至少一个序列中的每一个序列依次执行如下操作:
给序列中的每一个字符设置标点标签,将该序列中的非标点字符和对应的标签组合,构成该序列对应的带标签行;
将每一个序列对应的带标签行,按照所述预设规则写入文件,得到所述训练语料。
可选地,所述标点标签,包括:逗号标签、句号标签和其他标签;
可选地,所述语料预处理模块501根据所述每一个字符的下一个字符设置所述每一个字符的标点标签,包括:
每一个字符的标点标签默认设置为其他标签;
当所述下一个字符是逗号时,当前字符的标点标签修改为逗号标签;当所述下一个字符是句号时,当前字符的标点标签修改为句号标签;当所述每一个字符为末尾字符时,当前字符的标点标签仍为其他标签。
可选地,所述预定的训练模型,包括:
增加有一层全连接层以及条件随机场CRF层的基于Transformer的深度双向语言表征BERT模型;其中,所述全连接层连接BERT模型的输出层,用于把BERT模型的输出向量映射到预先定义的标签集合;所述CRF层连接全连接层的输出。
可选地,所述,所述预测模块503将待预测的无标点的文本输入所述预测模型,得到预测结果,包括:
将所述待预测的无标点的文本进行切分,得到至少一个序列;
将所述至少一个序列输入所述预测模型,确定每一个序列中每个字符对应的标点标签;
根据所述每一个序列中每个字符对应的标点标签,合并形成预测后的带标点的文本。
可选地,所述预测模块503将所述待预测的无标点的文本进行切分,得到至少一个序列,包括:以字符为单位进行切分,得到所述至少一个序列。
可选地,所述需要预测的标点类别至少包括:逗号和句号;
所述根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换,包括:
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有逗号功能时,该标点被替换为逗号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有句号功能时,该标点被替换为句号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中既不具有逗号功能也不具有句号功能时,从所述带有标点的文本中删除该标点。
可选地,当所述带有标点的文本和所述待预测的无标点的文本包含英语时,所述字符为英语单词。
本发明实施例还提供一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一一种文本中预测标点的方法。
本发明实施例还提供一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行上述任一一种文本中预测标点的方法。
本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
Claims (6)
1.一种文本中预测标点的方法,包括,
对带有标点的文本进行预处理,获得训练语料;
利用所述训练语料对预定的训练模型进行训练,得到预测模型;
将待预测的无标点的文本输入所述预测模型,得到预测结果,
其中,所述对带有标点的文本进行预处理,获得训练语料,包括:
确定需要预测的标点类别;
根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换后,对转换后的文本进行切分,得到至少一个序列;
将所述至少一个序列添加标点标签后,根据预设规则写入文件,得到所述训练语料,包括:对所述至少一个序列中的每一个序列依次执行如下操作:给序列中的每一个字符设置标点标签,将该序列中的非标点字符和对应的标签组合,构成该序列对应的带标签行;将每一个序列对应的带标签行,按照所述预设规则写入文件,得到所述训练语料;
所述给序列中的每一个字符设置标点标签,包括:所述标点标签,包括:逗号标签、句号标签和其他标签;根据所述每一个字符的下一个字符设置所述每一个字符的标点标签,包括:每一个字符的标点标签默认设置为其他标签;当所述下一个字符是逗号时,当前字符的标点标签修改为逗号标签;当所述下一个字符是句号时,当前字符的标点标签修改为句号标签;当所述每一个字符为末尾字符时,当前字符的标点标签仍为其他标签;
所述需要预测的标点类别至少包括:逗号和句号;
所述根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换,包括:
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有逗号功能时,该标点被替换为逗号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有句号功能时,该标点被替换为句号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中既不具有逗号功能也不具有句号功能时,从所述带有标点的文本中删除该标点。
2.根据权利要求1所述的方法,其中,
所述预定的训练模型,包括:
增加有一层全连接层以及条件随机场CRF层的基于Transformer的深度双向语言表征BERT模型;其中,所述全连接层连接BERT模型的输出层,用于把BERT模型的输出向量映射到预先定义的标签集合;所述CRF层连接全连接层的输出。
3.根据权利要求1所述的方法,其中,
所述将待预测的无标点的文本输入所述预测模型,得到预测结果,包括:
将所述待预测的无标点的文本进行切分,得到至少一个序列;
将所述至少一个序列输入所述预测模型,确定每一个序列中每个字符对应的标点标签;
根据所述每一个序列中每个字符对应的标点标签,合并形成预测后的带标点的文本。
4.根据权利要求3所述的方法,其中,
所述将所述待预测的无标点的文本进行切分,得到至少一个序列,包括:
以字符为单位进行切分,得到所述至少一个序列。
5.根据权利要求1所述的方法,其特征在于,
当所述带有标点的文本和所述待预测的无标点的文本包含英语时,所述字符为英语单词。
6.一种文本中预测标点的装置,其特征在于,包括,
语料预处理模块,用于对带有标点的文本进行预处理,获得训练语料;
训练模块,用于利用所述训练语料对预定的训练模型进行训练,得到预测模型;
预测模块,用于将待预测的无标点的文本输入所述预测模型,得到预测结果,
其中,所述语料预处理模块,还用于确定需要预测的标点类别;根据所确定的标点类别,将所述带有标点的文本中包括的标点进行转换后,对转换后的文本进行切分,得到至少一个序列;将所述至少一个序列添加标点标签后,根据预设规则写入文件,得到所述训练语料,包括:对所述至少一个序列中的每一个序列依次执行如下操作:给序列中的每一个字符设置标点标签,将该序列中的非标点字符和对应的标签组合,构成该序列对应的带标签行;将每一个序列对应的带标签行,按照所述预设规则写入文件,得到所述训练语料;
所述给序列中的每一个字符设置标点标签,包括:所述标点标签,包括:逗号标签、句号标签和其他标签;根据所述每一个字符的下一个字符设置所述每一个字符的标点标签,包括:每一个字符的标点标签默认设置为其他标签;当所述下一个字符是逗号时,当前字符的标点标签修改为逗号标签;当所述下一个字符是句号时,当前字符的标点标签修改为句号标签;当所述每一个字符为末尾字符时,当前字符的标点标签仍为其他标签;
其中,所述需要预测的标点类别至少包括:逗号和句号;
所述语料预处理模块,还用于:
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有逗号功能时,该标点被替换为逗号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中具有句号功能时,该标点被替换为句号;
当所述带有标点的文本中包括的标点在所述带有标点的文本中既不具有逗号功能也不具有句号功能时,从所述带有标点的文本中删除该标点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010207942.2A CN111428479B (zh) | 2020-03-23 | 2020-03-23 | 一种文本中预测标点的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010207942.2A CN111428479B (zh) | 2020-03-23 | 2020-03-23 | 一种文本中预测标点的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111428479A CN111428479A (zh) | 2020-07-17 |
CN111428479B true CN111428479B (zh) | 2024-01-30 |
Family
ID=71549098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010207942.2A Active CN111428479B (zh) | 2020-03-23 | 2020-03-23 | 一种文本中预测标点的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111428479B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112148856B (zh) * | 2020-09-22 | 2024-01-23 | 北京百度网讯科技有限公司 | 建立标点预测模型的方法、装置 |
CN112906366B (zh) * | 2021-01-29 | 2023-07-07 | 深圳力维智联技术有限公司 | 基于albert的模型构建方法、装置、系统及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108564953A (zh) * | 2018-04-20 | 2018-09-21 | 科大讯飞股份有限公司 | 一种语音识别文本的标点处理方法及装置 |
CN110674629A (zh) * | 2019-09-27 | 2020-01-10 | 上海智臻智能网络科技股份有限公司 | 标点符号标注模型及其训练方法、设备、存储介质 |
CN110688822A (zh) * | 2019-09-27 | 2020-01-14 | 上海智臻智能网络科技股份有限公司 | 标点符号的添加方法及设备、介质 |
CN110705264A (zh) * | 2019-09-27 | 2020-01-17 | 上海智臻智能网络科技股份有限公司 | 标点符号的校正方法及设备、介质 |
-
2020
- 2020-03-23 CN CN202010207942.2A patent/CN111428479B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108564953A (zh) * | 2018-04-20 | 2018-09-21 | 科大讯飞股份有限公司 | 一种语音识别文本的标点处理方法及装置 |
CN110674629A (zh) * | 2019-09-27 | 2020-01-10 | 上海智臻智能网络科技股份有限公司 | 标点符号标注模型及其训练方法、设备、存储介质 |
CN110688822A (zh) * | 2019-09-27 | 2020-01-14 | 上海智臻智能网络科技股份有限公司 | 标点符号的添加方法及设备、介质 |
CN110705264A (zh) * | 2019-09-27 | 2020-01-17 | 上海智臻智能网络科技股份有限公司 | 标点符号的校正方法及设备、介质 |
Non-Patent Citations (1)
Title |
---|
基于BERT的古文断句研究与应用;俞敬松 等;《中文信息学报》;20191130;第33卷(第11期);第59-60页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111428479A (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110795543B (zh) | 基于深度学习的非结构化数据抽取方法、装置及存储介质 | |
CN108984683B (zh) | 结构化数据的提取方法、系统、设备及存储介质 | |
CN113807098A (zh) | 模型训练方法和装置、电子设备以及存储介质 | |
CN110851596A (zh) | 文本分类方法、装置及计算机可读存储介质 | |
CN111709242B (zh) | 一种基于命名实体识别的中文标点符号添加方法 | |
CN111738169B (zh) | 一种基于端对端网络模型的手写公式识别方法 | |
CN116012481B (zh) | 图像生成处理方法、装置、电子设备及存储介质 | |
JP2021192277A (ja) | 情報抽出方法、抽出モデル訓練方法、装置及び電子機器 | |
CN112101031B (zh) | 一种实体识别方法、终端设备及存储介质 | |
CN113220835B (zh) | 文本信息处理方法、装置、电子设备以及存储介质 | |
CN111339250A (zh) | 新类别标签的挖掘方法及电子设备、计算机可读介质 | |
CN113255331B (zh) | 文本纠错方法、装置及存储介质 | |
CN112966088B (zh) | 未知意图的识别方法、装置、设备及存储介质 | |
CN111742322A (zh) | 用于使用深度神经网络来进行独立于领域和语言的定义提取的系统和方法 | |
CN115099239B (zh) | 一种资源识别方法、装置、设备以及存储介质 | |
CN111428479B (zh) | 一种文本中预测标点的方法和装置 | |
CN111353314A (zh) | 一种用于动漫生成的故事文本语义分析方法 | |
CN113360001A (zh) | 输入文本的处理方法、装置、电子设备和存储介质 | |
CN110941958A (zh) | 一种文本类目标注方法、装置、电子设备及存储介质 | |
CN112860871B (zh) | 自然语言理解模型训练方法、自然语言理解方法及装置 | |
CN113010678B (zh) | 分类模型的训练方法、文本分类方法及装置 | |
CN114970514A (zh) | 基于人工智能的中文分词方法、装置、计算机设备及介质 | |
CN113342935A (zh) | 语义识别方法、装置、电子设备及可读存储介质 | |
CN108491381B (zh) | 一种汉语二分结构的句法分析方法 | |
CN114218940A (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 |