自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 Spring日志配置

Spring日志配置

2022-07-25 11:50:55 601 1

原创 spring常用注解

spring常用注解

2022-07-20 16:46:53 455

原创 第十四章:类的加载

类的加载

2022-07-05 20:21:24 154

原创 第十三章:垃圾回收器

垃圾回收器

2022-07-02 20:04:25 355

原创 第十二章:垃圾回收相关概念

JVM相关概念

2022-06-29 20:19:30 108

原创 第十一章:垃圾回收算法

JVM

2022-06-29 16:09:11 82

原创 第十一章 StringTable

String

2022-06-25 15:17:34 355

原创 第十章:执行引擎

JVM执行引擎

2022-06-24 15:48:55 281

原创 第九章:对象实例化

对象实例化

2022-06-23 21:36:22 164

原创 第八章:方法区

JVM方法区

2022-06-23 17:12:27 97

原创 第七章:堆

2022-06-20 21:24:39 201

原创 第六章:本地方法栈

本地方法栈

2022-06-19 17:13:25 210

原创 第五章:虚拟机栈

虚拟机栈

2022-06-19 16:50:17 99

原创 第四章:程序计数器(PC寄存器)

JVM程序计数器

2022-06-17 16:53:15 192

原创 第三章:运行时数据区概述及线程

运行时数据区概述及线程

2022-06-17 16:09:24 87

原创 第二章:类加载子系统

JVM类加载子系统

2022-06-17 15:33:19 95

原创 第一章:JVM简介

JAVA虚拟机

2022-06-16 17:27:35 85

原创 PacNet

背景短语音不足以收集到足够的帧来学习音素信息,不同说话人的相同语句的相似度,可能大于同一个人不同语句的相似度。实现流程acoustic stem的输入为40维Fbank,phonetic stem的输入为100维ASR bottleneck features。两个stem由中间的couple stem连接,第一层的couple stem的输入为Fbank与ASR bottleneck features的连接,之后每层的输入为acoustic stem、couple stem、phonetic st

2021-09-14 15:29:12 292 2

原创 D-TDNN

实现流程每层D-TDNN layer的结构如下:第一层为FNN-based的bottleneck layer。g为TDNN层的output size(growth rate),bottleneck layer层的output size为2g,最后将D-TDNN的输入与TDNN layer的输出连接起来。整个D-TDNN的结构如下:整个网络分为5个部分:1. 1,初始化通道数2. 2-8,帧偏移为1,学习局部特征。3. 9-21,帧偏移为3,学习long-term dependence4

2021-09-14 15:26:21 664

原创 AutoSpeech: Neural Architecture Search for Speaker Recognition

背景经典的CNN可能并不适合声纹识别。本文提出了一种网络搜索的办法,来寻找最适合的network。实现search space:网络由多个cell,组成,每个cell的结构如下:每个xi代表了一个tensor,每个edge代表了一种operation oij(.)每个Cell包括2个input node、4个intermediate node、1个output node第k个input的x0为第 k-2个cell的output,x1为第 k-1个cell的output对于intermedia

2021-09-13 14:55:00 339 6

原创 Utterance-Level Aggregation For Speaker Recognition In The Wild

本文使用NetVLAD,将frame-level聚合为utterance-level。in the wild: 4s以上的语音实现流程将通过Thin ResNet的frame-level通过NetVLAD聚合为utterance-level。网络输入为R(257×T×1),输出变为了R(1×T/32×512)NetVLAD: 输出一个K×D的矩阵V,K为聚类类别数,D为每一类的维数。第一项代表了这一帧特征在类别k的权重,第二项代表了其与类中心的残差。最后将每帧向量L2标准化后连接起来。在

2021-08-02 20:11:46 352

原创 ECAPA-TDNN

实现流程ECAPA-TDNN由三部分组成:1-Dimensional Squeeze-Excitation Res2Blocks传统的x-vector的frame-layers只考虑了15帧的信息,而我们想要其考虑全局的信息,因此使用了 Squeeze-Excitation (SE) blocks首先是squeeze操作:将每一帧 frame-level features按时间取平均,输入特征为[N, C, L], 其中N为batch size,L为特征帧数, C为channel数,则通过求平均值,

2021-08-02 15:43:26 5235 1

原创 Channel Invariant Speaker Embedding Learning with Joint Multi-Task and Adversarial Training

phoneme variability : 不同语句发音不同channel mismatch : 录音设备与环境不同实现流程先通过浅层网络学习channel信息,再通过后面的网络将其消除。baseline: x-vector结构:在进行adversarial training时,使用GRL将梯度方向。损失函数:Lc检测channel是否正确分类使用AAM-Softmax将说话人正确分类n代表说话人数量,Wj代表第j列训练:Joint Multitask-Adversari

2021-08-01 16:07:55 137

原创 SAP(Self-Attentive Speaker Embeddings for Text-Independent Speaker Verification)

实现流程假设为每一帧的向量,ht的长度为dh, 因此H的长度为dh×T,W1为dh×da,W2为da×dr,其中dr为代表attention head的超参数。g(.)为激活函数(ReLU),softmax按列执行。则A的每一列代表了权重,最后的加权平均:当dr=1时,E仅仅是H的加权和,可以反映出说话人特征在一个方面的区别。当dr>1时,则可反映出多方面的区别。当dr>1,引入惩罚P,加入损失函数其中F为F-范数:...

