Snowdar / asv-subtools

An Open Source Tools for Speaker Recognition
Apache License 2.0
590 stars 135 forks source link

Is utt2lang or utt2spk used for lid? #1

Closed YunzhaoLu closed 2 years ago

YunzhaoLu commented 4 years ago

Hi, I want to validate the recipe "ap-olr2020-baseline". I have some issues at scoring. I want to know which file is used for language file, utt2lang or utt2spk? Regards, Luke

Snowdar commented 4 years ago

Hi, utt2spk is used and it means that language ids are seen as "speaker" ids in this system.

Sent from my iPhone

On Jul 1, 2020, at 8:08 PM, Luke notifications@github.com wrote:

 Hi, I want to validate the recipe "ap-olr2020-baseline". I have some issues at scoring. I want to know which file is used for language file, utt2lang or utt2spk? Regards, Luke

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

YunzhaoLu commented 4 years ago

How about the following error? "Too little data for iVector dimension."

Write to exp/kaldi_ivector/test_eval/trials.raw done. Remove invalid trials... 0 utt's trials have been removed and the invalid utts is in exp/kaldi_ivector/test_eval/trials.invalid.utt.list Write to exp/kaldi_ivector/test_eval/trials done. Make test_eval trials done. [ lr ] ivector-normalize-length scp:exp/kaldi_ivector/test_enroll/ivector.scp ark:exp/kaldi_ivector/test_enroll/ivector_norm.ark LOG (ivector-normalize-length[5.5]:main():ivector-normalize-length.cc:90) Processed 500 iVectors. LOG (ivector-normalize-length[5.5]:main():ivector-normalize-length.cc:94) Average ratio of iVector to expected length was 0.464227, standard deviation was 0.077444 ivector-compute-lda --dim=100 --total-covariance-factor=0.1 ark:exp/kaldi_ivector/test_enroll/ivector_norm.ark ark:data/mfcc_20_5.0/test_enroll/utt2spk exp/kaldi_ivector/test_enroll/transform_100.mat LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:288) Read 500 utterances, 0 with errors. LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:294) Computing within-class covariance. LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:299) 2-norm of iVector mean is 2.57765 LOG (ivector-compute-lda[5.5]:ComputeLdaTransform():ivector-compute-lda.cc:136) Stats have 5 speakers, 500 utterances. ASSERTION_FAILED (ivector-compute-lda[5.5]:ComputeLdaTransform():ivector-compute-lda.cc:139) Assertion failed: (!stats.SingularTotCovar() && "Too little data for iVector dimension.")

[ Stack-Trace: ] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::MessageLogger::LogMessage() const+0x8b7) [0x7f1a869f0d1d] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::KaldiAssertFailure_(char const, char const, int, char const)+0x59) [0x7f1a869f17f8] ivector-compute-lda(kaldi::ComputeLdaTransform(std::map<std::string, kaldi::Vector, std::less, std::allocator<std::pair<std::string const, kaldi::Vector> > > const&, std::map<std::string, std::vector<std::string, std::allocator >, std::less, std::allocator<std::pair<std::string const, std::vector<std::string, std::allocator > > > > const&, float, float, kaldi::MatrixBase)+0x54f) [0x40c749] ivector-compute-lda(main+0xbd8) [0x40d91c] /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f1a7f4243d5] ivector-compute-lda() [0x40bff9]

ivector-transform exp/kaldi_ivector/test_enroll/ scp:exp/kaldi_ivector/test_enroll/ivector.scp ark:exp/kaldi_ivector/test_enroll/ivector_lda100.ark ERROR (ivector-transform[5.5]:Read():kaldi-matrix.cc:1617) Failed to read matrix from stream. : Expected "[", got EOF File position at start is -1, currently -1

[ Stack-Trace: ] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::MessageLogger::LogMessage() const+0x8b7) [0x7f97a0254d1d] ivector-transform(kaldi::MessageLogger::LogAndThrow::operator=(kaldi::MessageLogger const&)+0x11) [0x40a9a9] /opt/disk2/kaldi.20200426/src/lib/libkaldi-matrix.so(kaldi::Matrix::Read(std::istream&, bool, bool)+0x1b42) [0x7f97a049ec72] /opt/disk2/kaldi.20200426/src/lib/libkaldi-util.so(void kaldi::ReadKaldiObject<kaldi::Matrix >(std::string const&, kaldi::Matrix*)+0x2dd) [0x7f97a071264d] ivector-transform(main+0xcc) [0x409359] /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f9798c883d5] ivector-transform() [0x4091c9]

