比较 – 如何比较单词发音?

这是我的个人项目,我不知道从哪里开始,因为它超出了我的舒适区.

我知道有一些语言学习软件允许用户录制他或她的声音,并将该声音与所述语言的母语人士进行比较.

我的问题是,如何实现这一目标?

我的意思是,如何比较用户和母语者之间的发音?

最佳答案
如果您正在寻找相对简单的东西,您可以简单地计算录制的MFCC(http://en.wikipedia.org/wiki/Mel-frequency_cepstrum),然后查看简单的内容,例如录制和该单词的平均系数由母语人士发音. MFCC将音频转换为欧几里德距离与感知差异更紧密对应的空间.

当然,有几个可能的问题:

>对齐两个录音,使系数匹配.要解决这个问题,您可以查看系数的最大互相关,而不是简单的相关性,这样您就可以免费获得自动“最佳对齐”.此外,您可能必须剪掉录音的末尾,因此只有该单词的实际发音仍保留在录音中.
> MFCC映射到感知空间,但可能与口音不准确性不太一致.您也许可以尝试解决这个问题,而不是将其与“理想”发音进行比较,将其与几种不同类型的错误发音的平均值进行比较,并查看它最接近的模型.
>即使是好的重音词也会与理想的“距离”平均.您必须考虑到这一点,并将输入的距离与“相对”良好距离进行比较.
>相关性可能不是比较两种声音的相对相似性的最佳方式.试验许多不同的指标…尝试不同的L ^ p规范:(http://en.wikipedia.org/wiki/Lp_space),或尝试以不同的方式权衡不同的MFCC(如果我记得,即使在MFCC被采取后虽然它们都应该具有相同的感知“重量”,但是中间的那些对于我们感知声音的方式仍然比高或低更重要.)
>声音中可能存在声音的某些部分,其中声音对于重音的质量更重要.也许瞬态检测找到那些位置并将它们标记为更重要将是好的.如果你有一大堆“好发音”和“坏发音”的例子,你可能会自动提取这些位置.

同样,最后,您将了解这些选项的哪种组合效果最佳的唯一方法是通过测试.

转载注明原文:比较 – 如何比较单词发音? - 代码日志