我试图为一种特定于特定领域的本地语言构建一个语音到文本系统。虽然使用CMUSphinx来达到这个目的。对于一种不常见的语言,正如我首先理解的那样,你需要建立一本语音词典,其中包括可能出现的一组单词的英文音译:
uniocode word -> english transliteration前:
xxxx -> ah ty re see我的问题是,我们需要手动创建这个音译吗?遇到自由人2,这似乎对英语很好。我怎样才能对一种新语言做同样的事情呢?
发布于 2016-04-15 10:58:52
CMUSphinx教程中介绍了构建字典的可能方法:
http://cmusphinx.sourceforge.net/wiki/tutorialdict
有各种工具可以帮助您扩展现有的字典,用于生词,或者从头开始构建新字典。如果您的语言已经有了字典,建议使用它,因为它是经过精心调整以获得最佳性能的。如果您开始使用一种新的语言,您需要考虑各种减少和协同表达的效果。它们使得很难创建准确的规则来将文本转换为声音。然而,实践表明,即使是朴素的转换也能产生很好的语音识别效果。例如,许多开发人员成功地用简单的基于图形的合成创建了ASR,其中每个字母只是映射到自身,而不是对应的电话。
对于大多数语言来说,您需要使用专门的字素到音素(g2p)代码来进行转换,使用机器学习方法和现有的小型数据库。现在,最精确的g2p工具是语音词典和后继词g2p。
还请注意,几乎每个TTS包都包含G2P代码。例如,您可以使用来自FreeTTS、OpenMary或es匹克的FreeTTS代码。
请注意,如果您使用TTS,您经常需要做电话转换。TTS电话网通常比ASR所需的更广泛。但是,TTS工具有很大的优势,因为它们通常比简单的G2P包含更多需要的功能。例如,他们通过将数字和缩写转换成口头格式来进行标记化。
https://stackoverflow.com/questions/36645272
复制相似问题