Class ExternalErrorsFunction
- java.lang.Object
-
- org.nd4j.autodiff.functions.DifferentialFunction
-
- org.nd4j.linalg.api.ops.DynamicCustomOp
-
- org.nd4j.linalg.api.ops.impl.layers.ExternalErrorsFunction
-
- All Implemented Interfaces:
CustomOp
public class ExternalErrorsFunction extends DynamicCustomOp
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.nd4j.linalg.api.ops.DynamicCustomOp
DynamicCustomOp.DynamicCustomOpsBuilder
-
-
Field Summary
Fields Modifier and Type Field Description static String
OP_NAME
-
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 ExternalErrorsFunction()
ExternalErrorsFunction(SameDiff sd, List<SDVariable> inputs, Map<String,INDArray> gradients)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<LongShapeDescriptor>
calculateOutputShape()
Calculate the output shape for this opList<LongShapeDescriptor>
calculateOutputShape(OpContext oc)
Calculate the output shape for this opvoid
configureFromArguments()
This allows a custom op to configure relevant fields from its arguments.void
configureWithSameDiff(SameDiff sameDiff)
List<SDVariable>
doDiff(List<SDVariable> f1)
The actual implementation for automatic differentiation.String
getGradPlaceholderName()
void
initFromOnnx(Onnx.NodeProto node, SameDiff initWith, Map<String,Onnx.AttributeProto> attributesForNode, Onnx.GraphProto graph)
Iniitialize the function from the givenOnnx.NodeProto
void
initFromTensorFlow(NodeDef nodeDef, SameDiff initWith, Map<String,AttrValue> attributesForNode, GraphDef graph)
Initialize the function from the givenNodeDef
String
onnxName()
The opName of this function in onnxString
opName()
This method returns op opName as stringOp.Type
opType()
The type of the opSDVariable[]
outputVariables(String baseName)
Return the output functions for this differential function.Map<String,Object>
propertiesForFunction()
Returns the properties for a given functionvoid
setPropertiesForFunction(Map<String,Object> properties)
String
tensorflowName()
The opName of this function tensorflowString
toString()
void
updateBeforeExecution()
-
Methods inherited from class org.nd4j.linalg.api.ops.DynamicCustomOp
addBArgument, addDArgument, addIArgument, addIArgument, addInputArgument, addOutputArgument, addOutputsToOp, addSArgument, addTArgument, assertValidForExecution, bArgs, builder, clearArrays, computeArrays, dArgs, generateFake, generateFake, getBArgument, getDescriptor, getIArgument, getInputArgument, getOutputArgument, getSArgument, getTArgument, getValue, iArgs, inputArguments, mappingsForFunction, numBArguments, numDArguments, numIArguments, numInputArguments, numOutputArguments, numSArguments, numTArguments, opHash, opNum, outputArguments, outputVariables, removeIArgument, removeInputArgument, removeOutputArgument, removeSArgument, removeTArgument, sArgs, setInputArgument, setInputArguments, setOutputArgument, setValueFor, tArgs, wrapFilterNull, wrapOrNull, wrapOrNull
-
Methods inherited from class org.nd4j.autodiff.functions.DifferentialFunction
arg, arg, argNames, args, attributeAdaptersForFunction, calculateOutputDataTypes, configFieldName, diff, dup, equals, getBooleanFromProperty, getDoubleValueFromProperty, getIntValueFromProperty, getLongValueFromProperty, getNumOutputs, 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
-
-
-
-
Field Detail
-
OP_NAME
public static final String OP_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getGradPlaceholderName
public String getGradPlaceholderName()
-
configureWithSameDiff
public void configureWithSameDiff(SameDiff sameDiff)
- Overrides:
configureWithSameDiff
in classDifferentialFunction
-
propertiesForFunction
public Map<String,Object> propertiesForFunction()
Description copied from class:DifferentialFunction
Returns the properties for a given function- Overrides:
propertiesForFunction
in classDynamicCustomOp
- Returns:
-
configureFromArguments
public void configureFromArguments()
Description copied from interface:CustomOp
This allows a custom op to configure relevant fields from its arguments. This is needed when ops are created via reflection for things like model import.- Specified by:
configureFromArguments
in interfaceCustomOp
- Overrides:
configureFromArguments
in classDynamicCustomOp
-
setPropertiesForFunction
public void setPropertiesForFunction(Map<String,Object> properties)
- Overrides:
setPropertiesForFunction
in classDynamicCustomOp
-
outputVariables
public SDVariable[] outputVariables(String baseName)
Description copied from class:DifferentialFunction
Return the output functions for this differential function.- Overrides:
outputVariables
in classDynamicCustomOp
- Returns:
-
doDiff
public List<SDVariable> doDiff(List<SDVariable> f1)
Description copied from class:DifferentialFunction
The actual implementation for automatic differentiation.- Overrides:
doDiff
in classDynamicCustomOp
- Returns:
-
updateBeforeExecution
public void updateBeforeExecution()
-
initFromTensorFlow
public void initFromTensorFlow(NodeDef nodeDef, SameDiff initWith, Map<String,AttrValue> attributesForNode, GraphDef graph)
Description copied from class:DifferentialFunction
Initialize the function from the givenNodeDef
- Overrides:
initFromTensorFlow
in classDynamicCustomOp
-
initFromOnnx
public void initFromOnnx(Onnx.NodeProto node, SameDiff initWith, Map<String,Onnx.AttributeProto> attributesForNode, Onnx.GraphProto graph)
Description copied from class:DifferentialFunction
Iniitialize the function from the givenOnnx.NodeProto
- Overrides:
initFromOnnx
in classDynamicCustomOp
-
onnxName
public String onnxName()
Description copied from class:DifferentialFunction
The opName of this function in onnx- Overrides:
onnxName
in classDynamicCustomOp
- Returns:
-
tensorflowName
public String tensorflowName()
Description copied from class:DifferentialFunction
The opName of this function tensorflow- Overrides:
tensorflowName
in classDynamicCustomOp
- Returns:
-
opName
public String opName()
Description copied from class:DynamicCustomOp
This method returns op opName as string- Specified by:
opName
in interfaceCustomOp
- Overrides:
opName
in classDynamicCustomOp
- Returns:
-
toString
public String toString()
- Overrides:
toString
in classDynamicCustomOp
-
calculateOutputShape
public List<LongShapeDescriptor> calculateOutputShape()
Description copied from class:DifferentialFunction
Calculate the output shape for this op- Specified by:
calculateOutputShape
in interfaceCustomOp
- Overrides:
calculateOutputShape
in classDynamicCustomOp
- Returns:
- List of output shape descriptors
-
calculateOutputShape
public List<LongShapeDescriptor> calculateOutputShape(OpContext oc)
Description copied from interface:CustomOp
Calculate the output shape for this op- Specified by:
calculateOutputShape
in interfaceCustomOp
- Overrides:
calculateOutputShape
in classDynamicCustomOp
- Returns:
- Output array shapes
-
opType
public Op.Type opType()
Description copied from class:DifferentialFunction
The type of the op- Overrides:
opType
in classDynamicCustomOp
- Returns:
-
-