使用OpenAI的Whisper 模型进行语音识别

语音识别是人工智能中的一个领域,它允许计算机理解人类语音并将其转换为文本。该技术用于 Alexa 和各种聊天机器人应用程序等设备。而我们最常见的就是语音转录,语音转录可以语音转换为文字记录或字幕。

wav2vec2、Conformer 和 Hubert 等最先进模型的最新发展极大地推动了语音识别领域的发展。这些模型采用无需人工标记数据即可从原始音频中学习的技术,从而使它们能够有效地使用未标记语音的大型数据集。它们还被扩展为使用多达 1,000,000 小时的训练数据,远远超过学术监督数据集中使用的传统 1,000 小时,但是以监督方式跨多个数据集和领域预训练的模型已被发现表现出更好的鲁棒性和对持有数据集的泛化,所以执行语音识别等任务仍然需要微调,这限制了它们的全部潜力 。为了解决这个问题OpenAI 开发了 Whisper,一种利用弱监督方法的模型。

本文将解释用于训练的数据集的种类以及模型的训练方法,以及如何使用Whisper

Whisper 模型介绍

使用数据集:

Whisper模型是在68万小时标记音频数据的数据集上训练的,其中包括11.7万小时96种不同语言的演讲和12.5万小时从”任意语言“到英语的翻译数据。该模型利用了互联网生成的文本,这些文本是由其他自动语音识别系统(ASR)生成而不是人类创建的。该数据集还包括一个在VoxLingua107上训练的语言检测器,这是从YouTube视频中提取的短语音片段的集合,并根据视频标题和描述的语言进行标记,并带有额外的步骤来去除误报。

模型:

主要采用的结构是编码器-解码器结构。

重采样:16000 Hz

特征提取方法:使用25毫秒的窗口和10毫秒的步幅计算80通道的log Mel谱图表示。

特征归一化:输入在全局内缩放到-1到1之间,并且在预训练数据集上具有近似为零的平均值。

编码器/解码器:该模型的编码器和解码器采用Transformers。

编码器的过程:

编码器首先使用一个包含两个卷积层(滤波器宽度为3)的词干处理输入表示,使用GELU激活函数。

第二个卷积层的步幅为 2。

然后将正弦位置嵌入添加到词干的输出中,然后应用编码器 Transformer 块。

Transformers使用预激活残差块,编码器的输出使用归一化层进行归一化。

模型框图:

完整文章:

https://avoid.overfit.cn/post/acab33d88ef54228ad50b8a66324659f

posted @ 2023-01-28 10:46  deephub  阅读(448)  评论(0编辑  收藏  举报