Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

针对论文的一些疑问 #2

Open
xuanjihe opened this issue Nov 17, 2020 · 10 comments
Open

针对论文的一些疑问 #2

xuanjihe opened this issue Nov 17, 2020 · 10 comments

Comments

@xuanjihe
Copy link

您好,我觉得您的工作-DTDNN,在参数比较少的情况下获得了较ETDNN,FTDNN更好的结果,我认为这非常有意义。但是我对论文的实验存在两处疑惑:
1、论文中Table5中,基于softmax训练的D-TDNN模型Cosine的结果好于PLDA,在上面的TDNN,ETDNN,FTDNN的结果不一致(均是PLDA好于Cosine),请问这是什么原因导致的?
2、对于null branch,能稍微解释一下吗?

@yuyq96
Copy link
Owner

yuyq96 commented Nov 17, 2020

1、我个人猜测的原因:

  • LDA+PLDA是基于原始的embedding再次投影,中间有信息损失,对于精度已经很高的模型可能会有负面影响。
  • D-TDNN的网络宽度显著低于E-TDNN、F-TDNN,并且D-TDNN的embedding层直接连接到分类层,这两点会影响embedding的信息分布,在投影时受到的影响不同。

* 去除LDA、增加D-TDNN(最后一个transition层)的宽度可以减少Cosine和PLDA打分的差距。

2、TDNN分支+null branch(全零分支)是多TDNN分支的弱化版本,这个分支直接默认输出特征图全为0,只需要考虑attention权重的计算,优点是增加的计算量很低。全零分支的意义和squeeze-and-excitation类似,比如某些通道包含噪音,需要抑制这些位置的信号。

@xuanjihe
Copy link
Author

1、你这边的Cosine打分,也是要经过LDA的吗?
2、关于short-term 和long-term,有没尝试过像ECAPA-TDNN那样,将不同层的特征summar到RELU-FNN之后,这样可以节省参数。

@yuyq96
Copy link
Owner

yuyq96 commented Nov 17, 2020

1、Cosine不使用LDA。
2、Dense connection和你提到的residual connnection没有本质的区别,在参数量和拟合能力上会有一定的差异,和具体设置有关,此处不展开讨论。我在论文中有提到multi-stage aggregation,因此D-TDNN本身有多层拼接,会起到short-term和long-term结合的效果,而SS是进一步强化,并且相比于没有使用SS的情况,short-term经过了更多的神经网络层,分辨率更高,还有附带的channel recalibration效果。

@xuanjihe
Copy link
Author

谢谢您的回答!

@xuanjihe
Copy link
Author

再请教一个问题,TDNN+ softmax + PLDA,我们的实验结果是EER = 3.2%左右,您论文中的结果是2.34%,请问一下是有什么trick吗?

@xuanjihe xuanjihe reopened this Nov 18, 2020
@yuyq96
Copy link
Owner

yuyq96 commented Nov 18, 2020

调整训练参数,在Kaldi里面也可以得到差不多的结果。

@xuanjihe
Copy link
Author

你没有用pytorch跑过吗?

@yuyq96
Copy link
Owner

yuyq96 commented Nov 18, 2020

论文的结果是pytorch跑的,模型都放出来了。这里是说kaldi调整参数之后的结果也差不多。

@xuanjihe
Copy link
Author

TDNN的训练脚本能看放出来看一下吗?跟我的差距有点大,或者你可以看我的代码

@yuyq96
Copy link
Owner

yuyq96 commented Nov 18, 2020

建议你直接按照论文里的训练参数跑,或者进一步参考Interspeech_2019/pdfs/2357.pdf
截屏2020-11-18 19 32 00

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants