语音识别(ASR)在人机交互方面发挥着重要的作用,可用于:转录、翻译、听写、语音合成、关键字定位、语音日记、语言增强等场景。语音识别基本过程一般包括:分析音频、音频分解、格式转换、文本匹配,但实际的语音识别系统可能会更复杂,并且可能包括其他步骤和功能组件,例如:噪声抑制、声学模型、语言模型和置信度评估等。
多年来,语音识别技术的进步令人印象深刻,我们可以使用语音识别技术实现智能家居、控制汽车实现自动驾驶、与ChatGPT等大模型对接进行对话、智能音箱、居家机器人等等。这些年来也因为自然语言处理、语音识别等技术的发展,诞生了很多优秀的公司,例如:讯飞**。
随着AI技术发展,越来越多的人或组织投入到语音识别相关领域的研究,也促进了该领域的开源项目蓬勃发展。开源项目往往更加易于定制化开发、使用成本更低、透明,并且可私有化部署,数据安全可控。这使得开源语音识别引擎在应用开发中越来越受到技术人员的青睐。
2024年已开始,AI热度不减,以下是几个截止目前比较优秀的开源语音识别引擎。
源码:
官网:
Whisper是Open AI的创意工具,提供了转录和翻译服务。该AI工具于2022年9月发布,是最准确的自动语音识别模型之一。它从市场上的其他工具中脱颖而出,因为它训练了大量的训练数据集:来自互联网的68万小时的音频文件。这种多样化的数据范围提高了该工具的鲁棒性。
用Whisper进行转录必须先安装Python或命令行界面。他提供了五种型号的模型,所有型号都具有不同的大小和功能。这些包括微小、基本、小型、中型和大型。模型越大,转录速度越快。尽管如此,你必须要有一个好的CPU和GPU设备,才能最大限度发挥它们的性能。
与精通LibriSpeech性能(最常见的语音识别基准之一)的模型相比还是有差距,但是,它的零样本性能表现优异,API的错误比相同的模型少50%。
优点:
缺点:
源码:
Project DeepSearch是Mozilla的一个开源语音转文本引擎。此语音转文本命令和库在Mozilla公共许可证(MPL)下发布。它的模型参考的是百度深度语音研究论文,具有端到端的可训练性,并支持多种语言音频转录。它使用Google的TensorFlow进行训练和实现。
从GitHub下载源代码,并将其安装到您的Python中以使用它。该工具已经在英语模型上进行了预训练。但是,您仍然可以使用您的数据训练模型。或者,您可以获得一个预先训练的模型,并使用自定义数据对其进行改进。
优点:
缺点:
源码:
Kaldi是专门为语音识别的研究人员创建的语音识别工具。它是用C++编写的,并在Apache 2.0许可证下发布,这是限制最少的开源许可。与Whisper和DeepSpeech等专注于深度学习的工具不同,Kaldi主要专注于使用老式可靠工具的语音识别模型。这些模型包括隐马尔可夫模型(Hidden Markov Models)、高斯混合模型(Gaussian Mixture Models)和有限状态传感器(Finite State Transducers)。
优点:
缺点:
源码:
SpeechBrain是一个用于促进语音相关技术的研究和开发的开源工具包。它支持各种任务,包括:语音识别、增强、分离、说话日志和麦克风信号处理等。Speechbrain使用PyTorch作为开发框架。开发人员和研究人员可以从Pytorch的生态系统和支持中受益,以构建和训练神经网络。
优点:
缺点:
源码:
Coqui是一个先进的深度学习工具包,非常适合培训和部署stt模型。根据Mozilla公共许可证2.0授权,您可以使用它生成多个转录本,每个转录本都有一个置信度分数。它提供了预先训练的模型以及示例音频文件,您可以使用这些文件来测试引擎并帮助进行进一步的微调。此外,它有非常详细的文档和资源,可以帮助您使用和解决任何出现的问题。
优点:
缺点:
Coqui已经停止维护STT项目,专注于他们的文本到语音工具包。这意味着您可能需要自己解决任何问题。
源码:
Julius是一个古老的语音转文本项目,起源于日本,最早可以追溯到1997年。它是在BSD-3许可证下发布。它主要支持日语ASR,但作为一个独立于语言的程序,该模型可以理解和处理多种语言,包括英语,斯洛文尼亚语,法语,泰语等。转录的准确性在很大程度上取决于您是否拥有正确的语言和声学模型。该项目是用C语言编写的,支持在Windows,Linux,Android和macOS系统中运行。
优点:
缺点:
源码:
Flashlight ASR是由Facebook AI研究团队设计的开源语音识别工具包。它拥有处理大型数据集的能力,速度和效率非常突出。可以将速度归功于其在语言建模、机器翻译和语音合成中仅使用卷积神经网络。
在理想情况下,大多数语音识别引擎使用卷积和递归神经网络来理解和建模语言。然而,递归网络可能需要高计算能力,从而影响引擎的速度。
Flashlight ASR使用C++编译,支持在CPU和GPU上运行。
优点:
缺点:
源码:
PaddleSpeech是个开源的语音转文本工具包,可以在Paddlepaddle平台上使用,该工具在Apache 2.0许可下开源。PaddleSpeech是功能最多的工具包之一,能够执行语音识别、语音到文本转换、关键字定位、翻译和音频分类。它的转录质量非常好,赢得了NAACL2022最佳演示奖。
该语音转文本引擎支持多种语言模型,但优先考虑中文和英文模型。特别是中文模型,具有较为规范的文本和发音,使其适应中文语言的规则。
优点:
缺点:
源码:
OpenSeq2Seq正如它的名字一样,是一个开源的语音转文本工具包,可以帮助训练不同类型的序列到序列模型。该工具包由Nvidia开发,在Apache 2.0许可证下发布,这意味着它对所有人都是免费的。它训练执行转录,翻译,自动语音识别和情感分析任务的语言模型。
可以根据自己的需求,使用默认预训练模型或者训练自己的模型。OpenSeq2Seq在使用多个显卡和计算机时可以达到最佳性能。它在Nvidia驱动的设备上工作得最好。
优点:
缺点:
源码:
官网:
Vosk是最紧凑、最轻量级的语音转文本引擎之一。这个开源工具包可以在多种设备上离线运行,包括:Android、iOS和Raspberry Pi。它支持20多种语言或方言,包括:英语、中文、葡萄牙语、波兰语、德语等。
Vosk提供了小型语言模型,不占用太多空间,理想情况下,大约只有50MB。然而,一些大型模型可以占用高达1.4GB。该工具响应速度快,可以连续将语音转换为文本。
优点:
缺点:
源码:
Athena是一个基于序列到序列的语音转文本开源引擎,在Apache 2.0开源许可下发布。该工具包适合研究人员和开发人员的端到端语音处理需求。模型可以处理的任务包括:自动语音识别(ASR)、语音合成、语音检测和关键字定位等。所有语言模型都基于TensorFlow实现,使更多开发人员可以访问该工具包。
优点:
Cons缺点:
源码:
ESPnet是一个基于Apache 2.0许可证发布的开源语音转文本软件,它提供端到端语音处理功能,涵盖了ASR、翻译、语音合成、增强和日志化等任务。该工具包采用Pytorch作为其深度学习框架,并遵循Kaldi数据处理风格。因此,您可以获得各种语言处理任务的全面配方。该工具支持多语言。可以将其与现成的预训练模型一起使用,或根据需求创建自己的模型。
优点:
缺点:
13.Tensorflow ASR
源码:
Tensorflow ASR是一个使用Tensorflow 2.0作为深度学习框架来实现各种语音处理的语音转文本开源引擎。这个项目在Apache 2.0许可下发布。
Tensorflow最大优势是其准确率,作者声称它几乎是一个“最先进”的模型。它也是维护最好的工具之一,定期更新以改进其功能。例如,该工具包现在还支持在TPU(一种特殊硬件)上进行语言培训。
Tensorflow还支持使用特定的模型,如:Conformer、ContextNet、DeepSpeech2和Jasper。可以根据要处理的任务进行选择。例如,对于一般任务可以考虑DeepSpeech2,但对于精度有较高要求的则使用Conformer。
优点:
缺点:
选型
以上推荐的开源语音识别引擎各有优缺点。如何选择,取决于具体应用需求和可用资源。
如果您需要一个兼容各种设备的轻量级工具包,那么Vosk 以及 Julius比较合适。因为它们可以在Android、iOS、Raspberry Pi上运行,并且还不会占用太多资源。
如果您需要自己训练模型,可以使用Whisper、OpenSeq2Seq、Flashlight ASR或者Athena等工具包。
本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载者并注明出处:https://jmbhsh.com/qitabaihuo/34295.html