当前位置: 首页 > news >正文

chatGPT的耳朵!OpenAI的开源语音识别AI:Whisper !

语音识别是通用人工智能的重要一环!可以说是AI的耳朵!

它可以让机器理解人类的语音,并将其转换为文本或其他形式的输出。

语音识别的应用场景非常广泛,比如智能助理、语音搜索、语音翻译、语音输入等等。

然而,语音识别也面临着很多挑战,比如不同的语言、口音、噪音、专业术语等等,都会影响语音识别的准确性和鲁棒性。

为了解决这些问题,OpenAI开源了语音识别系统: Whisper 

目前在开源网站上已收获5w星!

图片

它号称其英文语音辨识能力已达到人类水准,且它亦支持其它98种语言的自动语音辨识。

图片

 Whisper是什么?

Whisper是由研发出ChatGPT的OpenAI的研究团队开发的,OpenAI的研究成果也经常引起广泛的关注和讨论,比如GPT系列的预训练语言模型、DALL-E的图像生成模型、CLIP的图像分类模型等等。

Whisper的主要作者是Jong Wook Kim,他是OpenAI的研究科学家,他的研究兴趣是语音处理、自然语言处理和机器学习。

Whisper 架构是一种简单的端到端方法,以编码器-解码器 Transformer 的形式实现。输入音频被分成 30 秒的块,转换为对数梅尔频谱图,然后传递到编码器。

图片

解码器经过训练来预测相应的文本标题,并与特殊标记混合在一起,指导单个模型执行语言识别、短语级时间戳、多语言语音转录和英语语音翻译等任务。

图片

 

Whisper的惊艳功能

Whisper的最大特点是它的多语言和多任务能力,它可以同时处理多种语言和多种任务,而不需要针对每种语言或任务单独训练或调整模型。Whisper目前支持的语言有99种,包括英语、中文、日语、法语、德语、西班牙语等等,覆盖了世界上大部分的人口和地区。

Whisper目前支持的任务有四种,分别是:

多语言语音识别(Multilingual Speech Recognition):将语音转换为与语音相同语言的文本,比如将英语语音转换为英语文本,或者将中文语音转换为中文文本。

语音翻译(Speech Translation):将语音从一种语言翻译成另一种语言的文本,比如将英语语音翻译成中文文本,或者将中文语音翻译成英语文本。

语言识别(Language Identification):识别语音中的语言类型,比如判断语音是英语还是中文,或者是其他语言。

语音活动检测(Voice Activity Detection):检测语音中的活动区域,即语音中有人说话的部分,和没有人说话的部分。

Whisper的创新之处在于,它可以让人工智能学习和使用语境,从而提高和人类的沟通质量。Whisper的工作原理是,它会根据人类的输入,生成一个语境向量,这是一个包含了语境信息的数学表示。

然后,它会用这个语境向量来指导人工智能的输出,使其更加符合人类的期望。Whisper的优点是,它可以和任何类型的人工智能模型配合使用,无论是文本,图像,音频,视频,还是其他的形式。Whisper还可以让人工智能适应不同的语境,比如不同的场景,不同的任务,不同的用户,不同的风格,等等。

 Whisper的性能

Whisper的这些功能不仅强大,而且准确和鲁棒。Whisper的英文语音识别的准确率已经达到了人类的水平,甚至在一些嘈杂的环境中,还超过了人类的水平。Whisper的多语言语音识别和语音翻译的准确率也非常高,甚至在一些零样本的情况下,也能够表现出色。

Whisper 的性能因语言而异。下图显示了按语言large-v3和模型的性能细分,使用在 Common Voice 15 和 Fleurs 数据集上评估的large-v2WER(单词错误率)或 CER(字符错误率,以斜体显示)。

与其他模型和数据集相对应的其他 WER/CER 指标可以在论文的附录 D.1、D.2 和 D.4 中找到,以及附录 D 中的 BLEU(双语评估研究)翻译分数。

Whisper的性能不仅在实验室的环境中得到了验证,也在实际的应用场景中得到了证明。Whisper已经被应用在了OpenAI的一些项目中,比如GPT-4的语音输入,CLIP的语音分类等等。

代码地址:

https://github.com/openai/whisper

论文地址:

https://arxiv.org/abs/2212.04356

博文地址:

https://openai.com/research/whisper

相关文章:

chatGPT的耳朵!OpenAI的开源语音识别AI:Whisper !

语音识别是通用人工智能的重要一环!可以说是AI的耳朵! 它可以让机器理解人类的语音,并将其转换为文本或其他形式的输出。 语音识别的应用场景非常广泛,比如智能助理、语音搜索、语音翻译、语音输入等等。 然而,语音…...

C语言冒泡排序

冒泡排序是一种简单的排序算法,通过重复遍历要排序的数列,依次比较两个相邻的元素,如果它们的顺序错误则交换它们。这个过程会重复进行,直到没有相邻的元素需要交换,也就是数列已经排序完成。 冒泡排序的名字来源于其工…...

vue2 elementui 封装一个动态表单复杂组件

封装一个动态表单组件在 Vue 2 和 Element UI 中需要考虑到表单字段的动态添加、删除以及验证等复杂功能。下面是一个简单的例子,展示如何创建一个可以动态添加和删除字段的表单组件。 首先,你需要安装并引入 Element UI: bash 复制 npm in…...

基于智慧灯杆的智慧城市解决方案(2)

功能规划 智慧照明功能 智慧路灯的基本功能仍然是道路照明, 因此对照明功能的智慧化提升是最基本的一项要求。 对道路照明管理进行智慧化提升, 实施智慧照明, 必然将成为智慧城市中道路照明发展的主要方向之一。 智慧照明是集计算机网络技术、 通信技术、 控制技术、 数据…...

