您现在的位置是:热点 >>正文
如何三步搭建一套声纹系统
热点508854人已围观
简介...
背景介绍
声纹检索,顾名思义就是说话人识别,通过声音来验证或者识别说话人的声音。声纹识别的关键步骤就是声音向量化,将说话人的声音将其转化成结构化的向量。阿里云AnalyticDB向量版,提供了一套声纹验证检索的解决方案。用户只需要使用简单的几条SQL命令,三步之内就可以搭建一套高精度的声纹检索验证服务。
声纹识别技术
1)声纹检索演示
图1展示了AnalyticDB向量数据库的声纹检索系统的演示界面。为了方便如何用户体验,我们将380个人的声音信息,转化成向量存储在系统中。当前演示系统分成两部分,第一部分是检索部分,用户输入录制好的声音文件或者用户现场进行录音上传声音文件,提交到声纹库进行声音的匹配检索。第二部分是注册部分,用户可以注册上传自己的声音到当前的声纹库里面,方便后期的查询验证。在接下来的章节中,我们分别介绍各个功能。
图1. 声纹演示系统
图2上传一段S0004的测试音频“BAC009S0004W0486.wav”到声纹三步库里面进行检索,可以看到TOP1的结果S0004就会在最上面进行展示。
图2. 查询声音
图3展示了声纹注册系统,用户可以注册自己的声音到后台声纹库里面,方便检索。比方说,用户Hanchao注册自己的声音(只有7s长度),到当前的系统里面来。当前系统支持无文本注册,用户可以说任何话来进行注册。
图3. 注册声音
图4演示用户现场录制声音,上传到系统中,进行检索。比方说,“Hanchao”录制了一段5秒的语音到声纹系统中进行检索。搭建之前注册过“Hanchao”的声音,当前系统可以看到排名第一的声音就是“Hanchao”的声音。
图4. 录制并检索声音
当前对于声纹演示,我们采用的是1:N的演示结果,可以用在会议室中的识别,通过声音可以找到相关的会议说话人。当前,对于身份验证,这种1:1的演示,我们只用限制距离小于550,就可以方便的进行身份验证。
2)应用结构总体设计
阿里云声纹库检索的系统框架的总体架构如图5所示,AnalyticDB(声纹库)负责整个声一套纹检索应用的全部结构化信息(用户注册标识,用户姓名,以及其他的用户信息)和非结构化信息(声音产生的向量)的存储和查询。在查询的过程中,用户通过声纹抽取模型,将声音转成向量,在AnalyticDB中进行查询。系统返还回来相关的用户信息,以及l2向量距离[5]。其中声音抽取模型的训练和测试,我们在下一章进行讲解。
图5. 声纹检索库
3)系统精度
当前演示声纹系统,采用的是GMM-UMB模型抽取的i-vector作为检索向量声纹[3]。另外,我们还训练了精度更高的深度学习声纹识别模型(x-vector[4])。并且,可以针对特定的场景,比方说电话通话场景,手机APP场景,嘈杂噪声场景等相关的场景进行声纹模型训练,详细信息可以加我们的群进行了解。
声纹识别在学术界常用的数据集(Aishall.v1 [1]数据集和TIMIT [2]数据集)上面的(1:N)的准确率(>99.5%,见表1)。
表1. Top 1 精度测试结果
三步搭建一个声纹系统
第一步,系统初始化。
当前系统实现了声音转向量的函数,用户将前端得到的声音通过POST请求,发给阿里云服务系统,选择对应的声纹模型,就可以将声音转成对应的向量。
import requestsimport jsonimport numpy as np# sound: 声音二进制文件。# model_id:模型id。def get_vector(sound, model_id='i-vector'): url = 'http://47.111.21.183:1如何8089/demo/vdb/v1/retrieve' d = {'resource': sound, 'model_id': model_id} r = requests.post(url, data=d) js = json.loads(r.text) return np.array(js['emb'])# 读取用户文件。file = 'xxx.wav'data = f.read()print(get_vector(data))f.close()
在三步初始化的过程中,用户创建相关的用户声纹表。同时,给表的向量列加入向量索引,来加速查询过程。当前声纹模型输出的都是400维的向量,所以索引参数dim设置为400。
--创建用户声纹表CREATE TABLE person_voiceprint_detection_table( id serial primary key, name varchar, voiceprint_feature float4[]);--创建向量索引CREATE INDEX搭建 person_voiceprint_detection_table_idx ON person_voiceprint_detection_table USING ann(voiceprint_feature) WITH(distancemeasure=L2,dim=400,pq_segments=40);
第二步,注册用户声音。
在注册的过程中,注册一个用户,插入一条记录到当前系统中。
--注册用户'张三'到当前的系统中。--通过HTT一套P服务,将声纹转化成相关的向量。INSERT INTO person_voiceprint_detection_table(name, voiceprint_feature)SELECT '张三', array[-0.017,-0.032,...]::float4[])
第三步,检索或验证用户声音。
声纹门锁验证(1:1 验证):在验证系统中,系统会得到用户的标识信息(user_id),在声纹库中计算输入的声音向量和库里该用户的声音向量声纹的距离。一般系统会设置一个距离阈值(threshold=550),如果向量之间的距离大于这个阈值,说明验证失败。如果小于阈值,说明声纹验证成功。
-- 声纹门锁检测(1:1)验证SELECT id, -- 用户id信息 name, -- 用户姓名 l2_distance(voiceprint_feature, ARRAY[-0.017,-0.032,...]::float4[]) AS distance -- 向量距离 FROM person_voice系统print_detection_table -- 用户声音表WHERE distance < threshold -- 通常情况下,threshold为550 AND id = 'user_id' -- 用户要验证的id;
会议声纹检索(1:N 检测):系统通过识别当前讲话人的声音,会返回最相关的注册用户信息。如果没有返回结果,说明当前会议说话人不在声纹库里面。
-- 声纹会议人员识别(1:N)验证SELECT id, -- 用户id信息 name, -- 用如何户姓名 l2_distance(voiceprint_feature, ARRAY[-0.017,-0.032,...]::float4[]) AS distance -- 向量距离 FROM person_voiceprint_detection_table -- 用户声音表WHERE distance < threshold -- 通常情况下,threshold为550 ORDER BY voiceprint_featureARRAY[-0.0三步17,-0.032,...]::float4[] -- 利用向量进行排序LIMIT 1; -- 返回最相似的结果
Tags:
相关文章
阿里云发布飞天智算平台 可将AI训练效率提升11倍
热点8月30日消息,阿里云宣布正式推出全栈智能计算解决方案“飞天智算平台”,并启动两座超大规模智算中心,以公共云和专有云两种模式,为各类科研、公共服务和企业机构提供强大的智能计算服务,可将计算资源利用率提...
【热点】
阅读更多亚马逊推出新服务:为买家创建“虚拟替身”来定制T恤
热点据报道,亚马逊今日推出了一项新服务,允许用户根据自己的尺码来定制T恤衫。 这项服务名为“为你量身定做”(Made For You),购物者可根据多项指标来量身定做一件T恤。确切而言,买家可以根据面料的...
【热点】
阅读更多IDC:中国品牌升腾(Centerm)拿下瘦客户机市场第一,超越长期领先的戴尔和惠普
热点3 月 14 日消息,根据国际数据公司 IDC 全球季度企业客户端设备跟踪报告,2022 年,瘦客户机设备的全球出货量下降了 7.9%,在 2022 年第四季度下降了 24%,这是瘦客户机设备出货量连...
【热点】
阅读更多
热门文章
最新文章
友情链接
- 标签: 康师傅
- https://www.tiktok.com/tag/快排霸屏软件【tg:seogoogle987】,jUT
- https://www.udc.co.uk/index.php?route=product/search&sort=p.price&order=DESC&tag=快排霸屏软件【tg:seogoogle987】,2hi
- https://www.ussalabama.com/?action=CHECK&s=快排霸屏软件【tg:seogoogle987】,GzT
- https://www.pearson.com/en-us/search.html?aq=快排霸屏软件【tg:seogoogle987】,xT5
- https://www.mingwai.edu.hk/?langzh-hant&s=快排霸屏软件【tg:seogoogle987】,VGe
- https://www.metaltix.com/?view=tours&filter=search&q=快排霸屏软件【tg:seogoogle987】,rlb
- https://wwwcp.umes.edu/search/快排霸屏软件【tg:seogoogle987】,Baq
- https://www.soccerbible.com/search?q=快排霸屏软件【tg:seogoogle987】,t4w
- https://www.pearlstonecenter.org/search/快排霸屏软件【tg:seogoogle987】,Oub
- https://www.wou.edu.my/?s=快排霸屏软件【tg:seogoogle987】,hsU
- https://www.wheels24.gr/?action=CHECK&s=快排霸屏软件【tg:seogoogle987】,XY9
- https://www.xbiao.com/search/index?tpf&wd=快排霸屏软件【tg:seogoogle987】,mni
- https://www.wilsonart.com/catalogsearch/result/?action=CHECK&q=快排霸屏软件【tg:seogoogle987】,GeP
- https://search.danawa.com/dsearch.php?query=快排霸屏软件【tg:seogoogle987】ztE
- https://www.usslexington.com/?action=QUERY&s=快排霸屏软件【tg:seogoogle987】,IA2
- https://www.le-trend.com/en/search/=快排霸屏软件【tg:seogoogle987】,CXL
- https://www.localfootdoc.com/?s=快排霸屏软件【tg:seogoogle987】,100
- https://www.sic-info.org/?s=快排霸屏软件【tg:seogoogle987】,RAQ
- https://www.abbreviations.com/快排霸屏软件【tg:seogoogle987】4Fj
- https://www.merchbar.com/search?q=快排霸屏软件【tg:seogoogle987】,2Xk
- https://www.totolink.vn/search/快排霸屏软件【tg:seogoogle987】,xU6
- https://m.shoppinghow.kakao.com/m/search/q/快排霸屏软件【tg:seogoogle987】a9b
- https://blvdseafood.com/?s=快排霸屏软件【tg:seogoogle987】Ymr
- https://www.nonsolocap.it/cap?action=SEARCH&k=快排霸屏软件【tg:seogoogle987】,4M6
- https://www.zutari.com/?s=快排霸屏软件【tg:seogoogle987】,nBM
- https://www.nyif.com/catalogsearch/result/?q=快排霸屏软件【tg:seogoogle987】,OBB
- https://www.tombow.com/search/快排霸屏软件【tg:seogoogle987】,tU8
- https://www.rotherham.gov.uk/site-search/results/?q=快排霸屏软件【tg:seogoogle987】,eUc
- https://www.libros.unam.mx/catalogsearch/result/?cat=37&dir=asc&format=20&lit=20&manufacturer=3230&mode=list&order=year_edition&q=快排霸屏软件【tg:seogoogle987】,2HG
- https://xehay.vn/tim-kiem/=快排霸屏软件【tg:seogoogle987】,lv8
- https://www.remit.co.jp/vi/?s=快排霸屏软件【tg:seogoogle987】ScG
- https://www.supersauna.de/catalogsearch/result/?q=快排霸屏软件【tg:seogoogle987】,v4U
- https://www.searcychamber.com/list/search?AsfnA=DtkTQzs&q=快排霸屏软件【tg:seogoogle987】,JAg
- https://www.rhymezone.com/r/rhyme.cgi?typeofrhyme=oldrel&loc=nojs&Word=快排霸屏软件【tg:seogoogle987】,n9K
- https://www.welshmountainzoo.org/shop/index.php?routeproduct/search&tag=快排霸屏软件【tg:seogoogle987】,Zd0
- https://www.trockenmittel.ch/catalogsearch/result/?iC=ZM3&q=快排霸屏软件【tg:seogoogle987】,PCF
- https://www.realsporting.com/buscador?buscar=快排霸屏软件【tg:seogoogle987】,8PY
- https://www.world-architects.com/en/search?term=快排霸屏软件【tg:seogoogle987】,TEM
- https://www.niaogebiji.com/pc/article/search?keyword=快排霸屏软件【tg:seogoogle987】,CaA
- https://www.navylookout.com/?ID=nSBR6Ivdu6lZg1yr2SDs30Lo5sTs76yJ&s=快排霸屏软件【tg:seogoogle987】,boq
- https://www.yr.no/en/search?q=快排霸屏软件【tg:seogoogle987】,mId
- https://www.tailoy.com.pe/catalogsearch/result/?q=快排霸屏软件【tg:seogoogle987】,P4f
- https://www.universal-music.co.jp/?ID=1sIcckCTeBS8FjzCshAW9w53s8gr691o&s=快排霸屏软件【tg:seogoogle987】,jZC
- https://www.kaliastyle.com/catalogsearch/result/?q=GOOGLE快排霸屏软件【tg:seogoogle987】,SNx
- https://hsmoa.com/search?query=快排霸屏软件【tg:seogoogle987】Tfn
- https://www.wattpad.com/search/快排霸屏软件【tg:seogoogle987】fo6
- https://www.riohondo.edu/?action=QUERY&s=快排霸屏软件【tg:seogoogle987】,hbv
- https://www.youm7.com/Home/Search?allwords=快排霸屏软件【tg:seogoogle987】,qUB
- https://www.remit.co.jp/vi/?s=快排霸屏软件【tg:seogoogle987】,glh
- https://www.goodreads.com/quotes/tag/快排霸屏软件【tg:seogoogle987】HKa