声纹识别概述

article/2025/8/20 7:37:13

转载自https://blog.csdn.net/weixin_44278406/article/details/103787143

声纹识别绪论

前言

指纹信息、人脸信息和声纹(voice-print)信息作为人体固有的生物信息,是智能电子设备私有化部署及辅助辨认个体的媒介。目前,指纹和(3D)人脸作为智能电子设备解锁信息已经成功商用,典型的如智能手机、人脸打卡系统等。声纹因为其变化性较前两者强,如感冒和外界环境声音干扰,商用化步伐不如前两者。据悉,目前声纹满足安全性级别、作为个体生物信息解锁和认证媒介的应用是在金融领域——由中国建设银行、清华大学、得意音通等起草的金融行业标准由中国人民银行正式发布并实施;该标准是我国金融行业第一个生物特征识别技术标准。除金融领域,声纹识别更多地应用于刑侦破案、罪犯跟踪、国防监听等领域。

本系列博文旨在回顾声纹发展历程,介绍声纹识别基本算法,希望为大家提供些许帮助。

声纹识别算法

声纹识别,又称说话人识别(speaker recognition),是从某段语音中识别出说话人身份的过程。与指纹类似,每个人说话过程中蕴含的语音特征和发声习惯等几乎是唯一的。与语音识别不同,语音识别是共性识别,即判定说话内容,说话人识别是个性识别,即判定说话人身份。

1. 分类

说话人识别可根据不同任务可分为两类,

  • 说话人辨识(speaker identification):确定一组已知语音样本中,哪一个与输入语音样本最匹配。
  • 说话人确认(speaker verification):从语音样本中确定某人是否是他所声称的那个人。
    在这里插入图片描述
    对于上述两个任务,根据说话内容语音片段(utterance)又可分为两类,
  • 文本相关(text dependent):语音片段只能是特定语句,如iPhone 手机的唤醒词“Hey Siri”。
  • 文本无关(text independent):语音片段的内容不限。

一般来说,文本相关的说话人识别会有较高的识别率,这就是为什么许多手机厂商使用固定的唤醒词做声纹识别。

2. 性能评价标准

  • 对于说话人辨识(SI)系统,其性能的评价标准主要是正确识别率及及前 N 正确率(Top N Correctness)作为评价系统性能的指标。
  • 对于说话人确认(SV)系统,其最重要的两个指标是错误拒绝率(False Reject Rate,FRR)与错误接受率(False Acceptation Rate, FAR),前者是拒绝真实的说话人,又称“拒真率”,后者是接受冒认者而造成的错误,又称“认假率”,两者均与阈值的设定相关。这两种错误率很难都为零且在实际运用情况下,这两种指标是相关的,当FRR降低时,FAR就会升高,安全性就会降低;当FAR降低时,FRR就会升高,用户使用体验就会降低。两种错误率是个跷跷板,实际应用时常常在这两种情况下取一个折衷。

DET(Detection Error Trade-offs Curve)曲线能够较好的反映这两类错误率之间的关系:对声纹(一个特定的生物特征)识别系统,以FAR为横坐标轴,以FRR为纵坐标轴,通过调整其参数得到的FAR与FRR之间关系的曲线图,就是DET曲线。显然DET曲线离原点越近,系统性能越好。在当前的技术不能使得两类错误率同时降为最低的情况下,我们根据具体应用的需要,调节阈值使得两类错误率可以满足实际应用需求。通常,研究者常用等错误率(Equal Error Rate,简称EER)来描述总体性能,等错误率就是在DET曲线上两类错误率相等时所对应的错误率取值,是衡量系统性能的重要参数。DET曲线与EER的取值如下图所例示。
在这里插入图片描述
DET曲线来源于如下过程,
在这里插入图片描述
不同的阈值对应不同的FAR和FRR,实际上要做的事情是根据实际应用场景设定合适的阈值。

3. 说话人识别特征

说话人识别(或确认)经历的特征描述方式是与算法息息相关的,如i-vector代表着i-vector/PLDA算法体系下的特征,d-vector,x-vector代表着深度神经网络算法体系下的特征。

  • 帧级别(Frame-level):一般情况下采用语音识别中的MFCCs(Mel Frequency Cepstral Coefficient) 特征或者其他特征。
  • 语音片段级别(Utterance/speaker-level): 由于我们需要直接判定语音片段,需要片段级别的特征,如GMM supervectors,i-vectors,DNN embeddings(d-vectors,x-vectors)