「Paraverse平行云」亮相HKSTP OPENHOUSE活动

🚀11月7日,「Paraverse平行云」参展香港科学园HKSTP一年一度的Open House活动! ✨ 众多专家、同行与我们驻足深入交流,探索实时云渲染解决方案LarkXR在在数字人、数字孪生、建筑信息模型(BIM)、3D建模、建筑…...

CubeMX使用教程(5)——定时器PWM输出

本篇我们将利用CubeMX产生频率固定、占空比可调的两路PWM信号输出 例如PA6引脚输出100Hz的PWM;PA7引脚输出500Hz的PWM,双路同时输出 我们还是利用上一章定时器中断的工程进行学习,这样比较方便 首先打开CubeMX对PA6、PA7进行GPIO配置 注&a…...

superset连接Apache Spark SQL(hive)过程中的各种报错解决

superset连接数据库官方文档:Installing Database Drivers | Superset 我们用的是Apache Spark SQL,所以首先需要安装下pyhive #命令既下载了pyhive也下载了它所依赖的其他安装包 pip install pyhive#多个命令也可下载 pip install sasl pip install th…...

Pulsar IO实战

一、引言 今天跟着 官方文档 基于docker玩一把Pulsar IO吧 二、概要 在用户能够轻松的将消息队列跟其他系统(数据库、其他消息系统)一起使用时,消息队列的作用才是最强大的。而Pulsar IO connectors可以让你很轻松的创建、部署以及管理这些跟外部系统的连接&#…...

Linux/Ubuntu/Debian基本命令:文本操作

Linux系统真的超级好用,免费,有很多开源且功能强大的软件。尤其是Ubuntu,真的可以拯救十年前的老电脑。 下面是用于在命令行界面(Terminal)中进行文本操作的键盘快捷键, 这些快捷方式对于高效的文本编辑非常…...

Self-supervised Contextual Keyword and Keyphrase Retrieval with Self-Labelling

文章目录 题目摘要方法数据集实验 题目 通过自我标记进行自我监督的上下文关键字和关键词短语检索 论文地址:https://www.preprints.org/manuscript/201908.0073/v1 项目地址:https://github.com/naister/Keyword-OpenSource-Data 摘要 在本文中&#x…...

新 树莓派4B 温湿度监测 基于debian12的树莓派OS

前言 本文旨在完成通过外接温湿度传感器至树莓派使得树莓派不断记录并存储温湿度数据 这个领域有很多文章,但是部分文章已经缺乏了时效性,在最新系统不适用,本文目前适用 硬件 硬件连接 温湿度传感器常选用DHT11和DHT22,淘宝…...

人工智能入门之旅:从基础知识到实战应用(一)

一、引言 人工智能(Artificial Intelligence,AI)是指利用计算机科学和技术模拟、延伸和扩展人类智能的理论、方法、技术和应用系统的学科。它的目标是使计算机系统具有类似于人类的智能,能够感知环境、学习、推理、规划、解决问题和交流。 在当今社会中,人工智能具有极其…...

GNN/GCN自己学习

一、图的基本组成 V:点(特征) E:边 U:图(全局特征) 二、用途 整合特征(embedding),做重构 三、邻接矩阵 以图像为例,每个像素点周围都有邻居,…...

honle电源维修UV电源控制器维修EVG EPS60

好乐UV电源控制器维修;honle控制器维修;UV电源维修MUC-Steuermodul 2 LΛmpen D-82166 主要维修型号: EVG EPS 60/120、EVG EPS 100、EVG EPS200、EVG EPS 220、EVG EPS 340、EVG EPS40C-HMI、EVG EPS60 HONLE好乐uv电源维修故障包括&#…...

【学习心得】Python好库推荐——websocket-client

websocket-client 是一个在 Python 中广泛使用的库,用于创建 WebSocket 客户端并实现与 WebSocket 服务器的双向通信。更多的关于websocket协议介绍,可以看看我之前写的文章哦! 【学习心得】websocket协议简介并与http协议对比http://t.csdn…...

3.1_8 两级页表

文章目录 3.1_8 两级页表(一)单级页表存在的问题(二)如何解决单级页表的问题?(三)两级页表的原理、地址结构(四)如何实现地址变换(五)需要注意的几…...

【SysBench】sysbench-1.20 命令速查表

1、通用语法 The general command line syntax for sysbench is: sysbench [options]... [testname] [command] testname is an optional name of a built-in test (e.g. fileio, memory, cpu, etc.), or a name of one of the bundled Lua scripts (e.g. oltp_read_only), or…...

neo4j网页无法打开,启动一会儿后自动关闭,查看neo4j status显示Neo4j is not running.

目录 前情提要User limit of inotify watches reached无法访问此网站 前情提要 公司停电,服务器未能幸免,发现无法访问此网站,http://0.0.0.0:7474 在此之前都还好着 User limit of inotify watches reached (base) [rootlocalhost ~]# n…...

一键卸载和安装 nvidia、cuda、cudnn、tensorrt

1. 卸载 nvidia、cuda、cudnn、tensorrt sudo apt purge \"cuda*" \"libcudnn*" \"libnvinfer*" \"libnvonnxparsers*" \"libnvparsers*" \"tensorrt*" \"nvidia*&…...

LeetCode 389. 找不同

文章目录 一、题目二、C 题解 一、题目 给定两个字符串 s 和 t ,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加的字母。 示例 1: 输入:s “abcd”, t “abcde” 输出&…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...

golang循环变量捕获问题​​

在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下: 问题背景 看这个代码片段: fo…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

GitHub 趋势日报 (2025年06月06日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

逻辑回归暴力训练预测金融欺诈

简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...

Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践

前言:本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中,跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南,你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案,并结合内网…...