介绍

2022/09/22,OpenAI 公布了语音识别模型 Whisper。 Whisper 是一个具有人类级别的鲁棒性和语音识别准确性的神经网络,它是开源的,所以任何人都可以使用它!
[参考]
官方网站:https://openai.com/blog/whisper
纸:https://cdn.openai.com/papers/whisper.pdf
GitHub:https://github.com/openai/whisper

耳语概述

Whisper 是一种自动语音识别模型,在 680,000 小时的大型数据集上进行训练,提高了其对口音、背景噪声和行话的鲁棒性。该架构被实现为编码器/解码器转换器,其中每 30 秒分割的输入音频被转换为 Log-mel 频谱图并传递给编码器。解码器经过训练以预测相应的文本,从而实现语言识别、短语级时间戳、多语言语音转录和语音翻译成英语等任务。

更多详情请参考官网及论文!您可以看到带有图像的架构解释以及带有 k-pop 音乐的 Whisper 演示! (能准确地听到音乐并将其翻译成英文真是太神奇了……)

当你看到这样的解释时,它会让你想实际使用你的双手,不是吗?让我们一起在 Google Colab 上试用 Whisper!

设置 Google Colab

  1. 创建新笔记本
    单击下面的 URL 以访问 Google Colab。
    https://colab.research.google.com/?hl=ja
    OpenAIの音声認識Whisperがすごいので,Google Colabで試してみた

  2. 从顶部的选项卡中,选择运行时 > 更改运行时类型 > 带硬件加速的 GPU

    OpenAIの音声認識Whisperがすごいので,Google Colabで試してみた
    3.运行代码安装whisper

    ! pip install git+https://github.com/openai/whisper.git
    

    4.模型设置
    这是可用的模型。

    尺寸 参数 纯英文模型 多语言模型 所需显存 相对速度
    微小的 39M 廷恩 微小的 ~1GB ~32 倍
    根据 74M base.en 根据 ~1GB ~16 倍
    小的 244M 小.em 小的 ~2GB ~6x
    中等的 769M 中.en 中等的 ~5GB ~2x
    大的 1550M 不适用 大的 ~10GB ~1x

    这一次,让我们尝试基本模型。

    import whisper
    model = whisper.load_model("base")
    

    导入 Whisper 以加载基础模型。完成以下进度条后,继续下一步。

    The cache for model files in Transformers v4.22.0 has been updated. Migrating your old cache. This is a one-time only operation. You can interrupt this and resume the migration later on by calling `transformers.utils.move_cache()`.
    Moving 0 files to the new cache system
    0/0 [00:00<?, ?it/s]
    100%|███████████████████████████████████████| 139M/139M [00:03<00:00, 46.9MiB/s]
    

    接下来,执行以下代码来检查模型使用的设备。

    model.device
    

    然后您可以确认您在 google colab 上使用 cuda,如下所示

    device(type='cuda', index=0)
    

    用于语音识别的语音数据

    这是这次使用的音频数据。

    3A网络 日常对话可以拉得更近!日语会话中高级语音
    https://www.3anet.co.jp/np/resrcs/333020

    请从这里下载音频数据。
    完成后,将光标移动到 google colab 的 content 文件夹,点击右侧出现的 :(三个点)上传音频数据。这次我把数据001.mp3上传到了content文件夹。
    OpenAIの音声認識Whisperがすごいので,Google Colabで試してみた

    接下来,执行以下代码。

    from IPython.display import Audio
    Audio("/content/001.mp3")
    

    然后,您可以播放音频数据,如下图所示。
    OpenAIの音声認識Whisperがすごいので,Google Colabで試してみた

    确认语音数据可以在google colab上使用后,我们就实际进行语音识别了!

    使用耳语进行语音识别

    对之前的 001.mp3 数据执行以下代码。

    # load audio and pad/trim it to fit 30 seconds
    audio = whisper.load_audio("/content/001.mp3")
    audio = whisper.pad_or_trim(audio)
    
    # make log-Mel spectrogram and move to the same device as the model
    mel = whisper.log_mel_spectrogram(audio).to(model.device)
    
    # detect the spoken language
    _, probs = model.detect_language(mel)
    print(f"Detected language: {max(probs, key=probs.get)}")
    
    # decode the audio
    options = whisper.DecodingOptions()
    result = whisper.decode(model, mel, options)
    
    # print the recognized text
    print(result.text)
    

    然后,转录在大约 15 秒内完成。结果如下所示。由于 Whisper 对长达 30 秒的剪辑执行语音识别,因此读取 001.mp3 中 56 秒数据中的 30 秒。

    Detected language: ja
    こんにちは。シェアハウスコルサってここですか?もしかして、4人目の10人の人?はい、吉田ゆりです。よろしくお願いします。思ったよりいいところですね、ここ。そうでしょう。僕、ちょうです。やっときた。ゆり、今何時だと思ってる?ごめんごめん、スティーブ。ついにどねしちゃって。
    

    并排检查实际文本。

    你好。共享之家 Corsa 在哪里?
    会不会是第四个“居民”?
    是的,我是吉田由里。谢谢你。这个地方比你想象的要好。
    你不。我是曹
    它终于来了。尤里,你觉得现在几点?
    对不起,史蒂夫。我不小心“睡了两次”。

    精度是惊人的。语音识别几乎是完美的。此外,可以自动区分日语和语言。

    我想完成这一次!如果您阅读了这篇文章,请自己尝试一下!


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308626748.html

相关文章:

  • 2021-12-04
  • 2022-01-18
  • 2021-04-02
  • 2021-06-03
  • 2021-12-04
  • 2021-06-05
  • 2021-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2023-02-09
  • 2023-02-27
  • 2021-07-27
  • 2021-12-04
相关资源
相似解决方案