Redian新闻
>
微调OpenAI的Whisper自动语音识别(ASR)模型

微调OpenAI的Whisper自动语音识别(ASR)模型

公众号新闻

Whisper是由OpenAI创建的开源自动语音识别(ASR)模型,具有极为强大的开箱即用性能。


它经过了680,000小时的标注音频数据训练,其中117,000小时的训练涵盖了除英语以外的96种语言,这意味着它可以在各种应用中发挥出色的表现。


Whisper的基础版本可在由Graphcore(拟未) IPUs提供支持的Paperspace Gradient Notebook[1]中进行推理运行。


我们有充分理由面向特定用例对Whisper进行微调。语音和词汇是复杂的,而且有时会受以下因素影响,存在一些微妙的差异:



  • 不常见的口语语言

  • 地名和方言

  • 特定领域词汇,如科学、医学和法律名词



如何获得微调Whisper所需的音频数据?


一些组织可能拥有大量可用于微调Whisper的专有音频数据。但对于其他人来说,收集用于微调的音频数据并不是一件轻而易举的小事。


幸运的是,有几个开源的语音识别数据集可供使用,涵盖多种语言。其中最大的包括:


  • Common Voice[2]:涵盖100种语言的16,400小时

  • Multilingual LibriSpeech[3]:7种非英语语言的6,000小时

  • LibriSpeech[4]:1,000小时,仅限英语


还有一些较小的数据集涵盖了更多的语言和方言,例如:


  • VoxPopuli[5]:16种语言的1,800小时

  • Fleurs[6]:每种语言12小时,涵盖102种语言

  • OpenSLR[7]上还有着一些独立的数据集


在我们的Paperspace Gradient Notebook中,我们演示了如何使用OpenSLR的加泰罗尼亚语子集[8]进行微调。


如何在Graphcore IPU上微调Whisper


首先,在Paperspace上运行“Whisper Small Fine Tuning” notebook。


https://ipu.dev/xOe9PK


对于下面的每个代码模块,您可以直接在Paperspace上点击运行该模块,根据需要修改代码/参数。我们会在本文末尾解释如何在Paperspace Gradient Notebooks以外的环境中运行该过程。



安装依赖项




加载数据集


Common Voice数据集包含不同语言中演讲者朗读维基百科文本的录音。🤗 Datasets使我们能够轻松下载和准备训练并评估数据集。


首先,请确保您已经在🤗 Hub上接受了使用条款:mozilla-foundation/common_voice_13_0[9]。一旦您接受了条款,您将拥有数据集的全部访问权限,并能够在本地下载数据。



需要注意的列是:


  • audio:原始音频样本

  • sentence:相应的基准转录。


我们将“path”列删除。



由于Whisper是在16kHz采样的音频上进行预训练的,因此我们必须确保Common Voice样本相应地进行下采样。




准备数据集


我们通过从原始音频输入中提取特征并注入标签来准备数据集,这些标签只是经过一些基本处理的转录。


特征提取由🤗Transformers——WhisperFeatureExtractor提供。在运行模型后将生成的标记解码为文本,我们同样需要一个标记器,WhisperTokenizer。这两者都由WhisperProcessor的实例包装。


最后,我们通过使用在微调过程中将被忽略的值进行填充来预处理标签。这个填充是为了确保向模型提供具有静态形状的张量。我们通过以下数据整理器实时进行这个过程。




定义指标


我们将以“错词率”(WER)来评估微调模型的性能。




加载预训练模型



确保设置了适合语言的标记(如果有的话)以用于生成。我们在配置和生成配置上都设置它们,以确保在生成过程中正确使用。




在IPU上进行Whisper的微调


可以使用IPUSeq2SeqTrainer类直接在IPU上微调模型。


IPUConfig对象指定了模型将如何在IPU之间进行流水线处理。


对于微调,我们将编码器放在两个IPU上,将解码器放在两个IPU上。


对于推理,编码器放在一个IPU上,解码器放在另一个IPU上。



最后,我们指定控制训练过程的参数。



然后,我们只需要将所有这些与我们的数据集一起传递给IPUSeq2SeqTrainer类:



为了衡量WER的改进,在微调之前运行一个评估步骤。



剩下的就是对模型进行微调。微调过程的时间应该在6到18分钟之间,具体取决于使用了多少个副本,并且可以达到约10%的最终WER。



在非Paperspace环境中的IPU上进行微调


要在Paperspace Gradient Notebooks以外的IPU硬件上运行Whisper Small微调演示,您需要启用Poplar SDK。


有关如何启用Poplar SDK的详细信息,请参阅入门指南[10]了解面向您系统的相关细节。您还可以参考Jupyter快速入门指南[11],了解如何设置Jupyter,以便在远程IPU机器上运行此Notebook。


结论


在此篇notebook中,我们演示了如何在IPU上对Whisper进行多语言语音识别和转录的微调。


