语音处理手艺的进步,是人工智能改变大众的生活的重要一环。深度进修手艺的兴起,也让这一领域近年来得到了长足的发展。在过往,该领域的主要方法是为分别的任务开发分别的工具包,对于利用者来讲,进修各个工具包须要大量时间,还可能涉及到进修分别的编程语言,熟悉分别的代码风格和标准等。现在,这些任务大多可以用深度进修手艺来实现。
此前,开发者常用的语音工具有 Kaldi、ESPNet、CMU Sphinx、HTK 等,它们各有各的不足之处。以 Kaldi 为例,它依赖大量的脚本语言,而且核心算法利用 C++ 编写,再加上可能须要改变各种神经网络的结构。即便是拥有丰富经验的工程师,在调试的时候也会经历巨大的痛苦。
秉承着让语音开发者更轻松的原则,Yoshua Bengio 团队成员 Mirco Ravanelli 等人曾经开发了一个试图继承 Kaldi 的效率和 PyTorch 的灵活性的开源框架——PyTorch-Kaldi,但据开发成员本人认为「还不够完善」。
所以,在一年多前, Mirco Ravanelli 宣布要打造一款新的一体化语音工具包 SpeechBrain。该项目于近日正式开源,鉴于上述背景,SpeechBrain 诞生的主要宗旨是:够简单、够灵活、对用户友好。
项目地址:https://github.com/speechbrain/speechbrain
作为一个基于 PyTorch 的开源一体化语音工具包,SpeechBrain 可用于开发最新的语音手艺,包括语音识别、说话者识别、语音增强、多麦克风信号处理和语音识别系统等,且拥有相当出色的性能。团队将其特征概况为「易于利用」、「易于定制」、「灵活」、「模块化」等。
对于机器进修研究者来讲,SpeechBrain 可轻松嵌入其他模型,促进语音手艺的相关研究;对于初学者来讲,SpeechBrain 也不难掌握,根据测试,一般开发者仅须要几个小时就能熟悉该工具包的利用。此外,开发团队也发布了很多教程以供参考(https://speechbrain.github.io/tutorial_basics.html)。
总体来讲,SpeechBrain 有以下几大亮点:
开发团队与 HuggingFace 集成一些预训练模型,这些模型具备可运行推理的接口。如果 HuggingFace 模型不可用,团队会提供一个 Google Drive 文件夹,包含所有对应的实验结果;
利用 PyTorch 数据并行或分布式数据并行来进行多 GPU 训练和推理;
混合精度,加快训练速度;
透明且完全可自定义的数据输出和输出 pipeline。SpeechBrain 遵循 PyTorch 数据加载器和数据集样式,利用户能够自定义 I / O pipeline。
快速装置
目前开发者可以通过 PyPI 装置 SpeechBrain,此外还可以利用本地装置来运行实验和修改 / 自定义工具包。
SpeechBrain 支持基于 Linux 的发行版和 macOS(且针对 Windows 用户也提供了相应解决方案:https://github.com/speechbrain/speechbrain/issues/512)。
SpeechBrain 支持 CPU 和 GPU,但对于大多数 recipe 而言,训练期间必须利用 GPU。须要注意的是,必须正确装置 CUDA 才能利用 GPU。
装置教程地址:https://speechbrain.readthedocs.io/en/latest/installation.html
通过 PyPI 装置
创建 Python 环境后,只需输出以下内容即可:
pip install speechbrain
然后可以利用以下命令访问 SpeechBrain:
import speech brain as sb
本地装置
创建 Python 环境后,只需输出以下内容即可:
git clone https://github.com/speechbrain/speechbrain.gitcd speechbrainpip install -r requirements.txtpip install --editable .
然后可以通过以下方式访问 SpeechBrain:
import speechbrain as sb
对 speechbrain 软件包所做的任何修改,将在装置带有 –editable 标志的软件包时自动解释。
SpeechBrain 未附属于任何机构,团队成员来自 Mila 研究所、Nuance、杜比实验室、英伟达、三星、Viadialog 等实验室和企业单位。最初的两位负责人是 Mila 研究所博士后 Mirco Ravanelli 和 Avignon 博士生 Titouan Parcollet。目前,Speechbrain 项目还在完善中,也欢迎更多开发人员加入。
看到这里,Kaldi 会不会感到压力有点大了呢?