Rescale the matrix-rows to have unit length (L2-norm). More...
#include <nnet-various.h>


Public Member Functions | |
| LengthNormComponent (int32 dim_in, int32 dim_out) | |
| ~LengthNormComponent () | |
| Component * | Copy () const |
| Copy component (deep copy),. More... | |
| ComponentType | GetType () const |
| Get Type Identification of the component,. More... | |
| void | PropagateFnc (const CuMatrixBase< BaseFloat > &in, CuMatrixBase< BaseFloat > *out) |
| Abstract interface for propagation/backpropagation. More... | |
| void | BackpropagateFnc (const CuMatrixBase< BaseFloat > &in, const CuMatrixBase< BaseFloat > &out, const CuMatrixBase< BaseFloat > &out_diff, CuMatrixBase< BaseFloat > *in_diff) |
| Backward pass transformation (to be implemented by descending class...) More... | |
Public Member Functions inherited from Component | |
| Component (int32 input_dim, int32 output_dim) | |
| Generic interface of a component,. More... | |
| virtual | ~Component () |
| virtual bool | IsUpdatable () const |
| Check if componeny has 'Updatable' interface (trainable components),. More... | |
| virtual bool | IsMultistream () const |
| Check if component has 'Recurrent' interface (trainable and recurrent),. More... | |
| int32 | InputDim () const |
| Get the dimension of the input,. More... | |
| int32 | OutputDim () const |
| Get the dimension of the output,. More... | |
| void | Propagate (const CuMatrixBase< BaseFloat > &in, CuMatrix< BaseFloat > *out) |
| Perform forward-pass propagation 'in' -> 'out',. More... | |
| void | Backpropagate (const CuMatrixBase< BaseFloat > &in, const CuMatrixBase< BaseFloat > &out, const CuMatrixBase< BaseFloat > &out_diff, CuMatrix< BaseFloat > *in_diff) |
| Perform backward-pass propagation 'out_diff' -> 'in_diff'. More... | |
| void | Write (std::ostream &os, bool binary) const |
| Write the component to a stream,. More... | |
| virtual std::string | Info () const |
| Print some additional info (after <ComponentName> and the dims),. More... | |
| virtual std::string | InfoGradient () const |
| Print some additional info about gradient (after <...> and dims),. More... | |
Private Attributes | |
| CuMatrix< BaseFloat > | l2_aux_ |
| auxiliary matrix for L2 norm computation, More... | |
| CuVector< BaseFloat > | row_scales_ |
| normalization scale of each row, More... | |
Additional Inherited Members | |
Public Types inherited from Component | |
| enum | ComponentType { kUnknown = 0x0, kUpdatableComponent = 0x0100, kAffineTransform, kLinearTransform, kConvolutionalComponent, kLstmProjected, kBlstmProjected, kRecurrentComponent, kActivationFunction = 0x0200, kSoftmax, kHiddenSoftmax, kBlockSoftmax, kSigmoid, kTanh, kParametricRelu, kDropout, kLengthNormComponent, kTranform = 0x0400, kRbm, kSplice, kCopy, kTranspose, kBlockLinearity, kAddShift, kRescale, kKlHmm = 0x0800, kSentenceAveragingComponent, kSimpleSentenceAveragingComponent, kAveragePoolingComponent, kMaxPoolingComponent, kFramePoolingComponent, kParallelComponent, kMultiBasisComponent } |
| Component type identification mechanism,. More... | |
Static Public Member Functions inherited from Component | |
| static const char * | TypeToMarker (ComponentType t) |
| Converts component type to marker,. More... | |
| static ComponentType | MarkerToType (const std::string &s) |
| Converts marker to component type (case insensitive),. More... | |
| static Component * | Init (const std::string &conf_line) |
| Initialize component from a line in config file,. More... | |
| static Component * | Read (std::istream &is, bool binary) |
| Read the component from a stream (static method),. More... | |
Static Public Attributes inherited from Component | |
| static const struct key_value | kMarkerMap [] |
| The table with pairs of Component types and markers (defined in nnet-component.cc),. More... | |
Protected Member Functions inherited from Component | |
| virtual void | InitData (std::istream &is) |
| Virtual interface for initialization and I/O,. More... | |
| virtual void | ReadData (std::istream &is, bool binary) |
| Reads the component content. More... | |
| virtual void | WriteData (std::ostream &os, bool binary) const |
| Writes the component content. More... | |
Protected Attributes inherited from Component | |
| int32 | input_dim_ |
| Data members,. More... | |
| int32 | output_dim_ |
| Dimension of the output of the Component,. More... | |
Rescale the matrix-rows to have unit length (L2-norm).
Definition at line 244 of file nnet-various.h.
|
inline |
Definition at line 246 of file nnet-various.h.
|
inline |
Definition at line 250 of file nnet-various.h.
|
inlinevirtual |
Backward pass transformation (to be implemented by descending class...)
Implements Component.
Definition at line 273 of file nnet-various.h.
References CuMatrixBase< Real >::CopyFromMat(), and CuMatrixBase< Real >::MulRowsVec().
|
inlinevirtual |
Copy component (deep copy),.
Implements Component.
Definition at line 253 of file nnet-various.h.
|
inlinevirtual |
Get Type Identification of the component,.
Implements Component.
Definition at line 254 of file nnet-various.h.
References Component::kLengthNormComponent.
|
inlinevirtual |
Abstract interface for propagation/backpropagation.
Forward pass transformation (to be implemented by descending class...)
Implements Component.
Definition at line 256 of file nnet-various.h.
References CuMatrixBase< Real >::CopyFromMat(), CuMatrixBase< Real >::MulElements(), CuMatrixBase< Real >::MulRowsVec(), and CuMatrixBase< Real >::NumRows().
auxiliary matrix for L2 norm computation,
Definition at line 282 of file nnet-various.h.
normalization scale of each row,
Definition at line 283 of file nnet-various.h.