当前位置: 首页 > news >正文

网站建设与什么专业有关网络推广网上营销

网站建设与什么专业有关,网络推广网上营销,行业网站的优势,西安高端网站制作WeSpeaker正式更新C部署链路,推理引擎使用OnnxRuntime,支持从语音中提取Speaker Embedding信息,代码详见WeSpeaker/runtime[1]。 Libtorch和onnx的选择? Speaker Embedding提取任务流程简单,并且声纹模型(如ResNet\E…

WeSpeaker正式更新C++部署链路,推理引擎使用OnnxRuntime,支持从语音中提取Speaker Embedding信息,代码详见WeSpeaker/runtime[1]

Libtorch和onnx的选择?

  • Speaker Embedding提取任务流程简单,并且声纹模型(如ResNet\ECAPA-TDNN)相对简单,只需简单几行代码即可导出Onnx模型;

  • Libtorch包过大,并且使用过程中需要和pytorch的版本一致,OnnxRuntime相对轻便,只需12M左右;

故采用OnnxRuntime推理引擎,欢迎贡献基于其它推理引擎的代码。

整体概括

整体包含四部分:frontend、speaker、utils、bin

frontend

用于计算fbank特征,该部分代码复用WeNet-frontend[2],支持读取wav文件,计算fbank特征。

speaker

包含主要的推理代码

  1. speaker_model.h: 定义基类 SpeakerModel:便于实现对不同推理引擎的支持。

  2. onnx_speaker_model.cc/h:继承基类SpeakerModel,基于OnnxRuntime推理引擎。

  3. speaker_engine.cc /h: 实现SpeakerEngine类,供外部调用:

int EmbeddingSize();
  • 返回Embedding的大小,用于推理前申请空间。

void ExtractFeature(const int16_t* data, int data_size,std::vector<std::vector<std::vector<float>>>* chunks_feat);
  • 提取fbank特征,如果SamplesPerChunk<=0, 对整个句子提取特征,否则分块计算特征,块大小为SamplesPerChunk。

    • data:输入数据的地址,数据类型为int16

    • data_size: 输入数据的长度

    • chunks_feat: 输出特征,大小为[n, T, D]

void ExtractEmbedding(const int16_t* data, int data_size,std::vector<float>* avg_emb);
  • 输入音频数据,提取Embedding特征。注意:对每个chunk提取embedding,最终取平均输出。

    • data: 输入数据地址,数据类型为int16

    • data_size: 输入数据的长度

    • avg_emb: 输出embedding特征

float CosineSimilarity(const std::vector<float>& emb1,const std::vector<float>& emb2)
  • 计算两个embedding之间的余弦相似度得分。

utils

包含辅助函数,比如WriteToFileReadToFile将embedding信息写入文件或读取文件。

bin

提供两个示例。

1、asv_main.cc: 计算两条语音的相似度

export GLOG_logtostderr=1
export GLOG_v=2
onnx_dir=your_model_dir
./build/bin/asv_main \--enroll_wav wav1_path \--test_wav wav2_path \--threshold 0.5 \--speaker_model_path $onnx_dir/final.onnx

2、extract_emb_main.cc: 批量提取embedding并保存到txt文件中,同时计算RTF

export GLOG_logtostderr=1
export GLOG_v=2
wav_scp=your_test_wav_scp
onnx_dir=your_model_dir
embed_out=your_embedding_txt
./build/bin/extract_emb_main \--wav_list $wav_scp \--result $embed_out \--speaker_model_path $onnx_dir/final.onnx--SamplesPerChunk  80000  # 5s

benchmark

1、RTF

num_threads = 1

SamplesPerChunk = 80000

CPU: Intel(R) Xeon(R) Platinum 8160 CPU @ 2.10GHz

Model[3]ParamsRTF
ECAPA-TDNN (C=512)6.19 M0.018351
ECAPA-TDNN (C=1024)14.65 M0.041724
RepVGG-TINY-A06.26 M0.055117
ResNet-346.63 M0.060735
ResNet-15219.88 M0.179379
ResNet-22123.86 M0.267511
ResNet-29328.69 M0.364011

2、结果一致性

使用voxceleb测试,模型为resnet-34

Modelvox-Ovox-Evox-H
ResNet-34-pt0.8140.9331.679
ResNet-34-onnx0.8140.9331.679

欢迎大家使用WeSpeaker,服务于各种下游任务,也欢迎社区的贡献和宝贵建议!

参考资料

[1] WeSpeaker/runtime: https://github.com/wenet-e2e/wespeaker/tree/master/runtime/onnxruntime

[2] WeNet-frontend: https://github.com/wenet-e2e/wenet/tree/main/runtime/core/frontend

[3] Model: https://github.com/wenet-e2e/wespeaker/blob/master/docs/pretrained.md

http://www.hrbkazy.com/news/20018.html

相关文章:

  • 做网站要会写什么球队世界排名榜
  • 文本中设置网站超链接怎么做seo自学网视频教程
  • 用php做的博客网站有哪些百度词条
  • 厦门免费网站建设八大营销模式有哪几种
  • 做博彩网站犯法吗河南网站优化
  • 推荐成都网站建设百度提交网站收录入口
  • 时时彩网站开发流程seo搜索引擎优化教程
  • 怎么做赌球网站纵横seo
  • 乐清网红手机优化软件下载
  • 合肥网站建设开发电话新媒体平台
  • 柳州网站建设优化推广网站建设定制
  • 网站建设公司源码 asp百度图片搜索入口
  • 国之珍微站个人网站怎么做一个自己的网页
  • 网站建设价格是哪些方面决定的seo技术公司
  • 北京微网站制作价格企业网站的推广方式和手段有哪些
  • seo上海网站推广seo体系
  • 网店运营推广平台沈阳关键词优化价格
  • 加强机关网站建设企业全网推广
  • 咸阳学校网站建设哪家好百度信息流推广教程
  • 有没有可以做游戏的网站吗seo是什么意思 为什么要做seo
  • 怎么做电视台网站如何在百度上发自己的广告?
  • 网站建设全视频教程下载关键词优化公司哪家强
  • 网站建设价格费用企业线上培训课程
  • 网站建设销售怎么做女教师遭网课入侵直播录屏曝光8
  • 新农村建设 网站好f123网站
  • 辽阳网站制作哪个公司网站设计好
  • 网页设计建立站点实验报告查询网 网站查询
  • 矿业公司网站源码酒吧营销用什么软件找客源
  • 做网站从哪里买域名比较好的网站建设网站
  • 快速开发手机网站安仁网络推广