位置: IT常识 - 正文

深入理解TDNN(Time Delay Neural Network)——兼谈x-vector网络结构(深入理解linux内核)

编辑:rootadmin
深入理解TDNN(Time Delay Neural Network)——兼谈x-vector网络结构 概述TDNN(Time Delay Neural Network,时延神经网络)是用于处理序列数据的,比如:一段语音、一段文本将TDNN和统计池化(Statistics Pooling)结合起来,正如x-vector的网络结构,可以处理任意长度的序列TDNN出自Phoneme recognition using time-delay neural networksx-vector出自X-Vectors: Robust DNN Embeddings for Speaker Recognition此外,TDNN还演化成了ECAPA-TDNN,而ECAPA-TDNN则是当前说话人识别领域,在VoxCeleb1数据集的三个测试集VoxCeleb1 (cleaned)、VoxCeleb1-H (cleaned)、VoxCeleb1-E (cleaned)上的最强模型,因此学习TDNN还是很有必要的x-vector的网络结构x-vector是用于文本无关的说话人识别的,因此需要处理任意长度的序列,其网络结构如下图所示: 上图的迷惑性其实非常大,有必要好好讲解一下,现在我给出从frame1到frame4层(frame5与frame4本质上是一样的,只不过卷积核数量不同)的可视化结果 输入:每个特征图表示一帧,特征图的通道数为24,表示一帧的特征数(原文是24维fbank特征),特征图的分辨率是1,在这里需要明确:语音是1维数据,因此特征图并不是二维图,而是一个值,24个特征图堆叠起来构成24维fbank特征frame1frame1的特征图经过1维卷积得到,卷积核大小inchannels×kernelsize×outchannels=24×5×512inchannels \times kernelsize \times outchannels=24\times5\times512inchannels×kernelsize×outchannels=24×5×512frame1的每个特征图下面连接的5条线,表示卷积核。这5条线不是5根细线,而是5根麻花线,每根麻花线由inchannels=24inchannels=24inchannels=24根细线组成,每根细线连接一个特征。每根细线的权重都是一样的,每根麻花线的权重不一样 kernelsize=5kernelsize=5kernelsize=5,对应闭区间[t−2,t+2][t-2,t+2][t−2,t+2]一共5帧的上下文,也可以表示为{t−2,t−1,t,t+1,t+2}\left \{ t-2,t-1,t,t+1,t+2 \right \}{t−2,t−1,t,t+1,t+2},之所以表格说frame1的输入是120,是因为将5帧上下文的特征都计算进去了5×24=1205\times24=1205×24=120outchannels=512outchannels=512outchannels=512,表示卷积核的厚度是512,可以理解为5根麻花线堆叠了512次,每次堆叠都得到新的5根麻花线,都符合“每根细线的权重都是一样的,每根麻花线的权重不一样”。5根麻花线同时运算,得到一个值,从而frame1的每个特征图其实也是一个值,且通道数为512,对应表格中的frame1的输出是512frame2frame2的特征图经过1维膨胀卷积得到,卷积核大小inchannels×kernelsize×outchannels=512×3×512inchannels \times kernelsize \times outchannels=512\times3\times512inchannels×kernelsize×outchannels=512×3×512不要被膨胀卷积吓到了,膨胀卷积的kernelsize=3kernelsize=3kernelsize=3,表示3根麻花线中,第2根麻花线连接第t帧,第1根麻花线连接第t-2帧,第3根麻花线连接第t+2帧,对应表格中的{t−2,t,t+2}\left \{ t-2,t,t+2 \right \}{t−2,t,t+2}共3帧的上下文,这就是膨胀卷积和标准卷积的不同之处,隔帧连接在PyTorch中,1维卷积的api为 torch.nn.Conv1d(inchannels,outchannels,kernelsize,stride=1,padding=,dilation=1,groups=1,bias=True,paddingmode=′zeros′,device=None,dtype=None)torch.nn.Conv1d(inchannels, outchannels, kernelsize, stride=1, padding=0, dilation=1, groups=1, bias=True, paddingmode='zeros', device=None, dtype=None)torch.nn.Conv1d(inchannels,outchannels,kernelsize,stride=1,padding=0,dilation=1,groups=1,bias=True,paddingmode=′zeros′,device=None,dtype=None) 其中,dilation=1dilation=1dilation=1表示标准卷积,frame2的膨胀卷积需要设置dilation=2dilation=2dilation=2在这里我们也发现一点:TDNN其实是卷积的前身,后世提出的膨胀卷积,在TDNN里已经有了雏形,只不过TDNN是用于1维数据的frame3、frame4没有引进新的运算。frame3需要设置dilation=3dilation=3dilation=3,而frame4的卷积核大小inchannels×kernelsize×outchannels=512×1×512inchannels \times kernelsize \times outchannels=512\times1\times512inchannels×kernelsize×outchannels=512×1×512,因为kernelsize=1kernelsize=1kernelsize=1,所以与MLP(dense layer)没有本质区别,卷积核通过在每一帧上移动,实现全连接,因此可以看到有些代码实现用kernelsize=1kernelsize=1kernelsize=1的卷积替代全连接从frame1到frame5,每次卷积的步长stridestridestride都等于1,从而对每一帧都有对应的输出,也就是说,对于任意长度的帧序列,frame5的输出也是一个同等长度的序列,长度记为TTT,而由于frame5的outchannels=1500outchannels=1500outchannels=1500,所以表格中统计池化的输入是1500×T1500 \times T1500×T统计池化的原理颇为简单,本质是在序列长度TTT这一维度求均值和标准差,然后将均值和标准差串联(concatenate)起来,所以池化后,序列长度TTT这一维度消失了,得到了150015001500个均值和150015001500个标准差,串联起来就是长度为300030003000的向量segment6、segment7和Softmax都是标准的MLP,不再赘述最后segment6输出的512512512长度的向量,被称为x-vector,用于训练一个PLDA模型,进行说话人识别,可以计算一下,提取x-vector所需的参数 frame1+frame2+frame3+frame4+frame5+segment6=120×512+1536×512+1536×512+512×512+512×1500+3000×512=420,0448\begin{aligned} &frame1+frame2+frame3+frame4+frame5+segment6 \\ =&120 \times 512 + 1536 \times 512 + 1536 \times 512 + 512 \times 512 + 512 \times 1500 + 3000 \times 512 \\ =&420,0448 \end{aligned}==​frame1+frame2+frame3+frame4+frame5+segment6120×512+1536×512+1536×512+512×512+512×1500+3000×512420,0448​参数量并不能代表计算量,因为输入网络的是任意长度的帧序列
本文链接地址:https://www.jiuchutong.com/zhishi/299905.html 转载请保留说明!

