Montreal Forced Aligner 工具使用

介绍

Montreal Forced Aligner 是一种将语音和转录结果进行强制对齐的工具,使用该工具,你可以获取到语音中每个片段所表示的文本内容。Montreal Forced Aligner 只需一行简单的命令就可以进行语音和转录文本的对齐,且其文档丰富详细,上手使用快速简单。下面对 Montreal Forced Align 的快速上手进行介绍。

安装

最简单的安装方式是使用 conda,这也是官方文档中推荐的安装方式,一行命令即可安装成功。详情请参考官方的安装指南

conda create -n aligner -c conda-forge montreal-forced-aligner

使用

一行命令即可进行对齐。为此,你需要准备好对齐的数据、发音字典以及声学模型。

mfa align [OPTIONS] CORPUS_DIRECTORY DICTIONARY_PATH ACOUSTIC_MODEL_PATH OUTPUT_DIRECTORY

对齐结果的文件(xx.TextGrid)内容形式如下:

File type = "ooTextFile"
Object class = "TextGrid"

xmin = 0 
xmax = 5.472 
tiers? <exists> 
size = 2 
item []: 
    item [1]:
        class = "IntervalTier" 
        name = "words" 
        xmin = 0 
        xmax = 5.472 
        intervals: size = 20 
        intervals [1]:
            xmin = 0.0 
            xmax = 1.01 
            text = "" 
        intervals [2]:
            xmin = 1.01 
            xmax = 1.27 
            text = "the" 
        intervals [3]:
            xmin = 1.27 
            xmax = 1.3 
            text = "" 
        intervals [4]:
            xmin = 1.3 
            xmax = 1.72 
            text = "internet" 
        
    item [2]:
        class = "IntervalTier" 
        name = "phones" 
        xmin = 0 
        xmax = 5.472 
        intervals: size = 44 
        intervals [1]:
            xmin = 0.0 
            xmax = 1.01 
            text = "" 
        intervals [2]:
            xmin = 1.01 
            xmax = 1.11 
            text = "d̪" 
        intervals [3]:
            xmin = 1.11 
            xmax = 1.27 
            text = "ə" 
        intervals [4]:
            xmin = 1.27 
            xmax = 1.3 
            text = "" 

关于 TextGrid 的信息,详情见:https://textgrid.de/web/guest 。你也可以使用 python 中的 aligned-textgrid 库来解析文件。通过解析,可以切分出文本内容出现在原始语音的哪个时间区间,例如在上面的示例中,可以从原始语音中 1.3 至 1.72 区间切分出 internet 的语音片段。

注意事项

  1. 有时候,MFA并没有现成的声学模型,发音字典等,而在MFA中,这两者是语音对齐必不可少的,因此你需要根据你的预料去训练一个声学模型,使用 G2P模型为你的语料生成一个发音字典,你可以在 https://montreal-forced-aligner.readthedocs.io/en/latest/first_steps/index.html# 中找到解决方案。

  2. 在验证你的数据是否满足对齐格式要求时,可能会出现一些 error,可以尝试清除 MFA 在对齐过程中产生的 cache 文件,例如:rm -rf /root/Document/MFA (cache 产生目录)。

  3. 若你要进行对齐的数据不是指定 speaker 的形式,在使用 mfa 进行对齐、验证、训练等操作时,添加 --num_jobs xx —single_speaker 选项,不然后会默认单线程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值