Class LayerNormBp
- java.lang.Object
-
- org.nd4j.autodiff.functions.DifferentialFunction
-
- org.nd4j.linalg.api.ops.DynamicCustomOp
-
- org.nd4j.linalg.api.ops.impl.transforms.custom.LayerNormBp
-
- All Implemented Interfaces:
CustomOp
public class LayerNormBp extends DynamicCustomOp
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.nd4j.linalg.api.ops.DynamicCustomOp
DynamicCustomOp.DynamicCustomOpsBuilder
-
-
Field Summary
-
Fields inherited from class org.nd4j.linalg.api.ops.DynamicCustomOp
axis, bArguments, dArguments, iArguments, inplaceCall, inputArguments, outputArguments, outputVariables, sArguments, tArguments
-
Fields inherited from class org.nd4j.autodiff.functions.DifferentialFunction
dimensions, extraArgs, inPlace, ownName, ownNameSetWithDefault, sameDiff, scalarValue
-
-
Constructor Summary
Constructors Constructor Description LayerNormBp(@NonNull SameDiff sameDiff, @NonNull SDVariable input, @NonNull SDVariable gain, SDVariable bias, @NonNull SDVariable gradient, boolean channelsFirst, int... dimensions)LayerNormBp(@NonNull INDArray input, @NonNull INDArray gain, INDArray bias, @NonNull INDArray grad, @NonNull INDArray dLdx, @NonNull INDArray dLdg, INDArray dLdb, boolean channelsFirst, int... dimensions)LayerNormBp(SameDiff sameDiff, SDVariable input, SDVariable gain, SDVariable gradient, boolean channelsFirst, int... dimensions)LayerNormBp(INDArray input, INDArray gain, INDArray grad, INDArray dLdx, INDArray dLdg, boolean channelsFirst, int... dimensions)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<DataType>calculateOutputDataTypes(List<DataType> dataTypes)Calculate the data types for the output arrays.List<SDVariable>doDiff(List<SDVariable> grad)The actual implementation for automatic differentiation.intgetNumOutputs()StringonnxName()The opName of this function in onnxStringopName()This method returns op opName as stringvoidsetDimensions(int[] dimensions)StringtensorflowName()The opName of this function tensorflow-
Methods inherited from class org.nd4j.linalg.api.ops.DynamicCustomOp
addBArgument, addDArgument, addIArgument, addIArgument, addInputArgument, addOutputArgument, addOutputsToOp, addSArgument, addTArgument, assertValidForExecution, bArgs, builder, calculateOutputShape, calculateOutputShape, clearArrays, computeArrays, configureFromArguments, dArgs, generateFake, generateFake, getBArgument, getDescriptor, getIArgument, getInputArgument, getOutputArgument, getSArgument, getTArgument, getValue, iArgs, initFromOnnx, initFromTensorFlow, inputArguments, mappingsForFunction, numBArguments, numDArguments, numIArguments, numInputArguments, numOutputArguments, numSArguments, numTArguments, opHash, opNum, opType, outputArguments, outputVariables, outputVariables, propertiesForFunction, removeIArgument, removeInputArgument, removeOutputArgument, removeSArgument, removeTArgument, sArgs, setInputArgument, setInputArguments, setOutputArgument, setPropertiesForFunction, setValueFor, tArgs, toString, wrapFilterNull, wrapOrNull, wrapOrNull
-
Methods inherited from class org.nd4j.autodiff.functions.DifferentialFunction
arg, arg, argNames, args, attributeAdaptersForFunction, configFieldName, configureWithSameDiff, diff, dup, equals, getBooleanFromProperty, getDoubleValueFromProperty, getIntValueFromProperty, getLongValueFromProperty, getStringFromProperty, hashCode, isConfigProperties, larg, onnxNames, outputs, outputVariable, outputVariablesNames, rarg, replaceArg, setInstanceId, tensorflowNames
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.nd4j.linalg.api.ops.CustomOp
isInplaceCall
-
-
-
-
Constructor Detail
-
LayerNormBp
public LayerNormBp(@NonNull @NonNull SameDiff sameDiff, @NonNull @NonNull SDVariable input, @NonNull @NonNull SDVariable gain, SDVariable bias, @NonNull @NonNull SDVariable gradient, boolean channelsFirst, int... dimensions)
-
LayerNormBp
public LayerNormBp(@NonNull @NonNull INDArray input, @NonNull @NonNull INDArray gain, INDArray bias, @NonNull @NonNull INDArray grad, @NonNull @NonNull INDArray dLdx, @NonNull @NonNull INDArray dLdg, INDArray dLdb, boolean channelsFirst, int... dimensions)
-
LayerNormBp
public LayerNormBp(SameDiff sameDiff, SDVariable input, SDVariable gain, SDVariable gradient, boolean channelsFirst, int... dimensions)
-
-
Method Detail
-
setDimensions
public void setDimensions(int[] dimensions)
-
opName
public String opName()
Description copied from class:DynamicCustomOpThis method returns op opName as string- Specified by:
opNamein interfaceCustomOp- Overrides:
opNamein classDynamicCustomOp- Returns:
-
tensorflowName
public String tensorflowName()
Description copied from class:DifferentialFunctionThe opName of this function tensorflow- Overrides:
tensorflowNamein classDynamicCustomOp- Returns:
-
onnxName
public String onnxName()
Description copied from class:DifferentialFunctionThe opName of this function in onnx- Overrides:
onnxNamein classDynamicCustomOp- Returns:
-
doDiff
public List<SDVariable> doDiff(List<SDVariable> grad)
Description copied from class:DifferentialFunctionThe actual implementation for automatic differentiation.- Overrides:
doDiffin classDynamicCustomOp- Returns:
-
calculateOutputDataTypes
public List<DataType> calculateOutputDataTypes(List<DataType> dataTypes)
Description copied from class:DifferentialFunctionCalculate the data types for the output arrays. Though datatypes can also be inferred fromDifferentialFunction.calculateOutputShape(), this method differs in that it does not require the input arrays to be populated. This is important as it allows us to do greedy datatype inference for the entire net - even if arrays are not available.- Overrides:
calculateOutputDataTypesin classDifferentialFunction- Parameters:
dataTypes- The data types of the inputs- Returns:
- The data types of the outputs
-
getNumOutputs
public int getNumOutputs()
- Overrides:
getNumOutputsin classDifferentialFunction
-
-