A helper class to indicate that the operator should have no gradient. More...
#include <operator_gradient.h>
Public Member Functions | |
GradientOpsMeta | Get () override |
Returns the gradient ops meta. More... | |
Public Member Functions inherited from caffe2::GradientMakerBase | |
GradientMakerBase (const OperatorDef &def, const vector< GradientWrapper > &g_output) | |
virtual bool | CopyDeviceOption () const |
virtual bool | CopyEngine () const |
virtual bool | CopyArguments () const |
virtual void | VerifyOp () const |
const OperatorDef & | Def () const |
Additional Inherited Members | |
Static Public Member Functions inherited from caffe2::GradientMakerBase | |
static CaffeMap< string, string > | MatchGradsToParams (const OperatorDef &op) |
Returns map that returns the parameters that the gradients are for. | |
Protected Member Functions inherited from caffe2::GradientMakerBase | |
virtual vector< OperatorDef > | GetGradientDefs () |
string | I (const int i) |
string | O (const int i) |
string | GI (const int i) |
string | GI_I (const int i) |
string | GI_V (const int i) |
string | GO (const int i) |
string | GO_I (const int i) |
string | GO_V (const int i) |
const GradientWrapper & | GradOut (int i) |
void | SetDense (const int i, const string &name) |
void | SetSparse (const int i, const string &indices, const string &values) |
Static Protected Member Functions inherited from caffe2::GradientMakerBase | |
template<class... Args> | |
static vector< OperatorDef > | SingleGradientDef (const Args &...args) |
a helper function to allow one to create one single operator def, which is usually the case for many simple operators. | |
Protected Attributes inherited from caffe2::GradientMakerBase | |
const OperatorDef & | def_ |
const vector< GradientWrapper > & | g_output_ |
vector< GradientWrapper > | g_input_ |
A helper class to indicate that the operator should have no gradient.
This is used when the operator definition is designed to not have a gradient. Calling a gradient on this operator def will cause Caffe2 to quit.
Definition at line 272 of file operator_gradient.h.
|
inlineoverridevirtual |
Returns the gradient ops meta.
If your gradient op generator only use standard input and output manipulations, you can simply implement GetGradientDefs() that returns vector<OperatorDef>. In that, you can call GI, GI_V and GI_I that will automatically create the gradient registration for you.
If you need to do custom gradient name registration, overload this function directly.
Reimplemented from caffe2::GradientMakerBase.
Definition at line 274 of file operator_gradient.h.