掌桥专利:专业的专利平台
掌桥专利
首页

语音引擎系统

文献发布时间:2023-06-19 19:30:30


语音引擎系统

技术领域

本发明属于语音合成技术领域,更具体地说,是涉及一种语音引擎系统。

背景技术

随着语音合成技术的发展,出现了很多语音合成引擎。通过语音合成引擎,用户可以将文本格式的数据转换成语音格式的数据,并播放转换后的语音格式的数据。在此过程中,本申请的发明人发现了以下不足:

在某些场景下,例如在出现某些专业词汇、出现多音字时,语音引擎的转换可能会不准确。例如,在电力系统中,回路503,不应该读成:回路五百零三,应该读为:回路五零三。例如,给予可能会被误读为“gei yu”。

因此,如何提高在上述场景下语音引擎转换的准确度成为本领域技术人员亟需解决的问题。

发明内容

本发明的目的在于提供一种语音引擎系统,以解决现有技术中存在的部分场景下语音引擎转换不准确的技术问题。

为实现上述目的,本发明采用的技术方案是提供了一种语音引擎系统,所述语音引擎系统包括:

知识库、文本输入模块、文本检索模块、文本编码模块、语音转换模块;

所述知识库中存储有多音字信息、各个行业的专业词汇信息;

所述文本输入模块用于接收用户输入的文本信息;

所述文本检索模块用于通过扫描所述文本信息或者基于所述文本信息在所述知识库中进行检索来确定所述文本信息中的目标文本;其中,所述目标文本为阿拉伯数字、英文字符、多音字或专业中文词组;

所述文本编码模块用于对所述文本信息中的目标文本进行转换;

所述语音转换模块用于将转换后的文本信息转换成语音。

在一种可能的实现方式中,所述目标文本为多音字时,所述文本编码模块具体用于通过以下方式对所述目标文本进行转换:

根据所述目标文本在所述文本信息中的上下文信息确定所述目标文本的所属场景/行业;根据所述所属场景/行业在所述知识库中所述目标文本对应的多音字信息中获取所述目标文本的实际读音,基于所述实际读音对所述目标文本添加读音标识。

在一种可能的实现方式中,所述目标文本为阿拉伯数字时,所述文本编码模块具体用于通过以下方式对所述目标文本进行转换:

根据所述目标文本在所述文本信息中的上下文信息确定所述目标文本的数字读音逻辑;其中,所述数字读音逻辑指的是读单个数字或读组合数字;

若所述目标文本对应的数字读音逻辑为读单个数字,则在所述目标文本的每个数字后添加空格标识。

在一种可能的实现方式中,所述知识库还包括各行业的数字处理逻辑;所述目标文本为阿拉伯数字时,所述文本编码模块具体用于通过以下方式确定所述目标文本的数字读音逻辑:

根据所述目标文本在所述文本信息中的上下文信息确定所述目标文本的所属行业,从所述知识库中获取所述所属行业对应的数字读音逻辑。

在一种可能的实现方式中,所述知识库还包括所述专业词汇信息对应的文字处理逻辑;所述目标文本为专业中文词组时,所述文本编码模块具体用于通过以下方式对所述目标文本进行转换:

从所述知识库中获取所述目标文本中每个单词对应的文字处理逻辑;其中,所述文字处理逻辑包括停顿或重读;

若所述目标文本中某个单词对应的文字处理逻辑为停顿,则在该单词后添加空格标识;若所述目标文本中某个单词对应的文字处理逻辑为重读,则在该单词后添加重读标识。

在一种可能的实现方式中,所述目标文本为英文字符时,所述文本编码模块具体用于通过以下方式对所述目标文本进行转换:

根据所述知识库存储的专业词汇信息判断所述目标文本是否为单位或者专业英文词组;若所述目标文本为单位或者专业英文词组,则根据所述知识库存储的专业词汇信息将所述目标文本替换为对应的中文文本。

在一种可能的实现方式中,所述语音引擎系统还包括:

校验转换模块、知识库校验模块;

所述校验转换模块用于接收用户反馈的错误信息;其中,所述错误信息指的是用户发现所述语音转换模块转换的语音错误时所触发的信息;

