Standard Markdown Format for Operators¶
The following should be the standard format for documentation for all the operators that will get rendered in the
Operator Name (In PaddlePaddle) Operator Name (Standard) Operator description. LaTeX equation of how the operator performs an update. The signature of the operator.
Each section mentioned above has been covered in further detail in the rest of the document.
PaddlePaddle Operator Name¶
This should be in all small letters, in case of multiple words, we separate them with an underscore. For example:
array to lod tensor should be written as
This naming convention should be standard across all PaddlePaddle operators.
Standard Operator Name¶
This is the standard name of the operator as used in the community. The general standard is usually:
- Standard abbreviations like
SGDare written in all capital letters.
- Operator names that have multiple words inside a single word use
camelCase(capitalize word boundaries inside of a word).
- Keep numbers inside a word as is, with no boundary delimiters.
- Follow the name of the operator with the keyword:
This section should contain the description of what the operator does, including the operation performed, the literature from where it comes and was introduced first, and other important details. The relevant paper/article including the hyperlink should be cited in this section.
This section should contain an overall equation of the update or operation that the operator performs. The variables used in the equation should follow the naming convention of operators as described here. Two words in the same word should be separated by an underscore (
This section describes the signature of the operator. A list of Inputs and Outputs, each of which have a small description of what the variable represents and the type of variable. The variable names follow the
CamelCase naming convention. The proposed format for this is:
Section : VariableName : (VariableType) VariableDescription ... ...
The following example for an
sgd operator covers the above mentioned sections as they would ideally look like in the
sgd SGD operator This operator implements one step of the stochastic gradient descent algorithm. param_out = param_learning_rate * grad Inputs: Param : (Tensor) Input parameter LearningRate : (Tensor) Learning rate of SGD Grad : (Tensor) Input gradient Outputs: ParamOut : (Tensor) Output parameter