我们在总共四个IPU上使用了一个副本。为了缩短微调时间,需要多个副本,因此需要更多的IPU。在Paperspace上,您可以使用IPU Pod16或Bow Pod16,两者都有16个IPU。如果您需要在更大的平台上运行,请联系Graphcore寻求帮助。


要查看所有可用的notebook,请查看由IPU驱动的Jupyter Notebook[12],以了解IPU在其他任务上的表现。


如需了解更多,请在Graphcore社区频道[13]上与我们联系。


[1]https://www.graphcore.ai/posts/how-to-use-openais-whisper-for-speech-recognition

[2]https://commonvoice.mozilla.org/en/datasets

[3]https://www.openslr.org/94/

[4]https://www.openslr.org/12

[5]https://aclanthology.org/2021.acl-long.80/

[6]https://arxiv.org/abs/2205.12446

[7]https://www.openslr.org/resources.php

[8]https://www.openslr.org/69/

[9]https://huggingface.co/datasets/mozilla-foundation/common_voice_13_0

[10]https://docs.graphcore.ai/en/latest/getting-started.html#getting-started

[11]https://docs.graphcore.ai/projects/jupyter-notebook-quick-start/en/latest/index.html

[12]https://www.graphcore.ai/ipu-jupyter-notebooks

[13]https://www.graphcore.ai/join-community





获取更多Graphcore资讯,阅读深度技术文章,并与其他创新者们一起交流,请至中国官网graphcore.cn,以及关注Graphcore微信、微博和知乎创新社区。

Graphcore中国官网

Graphcore官方微信

Graphcore微博创新社区

Graphcore知乎创新社区


点击阅读原文,查看英文blog。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
专访丨积家CEO Catherine Rénier:情感联结和艺术表达对腕表也至关重要港中文李教授 :基于深度学习的语音情绪识别算法|收获一作论文与导师推荐信!Hélène Binet:光的哲学家"妈妈让我来自首",7岁男孩在派出所写下"bǎozhèng书"5天4夜内蒙大草原狂想游Meta开源像语言识别系统,模型识别唇语翻译6种语言,本地部署人人可用重磅!OpenAI 开放 GPT-3.5 Turbo 微调,网友:要提示词减少8倍才实惠0.2美元微调就能让ChatGPT彻底破防!普林斯顿、斯坦福发布LLM风险预警:普通用户微调也影响LLM安全性OpenAI突发更新!GPT-3.5正式开放「微调」,人人可打造专属ChatGPT|附最全官方指南Web3+AIoT=DePIN,从OpenAI创始人的Worldcoin项目看DePIN未来发展​稀疏量化表示(SpQR):3到4比特近乎无损压缩大规模语言模型无需点跟踪,克服DragGAN缺陷!中科大联合上海AI Lab发布FreeDrag:可稳定拖动语义内容ChatGPT新增两种交互方式,加入语音对话和图像识别功能chì rè?zhì rè?千词万字“返场赛”来了!【尘封档案】系列之176:“罗汉酒保”命案传OpenA正测试DALL·E 3模型;华为语音助手支持AI大模型;亚马逊组建AI大模型新团队丨AIGC大事日报端五追思Llama2 7B中文魔改PK:「雅意」百万指令集微调 VS「伶荔」扩词+增量预训练+指令微调OpenAI等推出AI语音翻译;百度发布首个量子领域大模型;微软或将用核电供能AI数据中心丨AIGC大事日报DeepSpeed ZeRO++:降低4倍网络通信,显著提高大模型及类ChatGPT模型训练效率GSR Portfolio∣「FancyTech」完成近亿元B轮融资,自研垂直模型, AIGC自动生成商业视频“别(biè)瞎吵吵,只有中国人民解放军才能保卫台湾!”港中文李教授:基于深度学习的语音识别算法研究|收获一作论文与导师推荐信!每通可索赔至少$500!你接过讨人厌的自动语音推销电话吗?遏止自动语音推销电话 最高索赔500元CXO龙头都有什么区别(药明康德,药明生物,凯莱英,泰格医药)OpenAI不藏着了,开放微调功能,不用其他工具就能搞一个你自己的ChatGPT你的DragGAN并不需要点跟踪!中科大和上海AI Lab提出FreeDrag:无需点跟踪即可稳定拖动语义内容《黄浦江》 —— 第8章 江村迹隐(2)基于Kaldi的语音识别引擎后端架构设计后习时代的几个大坑谷歌语音人工智能 AudioPaLM,语音传输瞬间翻译OpenAI开放大模型微调功能!上传自己数据就可定制GPT-3.5Turbo,开发者狂喜传OpenAI秘密训练GPT-5;腾讯混元大模型或本周亮相;首个中英语音多模态LLM开源因未能打击儿童性虐待材料,X(Twitter)在澳洲被罚款61.05万澳元
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。