public class DotProductAttention extends DynamicCustomOp
DynamicCustomOp.DynamicCustomOpsBuilderaxis, bArguments, dArguments, iArguments, inplaceCall, inputArguments, outputArguments, outputVariables, tArgumentsdimensions, extraArgs, inPlace, ownName, ownNameSetWithDefault, sameDiff, scalarValue| Constructor and Description |
|---|
DotProductAttention(@NonNull INDArray queries,
@NonNull INDArray keys,
@NonNull INDArray values,
INDArray mask,
boolean scaled) |
DotProductAttention(@NonNull INDArray queries,
@NonNull INDArray keys,
@NonNull INDArray values,
INDArray mask,
boolean scaled,
boolean withWeights) |
DotProductAttention(SameDiff sameDiff,
SDVariable queries,
SDVariable keys,
SDVariable values,
SDVariable mask,
boolean scaled,
boolean withWeights) |
| Modifier and Type | Method and Description |
|---|---|
List<DataType> |
calculateOutputDataTypes(List<DataType> dataTypes)
Calculate the data types for the output arrays.
|
List<SDVariable> |
doDiff(List<SDVariable> gradient)
The actual implementation for automatic differentiation.
|
int |
getNumOutputs() |
String |
opName()
This method returns op opName as string
|
addBArgument, addDArgument, addIArgument, addIArgument, addInputArgument, addOutputArgument, addTArgument, assertValidForExecution, bArgs, builder, calculateOutputShape, calculateOutputShape, clearArrays, dArgs, getBArgument, getDescriptor, getIArgument, getInputArgument, getOutputArgument, getTArgument, iArgs, initFromOnnx, initFromTensorFlow, inputArguments, numBArguments, numDArguments, numIArguments, numInputArguments, numOutputArguments, numTArguments, onnxName, opHash, opNum, opType, outputArguments, outputVariables, outputVariables, removeIArgument, removeInputArgument, removeOutputArgument, removeTArgument, setInputArgument, setInputArguments, setOutputArgument, tArgs, tensorflowName, toString, wrapFilterNull, wrapOrNull, wrapOrNullarg, arg, argNames, args, attributeAdaptersForFunction, configFieldName, diff, dup, equals, getValue, hashCode, isConfigProperties, larg, mappingsForFunction, onnxNames, outputs, outputVariable, outputVariablesNames, propertiesForFunction, rarg, replaceArg, setInstanceId, setPropertiesForFunction, setValueFor, tensorflowNamesclone, finalize, getClass, notify, notifyAll, wait, wait, waitisInplaceCallpublic DotProductAttention(SameDiff sameDiff, SDVariable queries, SDVariable keys, SDVariable values, SDVariable mask, boolean scaled, boolean withWeights)
public DotProductAttention(@NonNull
@NonNull INDArray queries,
@NonNull
@NonNull INDArray keys,
@NonNull
@NonNull INDArray values,
INDArray mask,
boolean scaled)
public String opName()
DynamicCustomOpopName in interface CustomOpopName in class DynamicCustomOppublic List<SDVariable> doDiff(List<SDVariable> gradient)
DifferentialFunctiondoDiff in class DynamicCustomOppublic List<DataType> calculateOutputDataTypes(List<DataType> dataTypes)
DifferentialFunctionDifferentialFunction.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.calculateOutputDataTypes in class DifferentialFunctiondataTypes - The data types of the inputspublic int getNumOutputs()
getNumOutputs in class DifferentialFunctionCopyright © 2021. All rights reserved.