2021-08-01 16:00:33 206

原创 ASP(Attentive Statistics Pooling for Deep Speaker Embedding)

本文使用注意力机制赋予不同的帧不同的权重,并且同时生成加权平均数、加权标准差。实现流程网络结构Pooling layer将变长的frame-level features转换为一个定长的向量。Statistics pooling取frame-level features的平均值与标准差⊙ 代表Hadamard product标准差还包含了说话人在长时间语境中的时间变异特征。Attention mechanism在一段话中,往往某些帧的帧级特征比其他帧的特征更为独特重要,因此使用atten

2021-08-01 15:57:09 1931

原创 j-vector(Multi-Task Learning for Text-dependent Speaker Verification)

本文采用多任务学习方法,在学习说话人特征的同时,学习文本短语的知识,进行text-dependent的说话人识别实现流程采用多任务学习,目标函数为:C代表交叉熵,y1,y2代表了真实标签,y1,y2,是模型输出,共享的参数可由两个目标函数共同优化。测试时将输出层去掉,取输出的平均值,所得即为j-vector。最后使用PLDA进行打分。实验与原始的d-vector、r-vector相比,j-vector取得了较好的结果。...

2021-08-01 15:52:19 313

原创 Deep Speaker: an End-to-End Neural Speaker Embedding System

实现流程:Front Processing:语音输入被转换为64维fbank,并且含有零均值与单位方差。DNN:有两种DNN:* ResCNN* GRUResCNN:GRU:Average Sentence:将帧级输入聚合为整段语音的输入Affine:将其转换成512维的embedding。计算相似度:最后用triplet loss为目标进行训练实验使用softmax和交叉熵损失来预训练整个模型,即用一个classification layer来代替length nor

2021-08-01 15:49:03 302

原创 Triplet Loss(End-to-End Text-Independent Speaker Verification with Triplet Loss on Short Utterances)

目标探究短时语音输入的text-independent模型实现流程将不等长的语音输入通过cropping或padding变为等长。网络结构:目标函数similarity实验:

2021-08-01 15:43:05 122

原创 Triplet Loss(TristouNet: Triplet Loss For Speaker Turn Embedding)

实现流程xa来自一个说话人(anchor),xp来自同一个说话人,xn来自不同的说话人。Triplet Loss减小xa与xp之间的距离,增大xa与xn之间的距离,即令┏为训练集中所有可能的三元组最后损失函数为最小化:网络构造为:实验...

2021-08-01 15:40:30 148

原创 x-vector(X-Vectors:Robust DNN embeddings For Speaker Recognition)

实现流程:使用了TDNN架构。橘黄色竖条表示mfcc帧,其维度为24,statistics pooling层以下的帧数是根据mfcc实际帧数计算得到。根据frame1-3的input x output中的output可知:深蓝色竖条维数为512,浅黄色竖条维数为512,淡蓝色竖条维数为512frame1:输入端5条直线分别连接5帧,5*24=120,所以input x output=120 x 512;context=5表示一个深蓝色竖条对应5个橘黄色竖条;每一次stride=1,表示红色

2021-08-01 15:35:16 568

原创 x-vector(Deep Neural Network-Based Speaker Embeddings For End-to-End Speaker Verification)

背景已有的网络无法处理长度不等的语音输入实现目标函数为:训练策略:训练策略包含 x 与 y 配对的方法和训练步骤,训练步骤分两部:1epochs:长时语音(10-30 s),2epochs:短时(1-20 s)或长时(1-30 s)语音。实验:横轴为训练集时长,纵轴为测试集时长。可见DNN的效果好于i-vector,且1-20s的训练集优于1-30s的训练集在训练数据较少时,i-vector表现好于DNN,特别是在长语音测试集上。...

2021-08-01 15:30:54 212

原创 d-vector(End-to-End Text-Dependent Speaker Verification)

实现流程输入为一段evluation utterance与N段enrollment utterance,网络使用DNN或LSTM,Speaker Model为N段语音的平均值。损失函数为:其中target为accept 或者 reject此模型文本相关,文本为“OK Google”实验utterance-level的表现好于frame-level...

2021-08-01 15:27:35 240

原创 d-vector(Deep neural networks for small footprint text-dependent speaker verification)

背景SV(speaker verification)分为三个步骤:Development: 模型训练Enrollment: 新用户注册Evaluation: 用户的识别概念在development时,输入为给定上下文(文本相关)的帧级语音,target为说话人身份,输出维数与说话人数量N相等,是一个 1-hot向量,即唯一的非零元素对应了说话人的身份。在enrollment时,对每段语音来说,将每一帧数据分别输入DNN,d-vector(说话人的向量)为DNN最后一层隐藏层的输出之和。在ev

2021-07-30 10:22:45 411

原创 python学习笔记 collections.OrderedDict‘ object has no attribute ‘eval‘

pytorch==1.6.0的框架下保存模型时,若想让模型在整个训练过程之后的预测过程中加载模型,不能使用torch.save(model.state_dict(),model_path)该语句只保存了模型的权重参数未保存整个模型,model.eval()时候会报错collections.OrderedDict' object has no attribute 'eval'正确语句应当为保存时torch.save(model,'save_path')加载时torch.load('

2020-12-16 13:59:42 13502 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除