Snowdar commented 4 years ago

hi,your ivector-dim is 100 but there are just 5 classes. Maybe you should decrease the dim of ivector, such as 5.

发自我的iPhone

在 2020年7月2日,下午8:15,Luke notifications@github.com 写道:

Too little data for iVector dimension

YunzhaoLu commented 4 years ago

seems still the same after changing.

[ lr ] ivector-normalize-length scp:exp/kaldi_ivector/test_enroll/ivector.scp ark:exp/kaldi_ivector/test_enroll/ivector_norm.ark LOG (ivector-normalize-length[5.5]:main():ivector-normalize-length.cc:90) Processed 500 iVectors. LOG (ivector-normalize-length[5.5]:main():ivector-normalize-length.cc:94) Average ratio of iVector to expected length was 0.464227, standard deviation was 0.077444 ivector-compute-lda --dim=5 --total-covariance-factor=0.1 ark:exp/kaldi_ivector/test_enroll/ivector_norm.ark ark:data/mfcc_20_5.0/test_enroll/utt2spk exp/kaldi_ivector/test_enroll/transform_5.mat LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:288) Read 500 utterances, 0 with errors. LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:294) Computing within-class covariance. LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:299) 2-norm of iVector mean is 2.57765 LOG (ivector-compute-lda[5.5]:ComputeLdaTransform():ivector-compute-lda.cc:136) Stats have 5 speakers, 500 utterances. ASSERTION_FAILED (ivector-compute-lda[5.5]:ComputeLdaTransform():ivector-compute-lda.cc:139) Assertion failed: (!stats.SingularTotCovar() && "Too little data for iVector dimension.")

[ Stack-Trace: ] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::MessageLogger::LogMessage() const+0x8b7) [0x7f865101cd1d] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::KaldiAssertFailure_(char const, char const, int, char const)+0x59) [0x7f865101d7f8] ivector-compute-lda(kaldi::ComputeLdaTransform(std::map<std::string, kaldi::Vector, std::less, std::allocator<std::pair<std::string const, kaldi::Vector> > > const&, std::map<std::string, std::vector<std::string, std::allocator >, std::less, std::allocator<std::pair<std::string const, std::vector<std::string, std::allocator > > > > const&, float, float, kaldi::MatrixBase)+0x54f) [0x40c749] ivector-compute-lda(main+0xbd8) [0x40d91c] /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f8649a503d5] ivector-compute-lda() [0x40bff9]

ivector-transform exp/kaldi_ivector/test_enroll/ scp:exp/kaldi_ivector/test_enroll/ivector.scp ark:exp/kaldi_ivector/test_enroll/ivector_lda5.ark ERROR (ivector-transform[5.5]:Read():kaldi-matrix.cc:1617) Failed to read matrix from stream. : Expected "[", got EOF File position at start is -1, currently -1

[ Stack-Trace: ] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::MessageLogger::LogMessage() const+0x8b7) [0x7fd9f4793d1d] ivector-transform(kaldi::MessageLogger::LogAndThrow::operator=(kaldi::MessageLogger const&)+0x11) [0x40a9a9] /opt/disk2/kaldi.20200426/src/lib/libkaldi-matrix.so(kaldi::Matrix::Read(std::istream&, bool, bool)+0x1b42) [0x7fd9f49ddc72] /opt/disk2/kaldi.20200426/src/lib/libkaldi-util.so(void kaldi::ReadKaldiObject<kaldi::Matrix >(std::string const&, kaldi::Matrix*)+0x2dd) [0x7fd9f4c5164d] ivector-transform(main+0xcc) [0x409359] /lib64/libc.so.6(__libc_start_main+0xf5) [0x7fd9ed1c73d5] ivector-transform() [0x4091c9]