4. 算法归纳

类型主要算法
文本无关GMM-UBM (D.A. Reynolds, 2000)
GMM-SVM (W.M. Campbell, 2006)
JFA(联合因子分析, P. Kenny, 2007)
i-vector/PLDA (N. Dehak, 2011)
DNN i-vector (Y. Lei, 2014)
Deep Embedding (2017)
x-vectors (Snyder et al, 2018)
GE2E(2017-2019)
文本相关GMM-UBM
HMM-UBM
TMM-UBM (TMM - Tied Mixture Model)
i-vector
DNN-ivector

表格中展现的说话人识别算法包含传统的统计学习方法和深度学习算法,后续篇幅中着重介绍GMM-UBM,i-vector/PLDA和GE2E,因为这三个算法分别代表着统计学分类,声道和信道抽象建模及DNN embedding。

Reference

  1. The University of Edinburgh, Automatic Speech Recognition(ASR)2018-19: Lectures 17
  2. 洪青阳,智能语音技术机器应用(2018春季)- 声纹识别
  3. J Hansen and T Hasan (2015), Speaker Recognition by Machines and Humans: A tutorial review, IEEE Signal Processing Magazine, 32(6): 74-99.
  4. 郑方,李蓝天等,声纹识别技术及其应用现状
  5. Roger Jang (張智星),Audio Signal Processing and Recognition (音訊處理與辨識)-Speaker Recognition

http://chatgpt.dhexx.cn/article/67Ujh7a8.shtml

相关文章

基于Pytorch实现的EcapaTdnn声纹识别模型

前言 本项目使用了EcapaTdnn模型实现的声纹识别,不排除以后会支持更多模型,同时本项目也支持了多种数据预处理方法,损失函数参考了人脸识别项目的做法PaddlePaddle-MobileFaceNets ,使用了ArcFace Loss,ArcFace loss:…

常用应用层协议的报文格式

常见应用层协议的报文格式 1.常用应用程序的端口号2.HTTP的报文格式 1.常用应用程序的端口号 名称应用层协议端口运输层协议说明超文本传输协议HTTP80TCP域名解析系统DNS53UDP/TCP长度超过512字节,使用TCP动态主机配置协议DHCP67/68UDP简单网络管理协议SNMP161/162UDP文件传输…

15-传输层协议和应用层协议

PS:针对上一篇tcp协议中说到的端到端服务,这里我们再通过传输层协议和应用层协议之间的关系来加深端到端服务的学习和理解。 1. 传输层协议和应用层层协议的关系 在应用层,我们知道有很多协议,比如常见的有http,tfp&am…

应用层协议(HTTP协议)

目录 HTTP 简介 URL urlencode&urldecode HTTP请求协议格式 HTTP响应格式 HTTP的常见方法 HTTP状态码 HTTP常见的Header HTTP 简介 HTTP协议(超文本传输协议HyperText Transfer Protocol),它是基于TCP协议的应用层传输协议,简单来说就是客户端和服务…

应用层常见协议——知识点

这里总结了三种常见的应用层协议:HTTP、FTP、SMTP。供自己复习使用,也供大家参考! 一、HTTP协议 1、HTTP简介 —超文本传输协议(Hypertext transfer protocol)。是一种详细规定了浏览器和万维网(WWW World Wide Web)服务器之间互相通信的…

应用层协议

应用层协议定义了什么 应用层协议定义了运行在不同端系统上的应用程序进程如何相互传递消息。特别是定义了: 交换的消息类型,如请求消息和响应消息。 各种消息类型的语法,如消息中的各个字段及其详细描述。 字段的语义,即包含在字段中的信息的…

传输层协议、应用层协议

传输层协议、应用层协议 一、传输层协议 1、传输层概述 (1)传输层的作用 IP层提供点到点的连接 传输层提供端到端的连接 (2)传输层的协议 TCP(Transmission Control Protocol)传输控制协议 可靠的、面向连接的协议;传输效率低 UDP(User Datagram Protocol)用户数据报…

应用层协议和传输层协议

