迈向通用听觉人工智能!清华电子系、火山语音携手推出认知导向的听觉大语言模型SALMONN
日前,清华大学电子工程系与火山语音团队携手合作,推出认知导向的开源听觉大语言模型SALMONN (Speech Audio Language Music Open Neural Network)。
大语言模型 SALMONN LOGO
相较于仅仅支持语音输入或非语音音频输入的其他大模型,SALMONN对语音、音频事件、音乐等各类音频输入都具有感知和理解能力,相当于给大语言模型“加了个耳朵”,从而涌现出多语言和跨模态推理等高级能力。本文中涌现能力是指模型训练中没有学习过的跨模态能力。
具体来说,通过给Vicuna 13B大语言模型增加一个基于Whisper Encoder的通用音频编码器,并使用一个融合器对齐音频和文本模态,SALMONN模型就对音频模态具有了直接感知,不再是“缸中之脑”;与先使用API调用“ToolFormer”,将语音或非语音音频输入转为文字,再将文字输入大语言模型的API路线相比,SALMONN可以直接从物理世界获取知识,并对一些复杂的音频场景涌现出完整的理解能力。
此外与传统的语音识别、音频字幕生成等语音和音频处理任务相比,SALMONN利用了大语言模型从海量文本中学习得到的常识和认知能力,实现了一种认知导向的音频感知,大幅提高了模型的通用性和任务的丰富性;另外SALMONN 能够较为准确地听从使用者的文本指令,甚至语音指令。由于该模型只使用了基于文本指令的训练数据,因此听从语音指令也是一种跨模态的涌现能力。
SALMONN 结构示意图
总体而言,目前SALMONN能够胜任英语语音识别、英语到中文的语音翻译、情感识别、音频字幕生成、音乐描述等重要的语音和音频任务,同时又涌现出多种在模型训练中没有专门学习过的多语言和跨模态能力,涵盖非英语语音识别、英语到(中文以外)其他语言的语音翻译、对语音内容的摘要和关键词提取、基于音频的故事生成、音频问答、语音和音频联合推理等任务。
对此,研究团队将上述任务依据难易程度分为三类,并一一提出了Demo进行展现,它们分别是:
-
模型训练中学习过的任务
-
模型训练中没有学习过,但大语言模型能够基于文本输入完成的任务
-
模型训练中没有学习过,需要直接感知音视频的多模态大模型才能完成的任务
第一类:模型训练中学习过的任务
语音识别(Automatic Speech Recognition)
音频样例:
asrhttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/asr.wav
上述语音中的英文语句:But I was also stumbling because I couldn’t look away from these things. (中文翻译为:我也曾跌跌撞撞,因为我无法将目光从这些东西上移开。)
SALMONN运行截图(语音输入)
音频字幕生成(Audio Captioning)
音频样例:
audiocaptionhttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/audiocaption.wav
SALMONN运行截图(音频输入)
SALMONN输出的中文翻译为:音效包括枪声、爆炸声和喊叫声。音效质量高,混音效果好,营造出逼真、身临其境的音频体验。对话清晰易懂,在激烈的战斗场面中,角色们相互呼喊和交流。音乐也有,但没有音效那么突出,增加了场景的整体氛围。
音乐描述(Music Descrption)
音频样例:
musichttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/music.wav
SALMONN运行截图(音乐输入)
SALMONN输出的中文翻译为:音乐是轻快欢快的曲调,节奏稳定。它是在钢琴上演奏的,旋律简单、朗朗上口。
情感识别(Emotion Recognition)
音频样例:
emotionhttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/emotion.wav
SALMONN运行截图(情感识别中的语音输入)
SALMONN输出的中文翻译为:说话人的情绪是失望的。
第二类:模型训练中没有学习过但大语言模型能够基于文本输入完成的任务
英语到其他语言的语音翻译,是一种多语言的涌现能力
音频样例:
asr_en2dehttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/asr_en2de.wav
英语语音输入
语音中的英文语句:But I was also stumbling because I couldn’t look away from these things.
SALMONN运行截图
SALMONN的德语输出:Ich stolperte auch, weil ich nicht aus den Dingen heraussehen konnte. (中文翻译为:我也因为看不清东西而跌跌撞撞。)
语音关键词提取,是一种涌现能力
音频样例:
keywordshttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/keywords.wav
语音输入
语音中的英文语句:He tells us that at this festive season of the year with Christmas and roast beef looming before us similes drawn from eating and its results occur most readily to the mind. (中文翻译为:他告诉我们,在这个圣诞节和烤牛肉迫在眉睫的节日里,人们脑海中最容易浮现出从饮食及其结果中得出的比喻)
SALMONN运行截图
SALMONN输出的关键词:festive season(佳节)、Christmas(圣诞节)、roast beef(烤牛肉)
语音问答是一种涌现能力
音频样例:
spoken_queryhttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/spoken_query.wav
语音中的英文语句:How a rocket engine works? (中文翻译为:火箭发动机是如何工作的?)
SALMONN运行截图
SALMONN 输出的中文翻译为:火箭发动机的工作原理是在燃烧室中燃烧氢气或煤油等燃料,产生的热气通过喷嘴喷出。喷嘴的形状可以将气体引向特定的方向,产生推力推动火箭前进。
燃料通常与液氧等氧化剂混合,发生化学反应,以热量和压力的形式释放出大量能量。燃烧过程产生的热量使燃料汽化,产生的压力将气体推出发动机。
燃烧过程中产生的热气随后被导入喷嘴,喷嘴的形状类似锥体。喷嘴的作用是使气体膨胀,从而提高气体的速度,形成高速气体射流,产生推力。
火箭发动机产生的推力推动火箭前进,使其摆脱地球引力,在太空中飞行。火箭发动机的具体设计,包括使用的燃料、喷嘴的形状和发动机的大小,将决定产生推力的大小和火箭飞行的具体特点。
第三类:模型训练中没有学习过但需要直接感知音视频的多模态大模型才能完成的任务
基于音频的故事生成
音频样例:
audio_story_tellinghttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/audio_story_telling.wav
带有语音的音频场景输入
音频描述:Rustling occurs, ducks quack and water splashes, followed by an adult female and adult male speaking and duck calls being blown. (中文翻译为:发出沙沙声,鸭子嘎嘎叫,水花四溅,随后成年男性和成年女性说话,鸭子发出叫声)
SALMONN运行截图
SALMONN输出的中文翻译为:阳光明媚,鸟语花香,一群孩子在树林里散步。他们正在寻宝,决心尽可能多地找到清单上的物品。
走着走着,他们听到附近的池塘里传来一阵奇怪的声音。听起来像是鸭子在嘎嘎叫,但声音更大,也更持久。孩子们急忙跑到池塘边去调查。
当他们走近池塘时,看到了他们从未见过的东西。一只巨大的鸭子正坐在池塘边,大声地叫着。这只鸭子有一辆汽车那么大,叫声响亮,几英里外都能听到。
孩子们看到这只巨型鸭子都惊呆了。他们以前从未见过这样的东西。他们慢慢靠近鸭子,尽量不惊动它。
当他们走近时,鸭子转过身来对他们说话。"你们好,孩子们,“用低沉洪亮的声音说。"什么风把你们吹到我的池塘来了?” .......
语音指令的音频推理
带语音指令的音频输入
音频样例:
spoken_audio_queryhttps://share-shalong.oss-cn-hangzhou.aliyuncs.com/%E5%AD%97%E8%8A%82%E6%96%87%E7%AB%A0/spoken_audio_query.wav
带语音指令的音频输入
语音中的英文语句:Can you guess where I am right now?(中文翻译为:你能猜出我现在在哪里吗?)
SALMONN运行截图
SALMONN输出的中文翻译:当然,我可以猜猜你现在在哪里。根据背景的枪声,听起来你可能身处战区或危险地区。枪声符合自动武器的声音,如 AK-47 或 M-16。此外,背景中的爆炸声表明,您可能正身处使用炸弹或其他爆炸装置的地点。
在没有更多信息的情况下,很难说得更具体,但根据枪声和爆炸声,你有可能身处战区或战乱国家。也有可能是在犯罪活动或暴力活动猖獗的地方。
希望以上内容对您有所帮助,如果您还有其他问题或需要我提供其他帮助,请告诉我。
整体来看,SALMONN 在三类不同难度的任务上都有较好表现,并涌现出惊艳的音频理解与推理能力,成功打通了音频与文本模态,初步展现出一定的通用听觉人工智能。研究团队将在近期开源 SALMONN v1.0 模型及相关代码,并将在未来持续更新 SALMONN,使大模型能够更好地感知多模态物理世界,为建设开源的通用人工智能添砖加瓦。欢迎大家持续关注!
另附:
Github 仓库:https://github.com/bytedance/SALMONN/
Demo 链接:https://bytedance.github.io/SALMONN/
清华大学电子工程系多媒体信号与智能信息处理实验室在医工交叉和语音处理领域有丰富的研究积淀。实验室的张超研究组成立于2022年,专注于多模态语音语言处理和计算认知神经科学研究。
火山语音团队,面向字节跳动内部各业务线,提供优质的语音AI技术能力以及全栈语音产品解决方案,并通过火山引擎对外提供服务。自 2017 年成立以来,团队专注研发行业领先的 AI 智能语音技术,不断探索AI 与业务场景的高效结合,以实现更大的用户价值。
相关文章:

迈向通用听觉人工智能!清华电子系、火山语音携手推出认知导向的听觉大语言模型SALMONN
日前,清华大学电子工程系与火山语音团队携手合作,推出认知导向的开源听觉大语言模型SALMONN (Speech Audio Language Music Open Neural Network)。 大语言模型 SALMONN LOGO 相较于仅仅支持语音输入或非语音音频输入的其他大模型,SALMONN对…...
NOIP 2015 扫雷(mine)
扫雷(mine) 说明 扫雷游戏是一款十分经典的单机小游戏。在 n行 m 列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会…...
elaticsearch(3)
整合springboot 1.整合依赖 注意依赖版本和安装的版本一致 <properties> <java.version>1.8</java.version> <!-- 统一版本 --> <elasticsearch.version>7.6.1</elasticsearch.version> </properties> 导入elastics…...

DevOps系列文章 之 Gitlab+Docker自动部署SpringBoot
1.环境要求 以下服务器的操作系统均为Centos7 服务器A:Gitlab服务器B:GitlabRunner、Docker、docker-compose、Java1.8、maven3.6.3、git ps:这里可以把服务器B的GitlabRunner、Java1.8、maven3.6.3、git单独提出来,独立部署&a…...

React Native 列表组件基础知识
ScrollView 组件 ScrollView组件是一个容器滚动组件,当容器超出指定宽高时就可以进行滚动交互。 ScrollView组件是一次性渲染所有的 React 子组件,这在性能上是比较差的,所以不建议当列表特别长的时候使用此组件。 接下来列举几个常用的一…...

