写点什么

谷歌开源框架 FUSS,让声音分离不再成为难题

  • 2020-04-22
  • 本文字数:1559 字

    阅读完需:约 5 分钟

谷歌开源框架FUSS,让声音分离不再成为难题

近日,谷歌研究团队在其开源博客上发布了一个免费的通用声音分离数据集,即 FUSS。这个数据集将被当作 IEEE 声音事件检测和分离任务网络挑战竞赛的基准,并有助于将来自其他机器学习领域的新技术快速迭代和应用到对声音分离的科研上。


近日,我们很高兴地宣布发布 FUSS——即免费的通用声音分离数据集(Free Universal Sound Separation)。


通常录制的音频可能会包含多种不同的声源。通用声音分离能力是指,无论音频中包含何种类型的声音,都可以将这样的混合音频按其组成分解为不同声音。在此方法问世之前,声音分离的工作更多关注于把混合音频分解成少量指定类型的声音,如“语音”与“非语音”,或分解成同一类型声音的不同实例,如 1 号发言者与 2 号发言者。而且,通常在这样的声音分解工作中,混合音频中的声音数量也是被假定为先验的,即事先知晓的。然而,这次发布的 FUSS 数据集将关注点转移到解决更通用的问题上,即将数量可变的任意声音从混合音频中逐一分离。


在这个领域,训练模型一个需要克服的主要障碍是,即使有高质量的混合音频录音,用基准真相(ground truth)来对这些录音进行数据标注也并不是一件容易的事情。高质量的仿真是克服这一限制的一种解决方法。为了获得良好的仿真效果,需要一组多样化的各式各样的声音、一个逼真的房间模拟器,以及将这些元素混合在一起的代码,以求实现逼真的、多源的、多种类型的音频,并将之用基准真相进行标注。使用新发布的 FUSS 数据集,我们就能实现拥有这三个特征的音频仿真。


FUSS 依靠的是来自 freesound.org 网站的具有知识共享(Creatuve Cinnibs)许可的音频剪辑。我们团队根据许可类型将这些声音过滤搜索出来,然后使用 FSD50k 的预发布版本,进一步过滤掉那些混合在一起时无法被分离的声音。经过这些过滤之后,有大约 23 个小时的音频,包括 12377 种声音,可以用于混合声音的机器学习。在我们的研究中,其中有 7237 种声音用于训练;2883 种用于验证;2257 种用于评估。使用这些音频剪辑,我们创建了 2 万个训练混合音频、1000 个验证混合音频和 1000 个评估混合音频。


在开源机器学习平台 TensorFlow 上,我们开发出了自己的房间模拟器。在给定声源位置和麦克风位置的条件下,该房间模拟器能够生成一个箱形房间的脉冲响应,且该箱型房间带有频率相关的声音反射特性。作为 FUSS 数据集发布的一部分,我们为每个音频样本都提供了预先计算出来的房间脉冲响应以及混合代码,因此音频方面的研究社区可以直接用这个数据集来模拟新的音频,而无需去运行房间模拟器所要求的海量计算。接下来,我们还将继续的工作可能会包括发布房间模拟器的代码,和扩展房间模拟器功能以处理更丰富的声学特性,比如不同反射性能的材料、非规则的房间形状等等。


最后,我们还发布了一个基于掩码的分离模型,该模型基于一个改进的时域卷积网络(TDCN++)。在评估数据集上,该模型处理 2 ~ 4 个信号源的混合音频时,成功实现了 12.5 dB 的尺度不变信噪比改善(SI-SNRi),同时重建了具有 37.6 dB 绝对尺度不变信噪比的单源混合音频。


可以在这里找到源音频、混响脉冲响应、回响混合音频和由混合代码创建的声音来源,和一个基线模型检查程序的下载。还可以在我们的 github 页面上找到回响、混合音频数据以及用于发布模型训练的所有相关代码(地址:https://github.com/google-research/sound-separation)。


该数据集作为声音事件检测和分离任务的功能组件,还将用于 IEEE 发起的 DCASE 挑战。我们发布的模型将被当作本次 IEEE 网络竞赛的基准,并作为标准检查程序在未来实验中对进展进行展示。


我们希望这个数据集将帮助大家清除新研究的障碍,尤其是有助于未来其他机器学习领域新技术的快速迭代和应对声音分离科研上的挑战上。


原文链接:


https://opensource.googleblog.com/2020/04/free-universal-sound-separation.html


2020-04-22 17:173378

评论 1 条评论

发布
用户头像
AI 心语心愿
2020-04-23 12:23
回复
没有更多了
发现更多内容

20年研发安全积累,5大研发安全能力让软件“天生安全”

华为云开发者联盟

DevOps 安全 DevSecOps 华为云 devcloud

Python异常的这些知识点你都get到了吗?

老猿Python

Python 编程语言 异常处理

CloudIDE:为开发者写代码开启“加速”模式

华为云开发者联盟

开发者 代码 华为云 CloudIDE HDC2021

Rust从0到1-代码组织-路径

rust 路径 代码组织 paths

6 张图带你彻底搞懂分布式事务 XA 模式

阿里巴巴云原生

Java 数据库 云原生 存储

FusionInsight MRS:你的大数据“管家”

华为云开发者联盟

大数据 数据湖 云原生 华为云 FusionInsight MRS

老爷子这代码,看跪了!

why技术

Java

基于区块链技术的去中心化自治组织——核心属性、演进脉络与应用前景

CECBC

区块链

如何快速准备高质量的AI数据?

华为云开发者联盟

AI 数据 华为云 modelarts 数据标注

Java中&、|、&&、||详解

Sakura

4月日更

全球案例 | Dropbox: 在 COVID-19 时代通过 Atlassian 为远程工作提供动力

Atlassian

敏捷 Atlassian Jira 远程工作 Dropbox

BOE(京东方)成都数字医院开诊,投资60亿打造西南智慧医疗创新典范

爱极客侠

RocketMQ 在使用上的一些排坑和优化

AI乔治

Java 架构 分布式 RocketMQ 高并发

面向软件 IT 专业的高校大学生职业规划问卷调查

打工人!

IT 问卷调查 职业生涯规划

南京的春天

小天同学

随笔 4月日更 春天 南京 散文

Java-技术专题-多线程顺序执行的8种方案实现

码界西柚

Java 并发编程 AQS 多线程 JUC

硬核系列 | 手写脚本语言编译器

九叔(高翔龙)

Java 编译器 脚本语言 词法分析器 编译器原理

连续三年入围 Gartner 容器竞争格局,阿里云容器服务新布局首次公开

阿里巴巴云原生

容器 运维 云原生 k8s 边缘计算

全球案例 | Dropbox: 在 COVID-19 时代通过 Atlassian 为远程工作提供动力

Atlassian

DevOps 敏捷 远程办公 Atlassian Jira

近期值得关注的四款工具

彭宏豪95

效率 工具 Mac 4月日更

【Node专题】Buffer理解

南吕

后端 nodejs 4月日更

谁说 Java 不能用来跑 Serverless?

张晓辉

Java Serverless Knative Quarkus

新疆重点人员管控系统搭建,指挥调度系统开发

低功耗深度休眠后无法唤醒、烧录程序,怎么办?(华大半导体HC32L136)

不脱发的程序猿

嵌入式软件 单片机 4月日更 华大半导体 HC32L136

基于MySQL存储的自研消息队列架构设计文档

Geek_2e7dd7

MySQL 死锁套路:一次诡异的批量插入死锁问题分析

AI乔治

Java MySQL 架构

Golang easyjson

escray

学习 极客时间 Go 语言 4月日更

拍立淘创始人潘攀博士为你揭开“以图搜图”的神秘面纱!

博文视点Broadview

应“云”而生的 Java 框架 Quarkus:构建小而快的镜像

张晓辉

Java Docker Serverless CloudNative Quarkus

软件 IT 专业的高校大学生创新创业问卷调查

五分钟学大数据

问卷调查

curl使用

Hex

工具

谷歌开源框架FUSS,让声音分离不再成为难题_行业深度_Google_InfoQ精选文章