数字是离散的,模拟是连续的,对连续的信号进行采样就会变成数字信号(A/D转换) 在意念传输发明出来之前,计算机之间传输信息,总是需要介质的!要么有线传输,要么无线电波传输。你能接收…

传输层协议和应用层协议及它们之间的关系(端口)

一、传输层的两个协议 1、TCP协议 ①TCP协议的作用:TCP为应用层协议提供可靠传输,发送端按顺序发送,接收端按顺序接收,其间发生的丢包、乱序,TCP会负责其重传和排序,另外TCP还可实现流量空制和拥塞避免等…

基于TCP或UDP协议的应用层协议

TCP和UDP都是传输层协议,上面是应用层,下面是网络层 TCP与UDP区别: TCP(传输控制协议)提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,…

网络:应用层相关协议

应用层位于传输层之上,在OSI七层模型中,分为了三层,从上到下分别是应用层、表示层、会话层。这里对这三层不做具体区分。 应用层是面向用户的一层,主要包括FTP、HTTP、HTTPS、DNS、TELNET等协议。 1、DNS协议 1.1 DNS和域名 DNS…

基于TCP或UDP的应用层协议有哪些?——Linux网络编程

参考博文01:https://blog.csdn.net/Wu000999/article/details/89293717 博文02 https://blog.csdn.net/u014082714/article/details/44994719 这个面试的时候面试官经常会问我,然后就总结了一下。 TCP/IP四层模型(数网传应)&#…

应用层——协议

前言:本章将介绍关于应用层的协议,如下图所示 一、应用协议的概要 利用网络的应用程序有很多,包括Web浏览器、电子邮件、远程登陆、文件传输、网络管理等,能够让这些应用进行通信处理的正是应用协议。 网络应用由不同的用户和软…

常见应用层协议

常见应用层协议 1、超文本传输协议 用于传输浏览器使用的普通文本、超文本、音频和视频等数据。 详细情况请看:超文本传输协议HTTP/HTTPS 2、邮件协议 在互联网中,电子邮件的传送是依靠这些协议完成的。 详细情况请看:邮件协议SMTP/POP3…

《白帽子讲web安全》读书笔记以及读后感

因为本书作于2010年前,书中所使用的部分技术版本已经过于老旧,很多书中提到的攻击方法和绕过思路都已经严重落后,但之所以本书会成为安全界的经典必读书目,就是因为本书所讨论的安全思想尤为精华,对于企业来说的安全建…

《白帽子讲Web安全 -- 纪念版 吴翰清著》读后随笔

《白帽子讲Web安全 – 纪念版 吴翰清著》 该书大多数内容举例大多数是2010年左右的 相隔11年左右, 但是内容并没有被淘汰, 感觉很适合入门, 因为内容详细且比较基础 当然, 这只是对我而言 该书一共 四篇 18章 第一篇世界观安全 - 第一章 我的安全世界观 第一章第一节介绍了…

《白帽子讲web安全》第3章 跨站脚本攻击(XSS)

一、XSS简介 跨站脚本攻击(Cross Site Script):本来缩写是CSS,为了和层叠样式表示(Cascading Style Sheet,CSS)有所区别,所以在安全领域叫做“XSS”。通常指黑客通过“HTML注入”篡改了网页,插入了恶意的脚本,从而在用户浏览网页…

在学习web安全的小白看过来,这本《白帽子讲web安全》强烈推荐,必读!(附PDF)

Web是互联网的核心,是未来云计算和移动互联网的最佳载体,因此Web安全也是互联网公司安全业务中最重要的组成部分。 前排提醒:文末有pdf领取 下面来看看几种常见的web漏洞: 1.XSS跨站脚本攻击 XSS跨站脚本攻击,通常…

白帽子讲Web安全(纪念版)笔记

白帽子讲Web安全(纪念版) 只是笔记,详情请查阅吴翰清老师的《白帽子讲Web安全》 前言 安全工程师的核心竞争力不在于他能拥有多少个0day,掌握多少中安全技术,而是在于他对安全理解的深度,以及由此引申的看…

《白帽子讲Web安全》学习笔记

一、为何要了解Web安全 最近加入新公司后,公司的官网突然被Google标记为了不安全的诈骗网站,一时间我们信息技术部门成为了众矢之的,虽然老官网并不是我们开发的(因为开发老官网的前辈们全都跑路了)。我们花了很多时间…