所述知识库校验模块响应于所述错误信息,用于根据所述错误信息生成对应的修正数据,将所述修正数据更新至所述知识库。

在一种可能的实现方式中,所述语音引擎系统还包括:

知识库存盘模块;所述知识库校验模块通过所述知识库存盘模块将所述修正数据更新至所述知识库。

在一种可能的实现方式中,所述语音引擎系统还包括:知识库录入模块;

所述知识库录入模块用于接收用户输入的知识库数据或从网络上自动获取知识库数据,并通过所述知识库存盘模块将所述知识库数据存储至所述知识库。

在一种可能的实现方式中,所述语音引擎系统还包括:

知识库缓存模块;

所述知识库缓存模块用于存储所述知识库中使用频次大于预设频次的数据、和/或存储所述知识库中最近使用过的数据;

所述文本检索模块通过所述知识库缓存模块与所述知识库交互。

本发明提供的语音引擎系统的有益效果在于:

区别于现有技术,本发明设置了知识库来存储多音字信息以及各个行业的专业词汇信息,在此基础上,本发明还设置了文本检索模块和文本编码模块,该文本检索模块可通过扫描用户输入的文本信息本身发现需要着重处理的目标文本,比如,阿拉伯数字、英文字符等;也可以在知识库中检索发现那需要着重处理的目标文本,比如多音字,专业中文词组等。文本检索模块确定出前述文本信息中的目标文本后,文本编码模块可对文本信息中的目标文本进行一定的格式转换,进行格式转换后的目标文本经语音转换模块转换语音后,即可得到更为准确的语音输出。也就是说,本发明通过设置知识库、文本检索模块、文本编码模块等有效解决了现有技术中在部分场景下语音转换引擎转换不准的问题,提高了语音转换的准确度。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的语音引擎系统的结构示意图;

图2为本发明一实施例提供的文本编码模块的转换流图;

图3为本发明另一实施例提供的语音引擎系统的结构示意图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面结合附图和具体实施方式对本发明作进一步详细的说明。

请参考图1,图1为本发明一实施例提供的语音引擎系统的结构示意图,该语音引擎系统10包括:

知识库11、文本输入模块12、文本检索模块13、文本编码模块14、语音转换模块15。

知识库11中存储有多音字信息、各个行业的专业词汇信息。

文本输入模块12用于接收用户输入的文本信息。

文本检索模块13用于通过扫描文本信息或者基于文本信息在知识库中进行检索来确定文本信息中的目标文本。其中,目标文本为阿拉伯数字、英文字符、多音字或专业中文词组。

文本编码模块14用于对文本信息中的目标文本进行转换。

语音转换模块15用于将转换后的文本信息转换成语音。

在本实施例中,知识库11中也可包含语音信息、各个行业对数字的处理逻辑、专业词汇信息对应的文本处理逻辑等,此处不做限定。

在本实施例中,知识库11可采用-非关系型数据库MongoDB。MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成,MongoDB文档类似于json对象,字段值可以包含其他文档,数组及文档数组。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。鉴于其支持的查询语言非常强大,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引,本发明采用MongoDB建立知识库11,以便后续知识库11中数据的查询和使用。

在本实施例中,用户输入的文本信息中可以只包含待语音转换的文本,也可以既包含语音转换的文本,又包含用户标注的行业信息。可选的,文本输入模块12可提供用户进行文本信息输入的页面,页面上设置有行业信息的输入位置,用户可自行选择是否输入行业信息以进一步提高语音转换的准确率。

在本实施例中,目标文本指的是需要文本编码模块14进行转换的文本。文本检索模块13可扫描用户输入的文本信息,来检测该文本信息中是否包含阿拉伯数字、是否包含英文字符等。在此基础上,文本检索模块13也可在知识库11中进行文本对比(专业词汇信息的文本对比、多音字信息的文本对比等),检测文本信息中是否包含多音字以及专业中文词组等。其中,阿拉伯数字、英文字符、多音字、专业中文词组等都是需要进行一定转换的文本,也即目标文本。文本信息中目标文本不一定是唯一的,一个文本信息中可能包含多个、多种目标文本,其包含的目标文本的种类和数量与文本信息本身有关。文本检索模块13通过检索出文本信息中的阿拉伯数字、英文字符、多音字、专业中文词组来为后续文本编码模块的转换工作做准备。

