从谷歌语音 api 结果中检测流畅度

Sad*_*mud 8 speech-recognition speech google-speech-api

我正在尝试使用谷歌语音(到文本)API 来确定演讲者的流畅度。

到目前为止,我发现 API (betav1) 可以显示说话所需的时间(开始时间和结束时间)。

从维基百科,

口语流利度或口语流利度是对语音的产生和接收的衡量标准,因为流利的说话者必须能够在对话中理解和回应他人。由于“任务压力”,口语的典型特征是看似不流利的品质(例如,支离破碎、停顿、错误的开始、犹豫、重复)。因此,可以通过感知来理解一个人的口语流利程度,以及这些语音质量是否可以被感知为预期和自然(即流利)或不寻常且有问题(即不流利)

我可以看到我们可以从单词的 API 中获取暂停、重复等。但是相对测量可能很困难,因为我找不到任何标准值。

有没有适当的方法来实现这一目标?任何人都可以给出一个指南来检测 google API 的流畅度(或使用某种开源语音库或外部软件的任何其他有效方法)

如果我完全走错了方向,那完全没问题,只需要一个适当的指南来实现该功能。

the*_*nd0 0

这实际上取决于您拥有的数据。我不熟悉谷歌文本转语音 API。但是,根据数据的结构,有一些替代选项可以实现您想要的效果。

  1. 如果数据是结构化的(即单词表和与这些单词的属性相对应的值),您可以运行分类(或回归)算法,例如随机森林或多重逻辑回归来估计流畅度(在连续规模)或流利程度的类别(例如,非常不流利、有些不流利、正常、有些流利、非常流利)。

  2. 如果数据是非结构化的(例如短语的记录) - 那么您可以尝试 keras/tensorflow 中的神经网络,旨在将不同的短语分类为流利或不流利。