我想使用python
建立一个暹罗网络进行说话人验证。该网络由2个相同的卷积神经网络(CNN)组成,以学习一个相似度函数,该函数可以区分2个输入语音是否属于同一个人。
我有10个人在.wav
中录制他们的语音,说在巴哈萨语(satu, dua, tiga, empat, lima, enam, tujuh, delapan, sembilan)
中9位数的数字每个人为每个数字录制5次,因此每个人都有45项录音(9 x 5)
。我使用MFCC来获取特征向量并获得向量形状(450, 250, 13)
-(行,number_frames,number_cepstral),现在我想制作一对数据
我看过这些链接
-https://www.kaggle.com/arpandhatt/siamese-neural-networks
-https://keras.io/examples/mnist_siamese/
但是我不明白用于创建配对的哪种方法。根据我的数据,我该如何创建良好的配对来训练暹罗网络?
注意事项:我想建立与说话人验证文本相关的信息,这意味着一个录音'satu'
将与另一个录音'satu'
进行比较。
答案 0 :(得分:0)
您应该查看端到端说话者验证系统,该系统本质上是用于说话者验证的暹罗网络。
L. Wan, et al., "Generalized end-to-end loss for speaker verification," in Proc. ICASSP, 2018.
我认为以上文献可以使您对自己的问题有直觉。