上一篇:chatgpt实际是怎样工作的?(chattr i)

下一篇:Pytorch训练过程中出现RuntimeError: falseINTERNAL ASSERT FAILED... Couldn‘t open shared file mapping...(pytorch训练函数)

  • 这5个步骤,帮你提高运营的转化率(如何帮助他们)

    这5个步骤,帮你提高运营的转化率(如何帮助他们)

  • 开展博客营销策略(博客营销如何开展网络营销活动)

    开展博客营销策略(博客营销如何开展网络营销活动)

  • 京东同城购物在哪里(京东同城购物在哪个平台)

    京东同城购物在哪里(京东同城购物在哪个平台)

  • 华为p40pro后面配置了几个摄像头呢(p40pro后面是什么材质)

    华为p40pro后面配置了几个摄像头呢(p40pro后面是什么材质)

  • 微信系统处于通话状态怎么关闭(微信系统处于通话)

    微信系统处于通话状态怎么关闭(微信系统处于通话)

  • 装显卡后核显还工作吗(插了显卡核显没反应)

    装显卡后核显还工作吗(插了显卡核显没反应)

  • 苹果腾讯会议没有共享屏幕(苹果腾讯会议没有声音)

    苹果腾讯会议没有共享屏幕(苹果腾讯会议没有声音)

  • 腾讯快速会议和预定会议有什么区别(腾讯快速会议和预定会议哪个好)

    腾讯快速会议和预定会议有什么区别(腾讯快速会议和预定会议哪个好)

  • 卸载soul几天落灰(soul卸载后瞬间还有吗)

    卸载soul几天落灰(soul卸载后瞬间还有吗)

  • 小米手机图片删除了怎么恢复正常(小米手机图片删了怎么恢复回来)

    小米手机图片删除了怎么恢复正常(小米手机图片删了怎么恢复回来)

  • 快手关注多少人上限(快手关注多少人就满了)

    快手关注多少人上限(快手关注多少人就满了)

  • 苹果手机更新apple id设置是什么意思(苹果手机更新apple id设置更新不了怎么办)

    苹果手机更新apple id设置是什么意思(苹果手机更新apple id设置更新不了怎么办)

  • 苹果手机回收站在哪里(苹果手机回收站删除的文件怎么恢复)

    苹果手机回收站在哪里(苹果手机回收站删除的文件怎么恢复)

  • 荣耀手机恢复出厂设置(荣耀手机恢复出厂设置了还可以恢复出厂设置吗)

    荣耀手机恢复出厂设置(荣耀手机恢复出厂设置了还可以恢复出厂设置吗)

  • 苹果11怎么关闭拍照声音(苹果11怎么关闭屏幕旋转)

    苹果11怎么关闭拍照声音(苹果11怎么关闭屏幕旋转)

  • 手机迅雷播放设置在哪(手机迅雷怎么能全屏播放)

    手机迅雷播放设置在哪(手机迅雷怎么能全屏播放)

  • 苹果11关机充电不显示电量(苹果11关机充电不显示充电图标)

    苹果11关机充电不显示电量(苹果11关机充电不显示充电图标)

  • 高德地图点亮城市怎么弄(高德地图点亮城市需要停留多久)

    高德地图点亮城市怎么弄(高德地图点亮城市需要停留多久)

  • 华为nova5pro充电显示(华为nova5pro充电多少w)

    华为nova5pro充电显示(华为nova5pro充电多少w)

  • 手机爱奇艺会员电视上能用吗(手机爱奇艺会员怎么共享给别人)

    手机爱奇艺会员电视上能用吗(手机爱奇艺会员怎么共享给别人)

  • 微信怎么解除安全模式(微信怎么解除安全保护状态登录不上去了)

    微信怎么解除安全模式(微信怎么解除安全保护状态登录不上去了)

  • 小爱音箱怎么设置对话(小爱音箱怎么设置wifi)

    小爱音箱怎么设置对话(小爱音箱怎么设置wifi)

  • 智能手机怎么散热(智能手机怎样)

    智能手机怎么散热(智能手机怎样)

  • 手机b站缓存视频在哪里(手机b站缓存视频怎么导出)

    手机b站缓存视频在哪里(手机b站缓存视频怎么导出)

  • 开淘宝保证金怎么交(淘宝开店的保证金怎么取出来)

    开淘宝保证金怎么交(淘宝开店的保证金怎么取出来)

  • 【2023亲测可用】JS 获取电脑本地IP 和 电脑网络IP(外网IP|公网IP)

    【2023亲测可用】JS 获取电脑本地IP 和 电脑网络IP(外网IP|公网IP)

  • 个体工商户的免税政策
  • 每股收益无差别点计算公式怎么解
  • 专票红冲要不要收回发票联
  • 增值税的税目有哪些类型
  • 企业级软件开发
  • 房产证印花税如何计算
  • 企业所得税公益捐赠扣除限额
  • 本年利润结转在贷方表示什么意思
  • 企业发给员工年终奖金
  • 待认证进项分录
  • 个人承包集体企业历史
  • 电子发票对航天信息利空吗
  • 税收楔子是什么意思
  • 合并报表怎么抵损益
  • 未分配利润期末余额怎么算出来
  • 未结转是什么意思
  • 合并报表的所得税税率
  • 应收出口退税属于哪个会计科目
  • 企业发工资扣缴个人承担部分如何做账?
  • 红魔3和一加7pro哪个好
  • 土地增值税计算例题
  • 电脑bios怎么设置网络启动
  • 购入黄金产品怎么入账
  • php实现上传图片功能
  • wordpress文章缩略图
  • 工会经费是职工工资总额的
  • msg0.db是什么文件
  • 税法的构成要素中,()是税法最基本的要素
  • 贸易型企业能开什么增值税票
  • yolov8目标检测测试输出类别个数
  • php smtp类
  • zendstudio怎么创建php项目
  • php正则表达式实例
  • 矿产资源补偿费计入管理费用吗
  • 企业所得税申报表A类
  • 无形资产属于哪一类
  • 哪些发票是成品发票
  • 代扣车船税的会计处理
  • 底薪和提成分开发合法吗
  • 未分配利润为负的原因
  • 法人想从公司户提钱自己用有事吗
  • SqlServer如何通过SQL语句获取处理器(CPU)、内存(Memory)、磁盘(Disk)以及操作系统相关信息
  • 自定义函数是啥
  • 商品流通企业的种类
  • sql 分组排名
  • 合伙企业可以列入法人吗
  • 做模具怎么找客户
  • 支付其它与经营活动有关的现金对不上
  • 定金与订金不同
  • 跨年度退货
  • 异地预缴增值税多交了怎么办,可以退吗
  • 小规模公司房租发票税率是多少
  • 简单介绍清明上河图
  • sql中分页
  • sql搜索字段名
  • 动态sql语句怎么写
  • win7安装mysql5.5
  • ubuntu /opt
  • 拖放文件到此处来添加文件是什么意思
  • 轻量级个人用linux桌面系统
  • win10打开软件提示允许此应用对你设备进行更改
  • macbook qq截图存在哪
  • 产品密钥需要购买吗
  • win8开始菜单变为win10
  • js cocos
  • Unity3D游戏开发毕业论文
  • easyui combotree加载静态数据问题(选不上)解决方法
  • android:ellipsize="marquee"
  • 程序员应该学什么
  • shell 数组变量
  • node.js怎么样
  • android程序代码
  • 西安市电子税务局
  • 安徽省低保查询入口官网
  • 机票票号怎么查航班
  • 请问关于煤炭的法律法规
  • 智能财税证书含金量如何
  • 山东省国税网
  • 哪些税和费计入应交税费
  • 生产企业出口退税账务处理会计分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设