#include <nnet-component.h>
Public Member Functions | |
AffineComponent (const AffineComponent &other) | |
AffineComponent (const CuMatrixBase< BaseFloat > &linear_params, const CuVectorBase< BaseFloat > &bias_params, BaseFloat learning_rate) | |
virtual int32 | InputDim () const |
Get size of input vectors. More... | |
virtual int32 | OutputDim () const |
Get size of output vectors. More... | |
void | Init (BaseFloat learning_rate, int32 input_dim, int32 output_dim, BaseFloat param_stddev, BaseFloat bias_stddev) |
void | Init (BaseFloat learning_rate, std::string matrix_filename) |
virtual void | Resize (int32 input_dim, int32 output_dim) |
Component * | CollapseWithNext (const AffineComponent &next) const |
Component * | CollapseWithNext (const FixedAffineComponent &next) const |
Component * | CollapseWithNext (const FixedScaleComponent &next) const |
Component * | CollapseWithPrevious (const FixedAffineComponent &prev) const |
virtual std::string | Info () const |
virtual void | InitFromString (std::string args) |
Initialize, typically from a line of a config file. More... | |
AffineComponent () | |
virtual std::string | Type () const |
virtual bool | BackpropNeedsInput () const |
virtual bool | BackpropNeedsOutput () const |
virtual void | Propagate (const ChunkInfo &in_info, const ChunkInfo &out_info, const CuMatrixBase< BaseFloat > &in, CuMatrixBase< BaseFloat > *out) const |
Perform forward pass propagation Input->Output. More... | |
virtual void | Scale (BaseFloat scale) |
This new virtual function scales the parameters by this amount. More... | |
virtual void | Add (BaseFloat alpha, const UpdatableComponent &other) |
This new virtual function adds the parameters of another updatable component, times some constant, to the current parameters. More... | |
virtual void | Backprop (const ChunkInfo &in_info, const ChunkInfo &out_info, const CuMatrixBase< BaseFloat > &in_value, const CuMatrixBase< BaseFloat > &out_value, const CuMatrixBase< BaseFloat > &out_deriv, Component *to_update, CuMatrix< BaseFloat > *in_deriv) const |
Perform backward pass propagation of the derivative, and also either update the model (if to_update == this) or update another model or compute the model derivative (otherwise). More... | |
virtual void | SetZero (bool treat_as_gradient) |
Set parameters to zero, and if treat_as_gradient is true, we'll be treating this as a gradient so set the learning rate to 1 and make any other changes necessary (there's a variable we have to set for the MixtureProbComponent). More... | |
virtual void | Read (std::istream &is, bool binary) |
virtual void | Write (std::ostream &os, bool binary) const |
Write component to stream. More... | |
virtual BaseFloat | DotProduct (const UpdatableComponent &other) const |
Here, "other" is a component of the same specific type. More... | |
virtual Component * | Copy () const |
Copy component (deep copy). More... | |
virtual void | PerturbParams (BaseFloat stddev) |
We introduce a new virtual function that only applies to class UpdatableComponent. More... | |
virtual void | SetParams (const VectorBase< BaseFloat > &bias, const MatrixBase< BaseFloat > &linear) |
const CuVector< BaseFloat > & | BiasParams () |
const CuMatrix< BaseFloat > & | LinearParams () |
virtual int32 | GetParameterDim () const |
The following new virtual function returns the total dimension of the parameters in this class. More... | |
virtual void | Vectorize (VectorBase< BaseFloat > *params) const |
Turns the parameters into vector form. More... | |
virtual void | UnVectorize (const VectorBase< BaseFloat > ¶ms) |
Converts the parameters from vector form. More... | |
virtual void | LimitRank (int32 dimension, AffineComponent **a, AffineComponent **b) const |
This function is for getting a low-rank approximations of this AffineComponent by two AffineComponents. More... | |
void | Widen (int32 new_dimension, BaseFloat param_stddev, BaseFloat bias_stddev, std::vector< NonlinearComponent *> c2, AffineComponent *c3) |
This function is implemented in widen-nnet.cc. More... | |
Public Member Functions inherited from UpdatableComponent | |
UpdatableComponent (const UpdatableComponent &other) | |
void | Init (BaseFloat learning_rate) |
UpdatableComponent (BaseFloat learning_rate) | |
UpdatableComponent () | |
virtual | ~UpdatableComponent () |
void | SetLearningRate (BaseFloat lrate) |
Sets the learning rate of gradient descent. More... | |
BaseFloat | LearningRate () const |
Gets the learning rate of gradient descent. More... | |
Public Member Functions inherited from Component | |
Component () | |
virtual int32 | Index () const |
Returns the index in the sequence of layers in the neural net; intended only to be used in debugging information. More... | |
virtual void | SetIndex (int32 index) |
virtual std::vector< int32 > | Context () const |
Return a vector describing the temporal context this component requires for each frame of output, as a sorted list. More... | |
void | Propagate (const ChunkInfo &in_info, const ChunkInfo &out_info, const CuMatrixBase< BaseFloat > &in, CuMatrix< BaseFloat > *out) const |
A non-virtual propagate function that first resizes output if necessary. More... | |
virtual | ~Component () |
Protected Member Functions | |
virtual void | Update (const CuMatrixBase< BaseFloat > &in_value, const CuMatrixBase< BaseFloat > &out_deriv) |
virtual void | UpdateSimple (const CuMatrixBase< BaseFloat > &in_value, const CuMatrixBase< BaseFloat > &out_deriv) |
const AffineComponent & | operator= (const AffineComponent &other) |
Protected Attributes | |
CuMatrix< BaseFloat > | linear_params_ |
CuVector< BaseFloat > | bias_params_ |
bool | is_gradient_ |
Protected Attributes inherited from UpdatableComponent | |
BaseFloat | learning_rate_ |
learning rate (0.0..0.01) More... | |
Friends | |
class | SoftmaxComponent |
class | AffineComponentPreconditionedOnline |
Additional Inherited Members | |
Static Public Member Functions inherited from Component | |
static Component * | ReadNew (std::istream &is, bool binary) |
Read component from stream. More... | |
static Component * | NewFromString (const std::string &initializer_line) |
Initialize the Component from one line that will contain first the type, e.g. More... | |
static Component * | NewComponentOfType (const std::string &type) |
Return a new Component of the given type e.g. More... | |
Definition at line 843 of file nnet-component.h.
AffineComponent | ( | const AffineComponent & | other | ) |
Definition at line 1017 of file nnet-component.cc.
AffineComponent | ( | const CuMatrixBase< BaseFloat > & | linear_params, |
const CuVectorBase< BaseFloat > & | bias_params, | ||
BaseFloat | learning_rate | ||
) |
Definition at line 1023 of file nnet-component.cc.
References CuVectorBase< Real >::Dim(), AffineComponent::is_gradient_, KALDI_ASSERT, and CuMatrixBase< Real >::NumRows().
|
inline |
|
virtual |
This new virtual function adds the parameters of another updatable component, times some constant, to the current parameters.
Implements UpdatableComponent.
Definition at line 1009 of file nnet-component.cc.
References AffineComponent::bias_params_, KALDI_ASSERT, and AffineComponent::linear_params_.
|
virtual |
Perform backward pass propagation of the derivative, and also either update the model (if to_update == this) or update another model or compute the model derivative (otherwise).
Note: in_value and out_value are the values of the input and output of the component, and these may be dummy variables if respectively BackpropNeedsInput() or BackpropNeedsOutput() return false for that component (not all components need these).
num_chunks lets us treat the input matrix as contiguous-in-time chunks of equal size; it only matters if splicing is involved.
Implements Component.
Definition at line 1176 of file nnet-component.cc.
References CuMatrixBase< Real >::AddMatMat(), AffineComponent::InputDim(), AffineComponent::is_gradient_, kaldi::kNoTrans, AffineComponent::linear_params_, CuMatrixBase< Real >::NumRows(), CuMatrix< Real >::Resize(), AffineComponent::Update(), and AffineComponent::UpdateSimple().
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from Component.
Definition at line 879 of file nnet-component.h.
References kaldi::cu::Copy(), kaldi::nnet3::DotProduct(), kaldi::nnet3::PerturbParams(), and Component::Propagate().
Definition at line 903 of file nnet-component.h.
Referenced by kaldi::nnet2::FixNnet(), and LimitRankClass::operator()().
Component * CollapseWithNext | ( | const AffineComponent & | next | ) | const |
Definition at line 1295 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::Copy(), AffineComponent::InputDim(), KALDI_ASSERT, kaldi::kNoTrans, AffineComponent::linear_params_, and AffineComponent::OutputDim().
Referenced by Nnet::Collapse(), and Nnet::ResizeOutputLayer().
Component * CollapseWithNext | ( | const FixedAffineComponent & | next | ) | const |
Definition at line 1313 of file nnet-component.cc.
References FixedAffineComponent::bias_params_, FixedAffineComponent::Copy(), AffineComponent::InputDim(), KALDI_ASSERT, kaldi::kNoTrans, FixedAffineComponent::linear_params_, and FixedAffineComponent::OutputDim().
Component * CollapseWithNext | ( | const FixedScaleComponent & | next | ) | const |
Definition at line 1329 of file nnet-component.cc.
References AffineComponent::Copy(), FixedScaleComponent::InputDim(), KALDI_ASSERT, AffineComponent::OutputDim(), and FixedScaleComponent::scales_.
Component * CollapseWithPrevious | ( | const FixedAffineComponent & | prev | ) | const |
Definition at line 1343 of file nnet-component.cc.
References AffineComponent::bias_params_, FixedAffineComponent::bias_params_, FixedAffineComponent::Copy(), FixedAffineComponent::InputDim(), KALDI_ASSERT, kaldi::kNoTrans, AffineComponent::linear_params_, FixedAffineComponent::linear_params_, and AffineComponent::OutputDim().
|
virtual |
Copy component (deep copy).
Implements Component.
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 1080 of file nnet-component.cc.
References AffineComponent::AffineComponent(), AffineComponent::bias_params_, AffineComponent::is_gradient_, UpdatableComponent::learning_rate_, and AffineComponent::linear_params_.
Referenced by AffineComponent::CollapseWithNext(), and AffineComponent::LimitRank().
|
virtual |
Here, "other" is a component of the same specific type.
This function computes the dot product in parameters, and is computed while automatically adjusting learning rates; typically, one of the two will actually contain the gradient.
Implements UpdatableComponent.
Definition at line 1089 of file nnet-component.cc.
References AffineComponent::bias_params_, kaldi::kTrans, AffineComponent::linear_params_, kaldi::TraceMatMat(), and kaldi::VecVec().
|
virtual |
The following new virtual function returns the total dimension of the parameters in this class.
E.g. used for L-BFGS update
Reimplemented from UpdatableComponent.
Definition at line 1247 of file nnet-component.cc.
References AffineComponent::InputDim(), and AffineComponent::OutputDim().
|
virtual |
Reimplemented from UpdatableComponent.
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 1063 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::InputDim(), kaldi::kTrans, UpdatableComponent::LearningRate(), AffineComponent::linear_params_, AffineComponent::OutputDim(), kaldi::TraceMatMat(), AffineComponent::Type(), and kaldi::VecVec().
void Init | ( | BaseFloat | learning_rate, |
int32 | input_dim, | ||
int32 | output_dim, | ||
BaseFloat | param_stddev, | ||
BaseFloat | bias_stddev | ||
) |
Definition at line 1096 of file nnet-component.cc.
References AffineComponent::bias_params_, UpdatableComponent::Init(), KALDI_ASSERT, and AffineComponent::linear_params_.
Referenced by kaldi::nnet2::GenRandomNnet(), AffineComponent::InitFromString(), AffineComponentPreconditioned::InitFromString(), AffineComponentPreconditionedOnline::InitFromString(), and kaldi::nnet2::UnitTestAffineComponent().
void Init | ( | BaseFloat | learning_rate, |
std::string | matrix_filename | ||
) |
Definition at line 1109 of file nnet-component.cc.
References AffineComponent::bias_params_, UpdatableComponent::Init(), KALDI_ASSERT, AffineComponent::linear_params_, CuMatrixBase< Real >::NumCols(), CuMatrixBase< Real >::NumRows(), CuMatrixBase< Real >::Range(), and kaldi::ReadKaldiObject().
|
virtual |
Initialize, typically from a line of a config file.
The "args" will contain any parameters that need to be passed to the Component, e.g. dimensions.
Implements Component.
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 1122 of file nnet-component.cc.
References AffineComponent::Init(), AffineComponent::InputDim(), KALDI_ASSERT, KALDI_ERR, UpdatableComponent::learning_rate_, AffineComponent::OutputDim(), and kaldi::nnet2::ParseFromString().
Referenced by kaldi::nnet2::UnitTestAffineComponent().
|
inlinevirtual |
Get size of input vectors.
Implements Component.
Definition at line 852 of file nnet-component.h.
Referenced by AffineComponent::Backprop(), SpliceComponent::Backprop(), SpliceMaxComponent::Backprop(), BlockAffineComponent::Backprop(), SumGroupComponent::Backprop(), AffineComponent::CollapseWithNext(), AffineComponent::GetParameterDim(), BlockAffineComponent::GetParameterDim(), AffineComponent::Info(), AffineComponentPreconditioned::Info(), AffineComponentPreconditionedOnline::Info(), AffineComponent::InitFromString(), AffineComponentPreconditioned::InitFromString(), AffineComponentPreconditionedOnline::InitFromString(), AffineComponent::LimitRank(), SoftmaxComponent::MixUp(), DctComponent::Propagate(), DropoutComponent::Propagate(), AdditiveNoiseComponent::Propagate(), Nnet::ResizeOutputLayer(), AffineComponent::UnVectorize(), AffineComponent::Vectorize(), AffineComponent::Widen(), and kaldi::nnet2::WidenNnet().
|
virtual |
This function is for getting a low-rank approximations of this AffineComponent by two AffineComponents.
Definition at line 1261 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::Copy(), MatrixBase< Real >::DestructiveSvd(), AffineComponent::InputDim(), KALDI_ASSERT, KALDI_LOG, kaldi::kCopyData, kaldi::kSetZero, AffineComponent::linear_params_, MatrixBase< Real >::MulRowsVec(), MatrixBase< Real >::NumCols(), MatrixBase< Real >::NumRows(), Vector< Real >::Resize(), Matrix< Real >::Resize(), kaldi::SortSvd(), and VectorBase< Real >::Sum().
Referenced by Nnet::LimitRankOfLastLayer().
Definition at line 904 of file nnet-component.h.
Referenced by kaldi::nnet2::FixNnet(), and LimitRankClass::operator()().
|
protected |
|
inlinevirtual |
Get size of output vectors.
Implements Component.
Definition at line 853 of file nnet-component.h.
Referenced by SpliceComponent::Backprop(), PermuteComponent::Backprop(), DctComponent::Backprop(), AffineComponent::CollapseWithNext(), AffineComponent::CollapseWithPrevious(), AffineComponent::GetParameterDim(), BlockAffineComponent::GetParameterDim(), AffineComponent::Info(), AffineComponentPreconditioned::Info(), AffineComponentPreconditionedOnline::Info(), AffineComponent::InitFromString(), AffineComponentPreconditioned::InitFromString(), AffineComponentPreconditionedOnline::InitFromString(), AffineComponent::UnVectorize(), AffineComponent::Vectorize(), AffineComponent::Widen(), and kaldi::nnet2::WidenNnet().
|
virtual |
We introduce a new virtual function that only applies to class UpdatableComponent.
This is used in testing.
Implements UpdatableComponent.
Definition at line 1053 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::linear_params_, CuVectorBase< Real >::SetRandn(), and CuMatrixBase< Real >::SetRandn().
|
virtual |
Perform forward pass propagation Input->Output.
Each row is one frame or training example. Interpreted as "num_chunks" equally sized chunks of frames; this only matters for layers that do things like context splicing. Typically this variable will either be 1 (when we're processing a single contiguous chunk of data) or will be the same as in.NumFrames(), but other values are possible if some layers do splicing.
Implements Component.
Definition at line 1155 of file nnet-component.cc.
References CuMatrixBase< Real >::AddMatMat(), AffineComponent::bias_params_, ChunkInfo::CheckSize(), CuMatrixBase< Real >::CopyRowsFromVec(), KALDI_ASSERT, kaldi::kNoTrans, kaldi::kTrans, AffineComponent::linear_params_, and ChunkInfo::NumChunks().
|
virtual |
Implements Component.
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 1199 of file nnet-component.cc.
References AffineComponent::bias_params_, kaldi::nnet2::ExpectOneOrTwoTokens(), kaldi::ExpectToken(), AffineComponent::is_gradient_, KALDI_ASSERT, UpdatableComponent::learning_rate_, AffineComponent::linear_params_, CuVector< Real >::Read(), kaldi::ReadBasicType(), kaldi::ReadToken(), and AffineComponent::Type().
Reimplemented in AffineComponentPreconditionedOnline.
Definition at line 1003 of file nnet-component.cc.
References KALDI_ASSERT.
Referenced by Nnet::ResizeOutputLayer().
|
virtual |
This new virtual function scales the parameters by this amount.
Implements UpdatableComponent.
Definition at line 997 of file nnet-component.cc.
|
virtual |
Definition at line 1046 of file nnet-component.cc.
References AffineComponent::bias_params_, KALDI_ASSERT, and AffineComponent::linear_params_.
Referenced by kaldi::nnet2::FixNnet(), SoftmaxComponent::MixUp(), and LimitRankClass::operator()().
|
virtual |
Set parameters to zero, and if treat_as_gradient is true, we'll be treating this as a gradient so set the learning rate to 1 and make any other changes necessary (there's a variable we have to set for the MixtureProbComponent).
Implements UpdatableComponent.
Definition at line 1036 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::is_gradient_, AffineComponent::linear_params_, and UpdatableComponent::SetLearningRate().
|
inlinevirtual |
Implements Component.
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 877 of file nnet-component.h.
Referenced by AffineComponent::Info(), AffineComponentPreconditioned::Info(), AffineComponent::Read(), AffineComponentPreconditioned::Read(), AffineComponentPreconditionedOnline::Read(), AffineComponent::Write(), and AffineComponentPreconditioned::Write().
|
virtual |
Converts the parameters from vector form.
Reimplemented from UpdatableComponent.
Definition at line 1255 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::InputDim(), AffineComponent::linear_params_, AffineComponent::OutputDim(), and VectorBase< Real >::Range().
|
inlineprotectedvirtual |
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 925 of file nnet-component.h.
Referenced by AffineComponent::Backprop().
|
protectedvirtual |
Definition at line 1169 of file nnet-component.cc.
References AffineComponent::bias_params_, kaldi::kNoTrans, kaldi::kTrans, UpdatableComponent::learning_rate_, and AffineComponent::linear_params_.
Referenced by AffineComponent::Backprop(), and BlockAffineComponentPreconditioned::Update().
|
virtual |
Turns the parameters into vector form.
We put the vector form on the CPU, because in the kinds of situations where we do this, we'll tend to use too much memory for the GPU.
Reimplemented from UpdatableComponent.
Definition at line 1250 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::InputDim(), AffineComponent::linear_params_, AffineComponent::OutputDim(), and VectorBase< Real >::Range().
void Widen | ( | int32 | new_dimension, |
BaseFloat | param_stddev, | ||
BaseFloat | bias_stddev, | ||
std::vector< NonlinearComponent *> | c2, | ||
AffineComponent * | c3 | ||
) |
This function is implemented in widen-nnet.cc.
Definition at line 28 of file widen-nnet.cc.
References AffineComponent::bias_params_, rnnlm::i, AffineComponent::InputDim(), KALDI_ASSERT, KALDI_WARN, kaldi::kCopyData, AffineComponent::linear_params_, and AffineComponent::OutputDim().
Referenced by kaldi::nnet2::WidenNnet().
|
virtual |
Write component to stream.
Implements Component.
Reimplemented in AffineComponentPreconditionedOnline, and AffineComponentPreconditioned.
Definition at line 1231 of file nnet-component.cc.
References AffineComponent::bias_params_, AffineComponent::is_gradient_, UpdatableComponent::learning_rate_, AffineComponent::linear_params_, AffineComponent::Type(), kaldi::WriteBasicType(), and kaldi::WriteToken().
|
friend |
Definition at line 923 of file nnet-component.h.
|
friend |
Definition at line 844 of file nnet-component.h.
Definition at line 938 of file nnet-component.h.
Referenced by AffineComponent::Add(), BlockAffineComponent::Add(), AffineComponentPreconditionedOnline::AffineComponentPreconditionedOnline(), AffineComponent::CollapseWithNext(), AffineComponent::CollapseWithPrevious(), AffineComponent::Copy(), AffineComponentPreconditioned::Copy(), AffineComponentPreconditionedOnline::Copy(), BlockAffineComponent::Copy(), BlockAffineComponentPreconditioned::Copy(), FixedAffineComponent::Copy(), AffineComponent::DotProduct(), BlockAffineComponent::DotProduct(), AffineComponent::Info(), AffineComponentPreconditioned::Info(), AffineComponentPreconditionedOnline::Info(), FixedAffineComponent::Info(), AffineComponent::Init(), AffineComponentPreconditioned::Init(), AffineComponentPreconditionedOnline::Init(), BlockAffineComponent::Init(), FixedAffineComponent::Init(), AffineComponent::LimitRank(), SoftmaxComponent::MixUp(), AffineComponent::PerturbParams(), BlockAffineComponent::PerturbParams(), AffineComponent::Propagate(), BlockAffineComponent::Propagate(), FixedAffineComponent::Propagate(), AffineComponent::Read(), AffineComponentPreconditioned::Read(), AffineComponentPreconditionedOnline::Read(), BlockAffineComponent::Read(), BlockAffineComponentPreconditioned::Read(), FixedAffineComponent::Read(), AffineComponentPreconditionedOnline::Resize(), BlockAffineComponent::Scale(), AffineComponent::SetParams(), AffineComponent::SetZero(), BlockAffineComponent::SetZero(), AffineComponent::UnVectorize(), BlockAffineComponent::UnVectorize(), AffineComponentPreconditioned::Update(), AffineComponentPreconditionedOnline::Update(), BlockAffineComponentPreconditioned::Update(), AffineComponent::UpdateSimple(), BlockAffineComponent::UpdateSimple(), AffineComponent::Vectorize(), BlockAffineComponent::Vectorize(), AffineComponent::Widen(), AffineComponent::Write(), AffineComponentPreconditioned::Write(), AffineComponentPreconditionedOnline::Write(), BlockAffineComponent::Write(), BlockAffineComponentPreconditioned::Write(), and FixedAffineComponent::Write().
|
protected |
Definition at line 940 of file nnet-component.h.
Referenced by AffineComponent::AffineComponent(), AffineComponentPreconditionedOnline::AffineComponentPreconditionedOnline(), AffineComponent::Backprop(), AffineComponent::Copy(), AffineComponentPreconditioned::Copy(), AffineComponentPreconditionedOnline::Copy(), BlockAffineComponentPreconditioned::Copy(), BlockAffineComponentPreconditioned::Init(), AffineComponent::Read(), BlockAffineComponentPreconditioned::Read(), AffineComponent::SetZero(), BlockAffineComponentPreconditioned::SetZero(), BlockAffineComponentPreconditioned::Update(), AffineComponent::Write(), and BlockAffineComponentPreconditioned::Write().
Definition at line 937 of file nnet-component.h.
Referenced by AffineComponent::Add(), BlockAffineComponent::Add(), AffineComponentPreconditionedOnline::AffineComponentPreconditionedOnline(), AffineComponent::Backprop(), BlockAffineComponent::Backprop(), FixedAffineComponent::Backprop(), AffineComponent::CollapseWithNext(), AffineComponent::CollapseWithPrevious(), AffineComponent::Copy(), AffineComponentPreconditioned::Copy(), AffineComponentPreconditionedOnline::Copy(), BlockAffineComponent::Copy(), BlockAffineComponentPreconditioned::Copy(), FixedAffineComponent::Copy(), AffineComponent::DotProduct(), BlockAffineComponent::DotProduct(), AffineComponent::Info(), AffineComponentPreconditioned::Info(), AffineComponentPreconditionedOnline::Info(), FixedAffineComponent::Info(), AffineComponent::Init(), AffineComponentPreconditioned::Init(), AffineComponentPreconditionedOnline::Init(), BlockAffineComponent::Init(), FixedAffineComponent::Init(), AffineComponent::LimitRank(), SoftmaxComponent::MixUp(), AffineComponent::PerturbParams(), BlockAffineComponent::PerturbParams(), AffineComponent::Propagate(), BlockAffineComponent::Propagate(), FixedAffineComponent::Propagate(), AffineComponent::Read(), AffineComponentPreconditioned::Read(), AffineComponentPreconditionedOnline::Read(), BlockAffineComponent::Read(), BlockAffineComponentPreconditioned::Read(), FixedAffineComponent::Read(), AffineComponentPreconditionedOnline::Resize(), BlockAffineComponent::Scale(), AffineComponent::SetParams(), AffineComponent::SetZero(), BlockAffineComponent::SetZero(), AffineComponent::UnVectorize(), BlockAffineComponent::UnVectorize(), AffineComponentPreconditioned::Update(), AffineComponentPreconditionedOnline::Update(), BlockAffineComponentPreconditioned::Update(), AffineComponent::UpdateSimple(), BlockAffineComponent::UpdateSimple(), AffineComponent::Vectorize(), BlockAffineComponent::Vectorize(), AffineComponent::Widen(), AffineComponent::Write(), AffineComponentPreconditioned::Write(), AffineComponentPreconditionedOnline::Write(), BlockAffineComponent::Write(), BlockAffineComponentPreconditioned::Write(), and FixedAffineComponent::Write().