在本实施例中,文本编码模块14主要通过结合文本信息中目标文本的上下文信息以及知识库中记载的数据来将文本信息中的目标文本转换成后续语音转换模块15可识别的语句。

在本实施例中,文本编码模块14对文本信息中的目标文本进行一定的转换的具体体现形式为:对文本信息中的目标文本添加对应标识、替换文本信息中的目标文本等。在此基础上,经过目标文本转换后的文本信息输入至语音转换模块15中,即可得到更为准确的语音。

其中,文本编码模块14编码前后的信息可如表1所示:

表1文本编码模块的编码规则表

在上述表1中,目标文本为专业中文词组时,本实施例为目标文本添加了相应的标识实现了目标文本的转换。目标文本为阿拉伯数字和英文字符时,本实施例对目标文本进行替换来实现目标文本的转换。

在本实施例中,语音转换模块15主要用于解析文本编码模块15输出的文本信息,以实现语音输出。其可以直接基于现有的语音转化引擎实现,例如微软的TTS(Text ToSpeech,从文本到语音)引擎,本实施例不对此做具体限定。

从以上描述可知,区别于现有技术,本发明实施例设置了知识库来存储多音字信息以及各个行业的专业词汇信息,在此基础上,本发明实施例还设置了文本检索模块和文本编码模块,该文本检索模块可通过扫描用户输入的文本信息本身发现需要着重处理的目标文本,比如,阿拉伯数字、英文字符等。也可以在知识库中检索发现那需要着重处理的目标文本,比如多音字,专业中文词组等。文本检索模块确定出前述文本信息中的目标文本后,文本编码模块可对文本信息中的目标文本进行一定的格式转换,进行格式转换后的目标文本经语音转换模块转换语音后,即可得到更为准确的语音输出。也就是说,本发明实施例通过设置知识库、文本检索模块、文本编码模块等有效解决了现有技术中在部分场景下语音转换引擎转换不准的问题,提高了语音转换的准确度。

在一种可能的实现方式中,目标文本为多音字时,文本编码模块具体用于通过以下方式对目标文本进行转换:

根据目标文本在文本信息中的上下文信息确定目标文本的所属场景/行业。根据所属场景/行业在知识库中目标文本对应的多音字信息中获取目标文本的实际读音,基于实际读音对目标文本添加读音标识。

在本实施例中,目标文本为多音字时,可根据文本信息中该目标文本的上下文信息来确定目标文本的所属场景/行业,根据所属场景/行业去确定目标文本的实际读音。

在本实施例中,若用户输入的文本信息中包含行业信息,也可直接根据行业信息去确定目标文本对应的实际读音。

在本实施例中,可通过文本音调表识别的方式来为目标文本添加读音标识。

在一种可能的实现方式中,目标文本为阿拉伯数字时,文本编码模块具体用于通过以下方式对目标文本进行转换:

根据目标文本在文本信息中的上下文信息确定目标文本的数字读音逻辑。其中,数字读音逻辑指的是读单个数字或读组合数字。

若目标文本对应的数字读音逻辑为读单个数字,则在目标文本的每个数字后添加空格标识。

在本实施例中,若目标文本对应的数字读音逻辑为读组合数字,则无需对目标文本做转换处理(语音转换模块通常会默认读组合数字)。

在一种可能的实现方式中,知识库还包括各行业的数字处理逻辑。目标文本为阿拉伯数字时,文本编码模块具体用于通过以下方式确定目标文本的数字读音逻辑:

根据目标文本在文本信息中的上下文信息确定目标文本的所属行业,从知识库中获取所属行业对应的数字读音逻辑。

在本实施例中,可根据目标文本在文本信息中的上下文信息确定目标文本所属的行业,进而确定该行业内的数字读音逻辑。

