发明内容
针对上述问题,本申请提供了一种标点符号误用检测纠正方法,所述方 法包括以下步骤:
将获取的待检测文本输入到已训练的纠错模型中进行第一检测,以获得 多个位置的第一预测纠正结果,所述第一预测纠正结果中包括对每一所述位 置预测执行的修改操作类型、每一所述位置对应的预测纠正后的标点符号类 型;
基于所述每一所述位置预测执行的修改操作类型,确定每一所述位置所 应执行的第二检测的检测方式,所述检测方式包括至少两种检测方式;
基于所述确定的检测方式进行第二检测,以获得每一所述位置的第二预 测纠正结果;
基于每一所述位置对应的所述第一预测纠正结果和/或所述第二预测纠 正结果,确定每一所述位置的目标纠正结果。
在一个实施例中,所述至少两种检测方式包括检测方式一和检测方式二, 所述检测方式一包括对所述多个位置中修改操作类型为插入的位置基于声学 模型进行检测,所述检测方式二包括对所述多个位置中修改操作类型为除所 述插入以外的其他操作的位置基于预设规则库进行检测。
在一个实施例中,当所述确定的检测方式为所述检测方式一时,基于所 述确定的检测方式进行第二检测,以获得每一所述位置的第二预测纠正结果, 包括:
将修改操作类型为插入的位置之前的至少部分上文文本转换为语音信号;
将所述语音信号输入所述声学模型进行检测,以获得所述第二预测纠正 结果。
在一个实施例中,所述将所述语音信号输入所述声学模型进行检测,以 获得所述第二预测纠正结果,包括:
基于所述声学模型提取所述语音信号中的停顿时长和韵律特征;
基于所述停顿时长的长短和所述韵律特征,获取所述第二预测纠正结果, 所述第二预测纠正结果包括预测的对应位置能够插入的一种或多种标点符号 类型。
在一个实施例中,所述第一预测纠正结果包括多个候选预测结果以及与 每一所述候选预测结果对应的第一概率,所述第二预测纠正结果包括所述多 个候选预测结果以及每一所述候选预测结果对应的第二概率,所述基于每一 所述位置对应的所述第一预测纠正结果和所述第二预测纠正结果,确定每一 所述位置的目标纠正结果,包括:
将每一所述候选预测结果对应的第一概率乘以第一预设权重,以获得每 一所述候选预测结果对应的第一估计概率;
将每一所述候选预测结果对应的第二概率乘以第二预设权重,以获得每 一所述候选预测结果对应的第二估计概率;
将具有相同标点符号类型的候选预测结果对应的第一估计概率和第二估 计概率相加,获得每一所述候选预测结果对应的预测概率,其中,所述目标 纠正结果为所述预测概率最高的候选预测结果。
在一个实施例中,当所述确定的检测方式为所述检测方式二时,基于所 述确定的检测方式进行第二检测,以获得每一所述位置的第二预测纠正结果, 包括:
将修改操作类型为除所述插入以外的其他操作的位置按照所述第一预测 纠正结果进行修改,以获得修改后的文本;
将所述修改后的文本与所述预设规则库中的规则进行匹配,以获得与所 述修改后的文本匹配的一个或多个规则;
基于一个或多个规则,对所述修改后的文本的正确性进行评分,所述第 二预测纠正结果包括所述评分,其中,所述评分是基于所述一个或多个规则 中表征所述修改后的文本正确的规则所占的比例确定的。
在一个实施例中,所述基于一个或多个规则,对所述修改后的文本的正 确性进行评分,包括:
计算所述一个或多个规则中表征所述修改后的文本正确的规则所占的比 例,以所述比例表征所述评分。
在一个实施例中,所述第一预测纠正结果包括多个候选预测结果以及与 每一所述候选预测结果对应的第一概率,所述基于每一所述位置对应的所述 第一预测纠正结果和所述第二预测纠正结果,确定每一所述位置的目标纠正 结果,包括:
将每一所述候选预测结果对应的第一概率乘以第三预设权重,以获得每 一所述候选预测结果对应的第三估计概率;
将每一所述候选预测结果对应的评分乘以第四预设权重,以获得每一所 述候选预测结果对应的第四估计概率;
将具有相同标点符号类型的候选预测结果对应的第一估计概率和第二估 计概率相加,获得每一所述候选预测结果对应的预测概率,其中,所述目标 纠正结果为所述预测概率最高的候选预测结果。
本申请另一方面还提供一种标点符号误用检测纠正装置,所述装置包括:
第一检测模块,用于将获取的待检测文本输入到已训练的纠错模型中进 行第一检测,以获得多个位置的第一预测纠正结果,所述第一预测纠正结果 中包括对每一所述位置预测执行的修改操作类型、每一所述位置对应的预测 纠正后的标点符号类型;
检测方式确定模块,用于基于所述每一所述位置预测执行的修改操作类 型,确定每一所述位置所应执行的第二检测的检测方式,所述检测方式包括 至少两种检测方式;
第二检测模块,用于基于所述确定的检测方式进行第二检测,以获得每 一所述位置的第二预测纠正结果;
目标纠正结果确定模块,用于基于每一所述位置对应的所述第一预测纠 正结果和/或所述第二预测纠正结果,确定每一所述位置的目标纠正结果。
本申请又一方面还提供一种标点符号误用检测纠正设备,所述设备包括 存储器和处理器,所述存储器上存储有由所述处理器运行的计算机程序,所 述计算机程序在被所述处理器运行时,使得所述处理器执行前述的标点符号 误用检测纠正方法。
本申请另一方面一种存储介质,所述存储介质上存储有计算机程序,所 述计算机程序在运行时,执行前述的标点符号误用检测纠正方法。
为了解决目前存在的技术问题,本申请提供了一种标点符号误用检测纠 正方法、装置、设备及存储介质,通过本申请的标点符号误用检测纠正方法, 能够通过纠错模型对待检测文本进行检测,以获得第一预测纠正结果,并基 于第一预测纠正结果,或者基于第一预测纠正结果和第二预测纠正结果获取 目标纠正结果,基于上述方案能够实现根据该目标纠正结果对待检测文本的 标点符号进行纠正,且相对于人工纠错的方式,可以节省人力和时间,继而 可以提升纠错效率和准确率。
具体实施方式
为了使得本申请的目的、技术方案和优点更为明显,下面将参照附图详 细描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一 部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的 示例实施例的限制。基于本申请中描述的本申请实施例,本领域技术人员在 没有付出创造性劳动的情况下所得到的所有其他实施例都应落入本申请的保 护范围之内。
本申请的申请人发现,目前相关技术中,针对标点符号的技术,首先是 自然语言处理领域的文本标点补全技术。其次,在语音信号处理领域,也有 相关的语音转写断句及标点预测技术。在自然语言处理领域,可以通过序列 标注的方式利用文本特征进行标点符号预测。在语音信号处理领域,通常根 据声学特征,在将语义信号转为文字的时候进行标点符号预测,即根据语音 信号中说话人的停顿或韵律等特殊信号进行预测。基于以上两类特征,常见 的标点符号预测技术可以分为以下几类:
1)基于自然语言处理的预测方法
在自然语言处理(Natural Language Processing,NLP)领域,预测标点 符号的方法可分为两类,基于规则的标点符号预测和基于模型的标点符号预 测。基于规则的标点符号校对仅能判断极少部分标点符号是否正确,如“,,” 中可以检测符号冗余、“xxx《xxx”可以检测“》”缺失。基于模型的方法主 要依靠语言模型模型或序列标注模型实现。语言模型可以根据训练语料的标 点符号分布特点,预测某个词后面是否需要连接标点符号、连接何种标点符 号;序列标注模型可以预测某个位置的正确字符(包含文字、标点等)、某个 位置应该进行断句等。此外,还可以利用机器翻译模型的结构(编码器-解码 器结构),人工构造大量平行语料,将标点预测任务转化为源语言(无标点) 到目标语言(有标点)的翻译任务。
然而,自然语言处理的方法的存在以下缺点:(1)基于规则的方法匹配 条件严格错误检出准确率高,但是无法进行纠正,如“,,”是应该改成“,” 还是“;”或其他符号;“xxx《xxx”中缺失的“》”应该加在什么位置等问题。 (2)基于语言模型的方法依赖训练语料,语言模型主要是对文字分布的学习, 大部分语料数据的标点符号仅占不足5%,而标点符号的使用与领域类型关联 紧密,如果要使用在与训练语料不同的领域,否则会出现不适配的情况,并 有大量误报,泛化性能较差。(3)基于机翻任务的方法需要人工对转写数据 进行标注,成本过高,同时大量的数据也会限制模型的效率以及消耗细算资 源的多少,限制模型在现实中的应用场景和使用效果。
2)基于声学信号处理的预测方法
该方法是根据说话人在说话时的停顿、韵律等声学信号特征,并结合隐 马可夫模型(HMM)等算法进行标点符号预测,可以根据停顿长短、语调等 特点预测“,”“。”“!”“?”等特征较明显的标点符号。
然而,声学信号处理的方法的存在以下缺点:(1)标点符号和语音信息 中停顿的时间长短虽然相关,但没有固定且必然的联系,仅能作为预测的参 考,且根据说话人所处语境、说话人情绪等外部因素影响,语速、韵律等特 征也会有所改变。因此,根据声学信号特征预测标点符号的准确性较低。(2) 由于单独的声学信号可利用信息仅有停顿、语速、韵律等,因此无法区分大 部分句中点号(如“,”“、”“;”“:”等)。(3)部分在朗读时对这些特征无 影响或印象较小的标点符号(如“《”“》”“【”“】”“··”等),仅凭声学特 征无法进行预测,导致可处理符号的多样性过少。
3)结合声学特征和文本语义特征的预测方法
该方法结合了声学信号特征和文本语义特征,主要应用于语音转写领域。 首先需要利用(Automatic Speech Recognition,ASR)技术,将语音文本转写 为文字形式,再通过语言模型预测,为转写文本插入标点符号。由于合并了 两个任务,整理模型训练过程繁琐,该方法容易造成错误级联,且训练语料 难以获得。
基于上述问题,如图1所示,本申请提供种标点符号误用检测纠正方法 100,该方法包括以下步骤:
步骤S110,将获取的待检测文本输入到已训练的纠错模型中进行第一检 测,以获得多个位置的第一预测纠正结果,所述第一预测纠正结果中包括对 每一所述位置预测执行的修改操作类型、每一所述位置对应的预测纠正后的 标点符号类型;
步骤S120,基于所述每一所述位置预测执行的修改操作类型,确定每一 所述位置所应执行的第二检测的检测方式,所述检测方式包括至少两种检测 方式;
步骤S130,基于所述确定的检测方式进行第二检测,以获得每一所述位 置的第二预测纠正结果;
步骤S140,基于每一所述位置对应的所述第一预测纠正结果和/或所述 第二预测纠正结果,确定每一所述位置的目标纠正结果。
在本申请一个实施例中,待检测文本可以是机器输入(即通过电脑或手 机等设备打字输入)或语音输入的文本。
待检测文本包括:中文汉字、英文字符、韩语字符、日语字符等各个国 家的语言字符中的一种或多种。待检测文本还包括标点符号。
在一个实施例中,在步骤S110中,已训练的纠错模型可以用于对待检测 文本中的标点符号误用进行检测,并输出多个位置的第一预测纠正结果,其 中,第一预测纠正结果可以对每一所述位置预测执行的修改操作类型、每一 所述位置对应的预测纠正后的标点符号类型,可选地,已训练的纠错模型还 可以在输出第一预测纠正结果的同时输出第一预测纠正结果对应的第一概率, 在一些实施例中,第一预测纠正结果可以包括多个候选预测结果,每一所述 候选预测结果对应的一第一概率,可选地,多个候选预测结果可以是纠错模 型检测输出的所有结果,或者,还可以第一概率大于预设概率的多个候选预 测结果,该预设概率根据实际需要合理设定,例如预设概率可以大于或等于 0.5。在其他实施例中,第一预测纠正结果还可以包括一个候选预测结果,该 一个候选预测结果可以是第一概率大于预设概率的候选预测结果,或者,一 个候选预测结果可以是第一概率最大的候选预测结果。
已训练的纠错模型可以采用自然语言处理中常用的模型,包括但不限于 基于转换器的双向编码表征模型(Bidirectional Encoder Representation fromTransformers,简称为Bert)等用于能够用于标点符号纠错的模型。
下文将对纠错模型的训练过程进行描述,其中,为了训练纠错模型,首 先,可以先获取不同领域的纠错标签,纠错标签是根据标点符号类型、标点 符号修改操作以及数据所属领域设置获得的,其中,所述标点符号类型是区 分全半角的。其中,对于属于同一领域的文本数据可以以统一符号作为记号 信号,而不同领域则可以分别具有不同的符号,可以分为通用(G)、人文学 科(L)、医学(M)、工程类(E)、科学类(S)。
本申请的标签体系和训练过程中,由于考虑到不同领域其标点特征和错 误分布可能不同。在后续训练时,使模型从数据中学会自动判断输入语料的 领域和语言特点,以采取正确的策略进行检出和纠正。
例如,在一个具体示例中,标点符号需要具有以下特点:(1)区分全半 角,包括逗号、句号、感叹号、问号、冒号、分号、波浪号、连接号,共16 个;(2)区分左右符号,包括大括号、实心方括号、空心方括号、六角括号、 尖括号、书名号、单书名号,共14个;(3)区分全半角及左右,包括小括号、 单引号、双引号,共12个;以及顿号、省略号、破折号、间隔号(·)、着 重号(.)、一字线(-),共计48个常见标点符号。将这些符号组合成列表, 并从1开始编号,构成标签中的符号部分。修改操作包含插入(A)、删除(D)、 替换(R)、保留(K)4类,其中,删除(N)和保留(K)不区分标点类型, 故将这两类操作的标点前缀记为0。数据所属领域可以分为通用(G)、人文 学科(L)、医学(M)、工程类(E)、科学类(S)。根据以上定义,一个标点纠错标签可以为,1-A-L(人文学科数据,在当前位置插入1号标点)、0-D-G (通用数据,删除当前位置的标点)等。由于删除(D)、替换(R)、保留(K) 均标注在标点符号的位置,而插入(A)标注在文字例如汉字的位置(即在 当前汉字位置插入某个标点),因此不涉及标点修改的汉字均记为N。基于上 述原则,纠错标签体系共包含491个标签,例如包括48个标点*2类操作(A、 R)*5类数据、2类操作(K、D)*5类数据和1个汉字标签,本申请一个实 施例中将以该纠错标签体系进行训练。
进一步,纠错模型的训练还可以包括生成训练数据的过程,其中,可以 基于前述的纠错标签体系构建模型训练数据,例如,训练数据可以分为两类 数据,语言模型训练数据及纠错模型训练数据。其中,语言模型的训练数据 是通过纠错标签、以及对获取的各类不同领域的语料数据进行遮蔽(mask) 处理而获得的,例如,根据标点符号设置遮蔽机制。由于该语言模型是针对 标点符号纠错任务的模型,需要重点学习对标点符号的使用习惯,因此标点 符号的遮蔽概率大于文字例如汉字的遮蔽概率。具体地,以汉字的文本为例, 可以首先收集各类不同领域的语料数据,记作
经过处理后得到的语言模 型的训练数据记作
的构建规则为:对于任意汉字c,10%被替换 为其他汉字、10%被替换为[mask];对于任意标点符号x的具体遮蔽规则如下:
(1)30%概率维持不变;
(2)20%概率替换为“[mask]”,由于文本中的点号数量通常多于标号, 因此在这个替换为[mask]的操作中,被替换的标号的数量少于被替换的点号 的数量,例如被替换的标号和点号的比例设置为1:2,或者其他适合的比例;
(3)50%概率替换为其他标点符号。为了模型能够模拟在真实场景中的 标点符号错误分布,在这一步的替换操作中,需要进一步根据被替换的标点 类别进行划分。此时被替换的标点符号中,标号和点号比例为可以1:1。在被 替换的标号中,有40%被替换成点号;剩余的60%中,50%为单双引号、各 类括号、单双书名号之间的替换,25%的概率为将上述符号替换成其余标号, 剩下25%为将上述符号替换成点号。在被替换的点号中,不干预被替换的句 中点号与句末点号的分布比例。但是,每个句中点号有70%概率被替换为其余句中点号、30%概率被替换为句末点号;每个句末点号有50%概率被替换 为其余句末点号、50%概率被替换为句中点号。基于上述的遮蔽规则生成语 言模型的训练数据,其中,上述遮蔽规则在合理的情况下,还可以修改或变 化。
而对于用于训练纠错模型的训练数据(记做
)其可以是通过对获取的 各类不同领域的原始语料数据进行处理后获得的有标点错误的数据,其中原 始语料数据为正确数据,正确数据也即其并无错误标点或汉字等,有标点错 误的数据中各种标点符号修改操作分布均衡,标点符号修改操作包括插入、 删除、替换、保留,可以通过以下示例性的方式进行构建,所述在构建时, 需要保证各个错误类型分布均衡,有标点错误的数据中各种标点符号修改操 作对应的标点错误分布均衡,标点符号修改操作包括插入(A)、删除(D)、 替换(R)、保留(K),即A:R:D:K=1:1:1:1。在构建时,认为原始数据为正确 数据,构建后的数据为有标点错误的数据,模型训练的目的是输入有标点错 误的数据并预测正确的标点符号,因此,标签需要根据原始文本(也即原始 语料数据)标明正确的标点符号修改操作,构建纠错模型的训练数据(也可 称为伪数据)时需要根据A/R/D/K类型引入对应的错误。在一个实施例中, 以汉字的语料数据为例,构建的具体操作如下:
(1)插入操作(A)为针对汉字或标点的标签。当进行A操作数据构建 时,需要删除当前标点,并在前一个位置的字符上进行标注。如,将正确句 子“今天天气很好。”中的“。”删除,构建成句号缺失的句子,则需要在“好” 位置标注I。-A-G(以通用领域为例,I。为“。”在标点体系中的身份 (Identification,id)标签,这样在纠错模型使用时就可以根据预测的标签, 对错误句子“今天天气很好”进行标点修改,改正为“今天天气很好。”
(2)替换操作(R)为针对标点符号的标签。将当前位置的标点进行替 换,具体替换规则与上述构建
时的描述(3)大体相同。如,将通用文 本中的“,”(正确符号)替换为“;”(错误符号),则在该位置的标签为I, -R-G,其中I,为“,”(正确符号)在标点体系中的id。
(3)删除操作(D)为针对标点符号的标签。说明需要删除此位置的标 点,在构建数据时,需要在当前位置插入任意标点,并将该标点标注为0-D-G (以通用领域为例)。
(4)保留操作(K)为针对标点符号的标签。说明保留原始语料数据中 的原始标点不进行修改。
进一步,在上述训练数据构建完成之后,可以基于上述训练数据对纠错 模型进行巡,例如,纠错模型是在训练好的语言模型的基础上训练获得的, 例如,首先,可以基于前述的语言模型的训练数据训练用于标点符号校对的 多领域语言模型,其中训练过程与BERT的训练过程大体相同,其语言模型 的输出层的句末拼接一个长度为为t的[T-TYPE]序列(即t个[T-TYPE]符号), 以用于引导下一步的纠错模型在训练时学习区分数据领域,并为其预留数据 领域向量表示的编码位置,如图2所示,为语言模型的一种示例性输入。
而训练纠错模型是在已训练的语言模型的基础上进行,其训练过程和基 于BERT的序列到序列训练方法相似,除了序列到序列的训练任务,额外增 加了领域分类任务,纠错模型还包括用于对所述待检测文本的领域进行分类 的输出层,增加一个输出层,如图3所示,通过上述长度为t的[T-TYPE]序 列学习数据领域向量表示,并输出预测的G/L/M/E/S分类结果,也即已训练 的纠错模型还可以用于对待检测文本的数据所属领域进行分类,并输出领域 类型预测的分类结果,第一预测纠错结果可以包括该待检测文本的数据所属 领域的分类结果,以及还包括纠错标签预测,纠错标签预测包括对每一所述 位置预测执行的修改操作类型、每一所述位置对应的预测纠正后的标点符号 类型。
进一步,在步骤S120中,基于所述每一所述位置预测执行的修改操作类 型,确定每一所述位置所应执行的第二检测的检测方式,所述检测方式包括 至少两种检测方式。
在步骤S120中,由于在步骤S110中输出了第一预测纠正结果,而该第 一预测纠正结果例如可以为基于前述纠错标签体系的输出结果,可以根据该 纠错标签体系进行后续的一些检测或处理,例如,对于文本中的某一位置其 对应的第一预测纠正结果为1-A-L(人文学科数据,在当前位置插入1号标 点),可以基于此获取到针对该位置预测执行的修改操作类型为插入,而对于 另一位置其对应的第一预测纠正结果为0-D-G(通用数据,删除当前位置的 标点),则基于此获取到针对该位置预测执行的修改操作类型为删除,以此类 推。对于第一预测纠正结果包括多个候选预测结果的情况,多个候选预测结 果对应的修改操作类型可能相同,而标点符号类型可能不同。
值得一提的是,语言模型训练时使模型从数据中学会自动判断输入语料 的领域和语言特点,以便纠错模型可以以采取正确的策略进行检出和纠正。 在一些实施例中,本申请的纠错模型用于数据所属领域分类的功能可以选择 性设置,纠错模型可以是神经网络模型,本申请的方法还可以包括检测用户 输入的待检测文本的数据所属领域的输入操作,并根据所述输入操作表征的 数据所属领域调用所述纠错模型中与该领域适配的神经元进行检测,以使得 输出第一预测纠正结果更加准确。
在一些实施例中,至少两种检测方式包括检测方式一和检测方式二,所 述检测方式一包括对所述多个位置中修改操作类型为插入的位置基于声学模 型进行检测,所述检测方式二包括对所述多个位置中修改操作类型为除所述 插入以外的其他操作(例如删除(D)、替换(R)、保留(K))的位置基于预 设规则库进行检测,有关检测方式一和检测方式二的一些细节,将在下文描 述。
其中,预设规则库可以是预先配置好的规则库,该预设规则库可以具有 可编辑接口,实现对失效规则的删除、修改规则的覆盖、新规则的插入等, 从而适应规则的变化,以在规则变化时能够更新预设规则库。
在一些实施例中,可以基于以下方式配置预设规则库,例如,规则库可 以基于正则表达式进行构建,即将已有的文字规则用正则表达式进行记录, 并将其作为初始化数据存在规则库里。本文中的规则是结合标点符号和汉字 的规则,如:
“(?:\d{1,2}:\d{1,2}([-~]+)\d{1,2}:\d{1,2})|(?:[\d\uFF10-\uFF19]+[年天日 月]?([-~]+)[\d\uFF10-\uFF19]+[年天日月][里之内起]{0,2})”
是对连接号(-)和波浪号(~)的误用检测规则之一,具体的文字版规 范是:
在表示时间的起止范围时应用‘-’(一字线),而不用连接号(-)或波 浪号(~)。
基于规则的标点符号预测主要围绕官方发布的标点符号使用规范进行预 测和校对,如《标点符号用法(GB/T15834-2011)》《党政机关公文格式国家 标准(2012版)》等。首先需要将使用规范通过正则表达式的方式编辑成词表 或规则表/规则库等(类似于上述例子),然后使用自动状态机或其他匹配算 法对待校验文本进行匹配,以便找出文本中不符合规范的标点符号并进行纠 正,本申请中可以是结合第一预测纠正结果进行纠正。由于大部分规则仅说 明了标点误用的情况,因此无法根据规则进行纠正,这部分错误的纠正需要依赖模型的预测结果。为了同时保证误用检出和纠正的准确率和召回率,需 要结合规则和纠错模型的第一预测纠正结果(见后续步骤S140中的相关描 述)。
为了实现规则库更新,每条新入库规则都有唯一编号(rule_id)。编号包 含正确标点类型、规则编码、规则版本等信息,格式为:T标点_I标点_RID_V,T标点为标点类型(共4类:非成对标号SINGLE、成对出现的标号PAIR、 句中点号MIDDLE、句末点号END),I标点与步一中标签体系相对应,为触 发该条规则后需修正的正确标点,RID表示当前规则数字编码,V表示规则 版本(0为初始化版本)。例如(假设1号标点为“,”):MIDDLE-1-00001-0, 如果对该规则进行修改,则直接根据rule_id“MIDDLE-1-00001-0”定位,修 改后在该条规则之前新增一条MIDDLE-1-00001-1规则。
进一步,在步骤S130中,在一个实施例中,当所述确定的检测方式为所 述检测方式一时,基于所述确定的检测方式进行第二检测,以获得每一所述 位置的第二预测纠正结果,包括:将修改操作类型为插入的位置之前的至少 部分上文文本转换为语音信号,例如可以通过任意适合的语音合成模块将上 文文本转换为语音信号;将所述语音信号输入声学模型进行检测,以获得修 改操作类型为插入的位置对应的第二预测纠正结果,例如基于所述声学模型 提取所述语音信号中的停顿时长和韵律特征;基于所述停顿时长的长短和所 述韵律特征,获取所述第二预测纠正结果,所述第二预测纠正结果包括预测 的对应位置能够插入的一种或多种标点符号类型(例如,标号、句中点号、 句末点号),第二预测纠正结果还可以包括每种标点符号类型所对应的概率。
本申请实施例中,声学模型可以是任意适合的神经网络模型,其可以用 于基于语音信号而进行标点符号的插入。
由于第二预测纠正结果是基于模型获得的,为了降低错误级联,本申请 实施例中,还通过将第一预测纠正结果和基于声学模型的第二预测纠正结果 结合来确定修改操作类型为插入的位置的目标纠正结果,具体细节将在下文 的步骤S140中进行描述。
继续在步骤S130中,当所述确定的检测方式为所述检测方式二时,基于 所述确定的检测方式进行第二检测,以获得每一位置的第二预测纠正结果, 包括:将修改操作类型为除所述插入以外的其他操作的位置按照所述第一预 测纠正结果进行修改,以获得修改后的文本,例如,当前位置对应的操作为 删除,其对应的第一预测纠正结果包括0-D-G(通用数据,删除当前位置的 标点),则其获得修改后的文本中当前位置的标号被删除;将所述修改后的文 本(可以是在修改操作类型为除所述插入以外的其他操作的位置之前修改后的部分上文文本)与所述预设规则库中的规则进行匹配,以获得与所述修改 后的文本匹配的一个或多个规则,例如使用自动状态机或其他匹配算法对修 改后的文本进行匹配;基于一个或多个规则,对所述修改后的文本的正确性 进行评分,所述第二预测纠正结果包括所述评分,例如可以通过计算所述一 个或多个规则中表征所述修改后的文本正确的规则所占的比例来确定该评分, 该评分越高则表征第一预测纠正结果的纠正结果越准确。
进一步,在步骤S140中,所述第一预测纠正结果包括多个候选预测结果 以及与每一所述候选预测结果对应的第一概率,当前述步骤S130中以检测方 式一进行第二检测时,也即以声学模型进行第二检测时,所述第二预测纠正 结果包括多个候选预测结果以及每一所述候选预测结果对应的第二概率,所 述基于每一所述位置对应的所述第一预测纠正结果和所述第二预测纠正结果, 确定每一所述位置的目标纠正结果(也即确定修改操作类型为插入的位置的 目标纠正结果),包括:将每一所述候选预测结果对应的第一概率乘以第一预 设权重,以获得每一所述候选预测结果对应的第一估计概率;将每一所述候 选预测结果对应的第二概率乘以第二预设权重,以获得每一所述候选预测结 果对应的第二估计概率;将具有相同标点符号类型的候选预测结果对应的第 一估计概率和第二估计概率相加,获得每一所述候选预测结果对应的预测概 率,其中,所述目标纠正结果为所述预测概率最高的候选预测结果,通过将 第一预测纠正结果和第二预测纠正结果分别分配权重,可以降低由于多种模 型联合使用导致的错误级联的可能。可选地,所述第一预设权重大于所述第 二预设权重,例如所述第二预设权重大于0,且小于0.4。对于修改操作类型 均为插入的候选预测结果,不同的候选预测结果其插入的标点符号类型可能 不同。通过声学模型的二次检出还可以对纠错模型的输出结果进行校验和完 善,达到查漏补缺的作用,从而使得输出的目标纠错结果的准确率更高。
在一个具体示例中,可以将已训练的纠错模型的输出记作
声 学模型的输出记作
p表示预测为A类标签的位置, e
p-n:p为p位置的前n个字组成的文本序列,TTS为语音合成模块,
表 示声学模型的输出,最终,加上权重的预测概率为:
进一步,所述第一预测纠正结果包括多个候选预测结果以及与每一所述 候选预测结果对应的第一概率,当前述步骤S130中以检测方式二进行第二检 测时,也即以预设规则库进行第二检测时,所述基于每一所述位置对应的所 述第一预测纠正结果和所述第二预测纠正结果,确定每一所述位置的目标纠 正结果,包括:将每一所述候选预测结果对应的第一概率乘以第三预设权重, 以获得每一所述候选预测结果对应的第三估计概率;将每一所述候选预测结 果对应的评分乘以第四预设权重,以获得每一所述候选预测结果对应的第四 估计概率;将具有相同标点符号类型的候选预测结果对应的第一估计概率和 第二估计概率相加,获得每一所述候选预测结果对应的预测概率,其中,所 述目标纠正结果为所述预测概率最高的候选预测结果,其中,所述第三预设 权重大于所述第四预设权重,其中,所述第四预设权重大于0,且小于0.4。 通过预设规则库的二次检出还可以对纠错模型的输出结果进行校验和完善, 达到查漏补缺的作用,从而使得输出的目标纠错结果的准确率更高。
值得一提的是,在本身实施例中,所述第一预测纠正结果包括多个候选 预测结果以及与每一所述候选预测结果对应的第一概率,当所述多个候选预 测结果中最大的第一概率大于或等于预设概率时,以最大第一概率所对应的 所述候选预测结果作为所述目标纠正结果,当所述多个候选预测结果中最大 的第一概率小于所述预设概率时,第二检测的检测方式为所述检测方式二, 具体可以以以下公式进行表示:
labelp∈{D,R,K}
其中的e’是根据纠错模型输出第一预测纠正结果进行修改后的文本,例 如以最大第一概率对应的输出结果作为第一预测纠正结果。
而最终对于整个待检测文本,其获得的多个位置的目标纠正结果可以通 过以下公式表示:
进一步,在一些实施例中,本申请的方法还包括:根据所述目标纠正结 果对所述待检测文本进行修改,以获得目标修改文本;输出并显示所述目标 修改文本,从而最终实现对待检测文本的纠错,以节省人力和时间,且准确 率更高。
在另一些实施例中,本申请的方法还包括:输出并显示所述目标纠正结 果,该目标纠正结果可以是前述的对应的纠错标签的语言描述等,从而通过 输出该目标纠正结果,以便使用户根据该结果手动去进行修改,不用用户再 通读全文,也可以节省时间和人力,并且还可以基于用户的理解对明显错误 的结果及时进行纠正,提高修改准确率。
基于上面的描述,通过本申请的标点符号误用检测纠正方法,能够通过 纠错模型对待检测文本进行检测,以获得第一预测纠正结果,并且还可以结 合声学模型或预设规则库获得第二预测纠正结果,并基于第一预测纠正结果, 或者基于第一预测纠正结果和第二预测纠正结果获取目标纠正结果,基于上 述方案能够实现根据该目标纠正结果对待检测文本的标点符号进行纠正,且 相对于人工纠错的方式,可以节省人力和时间,继而可以提升纠错效率和准 确率。
下面将结合图4描述根据本申请另一方面提供的一种标点符号误用检测 纠正装置400,其可以用于执行前文所述的根据本申请实施例的标点符号误 用检测纠正方法。
如图4所示,标点符号误用检测纠正装置400可以包括:第一检测模块 420、检测方式确定模块440、第二检测模块450以及目标纠正结果确定模块 460,其中,第一检测模块420用于将获取的待检测文本输入到已训练的纠错 模型中进行第一检测,以获得多个位置的第一预测纠正结果,所述第一预测 纠正结果中包括对每一所述位置预测执行的修改操作类型、每一所述位置对 应的预测纠正后的标点符号类型;检测方式确定模块440用于基于所述每一 所述位置预测执行的修改操作类型,确定每一所述位置所应执行的第二检测的检测方式,所述检测方式包括至少两种检测方式,例如至少两种检测方式 包括检测方式一和检测方式二,所述检测方式一包括对所述多个位置中修改 操作类型为插入的位置基于声学模型进行检测,所述检测方式二包括对所述 多个位置中修改操作类型为除所述插入以外的其他操作的位置基于预设规则 库进行检测;第二检测模块450用于基于所述确定的检测方式进行第二检测, 以获得每一所述位置的第二预测纠正结果;目标纠正结果确定模块460用于 基于每一所述位置对应的所述第一预测纠正结果和/或所述第二预测纠正结果,确定每一所述位置的目标纠正结果。
下面将结合图5描述根据本申请另一方面提供的一种标点符号误用检测 纠正设备500,其可以用于执行前文所述的根据本申请实施例的标点符号误 用检测纠正方法。
如图5所示,标点符号误用检测纠正设备500可以包括存储器510和处 理器520,存储器510存储有由处理器520运行的计算机程序,所述计算机 程序在被处理器520运行时,使得处理器520执行前文所述的根据本申请实 施例的标点符号误用检测纠正方法100。本领域技术人员可以结合前文所述 的内容理解根据本申请实施例的标点符号误用检测纠正方法100的具体操作, 为了简洁,此处不再赘述具体的细节。
处理器520可以为本领域公知的任何处理设备,例如,中央处理单元 (CPU)、图形处理单元(GPU)、微处理器、微控制器、现场可编程门阵列 (FPGA)等,本发明对此不作限定。
其中,存储器510用于存储一个或更多个神经网络的网络参数。示例性 地,存储器510可以为RAM、ROM、EEPROM、闪存或者其他存储技术、 CD-ROM、数字多功能盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁 盘存储装置或其他磁存储设备,或者可以用来存储期望的信息且可以由处理 器520访问的任何其他介质。
此外,根据本申请实施例,还提供了一种存储介质,在所述存储介质上 存储了程序指令,在所述程序指令被计算机或处理器运行时用于执行本申请 实施例的标点符号误用检测纠正方法100的相应步骤。所述存储介质例如可 以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、只读 存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储 器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。所述计算机可 读存储介质可以是一个或多个计算机可读存储介质的任意组合。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅 是示例性的,并且不意图将本申请的范围限制于此。本领域普通技术人员可 以在其中进行各种改变和修改,而不偏离本申请的范围和精神。所有这些改 变和修改意在被包括在所附权利要求所要求的本申请的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各 示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结 合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特 定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方 法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法, 可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的, 例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外 的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或 一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本 申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未 详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个 或多个,在对本申请的示例性实施例的描述中,本申请的各个特征有时被一 起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本申请的 方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中 所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的 那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来 解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任 何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征 以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明 确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征 可以由提供相同、等同或相似目的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其 它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组 合意味着处于本申请的范围之内并且形成不同的实施例。例如,在权利要求 书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制, 并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实 施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要 求的限制。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编 程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若 干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的 使用不任何顺序。可将这些单词解释为名称。