Montreal Forced Aligner(MFA)报错:词典存在无对应声学模型音素如何解决
问题根因
报错核心是你下载的英语声学模型和当前安装的MFA版本不匹配,导致MFA无法读取模型中的音素集,才会出现model phones: set()的空集提示,和词典、本地缓存无关,所以你之前加--clean、重装MFA包都没用。
解决步骤
- 第一步:查看当前安装的MFA版本,执行命令:
mfa --version - 第二步:删除之前下载的不兼容无效模型:
mfa model remove acoustic english - 第三步:根据版本下载对应适配的声学模型:
- 若你用的是MFA 2.x版本,执行下载命令:
mfa download acoustic english_us_arpa - 若你用的是MFA 3.x版本,执行下载命令(注意3.x的下载命令和旧版不同):
mfa model download acoustic english_mfa
- 若你用的是MFA 2.x版本,执行下载命令:
- 第四步:替换对齐命令中的模型名重新运行,以2.x版本为例,命令改为:
mfa align path/to/dataset path/to/lexicon.txt english_us_arpa path/to/output --clean
可选优化(避免词典适配问题)
如果不想自己准备词典,可直接下载MFA官方配套的同版本英语词典,执行命令:mfa model download dictionary english_us_arpa
对齐时直接用词典名代替本地lexicon.txt路径即可,命令示例:mfa align path/to/dataset english_us_arpa english_us_arpa path/to/output --clean
内容的提问来源于stack exchange,提问作者Yanirmr
相关产品推荐
相关产品推荐