kaldi::KaldiFatalError[Auto find] Your vectortype is ivector

Snowdar commented 4 years ago

Hi, can you tell me the details of trainset information? such as the number of utterances for every speaker.

在 2020年7月3日,上午11:44,Luke notifications@github.com 写道:

 seems still the same after changing.

[ lr ] ivector-normalize-length scp:exp/kaldi_ivector/test_enroll/ivector.scp ark:exp/kaldi_ivector/test_enroll/ivector_norm.ark LOG (ivector-normalize-length[5.5]:main():ivector-normalize-length.cc:90) Processed 500 iVectors. LOG (ivector-normalize-length[5.5]:main():ivector-normalize-length.cc:94) Average ratio of iVector to expected length was 0.464227, standard deviation was 0.077444 ivector-compute-lda --dim=5 --total-covariance-factor=0.1 ark:exp/kaldi_ivector/test_enroll/ivector_norm.ark ark:data/mfcc_20_5.0/test_enroll/utt2spk exp/kaldi_ivector/test_enroll/transform_5.mat LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:288) Read 500 utterances, 0 with errors. LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:294) Computing within-class covariance. LOG (ivector-compute-lda[5.5]:main():ivector-compute-lda.cc:299) 2-norm of iVector mean is 2.57765 LOG (ivector-compute-lda[5.5]:ComputeLdaTransform():ivector-compute-lda.cc:136) Stats have 5 speakers, 500 utterances. ASSERTION_FAILED (ivector-compute-lda[5.5]:ComputeLdaTransform():ivector-compute-lda.cc:139) Assertion failed: (!stats.SingularTotCovar() && "Too little data for iVector dimension.")

[ Stack-Trace: ] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::MessageLogger::LogMessage() const+0x8b7) [0x7f865101cd1d] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::KaldiAssertFailure_(char const, char const, int, char const)+0x59) [0x7f865101d7f8] ivector-compute-lda(kaldi::ComputeLdaTransform(std::map<std::string, kaldi::Vector, std::lessstd::string, std::allocator<std::pair<std::string const, kaldi::Vector> > > const&, std::map<std::string, std::vector<std::string, std::allocatorstd::string >, std::lessstd::string, std::allocator<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string > > > > const&, float, float, kaldi::MatrixBase)+0x54f) [0x40c749] ivector-compute-lda(main+0xbd8) [0x40d91c] /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f8649a503d5] ivector-compute-lda() [0x40bff9]

ivector-transform exp/kaldi_ivector/test_enroll/ scp:exp/kaldi_ivector/test_enroll/ivector.scp ark:exp/kaldi_ivector/test_enroll/ivector_lda5.ark ERROR (ivector-transform[5.5]:Read():kaldi-matrix.cc:1617) Failed to read matrix from stream. : Expected "[", got EOF File position at start is -1, currently -1

[ Stack-Trace: ] /opt/disk2/kaldi.20200426/src/lib/libkaldi-base.so(kaldi::MessageLogger::LogMessage() const+0x8b7) [0x7fd9f4793d1d] ivector-transform(kaldi::MessageLogger::LogAndThrow::operator=(kaldi::MessageLogger const&)+0x11) [0x40a9a9] /opt/disk2/kaldi.20200426/src/lib/libkaldi-matrix.so(kaldi::Matrix::Read(std::istream&, bool, bool)+0x1b42) [0x7fd9f49ddc72] /opt/disk2/kaldi.20200426/src/lib/libkaldi-util.so(void kaldi::ReadKaldiObject(std::string const&, kaldi::Matrix*)+0x2dd) [0x7fd9f4c5164d] ivector-transform(main+0xcc) [0x409359] /lib64/libc.so.6(__libc_start_main+0xf5) [0x7fd9ed1c73d5] ivector-transform() [0x4091c9]

kaldi::KaldiFatalError[Auto find] Your vectortype is ivector

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

YunzhaoLu commented 4 years ago

number of utterances: 1415, 1391, 1408, 1453, 1400

YunzhaoLu commented 4 years ago

I just noted that I would add more training data after I checked the utt2spk. Thanks.

Snowdar commented 4 years ago

Yeah, the utterances should not be too few for every speaker/language ID.