【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

谷歌开源监督式说话人分类算法,准确率高达 92.4%

  • 2018-11-13
  • 本文字数:1458 字

    阅读完需:约 5 分钟

谷歌开源监督式说话人分类算法,准确率高达92.4%

AI 前线导读: 说话人分类,即从包含多个说话人声音的音频流中,单独将每个人的音频划分到同一类别下的过程,是语音识别系统的重要部分。通过解决“谁在何时说话”的问题,说话人分类可以应用于许多重要场景,例如理解医疗对话、视频字幕等。


然而,使用监督学习方法训练这些系统具有很大的挑战性。与标准监督分类任务不同,一个强大的分类模型需要能够让新加入的,训练中没有的语音片段产生相关性。重要的是,这限制了线上和离线分类系统的质量。在线系统通常受到的影响更大,因为它们需要实时地分类结果。


更多干货内容请关注微信公众号“AI 前线”(ID:ai-front)



(线上流式音频输入说话人分类。底部轴的不同颜色表示不同的说话人。)


《完全监督说话人分类》一文中,我们描述了一种新模型,能以更有效的方式使用监督式说话人标签。这里的“完全”意味着说话人分类系统中的所有组成部分,包括说话人数量预估,都进行了监督式训练,以便它们可以从可用的标记数据增加中受益。在 NIST SRE 2000 CALLHOME 基准测试中,我们的分类错误率(DER)低至 7.6%,而之前基于聚类的方法错误率为 8.8%,深度神经网络嵌入方法的错误率为 9.9%。


此外,我们的方法基于在线解码实现了较低的错误率,特别适用于实时应用场景。我们开源了本文提到的核心算法,以加速此方向的更多研究。

聚类算法 VS 交织状 RNN

现代说话人分类系统通常基于聚类算法,例如 k 均值或谱聚类。由于这些聚类方法是无监督的,因此无法充分利用数据中可用的监督式说话者标签。此外,在线聚类算法通常在具有流式音频输入的实时说话人分类应用中效果欠佳。我们的模型和常见聚类算法的关键区别在于,我们使用地方法,所有说话人嵌入都是通过参数共享递归神经网络(RNN)建模的,并使用交织在时间域的不同的 RNN 状态区分不同的说话者。


为了解其工作原理,请参见以下示例,其中有四种可能的说话人:蓝色、黄色、粉红色和绿色。这是一个任意的数字,实际上可能还有更多,我们使用了中国餐馆流程(一个典型的 Dirichlet 过程混合模型 )来处理未知数量的说话人。每个说话人以其自己的 RNN 实例(在所有说话人之间共享的公共初始状态)开始,并且在给定来自该说话人的新嵌入的情况下保持更新 RNN 状态。在下面的示例中,蓝色说话人不断更新其 RNN 状态,直到另一个说话人黄色进入。如果蓝色稍后再次说话,它将继续更新其 RNN 状态。(这只是下图中语音段 y7 的可能性之一。如果新的说话人绿色进入,它将以新的 RNN 实例开始。)



(模型的生成过程。颜色表示说话人片段的标签。)


将说话人表示为 RNN 状态使我们能够学习使用 RNN 参数在不同说话人和话语之间共享的高水平知识,这保证了更多标记数据能发挥更大的作用。相比之下,常见的聚类算法几乎总是独立地处理单个发音,因此很难从大量标记数据中受益。


如此,通过时间标记的说话人标签(即知道谁在何时说话),我们可以用标准的随机梯度下降算法训练模型。经过训练的模型可以对系统未听到过的说话人进行分类。此外,在线解码也使其更适用于对延迟敏感的应用程序。

未来计划

尽管该系统使得分类性能大大提高,但我们目前仍在探索许多令人兴奋的方向。首先,我们正在改进此模型,让它可以轻松地集成上下文信息进行离线解码。这可能会进一步降低 DER,并且对延迟不敏感的应用程序更有用。其次,我们计划直接模拟声学特征而不是使用 d 向量。通过这种方法,我们能够以端到端的方式训练整个说话人分类系统。


论文链接:https://arxiv.org/abs/1810.04719


开源算法地址:https://github.com/google/uis-rnn


原文链接:https://ai.googleblog.com/


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2018-11-13 19:441942
用户头像

发布了 42 篇内容, 共 13.6 次阅读, 收获喜欢 53 次。

关注

评论

发布
暂无评论
发现更多内容

监控系统-zabbix快速入门

小铨

监控 zabbix

区块链通证经济——资产流动性的变革

CECBC

资产流动性

WC,误删数据库了,会被开除吗?

Java架构师迁哥

滴滴OCE惊喜福利!

滴滴云

小鼎量化机器人系统开发详情介绍

系统开发咨询1357O98O718

2021年GitHub上爆火的999页Java面试宝典终开源

比伯

Java 编程 架构 面试 程序人生

渣硕试水字节跳动,本以为简历都过不了,123+HR面直接拿到意向书

Java 编程 程序员 架构 面试

SpringBoot-技术专题-启动自动装配过程

洛神灬殇

spring springboot

【实战问题】-- 缓存穿透之布隆过滤器(1)

秦怀杂货店

缓存 布隆过滤器 java;

悖论和直觉

阳龙生

小鼎机器人系统开发功能及源码

系统开发咨询1357O98O718

MySQL-技术专题-使用规范

洛神灬殇

MySQL

mysql实现主主数据库(双机热备)

大奎

周小川:数字货币将是下一代货币研究工作的核心

CECBC

数字货币

数据库与缓存的一致性方案演进

邱学喆

缓存 一致性

Kubernetes Ingress 可视化编辑器

倪朋飞

Kubernetes 网络

数据加密:你应该知道的数仓安全

华为云开发者联盟

数据加密 GaussDB(DWS) 数仓安全 透明加密 加密函数

如何实现一个简易版的 Spring - 如何实现 Setter 注入

mghio

spring 依赖注入

Python OpenCV 图像旋转,取经之旅第 11 天

梦想橡皮擦

3月日更

爽啊,终于又见面了,字节跳动后端社招面试分享

Java架构之路

Java 程序员 架构 面试 编程语言

redis+docker构建主从环境

小铨

redis Docker redis+docker 主从环境

Java-技术专题-Synchronized和lock区别

洛神灬殇

Java

区块链如何助力中小企业解决融资难题

CECBC

区块链

牛链NB系统开发案例源码

系统开发咨询1357O98O718

蚂蚁金服三面Java面试题全解析,这也太难了吧

Java架构之路

Java 程序员 架构 面试 编程语言

AWS CDK的那些事

小铨

AWS AWS CDK

架构师知识笔记1

felix徐

架构实战营

字节跳动5面喜提offer!分享给朋友们面试感受

Java架构之路

Java 程序员 架构 面试 编程语言

Kubernetes 弃用 Docker 后如何切换到 Containerd

倪朋飞

Docker Kubernetes 微服务

Java-技术专题-ConcurrentHashMap读操作分析

洛神灬殇

Java ConcurrentHashMap

巩固知识体系!应聘高级Android工程师历程感言,面试建议

欢喜学安卓

android 程序员 面试 移动开发

谷歌开源监督式说话人分类算法,准确率高达92.4%_AI&大模型_Google AI_InfoQ精选文章