在一种可能的实现方式中,知识库还包括专业词汇信息对应的文字处理逻辑。目标文本为专业中文词组时,文本编码模块具体用于通过以下方式对目标文本进行转换:

从知识库中获取目标文本中每个单词对应的文字处理逻辑。其中,文字处理逻辑包括停顿或重读。

若目标文本中某个单词对应的文字处理逻辑为停顿,则在该单词后添加空格标识。若目标文本中某个单词对应的文字处理逻辑为重读,则在该单词后添加重读标识。

在本实施例中,文字处理逻辑还可以包含连读、分开读等,相应的,进行目标文本转换时在单词后添加对应标识即可。

在一种可能的实现方式中,目标文本为英文字符时,文本编码模块具体用于通过以下方式对目标文本进行转换:

根据知识库存储的专业词汇信息判断目标文本是否为单位或者专业英文词组。若目标文本为单位或者专业英文词组,则根据知识库存储的专业词汇信息将目标文本替换为对应的中文文本。

在本实施例中,若目标文本为英文字符,则可在知识库中检索该英文字符是否为专业的单位或者专业英文词组,如果是的话,则将该目标文本转换为对应的中文文本,以更好地实现后续的语音转换。

综合上述几个实施例,文本编码模块的转换流图可如图2所示。文本编码模块通过图示方式对专业中文词组、多音字、阿拉伯数字、英文字符进行转换后,生成转换后的目标文本。

在一种可能的实现方式中,语音引擎系统还包括:

校验转换模块、知识库校验模块。

校验转换模块用于接收用户反馈的错误信息。其中,错误信息指的是用户发现语音转换模块转换的语音错误时所触发的信息。

知识库校验模块响应于错误信息,用于根据错误信息生成对应的修正数据,将修正数据更新至知识库。

在本实施例中,为了保证语音转换的准确性,本实施例设置了自学习的知识库更新方式,也即通过校验转换模块和知识库校验模块来更新知识库中的数据。具体的,校验转换模块用于接收用户的人工干预,也即接收用户反馈的错误信息,并将该错误信息发送至知识库校验模块。

在本实施例中,知识库校验模块可根据该错误信息去知识库中查找比对,检测对应的知识库数据是否发生错误,若对应的知识库数据存在错误,则根据用户反馈的错误信息或者根据从网络上获取的相关数据自动生成修正数据,将该修正数据更新至知识库。

在一种可能的实现方式中,语音引擎系统还包括:

知识库存盘模块。知识库校验模块通过知识库存盘模块将修正数据更新至知识库。

在本实施例中,可设置知识库存盘模块来管理知识库中的数据。

在一种可能的实现方式中,语音引擎系统还包括:知识库录入模块。

知识库录入模块用于接收用户输入的知识库数据或从网络上自动获取知识库数据,并通过知识库存盘模块将知识库数据存储至知识库。

在本实施例中,可通过人工输入或者网络爬虫的方式来获取知识库中的数据,以实现知识库的不断更新。

在一种可能的实现方式中,语音引擎系统还包括:

知识库缓存模块。

知识库缓存模块用于存储知识库中使用频次大于预设频次的数据、和/或存储知识库中最近使用过的数据。

文本检索模块通过知识库缓存模块与知识库交互。

在本实施例中,文本编码模块也可通过知识库缓存模块与知识库进行交互。具体的,在其他模块从知识库中查询数据时,可首先查询知识库缓存模块,若在知识库缓存模块中未查询到相关数据,则再去知识库中进行数据查询。

在本实施例中,还可根据其他模块对知识库的查询记录来定时更新知识库缓存模块中的缓存数据,以提高其他模块的数据查询效率。其中,前述其他模块指的是语音引擎系统中除知识库外的其他模块。

综合以上实施例,在一种可能的实现方式中,可参考图3,语音引擎系统可包括:知识库录入模块、知识库存盘模块、知识库、文本输入模块、文本检索模块、文本编码模块、语音转换模块、校验转换模块、知识库校验模块,在此基础上,可通过上述几个模块的相互协同实现更为准确地语音转换。

以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

技术分类

06120115938697