自动语音识别模型whisper安装和初探

这篇具有很好参考价值的文章主要介绍了自动语音识别模型whisper安装和初探。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

whisper介绍

whisper是OpenAI 最近发布的语音识别模型。OpenAI 通过从网络上收集了 68 万小时的多语言(98 种语言)和多任务(multitask)监督数据对 Whisper 进行了训练,whisper可以执行多语言语音识别、语音翻译和语言识别。

whisper安装(Windows)

1.CMD命令窗口建立名为whisper的虚拟环境:

conda create -n whisper python==3.8
conda activate whisper

注意:whisper要求python版本为3.8以上,否则会报错
2.虚拟环境中,安装whisper

pip install -U openai-whisper

2.虚拟环境中安装ffmpeg
这里我直接pip install ffmpeg后,在python中无法import ffmpeg,不知道是什么原因
重新安装ffmpeg-python就解决了

pip uninstall ffmpeg
pip uninstall ffmpeg-python
pip install ffmpeg-python

whisper初探

1.根据官网instruction进行测试,其中的audio是我自己保存的一段音频

import whisper

model = whisper.load_model("base")
result = model.transcribe("audio.mp3")
print(result["text"])

结果:
自动语音识别模型whisper安装和初探
发现可以准确进行语音识别,没有问题(但是没有标点符号?)
2.接下来测试instruction中的另一段代码

import whisper

model = whisper.load_model("base")

# load audio and pad/trim it to fit 30 seconds
audio = whisper.load_audio("audio.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)

报错如下图
自动语音识别模型whisper安装和初探
提示需要用gpu跑模型,于是在虚拟环境中安装gpu版本的torch,我的CUDA为11.7版本,python为3.8,选择对应的torch和torchvision进行安装,torch.cuda.is_available() 为True,之后再次运行代码,没有出错。
自动语音识别模型whisper安装和初探
结果发现识别出的只有整个音频中的一小段,这是什么意思?于是我下载了whisper的源代码,看一看调用函数的含义。
我发现在这段代码中,whisper.pad_or_trim是选择了音频前30s的token,之后采用了whisper.log_mel_spectrogram,对这30s的token生成了Log-Mel 频谱图,detect_language函数是用于自动识别这段音频的语言,最后用decode进行了解码。因此,这段代码其实是截取了音频中的前30s片段进行识别而非整段音频。
(1)如果需要对整段音频进行识别,则需要将输入的音频被分割成 30 秒的小段,进行滚动窗口的识别,而这些都已经封装在transcribe中;
(2)如果需要进行实时的转译,whisper本身是不支持实时,也就是说它必须将音频分成30s的片段,但可以通过每秒增量转录音频来构建类似的模型;https://github.com/openai/whisper/discussions/20
(3)如果音频不足30s,pad_or_trim会对token进行padding;
(4)如果不想要以30s为切分的时间间隔,这可能并不支持(?)仅通过修改whisper中的N_MELS、CHUNK_LENGTH等参数无法做到这一点。因为预训练保存的模型参数中,channel为80是固定的。
根据官方给出的解释:时间间隔太短,会缺乏上下文,将会更频繁地断句。很多句子都会失去意义。太长,则模型的复杂性更高。https://github.com/openai/whisper/discussions/1118文章来源地址https://www.toymoban.com/news/detail-417431.html

到了这里,关于自动语音识别模型whisper安装和初探的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 语音识别模型whisper的参数说明

    一、whisper简介: Whisper是一种通用的语音识别模型。它是在各种音频的大型数据集上训练的,也是一个多任务模型,可以执行多语言语音识别、语音翻译和语言识别。 二、whisper的参数 1、-h, --help 查看whisper的参数 2、--model {tiny.en,tiny,base.en,base,small.en,small,medium.en,medium,large-v1

    2024年02月12日
    浏览(39)
  • Whisper OpenAI开源语音识别模型

    Whisper 是一个自动语音识别(ASR,Automatic Speech Recognition)系统,OpenAI 通过从网络上收集了 68 万小时的多语言(98 种语言)和多任务(multitask)监督数据对 Whisper 进行了训练。OpenAI 认为使用这样一个庞大而多样的数据集,可以提高对口音、背景噪音和技术术语的识别能力。除

    2024年02月16日
    浏览(55)
  • Whisper——部署fast-whisper中文语音识别模型

    whisper:https://github.com/openai/whisper/tree/main 参考文章:Whisper OpenAI开源语音识别模型 需要其他版本的可以自己下载:https://huggingface.co/openai 原始中文语音模型: 微调后的中文语音模型: 补下一个: tokenizer.json 模型转换 float16 : int8 :

    2024年01月22日
    浏览(43)
  • 微调Whisper语音识别模型和加速推理

    OpenAI在开源了号称其英文语音辨识能力已达到人类水准的Whisper项目,且它亦支持其它98种语言的自动语音辨识。Whisper所提供的自动语音识与翻译任务,它们能将各种语言的语音变成文本,也能将这些文本翻译成英文。本项目主要的目的是为了对Whisper模型使用Lora进行微调,目

    2024年02月07日
    浏览(45)
  • OpenAI-whisper语音识别模型

    Whisper是一个通用的语音识别模型。它是在不同音频的大型数据集上训练的,也是一个多任务模型,可以执行多语言语音识别、语音翻译和语言识别。 whisper有五种模型尺寸,提供速度和准确性的平衡,其中English-only模型提供了四种选择。下面是可用模型的名称、大致内存需求

    2024年02月09日
    浏览(61)
  • 学习实践-Whisper语音识别模型实战(部署+运行)

    OpenAI的语音识别模型Whisper,Whisper 是一个自动语音识别(ASR,Automatic Speech Recognition)系统,OpenAI 通过从网络上收集了 68 万小时的多语言(98 种语言)和多任务(multitask)监督数据对 Whisper 进行了训练。OpenAI 认为使用这样一个庞大而多样的数据集,可以提高对口音、背景噪音

    2024年02月06日
    浏览(49)
  • 使用OpenAI的Whisper 模型进行语音识别

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

    2024年02月03日
    浏览(62)
  • Linux 中的机器学习:Whisper——自动语音识别系统

    Whisper 是一种自动语音识别 (ASR) 系统,使用从网络收集的 680000 小时多语言和多任务数据进行训练,Whisper 由深度学习和神经网络提供支持,是一种基于 PyTorch 构建的自然语言处理系统,这是免费的开源软件。 我们用 Ubuntu 22.04 LTS 测试了 Whisper,为避免污染您的系统,我们建议

    2024年02月07日
    浏览(39)
  • .Net 使用OpenAI开源语音识别模型Whisper

    .Net 使用OpenAI开源语音识别模型 Whisper Open AI在2022年9月21日开源了号称其英文语音辨识能力已达到人类水准的 Whisper 神经网络,且它亦支持其它98种语言的自动语音辨识。 Whisper系统所提供的自动语音辨识(Automatic Speech Recognition,ASR)模型是被训练来运行语音辨识与翻译任务的

    2024年02月08日
    浏览(55)
  • 实战whisper:本地化部署通用语音识别模型

            Whisper 是一种通用语音识别模型。它是在大量不同音频数据集上进行训练的,也是一个多任务模型,可以执行多语言语音识别、语音翻译和语言识别。         这里呢,我将给出我的一些代码,来帮助你尽快实现【语音转文字】的服务部署。         以下是该A

    2024年01月18日
    浏览(96)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包