科技奇迹一站式解锁99种语言语音识别神器whisper
OpenAI 最近推出了一个名为 Whisper 的开源语音识别模型。与 DALLE-2 和 GPT-3 不同,Whisper 是免费且开源的。
——1——
Whisper 语言识别模型:解码声音世界
Whisper 是一种自动语音识别模型,它通过从互联网上收集了超过680,000小时的多语言数据进行训练。据 OpenAI 描述,该模型对口音、背景噪音和专业术语具有极高的鲁棒性。此外,它还支持99种不同的语言转录,并能将这些语言翻译成英语。
Transformer 架构背后的技术奇迹
可以看出 Whisper 的架构是基于标准的Transformer 模型框架,这展示了Transformer 在各种应用中的广泛使用。
其他现有方法通常使用较小、更紧密匹配的音频文本训练集,或依赖广泛但无监督的预先处理。而 Whisper 在庞大而多样化的数据集上进行了训练,没有针对特定数据集微调,因此它不会击败专门研究 LibriSpeech 性能的小型化模型。不过,当我们在许多不同数据集中测量 Whisper 的零样本性能时,我们发现它比那些专注于单一任务的小型化模型更加稳定,并且错误率降低了50%。
Whisper 支持五种不同尺寸的模型
Whisper 支持五种不同的模型尺寸,其中前四个是针对英文版本,我们可以先用一段英文版本的声音来测试一下。
首先,我们需要安装 pytube 与 whisper,pytube 主要用于从 YouTube 下载视频或视频中的声音,而不仅限于下载文件。
然后,我们找到一段英文视频并复制其链接地址,然后插入以下代码:
import pytube
yt = pytube.YouTube("https://www.youtube.com/watch?v=-7E-qFI")
yt.streams.filter(file_extension="mp4").order_by('resolution').desc()
[Stream(1080p at 59.94fps), Stream(720p at 59.94fps), Stream(480p at 29.97fps)]
stream = yt.streams.get_by_itag("22") # 下载720p视频
stream.download()
执行这段代码后,会自动下载该视频文件中的声音部分,这是一个MP4文件,其实只是包含声音内容的一个文件。
这里简单提到 pytube 库,它能够下载 YouTube 视频和声轨。此外,上面的代码仅用于下载声轨,而下面的代码则用于下载完整视频:
import pytube
yt = pytube.YouTube("https://www.youtube.com/watch?v=-LIIf7E-qFI")
streams = yt.streams.filter(file_extension="mp4")
for stream in streams:
print(stream)
这将列出可用的所有配置选项以及相应参数。我们可以根据需要选择不同的配置选项进行下载(例如720p)。
现在,让我们开始使用 Whisper 模型来执行语音识别任务:
model = whisper.load_model(model='medium')
text = model.transcribe('11.mp4')
print(text)
从这个例子中,可以看到 Whisper 提供了一系列大小不同的预训练模式,使得用户能够根据自己的需求选择合适大小。除了提供直接翻译功能之外,whisper 还能理解多样的方言和非标准发音,从而提高其在实际应用场景下的可靠性。这使得它成为一个强大的工具,无论是在教育领域、市场分析还是任何需要理解不同文化背景信息的地方,都能够发挥巨大作用。在未来,不难想象 whistle 将如何被进一步改进,以适应不断变化的人类交流方式,同时保持其作为开放平台对于各界开发者的吸引力。