audio - 不同语言的 PESQ、STOI 分数(语音质量)(非英语)
问题描述
我想使用印地语(非英语语言)的一些音频数据的 PESQ、STOI 分数。对于英语,我可以找到 PESQ 算法/代码并使用相同的。喜欢:- StackOverflow 问题,Python pesq(PyPI) STOI。
我们可以使用相同的印地语或其他语言的音频代码来确定 PESQ/STOI 分数吗?
大多数时候,我发现 PESQ 用于“评估语音质量”(不是特定于英语)。此外,在不同语言的 PESQ 分数比较中,不同语言的 PESQ 分数比较_2 ,他们刚刚比较了不同语言的 PESQ 分数。他们不会为他们使用不同的代码。
但是有一些论文,例如A Methodology for Improvement PESQ accuracy for Chinese Speech ,这写在结论部分:-“在本文中,PESQ 正在被评估以调查是否在计算中考虑了汉语语音的辅音和声调可理解性语音质量。在进行的两个实验中,发现主观可懂度与 PESQ 的计算质量之间的相关性在嘈杂和安静(无噪声)条件下都很低",
在中文环境下 PESQ 的性能评估和准确度升级中,结论部分提到:-“通过大量主观测试数据的结果,反复指出 PESQ 中文的分数被低估了,尽管 Pearson相关系数与异常一样高。当语音服务处于中等质量时,PESQ 给出的分数远低于客户的体验。”
那么对于其他语言(目前我的情况是印地语,印度语),我应该直接使用普通的PESQ方法还是必须修改这个?如果我必须修改相同的内容,那么针对某些印度语言(或英语以外)的任何可用想法都会非常有帮助。
解决方案
不确定您是否还需要建议,只是对您的问题的一些评论:
STOI 是预测(相当)嘈杂语音的可理解性的指标,而不是语音质量(通常在无声中评估)。该方法的基本主观测试是可理解性测试(要求识别的单词/音节/logatoms等)。尽管源代码可以免费下载,但免费使用只允许用于研究目的,不能用于商业工作。这个指标的范围相当有限,我的建议是根本不要使用它。
PESQ (ITU-T P.862) 已过时,大约在 10 年前被取代 - 不要再使用它了!即使是通过销售 PESQ 许可证赚钱的公司也不推荐这种方法。顺便说一句,与 STOI 类似,PESQ 的合法使用受到更多限制:参考代码只能用于测试,例如平台相关的实现。出于学术和商业目的,必须购买许可证!从一开始,尤其是大学,根本没有注意到这一点。
由于 PESQ 的源代码可在 ITU-T 网站上获得,人们将其用于多种目的,而这些目的并非设计用于(例如声学路径或降噪算法)。您现在使用 PESQ 获得的所有结果都无法使用,因为它们不反映当前工业中使用的最新技术。
语音质量预测的继任者和最先进的方法是 POLQA (ITU-T P.863)。它最近更新到 3.0 版。适用与 PESQ 相同的许可方面;由于许多用户滥用了 PESQ 的(相当宽松的)源代码政策,参考实现不再可用,您必须购买有效的许可证。
关于语言依赖性:语音质量预测指标通常可能包括关于语言的固有偏差(但也关于其他可能降级的权重)。通常这源于此类模型的可用训练数据,这些模型以某些语言、某些实验室提供,包含某些退化。因此,您提到的工作中所观察到的变化并不罕见,尤其是对于未知/看不见的退化和语言。特别是对于标准化测试,绝对且强烈不建议以任何方式修改预测算法。考虑这种转变的典型方式是在预测的 MOS 之上应用特定语言或降级的映射函数,即将标准模型输出“转换”为“更好”的规模。
推荐阅读
- python - 错误:[Index(['...'], dtype='object')] 中没有一个在 [index] 中
- java - 带有浮动操作按钮的 Android 导航抽屉
- python - 如何将 pandas 3 列数据框中的列转换为 Python 中的矩阵格式?
- spring - 如何在 JPQL RestRepository 中过滤加入
- rest - 不存在的对象的 GraphQL 查询结果
- go - go protobuf:找不到包“。” 在 github.com/gogo/protobuf/proto 和 m.TimeStamp.MarshalToSizedBuffer 中未定义
- sql - 我真的不明白出了什么问题
- c# - c#中的秒表(统一)
- vim - 获取“按 ENTER 或键入命令继续”,有关如何解决的任何提示?
- c++ - 为什么未删除的文件指向无效的 NTFS MFT 记录?