#include <ivector-extractor.h>
Public Member Functions | |
IvectorExtractor () | |
IvectorExtractor (const IvectorExtractorOptions &opts, const FullGmm &fgmm) | |
void | GetIvectorDistribution (const IvectorExtractorUtteranceStats &utt_stats, VectorBase< double > *mean, SpMatrix< double > *var) const |
Gets the distribution over ivectors (or at least, a Gaussian approximation to it). More... | |
double | PriorOffset () const |
The distribution over iVectors, in our formulation, is not centered at zero; its first dimension has a nonzero offset. More... | |
double | GetAuxf (const IvectorExtractorUtteranceStats &utt_stats, const VectorBase< double > &mean, const SpMatrix< double > *var=NULL) const |
Returns the log-likelihood objective function, summed over frames, for this distribution of iVectors (a point distribution, if var == NULL). More... | |
double | GetAcousticAuxf (const IvectorExtractorUtteranceStats &utt_stats, const VectorBase< double > &mean, const SpMatrix< double > *var=NULL) const |
Returns the data-dependent part of the log-likelihood objective function, summed over frames. More... | |
double | GetPriorAuxf (const VectorBase< double > &mean, const SpMatrix< double > *var=NULL) const |
Returns the prior-related part of the log-likelihood objective function. More... | |
double | GetAcousticAuxfVariance (const IvectorExtractorUtteranceStats &utt_stats) const |
This returns just the part of the acoustic auxf that relates to the variance of the utt_stats (i.e. More... | |
double | GetAcousticAuxfMean (const IvectorExtractorUtteranceStats &utt_stats, const VectorBase< double > &mean, const SpMatrix< double > *var=NULL) const |
This returns just the part of the acoustic auxf that relates to the speaker-dependent means (and how they differ from the data means). More... | |
double | GetAcousticAuxfGconst (const IvectorExtractorUtteranceStats &utt_stats) const |
This returns the part of the acoustic auxf that relates to the gconsts of the Gaussians. More... | |
double | GetAcousticAuxfWeight (const IvectorExtractorUtteranceStats &utt_stats, const VectorBase< double > &mean, const SpMatrix< double > *var=NULL) const |
This returns the part of the acoustic auxf that relates to the Gaussian-specific weights. More... | |
void | GetIvectorDistMean (const IvectorExtractorUtteranceStats &utt_stats, VectorBase< double > *linear, SpMatrix< double > *quadratic) const |
Gets the linear and quadratic terms in the distribution over iVectors, but only the terms arising from the Gaussian means (i.e. More... | |
void | GetIvectorDistPrior (const IvectorExtractorUtteranceStats &utt_stats, VectorBase< double > *linear, SpMatrix< double > *quadratic) const |
Gets the linear and quadratic terms in the distribution over iVectors, that arise from the prior. More... | |
void | GetIvectorDistWeight (const IvectorExtractorUtteranceStats &utt_stats, const VectorBase< double > &mean, VectorBase< double > *linear, SpMatrix< double > *quadratic) const |
Gets the linear and quadratic terms in the distribution over iVectors, that arise from the weights (if applicable). More... | |
int32 | FeatDim () const |
int32 | IvectorDim () const |
int32 | NumGauss () const |
bool | IvectorDependentWeights () const |
void | Write (std::ostream &os, bool binary) const |
void | Read (std::istream &is, bool binary) |
Protected Member Functions | |
void | ComputeDerivedVars () |
void | ComputeDerivedVars (int32 i) |
void | TransformIvectors (const MatrixBase< double > &T, double new_prior_offset) |
Protected Attributes | |
Matrix< double > | w_ |
Weight projection vectors, if used. Dimension is [I][S]. More... | |
Vector< double > | w_vec_ |
If we are not using weight-projection vectors, stores the Gaussian mixture weights from the UBM. More... | |
std::vector< Matrix< double > > | M_ |
Ivector-subspace projection matrices, dimension is [I][D][S]. More... | |
std::vector< SpMatrix< double > > | Sigma_inv_ |
Inverse variances of speaker-adapted model, dimension [I][D][D]. More... | |
double | prior_offset_ |
1st dim of the prior over the ivector has an offset, so it is not zero. More... | |
Vector< double > | gconsts_ |
The constant term in the log-likelihood of each Gaussian (not counting any weight). More... | |
Matrix< double > | U_ |
U_i = M_i^T ^{-1} M_i is a quantity that comes up in ivector estimation. More... | |
std::vector< Matrix< double > > | Sigma_inv_M_ |
The product of Sigma_inv_[i] with M_[i]. More... | |
Static Private Member Functions | |
static void | InvertWithFlooring (const SpMatrix< double > &quadratic_term, SpMatrix< double > *var) |
Friends | |
class | IvectorExtractorStats |
class | OnlineIvectorEstimationStats |
class | IvectorExtractorComputeDerivedVarsClass |
Definition at line 136 of file ivector-extractor.h.
|
inline |
Definition at line 141 of file ivector-extractor.h.
IvectorExtractor | ( | const IvectorExtractorOptions & | opts, |
const FullGmm & | fgmm | ||
) |
Definition at line 137 of file ivector-extractor.cc.
References IvectorExtractor::ComputeDerivedVars(), VectorBase< Real >::CopyFromVec(), FullGmm::GetMeans(), rnnlm::i, FullGmm::inv_covars(), IvectorExtractorOptions::ivector_dim, KALDI_ASSERT, IvectorExtractor::M_, FullGmm::NumGauss(), PackedMatrix< Real >::NumRows(), IvectorExtractor::prior_offset_, Vector< Real >::Resize(), Matrix< Real >::Resize(), MatrixBase< Real >::Row(), MatrixBase< Real >::Scale(), IvectorExtractor::Sigma_inv_, IvectorExtractorOptions::use_weights, IvectorExtractor::w_, IvectorExtractor::w_vec_, and FullGmm::weights().
|
protected |
Definition at line 182 of file ivector-extractor.cc.
References IvectorExtractor::FeatDim(), kaldi::g_num_threads, IvectorExtractor::gconsts_, rnnlm::i, IvectorExtractor::IvectorDim(), KALDI_LOG, M_LOG_2PI, TaskSequencerConfig::num_threads, IvectorExtractor::NumGauss(), Vector< Real >::Resize(), Matrix< Real >::Resize(), TaskSequencer< C >::Run(), IvectorExtractor::Sigma_inv_, IvectorExtractor::Sigma_inv_M_, and IvectorExtractor::U_.
Referenced by IvectorExtractorStats::GetOrthogonalIvectorTransform(), IvectorExtractor::IvectorExtractor(), and IvectorExtractorStats::Update().
|
protected |
Definition at line 208 of file ivector-extractor.cc.
References SpMatrix< Real >::AddMat2Sp(), PackedMatrix< Real >::Data(), IvectorExtractor::FeatDim(), rnnlm::i, IvectorExtractor::IvectorDim(), kaldi::kNoTrans, kaldi::kTrans, IvectorExtractor::M_, MatrixBase< Real >::Row(), IvectorExtractor::Sigma_inv_, IvectorExtractor::Sigma_inv_M_, and IvectorExtractor::U_.
int32 FeatDim | ( | ) | const |
Definition at line 28 of file ivector-extractor.cc.
References KALDI_ASSERT, and IvectorExtractor::M_.
Referenced by IvectorExtractorStats::AccStatsForUtterance(), OnlineIvectorExtractionInfo::Check(), IvectorExtractorStats::CheckDims(), IvectorExtractor::ComputeDerivedVars(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::GetAcousticAuxfVariance(), IvectorExtractorStats::IvectorExtractorStats(), IvectorExtractorStats::IvectorVarianceDiagnostic(), IvectorExtractTask::operator()(), kaldi::RunPerSpeaker(), and IvectorExtractorStats::UpdateVariances().
double GetAcousticAuxf | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
const VectorBase< double > & | mean, | ||
const SpMatrix< double > * | var = NULL |
||
) | const |
Returns the data-dependent part of the log-likelihood objective function, summed over frames.
If variance pointer is NULL, uses point value.
Definition at line 419 of file ivector-extractor.cc.
References IvectorExtractorUtteranceStats::gamma_, IvectorExtractor::GetAcousticAuxfGconst(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::GetAcousticAuxfVariance(), IvectorExtractor::GetAcousticAuxfWeight(), KALDI_VLOG, and VectorBase< Real >::Sum().
Referenced by IvectorExtractor::GetAuxf().
double GetAcousticAuxfGconst | ( | const IvectorExtractorUtteranceStats & | utt_stats | ) | const |
This returns the part of the acoustic auxf that relates to the gconsts of the Gaussians.
Definition at line 490 of file ivector-extractor.cc.
References IvectorExtractorUtteranceStats::gamma_, IvectorExtractor::gconsts_, and kaldi::VecVec().
Referenced by IvectorExtractor::GetAcousticAuxf().
double GetAcousticAuxfMean | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
const VectorBase< double > & | mean, | ||
const SpMatrix< double > * | var = NULL |
||
) | const |
This returns just the part of the acoustic auxf that relates to the speaker-dependent means (and how they differ from the data means).
Definition at line 460 of file ivector-extractor.cc.
References VectorBase< Real >::AddMatVec(), VectorBase< Real >::AddSpVec(), PackedMatrix< Real >::Data(), IvectorExtractor::FeatDim(), IvectorExtractorUtteranceStats::gamma_, rnnlm::i, IvectorExtractor::IvectorDim(), kaldi::kTrans, IvectorExtractor::M_, IvectorExtractor::NumGauss(), MatrixBase< Real >::Row(), IvectorExtractor::Sigma_inv_, kaldi::TraceSpSp(), IvectorExtractor::U_, kaldi::VecSpVec(), kaldi::VecVec(), and IvectorExtractorUtteranceStats::X_.
Referenced by IvectorExtractor::GetAcousticAuxf().
double GetAcousticAuxfVariance | ( | const IvectorExtractorUtteranceStats & | utt_stats | ) | const |
This returns just the part of the acoustic auxf that relates to the variance of the utt_stats (i.e.
which would be zero if the utt_stats had zero variance. This does not depend on the iVector, it's included as an aid to debugging. We can only get this if we stored the S statistics. If not we assume the variance is generated from the model.
Definition at line 497 of file ivector-extractor.cc.
References SpMatrix< Real >::AddVec2(), IvectorExtractor::FeatDim(), IvectorExtractorUtteranceStats::gamma_, rnnlm::i, IvectorExtractor::NumGauss(), MatrixBase< Real >::Row(), IvectorExtractorUtteranceStats::S_, PackedMatrix< Real >::Scale(), VectorBase< Real >::Scale(), IvectorExtractor::Sigma_inv_, VectorBase< Real >::Sum(), kaldi::TraceSpSp(), and IvectorExtractorUtteranceStats::X_.
Referenced by IvectorExtractor::GetAcousticAuxf().
double GetAcousticAuxfWeight | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
const VectorBase< double > & | mean, | ||
const SpMatrix< double > * | var = NULL |
||
) | const |
This returns the part of the acoustic auxf that relates to the Gaussian-specific weights.
(impacted by the iVector only if we are using w_).
Definition at line 285 of file ivector-extractor.cc.
References VectorBase< Real >::Add(), SpMatrix< Real >::AddMat2Vec(), VectorBase< Real >::AddMatVec(), MatrixBase< Real >::AddVecVec(), VectorBase< Real >::ApplyExp(), VectorBase< Real >::ApplyLog(), IvectorExtractorUtteranceStats::gamma_, IvectorExtractor::IvectorDependentWeights(), IvectorExtractor::IvectorDim(), kaldi::kNoTrans, kaldi::kTrans, VectorBase< Real >::LogSumExp(), IvectorExtractor::NumGauss(), kaldi::TraceSpSp(), kaldi::VecVec(), IvectorExtractor::w_, and IvectorExtractor::w_vec_.
Referenced by IvectorExtractor::GetAcousticAuxf().
double GetAuxf | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
const VectorBase< double > & | mean, | ||
const SpMatrix< double > * | var = NULL |
||
) | const |
Returns the log-likelihood objective function, summed over frames, for this distribution of iVectors (a point distribution, if var == NULL).
Definition at line 331 of file ivector-extractor.cc.
References IvectorExtractorUtteranceStats::gamma_, IvectorExtractor::GetAcousticAuxf(), IvectorExtractor::GetPriorAuxf(), KALDI_VLOG, and VectorBase< Real >::Sum().
Referenced by IvectorExtractorStats::CommitStatsForUtterance(), IvectorExtractor::GetIvectorDistribution(), IvectorExtractTask::operator()(), kaldi::RunPerSpeaker(), and kaldi::TestIvectorExtraction().
void GetIvectorDistMean | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
VectorBase< double > * | linear, | ||
SpMatrix< double > * | quadratic | ||
) | const |
Gets the linear and quadratic terms in the distribution over iVectors, but only the terms arising from the Gaussian means (i.e.
not the weights or the priors). Setup is log p(x) x^T linear -0.5 x^T quadratic x. This function *adds to* the output rather than setting it.
Definition at line 257 of file ivector-extractor.cc.
References VectorBase< Real >::AddMatVec(), PackedMatrix< Real >::Data(), IvectorExtractorUtteranceStats::gamma_, rnnlm::i, IvectorExtractor::IvectorDim(), kaldi::kTrans, IvectorExtractor::NumGauss(), IvectorExtractor::Sigma_inv_M_, IvectorExtractor::U_, and IvectorExtractorUtteranceStats::X_.
Referenced by IvectorExtractor::GetIvectorDistribution().
void GetIvectorDistPrior | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
VectorBase< double > * | linear, | ||
SpMatrix< double > * | quadratic | ||
) | const |
Gets the linear and quadratic terms in the distribution over iVectors, that arise from the prior.
Adds to the outputs, rather than setting them.
The inverse-variance for the prior is the unit matrix.
Definition at line 274 of file ivector-extractor.cc.
References PackedMatrix< Real >::AddToDiag(), and IvectorExtractor::prior_offset_.
Referenced by IvectorExtractor::GetIvectorDistribution().
void GetIvectorDistribution | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
VectorBase< double > * | mean, | ||
SpMatrix< double > * | var | ||
) | const |
Gets the distribution over ivectors (or at least, a Gaussian approximation to it).
The output "var" may be NULL if you don't need it. "mean", and "var", if present, must be the correct dimension (this->IvectorDim()). If you only need a point estimate of the iVector, get the mean only.
Definition at line 63 of file ivector-extractor.cc.
References VectorBase< Real >::AddSpVec(), VectorBase< Real >::AddVec(), SpMatrix< Real >::Cond(), SpMatrix< Real >::CopyFromSp(), VectorBase< Real >::CopyFromVec(), VectorBase< Real >::Dim(), IvectorExtractor::GetAuxf(), IvectorExtractor::GetIvectorDistMean(), IvectorExtractor::GetIvectorDistPrior(), IvectorExtractor::GetIvectorDistWeight(), kaldi::GetVerboseLevel(), SpMatrix< Real >::Invert(), IvectorExtractor::InvertWithFlooring(), IvectorExtractor::IvectorDependentWeights(), IvectorExtractor::IvectorDim(), KALDI_VLOG, VectorBase< Real >::Norm(), VectorBase< Real >::Range(), and SpMatrix< Real >::Trace().
Referenced by IvectorExtractorStats::CommitStatsForUtterance(), IvectorExtractTask::operator()(), kaldi::RunPerSpeaker(), and kaldi::TestIvectorExtraction().
void GetIvectorDistWeight | ( | const IvectorExtractorUtteranceStats & | utt_stats, |
const VectorBase< double > & | mean, | ||
VectorBase< double > * | linear, | ||
SpMatrix< double > * | quadratic | ||
) | const |
Gets the linear and quadratic terms in the distribution over iVectors, that arise from the weights (if applicable).
The "mean" parameter is the iVector point that we compute the expansion around (it's a quadratic approximation of a nonlinear function, but with a "safety factor" (the "max" stuff). Adds to the outputs, rather than setting them.
Definition at line 221 of file ivector-extractor.cc.
References SpMatrix< Real >::AddMat2Vec(), VectorBase< Real >::AddMatVec(), VectorBase< Real >::ApplySoftMax(), IvectorExtractorUtteranceStats::gamma_, rnnlm::i, IvectorExtractor::IvectorDependentWeights(), kaldi::kNoTrans, kaldi::kTrans, IvectorExtractor::NumGauss(), VectorBase< Real >::Sum(), and IvectorExtractor::w_.
Referenced by IvectorExtractor::GetIvectorDistribution().
double GetPriorAuxf | ( | const VectorBase< double > & | mean, |
const SpMatrix< double > * | var = NULL |
||
) | const |
Returns the prior-related part of the log-likelihood objective function.
Note: if var != NULL, this quantity is a *probability*, otherwise it is a likelihood (and the corresponding probability is zero).
Definition at line 381 of file ivector-extractor.cc.
References VectorBase< Real >::Dim(), kaldi::GetLogDetNoFailure(), IvectorExtractor::IvectorDim(), KALDI_ASSERT, M_LOG_2PI, PackedMatrix< Real >::NumRows(), IvectorExtractor::prior_offset_, SpMatrix< Real >::Trace(), and kaldi::VecVec().
Referenced by IvectorExtractor::GetAuxf().
|
staticprivate |
Definition at line 49 of file ivector-extractor.cc.
References SpMatrix< Real >::AddMat2Vec(), VectorBase< Real >::ApplyFloor(), SpMatrix< Real >::Eig(), VectorBase< Real >::InvertElements(), kaldi::kNoTrans, and PackedMatrix< Real >::NumRows().
Referenced by IvectorExtractor::GetIvectorDistribution(), and IvectorExtractorStats::IvectorVarianceDiagnostic().
|
inline |
Definition at line 245 of file ivector-extractor.h.
References rnnlm::i.
Referenced by OnlineIvectorEstimationStats::AccStats(), IvectorExtractorStats::CheckDims(), IvectorExtractorStats::CommitStatsForUtterance(), IvectorExtractor::GetAcousticAuxfWeight(), IvectorExtractor::GetIvectorDistribution(), IvectorExtractor::GetIvectorDistWeight(), IvectorExtractorStats::GetOrthogonalIvectorTransform(), IvectorExtractorStats::IvectorExtractorStats(), kaldi::TestIvectorExtraction(), IvectorExtractor::TransformIvectors(), and IvectorExtractorStats::Update().
int32 IvectorDim | ( | ) | const |
Definition at line 33 of file ivector-extractor.cc.
References IvectorExtractor::M_.
Referenced by OnlineIvectorEstimationStats::AccStats(), IvectorExtractorStats::CheckDims(), IvectorExtractorStats::CommitStatsForUtterance(), IvectorExtractorStats::CommitStatsForW(), IvectorExtractorStats::CommitStatsForWPoint(), IvectorExtractor::ComputeDerivedVars(), kaldi::EstimateIvectorsOnline(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::GetAcousticAuxfWeight(), OnlineIvectorEstimationStats::GetIvector(), IvectorExtractor::GetIvectorDistMean(), IvectorExtractor::GetIvectorDistribution(), IvectorExtractorStats::GetOrthogonalIvectorTransform(), IvectorExtractor::GetPriorAuxf(), OnlineNnet2FeaturePipelineInfo::IvectorDim(), IvectorExtractorStats::IvectorExtractorStats(), main(), OnlineIvectorFeature::OnlineIvectorFeature(), IvectorExtractTask::operator()(), kaldi::RunPerSpeaker(), kaldi::TestIvectorExtraction(), IvectorExtractorStats::UpdatePrior(), IvectorExtractorStats::UpdateProjection(), IvectorExtractorStats::UpdateVariances(), and IvectorExtractorStats::UpdateWeight().
int32 NumGauss | ( | ) | const |
Definition at line 38 of file ivector-extractor.cc.
References IvectorExtractor::M_.
Referenced by IvectorExtractorStats::AccStatsForUtterance(), IvectorExtractorStats::CheckDims(), IvectorExtractorStats::CommitStatsForM(), IvectorExtractorStats::CommitStatsForSigma(), IvectorExtractorStats::CommitStatsForWPoint(), IvectorExtractor::ComputeDerivedVars(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::GetAcousticAuxfVariance(), IvectorExtractor::GetAcousticAuxfWeight(), IvectorExtractor::GetIvectorDistMean(), IvectorExtractor::GetIvectorDistWeight(), IvectorExtractorStats::GetOrthogonalIvectorTransform(), IvectorExtractorStats::IvectorExtractorStats(), IvectorExtractorStats::IvectorVarianceDiagnostic(), IvectorExtractTask::operator()(), kaldi::RunPerSpeaker(), kaldi::TestIvectorExtraction(), IvectorExtractor::TransformIvectors(), IvectorExtractorStats::UpdateProjection(), IvectorExtractorStats::UpdateProjections(), IvectorExtractorStats::UpdateVariances(), IvectorExtractorStats::UpdateWeight(), and IvectorExtractorStats::UpdateWeights().
|
inline |
The distribution over iVectors, in our formulation, is not centered at zero; its first dimension has a nonzero offset.
This function returns that offset.
Definition at line 159 of file ivector-extractor.h.
Referenced by kaldi::EstimateIvectorsOnline(), main(), OnlineIvectorFeature::OnlineIvectorFeature(), IvectorExtractTask::operator()(), kaldi::RunPerSpeaker(), kaldi::TestIvectorExtraction(), and IvectorExtractTask::~IvectorExtractTask().
void Read | ( | std::istream & | is, |
bool | binary | ||
) |
Definition at line 828 of file ivector-extractor.cc.
References kaldi::ExpectToken(), rnnlm::i, KALDI_ASSERT, OnlineIvectorEstimationStats::prior_offset_, OnlineIvectorEstimationStats::Read(), and kaldi::ReadBasicType().
Referenced by kaldi::TestIvectorExtractorIO().
|
protected |
Definition at line 523 of file ivector-extractor.cc.
References MatrixBase< Real >::AddMatMat(), rnnlm::i, MatrixBase< Real >::Invert(), IvectorExtractor::IvectorDependentWeights(), KALDI_LOG, kaldi::kNoTrans, IvectorExtractor::M_, IvectorExtractor::NumGauss(), IvectorExtractor::prior_offset_, and IvectorExtractor::w_.
Referenced by IvectorExtractorStats::UpdatePrior().
void Write | ( | std::ostream & | os, |
bool | binary | ||
) | const |
Definition at line 807 of file ivector-extractor.cc.
References rnnlm::i, KALDI_ASSERT, OnlineIvectorEstimationStats::prior_offset_, OnlineIvectorEstimationStats::Write(), kaldi::WriteBasicType(), and kaldi::WriteToken().
Referenced by kaldi::TestIvectorExtractorIO().
|
friend |
Definition at line 254 of file ivector-extractor.h.
|
friend |
Definition at line 138 of file ivector-extractor.h.
|
friend |
Definition at line 139 of file ivector-extractor.h.
|
protected |
The constant term in the log-likelihood of each Gaussian (not counting any weight).
Definition at line 291 of file ivector-extractor.h.
Referenced by IvectorExtractor::ComputeDerivedVars(), and IvectorExtractor::GetAcousticAuxfGconst().
|
protected |
Ivector-subspace projection matrices, dimension is [I][D][S].
The I'th matrix projects from ivector-space to Gaussian mean. There is no mean offset to add– we deal with it by having a prior with a nonzero mean.
Definition at line 276 of file ivector-extractor.h.
Referenced by IvectorExtractor::ComputeDerivedVars(), IvectorExtractor::FeatDim(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::IvectorDim(), IvectorExtractor::IvectorExtractor(), IvectorExtractorStats::IvectorVarianceDiagnostic(), IvectorExtractor::NumGauss(), IvectorExtractor::TransformIvectors(), IvectorExtractorStats::UpdateProjection(), and IvectorExtractorStats::UpdateVariances().
|
protected |
1st dim of the prior over the ivector has an offset, so it is not zero.
This is used to handle the global offset of the speaker-adapted means in a simple way.
Definition at line 284 of file ivector-extractor.h.
Referenced by OnlineIvectorEstimationStats::AccStats(), OnlineIvectorEstimationStats::DefaultObjf(), OnlineIvectorEstimationStats::GetIvector(), IvectorExtractor::GetIvectorDistPrior(), IvectorExtractor::GetPriorAuxf(), IvectorExtractor::IvectorExtractor(), OnlineIvectorEstimationStats::Read(), OnlineIvectorEstimationStats::Scale(), IvectorExtractor::TransformIvectors(), IvectorExtractorStats::UpdatePrior(), and OnlineIvectorEstimationStats::Write().
|
protected |
Inverse variances of speaker-adapted model, dimension [I][D][D].
Definition at line 279 of file ivector-extractor.h.
Referenced by IvectorExtractor::ComputeDerivedVars(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::GetAcousticAuxfVariance(), IvectorExtractor::IvectorExtractor(), IvectorExtractorStats::IvectorVarianceDiagnostic(), IvectorExtractorStats::UpdateProjection(), and IvectorExtractorStats::UpdateVariances().
|
protected |
The product of Sigma_inv_[i] with M_[i].
Definition at line 301 of file ivector-extractor.h.
Referenced by OnlineIvectorEstimationStats::AccStats(), IvectorExtractor::ComputeDerivedVars(), and IvectorExtractor::GetIvectorDistMean().
|
protected |
U_i = M_i^T ^{-1} M_i is a quantity that comes up in ivector estimation.
This is conceptually a std::vector<SpMatrix<double> >, but we store the packed-data in the rows of a matrix, which gives us an efficiency improvement (we can use matrix-multiplies).
Definition at line 298 of file ivector-extractor.h.
Referenced by OnlineIvectorEstimationStats::AccStats(), IvectorExtractor::ComputeDerivedVars(), IvectorExtractor::GetAcousticAuxfMean(), IvectorExtractor::GetIvectorDistMean(), and IvectorExtractorStats::GetOrthogonalIvectorTransform().
|
protected |
Weight projection vectors, if used. Dimension is [I][S].
Definition at line 264 of file ivector-extractor.h.
Referenced by IvectorExtractorStats::CommitStatsForWPoint(), IvectorExtractor::GetAcousticAuxfWeight(), IvectorExtractor::GetIvectorDistWeight(), IvectorExtractor::IvectorExtractor(), IvectorExtractor::TransformIvectors(), and IvectorExtractorStats::UpdateWeight().
|
protected |
If we are not using weight-projection vectors, stores the Gaussian mixture weights from the UBM.
This does not affect the iVector; it is only useful as a way of making sure the log-probs are comparable between systems with and without weight projection matrices.
Definition at line 270 of file ivector-extractor.h.
Referenced by IvectorExtractor::GetAcousticAuxfWeight(), IvectorExtractorStats::GetOrthogonalIvectorTransform(), and IvectorExtractor::IvectorExtractor().