操作系统的体系结构、内核、虚拟机
🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaweb 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 操作系统结构 一、操作系统体系结构1.1操作系统的内核1.1.…...
【C++】vector的基本用法
vector是动态数组的同义词 一、vector对象带参数构造 1.vector<int>a(a,a5);//左闭右开 2.vector<int>b(n,z);n个z 3.vector<int>c(a);//拷贝 二、动态数组可以整体赋值 vector<int>vec; vector&l…...

SSM——用户、角色、权限操作
1. 数据库与表结构 1.1 用户表 1.1.1 用户表信息描述 users 1.1.2 sql语句 CREATE TABLE users( id varchar2(32) default SYS_GUID() PRIMARY KEY, email VARCHAR2(50) UNIQUE NOT NULL, username VARCHAR2(50), PASSWORD VARCHAR2(50), phoneNum VARCHAR2(20), STATUS INT…...

UI界面设置
文章目录 1. 修改 share.html 内容如下:2. 修改 html 文件格式为 utf-83.保存,运行程序4. 访问页面 1. 修改 share.html 内容如下: <!DOCTYPE html><html> <head><meta charset"utf-8"><title>1v1屏…...

论文学习——PixelSNAIL:An Improved Autoregressive Geenrative Model
文章目录 引言论文翻译Abstract问题 Introduction第一部分问题 第二部分问题 Model Architecture网络结构第一部分问题第二部分问题 Experiments实验问题 Conclusion结论问题 总结参考 引言 这篇文章,是《PixelSNAIL:An Improved Autoregressive Geenrative Model》…...

mySQL 视图 VIEW
简化版的创建视图 create view 视图名 as select col ...coln from 表create view 视图名(依次别名) as select col ...coln from 表create view 视图名 as select col “别名1”,。。。col "别名n" from 表show tab…...

「UG/NX」Block UI 曲线收集器CurveCollector
✨博客主页何曾参静谧的博客📌文章专栏「UG/NX」BlockUI集合📚全部专栏「UG/NX」NX二次开发「UG/NX」BlockUI集合「VS」Visual Studio「QT」QT5程序设计「C/C+&#...

微信小程序:函数节流与函数防抖
目录 问题引入: 定义 解决方案:函数节流 一、案例举例 1.页面展示 2.search.wxml标签展示 3.search.js展示 4.结果展示 二、函数节流解决问题 1.函数 2.实例应用 三、函数防抖解决问题 1.函数 2.原理 3.应用场景 4.应用实例 总结 问题引入…...

Mathematica(42)-计算N个数值的和
比如,我们要用Mathematica求得到下面的式子: 这就需要用到一个函数:Sum 具体地,Sum函数的使用形式如下: 因此,按照公式就可以得到下面的结果: 如果,我们想要将求和号也加进去&#…...

安装和配置 Ansible
安装和配置 Ansible 按照下方所述,在控制节点 control.area12.example.com 上安装和配置 Ansible: 安装所需的软件包 创建名为 /home/curtis/ansible/inventory 的静态清单文件,以满足以下要求: node1 是 dev 主机组的成员 node2 …...

电脑系统重装日记
重装原因 电脑C盘几乎爆炸故重装系统一清二白 此片原因 记录重装过程,强调一些要注意的点,以防日后重装。 重装过程 1.清空电脑文件后重启,电脑冒蓝光,一直蓝屏反复重启,故只能重装系统以解难题。 2.准备一个U盘&…...

通讯协议044——全网独有的OPC HDA知识一之聚合(十二)持续坏值时间
本文简单介绍OPC HDA规范的基本概念,更多通信资源请登录网信智汇(wangxinzhihui.com)。 本节旨在详细说明HDA聚合的要求和性能。其目的是使HDA聚合标准化,以便HDA客户端能够可靠地预测聚合计算的结果并理解其含义。如果用户需要聚合中的自定义功能&…...

Docker:Windows container和Linux container
点击"Switch to Windows containers"菜单时: 提示 然后 实际上是运行:com.docker.admin.exe start-service...
excel提示更新外部引用文件 这个提示能手动禁用
是的,你可以手动禁用 Excel 中的更新外部引用文件的提示。这些步骤可能因 Excel 版本而有所不同,以下是一般的步骤: 1. **打开 Excel**: 2. **进入“选项”**: - 在 Excel 中,点击顶部菜单中的“文件”…...

2023 最新 小丫软件库app开源源码 PHP后端
上传了源码解压之后,在admin/public/config.php修改后台登录账号和密码 后台地址:域名或者ip/admin 然后自己修改配置即可 后端搭建完成,现在导入iapp源码 导入iapp源码之后,修改mian.iyu载入事件的对接api和url就可以打包了 sss …...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...

练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

云原生玩法三问:构建自定义开发环境
云原生玩法三问:构建自定义开发环境 引言 临时运维一个古董项目,无文档,无环境,无交接人,俗称三无。 运行设备的环境老,本地环境版本高,ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...