Class StridedSlice
- java.lang.Object
-
- org.nd4j.autodiff.functions.DifferentialFunction
-
- org.nd4j.linalg.api.ops.DynamicCustomOp
-
- org.nd4j.linalg.api.ops.impl.shape.StridedSlice
-
- All Implemented Interfaces:
CustomOp
public class StridedSlice 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 StridedSlice()
StridedSlice(SameDiff sameDiff, SDVariable in, @lombok.NonNull int[] begin, @lombok.NonNull int[] end, @lombok.NonNull int[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
StridedSlice(SameDiff sameDiff, SDVariable in, @lombok.NonNull long[] begin, @lombok.NonNull long[] end, @lombok.NonNull long[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
StridedSlice(SameDiff sameDiff, SDVariable in, int[] begin, int[] end, int[] strides)
StridedSlice(SameDiff sameDiff, SDVariable in, long[] begin, long[] end, long[] strides)
StridedSlice(SameDiff sd, SDVariable in, SDVariable begin, SDVariable end, SDVariable strides)
StridedSlice(SameDiff sd, SDVariable in, SDVariable begin, SDVariable end, SDVariable strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
StridedSlice(INDArray in, int[] begin, int[] end, int[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
StridedSlice(INDArray in, long[] begin, long[] end, long[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
StridedSlice(INDArray in, INDArray begin, INDArray end, INDArray strides)
StridedSlice(INDArray in, INDArray begin, INDArray end, INDArray strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
assertValidForExecution()
Asserts a valid state for execution, otherwise throws anND4JIllegalStateException
List<DataType>
calculateOutputDataTypes(List<DataType> dataTypes)
Calculate the data types for the output arrays.void
configureFromArguments()
This allows a custom op to configure relevant fields from its arguments.List<SDVariable>
doDiff(List<SDVariable> i_v)
The actual implementation for automatic differentiation.void
initFromTensorFlow(NodeDef nodeDef, SameDiff initWith, Map<String,AttrValue> attributesForNode, GraphDef graph)
Initialize the function from the givenNodeDef
Map<String,Map<String,PropertyMapping>>
mappingsForFunction()
Returns the mappings for a given function ( for tensorflow and onnx import mapping properties of this function).String
onnxName()
The opName of this function in onnxString
opName()
This method returns op opName as stringvoid
setPropertiesForFunction(Map<String,Object> properties)
String
tensorflowName()
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, bArgs, builder, calculateOutputShape, calculateOutputShape, clearArrays, computeArrays, dArgs, generateFake, generateFake, getBArgument, getDescriptor, getIArgument, getInputArgument, getOutputArgument, getSArgument, getTArgument, getValue, iArgs, initFromOnnx, inputArguments, numBArguments, numDArguments, numIArguments, numInputArguments, numOutputArguments, numSArguments, numTArguments, opHash, opNum, opType, outputArguments, outputVariables, outputVariables, propertiesForFunction, removeIArgument, removeInputArgument, removeOutputArgument, removeSArgument, removeTArgument, sArgs, setInputArgument, setInputArguments, setOutputArgument, 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, 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
-
-
-
-
Constructor Detail
-
StridedSlice
public StridedSlice()
-
StridedSlice
public StridedSlice(SameDiff sameDiff, SDVariable in, int[] begin, int[] end, int[] strides)
-
StridedSlice
public StridedSlice(SameDiff sameDiff, SDVariable in, long[] begin, long[] end, long[] strides)
-
StridedSlice
public StridedSlice(SameDiff sameDiff, SDVariable in, @NonNull @lombok.NonNull long[] begin, @NonNull @lombok.NonNull long[] end, @NonNull @lombok.NonNull long[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
-
StridedSlice
public StridedSlice(SameDiff sameDiff, SDVariable in, @NonNull @lombok.NonNull int[] begin, @NonNull @lombok.NonNull int[] end, @NonNull @lombok.NonNull int[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
-
StridedSlice
public StridedSlice(INDArray in, int[] begin, int[] end, int[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
-
StridedSlice
public StridedSlice(INDArray in, long[] begin, long[] end, long[] strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
-
StridedSlice
public StridedSlice(SameDiff sd, SDVariable in, SDVariable begin, SDVariable end, SDVariable strides)
-
StridedSlice
public StridedSlice(SameDiff sd, SDVariable in, SDVariable begin, SDVariable end, SDVariable strides, int beginMask, int endMask, int ellipsisMask, int newAxisMask, int shrinkAxisMask)
-
-
Method Detail
-
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:
-
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:
-
assertValidForExecution
public void assertValidForExecution()
Description copied from interface:CustomOp
Asserts a valid state for execution, otherwise throws anND4JIllegalStateException
- Specified by:
assertValidForExecution
in interfaceCustomOp
- Overrides:
assertValidForExecution
in classDynamicCustomOp
-
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
-
mappingsForFunction
public Map<String,Map<String,PropertyMapping>> mappingsForFunction()
Description copied from class:DifferentialFunction
Returns the mappings for a given function ( for tensorflow and onnx import mapping properties of this function). The mapping is indexed by field name. If the function has no properties, this returned map will be empty. Note that some functions have multiple names. This function returns a map indexed by each alias it has for a given name. These names include both onnx and tensorflow names (which might be 1 or more)- Overrides:
mappingsForFunction
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
-
doDiff
public List<SDVariable> doDiff(List<SDVariable> i_v)
Description copied from class:DifferentialFunction
The actual implementation for automatic differentiation.- Overrides:
doDiff
in classDynamicCustomOp
- Returns:
-
calculateOutputDataTypes
public List<DataType> calculateOutputDataTypes(List<DataType> dataTypes)
Description copied from class:DifferentialFunction
Calculate 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:
calculateOutputDataTypes
in classDifferentialFunction
- Parameters:
dataTypes
- The data types of the inputs- Returns:
- The data types of the outputs
-
-