Class NDArrayAdapter
- All Implemented Interfaces:
- BytesSupplier,- NDArray,- NDResource,- AutoCloseable
NDArray that does nothing. This can be used for overriding
 the NDArray with only part of the interface implemented.
 This interface should only be used for the NDArray implementations that do not plan to
 implement a large portion of the interface. For the ones that do, they should directly implement
 NDArray so that the unsupported operations are better highlighted in the code.
- 
Field SummaryFields
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionabs()Returns the absolute value of thisNDArrayelement-wise.acos()Returns the inverse trigonometric cosine of thisNDArrayelement-wise.acosh()Returns the inverse hyperbolic cosine of thisNDArrayelement-wise.Adds otherNDArrays to thisNDArrayelement-wise.Adds a number to thisNDArrayelement-wise.Adds otherNDArrays to thisNDArrayelement-wise in place.Adds a number to thisNDArrayelement-wise in place.argMax()Returns the indices of the maximum values into the flattenedNDArray.argMax(int axis) Returns the indices of the maximum values along given axis.argMin()Returns the indices of the minimum values into the flattenedNDArray.argMin(int axis) Returns the indices of the minimum values along given axis.argSort(int axis, boolean ascending) Returns the indices that would sort thisNDArraygiven the axis.asin()Returns the inverse trigonometric sine of thisNDArrayelement-wise.asinh()Returns the inverse hyperbolic sine of thisNDArrayelement-wise.atan()Returns the inverse trigonometric tangent of thisNDArrayelement-wise.Returns the element-wise arc-tangent of this/other choosing the quadrant correctly.atanh()Returns the inverse hyperbolic tangent of thisNDArrayelement-wise.voidAttaches thisNDResourceto the specifiedNDManager.Batchwise product of thisNDArrayand the otherNDArray.batchMatMul(NDArray other) Batch product matrix of thisNDArrayand the otherNDArray.booleanMask(NDArray index, int axis) Returns portion of thisNDArraygiven the index booleanNDArrayalong given axis.Broadcasts thisNDArrayto be the given shape.cbrt()Returns the cube-root of thisNDArrayelement-wise.ceil()Returns the ceiling of thisNDArrayelement-wise.Clips (limit) the values in thisNDArray.voidclose()complex()Convert a general NDArray to its complex math format.conj()Conjugate complex array.booleancontentEquals(NDArray other) booleancontentEquals(Number number) cos()Returns the trigonometric cosine of thisNDArrayelement-wise.cosh()Returns the hyperbolic cosine of thisNDArrayelement-wise.cumProd(int axis) Returns the cumulative product of elements of input in the dimension dim.Returns the cumulative product of elements of input in the dimension dim.cumSum()Returns the cumulative sum of the elements in the flattenedNDArray.cumSum(int axis) Return the cumulative sum of the elements along a given axis.Divides thisNDArrayby the otherNDArrayelement-wise.Divides thisNDArrayby a number element-wise.Divides thisNDArrayby the otherNDArrayelement-wise in place.Divides thisNDArrayby a number element-wise in place.Dot product of thisNDArrayand the otherNDArray.Returns the booleanNDArrayfor element-wise "Equals" comparison.Returns the booleanNDArrayfor element-wise "Equals" comparison.booleanerf()Returns element-wise gauss error function of theNDArray.erfinv()Returns element-wise inverse gauss error function of theNDArray.exp()Returns the exponential value of thisNDArrayelement-wise.expandDims(int axis) Expands theShapeof aNDArray.fft(long length, long axis) Computes the one-dimensional discrete Fourier Transform.fft2(long[] sizes, long[] axes) Computes the two-dimensional Discrete Fourier Transform.flatten()Flattens thisNDArrayinto a 1-DNDArrayin row-major order.flatten(int startDim, int endDim) Flattens thisNDArrayinto a partially flattenNDArray.flip(int... axes) Returns the reverse order of elements in an array along the given axis.floor()Returns the floor of thisNDArrayelement-wise.gammaln()Return the log of the absolute value of the gamma function of thisNDArrayelement-wise.Returns a partialNDArraypointed by the indexed array.Returns a partialNDArraypointed by the indexed array.Returns a partialNDArray.Returns theDataTypeof thisNDArray.Returns theDeviceof thisNDArray.Returns the gradientNDArrayattached to thisNDArray.Returns theNDManagerthat manages this.getName()Returns the name of thisNDArray.ai.djl.ndarray.internal.NDArrayExReturns an internal representative of NativeNDArray.getShape()Returns theShapeof thisNDArray.Returns theSparseFormatof thisNDArray.getUid()Returns unique identifier of thisNDArray.Returns the booleanNDArrayfor element-wise "Greater Than" comparison.Returns the booleanNDArrayfor element-wise "Greater" comparison.Returns the booleanNDArrayfor element-wise "Greater or equals" comparison.Returns the booleanNDArrayfor element-wise "Greater or equals" comparison.booleanReturns true if the gradient calculation is required for thisNDArray.inthashCode()ifft(long length, long axis) Computes the one dimensional inverse discrete Fourier transform.ifft2(long[] sizes, long[] axes) Computes the two-dimensional inverse Discrete Fourier Transform.inverse()Computes the inverse of squareNDArrayif it exists.irfft(long length, long axis) Computes the one dimensional inverse Fourier transform of real-valued input.Returns the booleanNDArraywith valuetruewhere thisNDArray's entries are infinite, orfalsewhere they are not infinite.isNaN()Returns the booleanNDArraywith valuetruewhere thisNDArray's entries are NaN, orfalsewhere they are not NaN.booleanReturnstrueif this NDArray has been released.log()Returns the natural logarithmic value of thisNDArrayelement-wise.log10()Returns the base 10 logarithm of thisNDArrayelement-wise.log2()Returns the base 2 logarithm of thisNDArrayelement-wise.logicalAnd(NDArray other) Returns the truth value of thisNDArrayAND the otherNDArrayelement-wise.Computes the truth value of NOT thisNDArrayelement-wise.Computes the truth value of thisNDArrayOR the otherNDArrayelement-wise.logicalXor(NDArray other) Computes the truth value of thisNDArrayXOR the otherNDArrayelement-wise.logSoftmax(int axis) Applies the softmax function followed by a logarithm.Returns the booleanNDArrayfor element-wise "Less" comparison.Returns the booleanNDArrayfor element-wise "Less" comparison.Returns the booleanNDArrayfor element-wise "Less or equals" comparison.Returns the booleanNDArrayfor element-wise "Less or equals" comparison.Product matrix of thisNDArrayand the otherNDArray.max()Returns the maximum of thisNDArray.max(int[] axes, boolean keepDims) Returns the maximum of thisNDArrayalong given axes.Returns the maximum of thisNDArrayand the otherNDArrayelement-wise.Returns the maximum of thisNDArrayand a number element-wise.mean()Returns the average of thisNDArray.mean(int[] axes, boolean keepDims) Returns the average of thisNDArrayalong given axes.median()Returns median value for thisNDArray.median(int[] axes) Returns median value along given axes.min()Returns the minimum of thisNDArray.min(int[] axes, boolean keepDims) Returns the minimum of thisNDArrayalong given axes.Returns the minimum of thisNDArrayand the otherNDArrayelement-wise.Returns the minimum of thisNDArrayand a number element-wise.Returns element-wise remainder of division.Returns element-wise remainder of division.Returns in place element-wise remainder of division in place.Returns element-wise remainder of division in place.Multiplies thisNDArrayby otherNDArrays element-wise.Multiplies thisNDArrayby a number element-wise.Multiplies thisNDArrayby otherNDArrayelement-wise in place.Multiplies thisNDArrayby a number element-wise in place.neg()Returns the numerical negativeNDArrayelement-wise.negi()Returns the numerical negativeNDArrayelement-wise in place.Returns the booleanNDArrayfor element-wise "Not equals" comparison.Returns the booleanNDArrayfor element-wise "Not equals" comparison.nonzero()Returns the indices of elements that are non-zero.norm(boolean keepDims) Returns the norm of thisNDArray.norm(int ord, int[] axes, boolean keepDims) Returns the norm of thisNDArray.normalize(double p, long dim, double eps) Performs Lp normalization of the array over specified dimension.Returns a one-hotNDArray.Pads thisNDArraywith the givenShape.percentile(Number percentile) Returns percentile for thisNDArray.percentile(Number percentile, int[] axes) Returns median along given dimension(s).Takes the power of thisNDArraywith the otherNDArrayelement-wise.Takes the power of thisNDArraywith a number element-wise.Takes the power of thisNDArraywith the otherNDArrayelement-wise in place.Takes the power of thisNDArraywith a number element-wise in place.prod()Returns the product of thisNDArray.prod(int[] axes, boolean keepDims) Returns the product of thisNDArrayelements over the given axes.Sets the entries ofNDArraypointed by index, according to linear indexing, to be the numbers in value.real()Convert a complex NDArray to its real math format.repeat(int axis, long repeats) Repeats element of thisNDArraythe number of times given repeats along given axis.repeat(long repeats) Repeats element of thisNDArraythe number of times given repeats.repeat(long[] repeats) Repeats element of thisNDArraythe number of times given repeats along each axis.Repeats element of thisNDArrayto match the desired shape.Reshapes thisNDArrayto the givenShape.rfft(long length, long axis) Computes the one dimensional Fourier transform of real-valued input.rotate90(int times, int[] axes) Rotates an array by 90 degrees in the plane specified by axes.round()Returns the round of thisNDArrayelement-wise.Writes all values from the tensor value into self at the indices specified in the index tensor.sequenceMask(NDArray sequenceLength) Sets all elements outside the sequence to 0.sequenceMask(NDArray sequenceLength, float value) Sets all elements outside the sequence to a constant value.voidSets the specified index in thisNDArraywith the given values.voidSets the specified index in thisNDArraywith the given value.voidSets the specific index by a function.voidSets theNDArrayby boolean mask or integer index.voidSets thisNDArrayvalue fromBuffer.voidSets name of thisNDArray.voidsetRequiresGradient(boolean requiresGrad) Attaches a gradientNDArrayto thisNDArrayand marks it soGradientCollector.backward(NDArray)can compute the gradient with respect to it.voidSets the specified scalar in thisNDArraywith the given value.sign()Returns the element-wise sign.signi()Returns the element-wise sign in-place.sin()Returns the trigonometric sine of thisNDArrayelement-wise.sinh()Returns the hyperbolic sine of thisNDArrayelement-wise.softmax(int axis) Applies the softmax function along the given axis.sort()Sorts the flattenedNDArray.sort(int axis) Sorts the flattenedNDArray.split(long[] indices, int axis) Splits thisNDArrayinto multiple sub-NDArrays given indices along given axis.split(long sections, int axis) Splits thisNDArrayinto multiple subNDArrays given sections along the given axis.sqrt()Returns the square root of thisNDArrayelement-wise.square()Returns the square of thisNDArrayelement-wise.squeeze(int[] axes) Removes singleton dimensions at the given axes.stft(long nFft, long hopLength, boolean center, NDArray window, boolean normalize, boolean returnComplex) Computes the Short Time Fourier Transform (STFT).Returns an NDArray equal to this that stop gradient propagation through it.Subtracts the otherNDArrayfrom thisNDArrayelement-wise.Subtracts a number from thisNDArrayelement-wise.Subtracts the otherNDArrayfrom thisNDArrayelement-wise in place.Subtracts a number from thisNDArrayelement-wise in place.sum()Returns the sum of thisNDArray.sum(int[] axes, boolean keepDims) Returns the sum of thisNDArrayalong given axes.Returns a partialNDArraypointed by index according to linear indexing, and the of output is of the same shape as index.tan()Returns the trigonometric tangent of thisNDArrayelement-wise.tanh()Returns the hyperbolic tangent of thisNDArrayelement-wise.voidtempAttach(NDManager manager) Temporarily attaches thisNDResourceto the specifiedNDManager.tile(int axis, long repeats) Constructs aNDArrayby repeating thisNDArraythe number of times given by repeats along given axis.tile(long repeats) Constructs aNDArrayby repeating thisNDArraythe number of times given repeats.tile(long[] repeats) Constructs aNDArrayby repeating thisNDArraythe number of times given by repeats.Constructs aNDArrayby repeating thisNDArraythe number of times to match the desired shape.Converts thisNDArrayfrom radians to degrees element-wise.toDense()Returns a dense representation of the sparseNDArray.Moves thisNDArrayto a differentDevice.topK(int k, int axis, boolean largest, boolean sorted) Returns (values, indices) of the top k values along given axis.Converts thisNDArrayfrom degrees to radians element-wise.toSparse(SparseFormat fmt) Returns a sparse representation ofNDArray.toString()String[]toStringArray(Charset charset) Converts thisNDArrayto a String array with the specified charset.Converts thisNDArrayto a differentDataType.trace(int offset, int axis1, int axis2) Returns the sum along diagonals of thisNDArray.Returns thisNDArraywith axes transposed.transpose(int... axes) Returns thisNDArraywith given axes transposed.trunc()Returns the truncated value of thisNDArrayelement-wise.Returns the unique elements of the input tensor.Computes this * log(other).Methods inherited from class java.lang.Objectclone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface ai.djl.ndarray.BytesSuppliergetAsBytes, getAsObject, getAsStringMethods inherited from interface ai.djl.ndarray.NDArrayall, allClose, allClose, any, argSort, argSort, booleanMask, broadcast, concat, concat, copyTo, countNonzero, countNonzero, duplicate, encode, fft, fft2, get, get, get, get, get, getBoolean, getByte, getDouble, getFloat, getInt, getLong, getResourceNDArrays, getScalar, getUint8, ifft, ifft2, intern, irfft, isEmpty, isScalar, isSparse, like, max, mean, min, none, norm, norm, norm, normalize, normalize, oneHot, oneHot, onesLike, prod, reshape, rfft, scaleGradient, set, set, set, set, set, shapeEquals, size, size, split, split, squeeze, squeeze, stack, stack, stft, sum, swapAxes, take, toArray, toBooleanArray, toByteArray, toByteBuffer, toByteBuffer, toDebugString, toDebugString, toDebugString, toDoubleArray, toFloatArray, toIntArray, toLongArray, topK, toShortArray, toStringArray, toUint8Array, toUnsignedIntArray, toUnsignedShortArray, trace, trace, unique, unique, zerosLikeMethods inherited from interface ai.djl.ndarray.NDResourcedetach, returnResource
- 
Field Details- 
manager
- 
alternativeManager
- 
shape
- 
dataType
- 
name
- 
isClosedprotected boolean isClosed
- 
uid
 
- 
- 
Constructor Details- 
NDArrayAdapter
 
- 
- 
Method Details- 
getManagerReturns theNDManagerthat manages this.- Specified by:
- getManagerin interface- NDResource
- Returns:
- the NDManagerthat manages this.
 
- 
attachAttaches thisNDResourceto the specifiedNDManager.Attached resource will be closed when the NDManageris closed.- Specified by:
- attachin interface- NDResource
- Parameters:
- manager- the- NDManagerto be attached to
 
- 
tempAttachTemporarily attaches thisNDResourceto the specifiedNDManager.Attached resource will be returned to the original manager when the NDManageris closed.- Specified by:
- tempAttachin interface- NDResource
- Parameters:
- manager- the- NDManagerto be attached to
 
- 
getSparseFormatReturns theSparseFormatof thisNDArray.- Specified by:
- getSparseFormatin interface- NDArray
- Returns:
- the SparseFormatof thisNDArray
 
- 
getNameReturns the name of thisNDArray.
- 
setNameSets name of thisNDArray.
- 
getUidReturns unique identifier of thisNDArray.
- 
getDevice
- 
getDataTypeReturns theDataTypeof thisNDArray.DataTypeis a definition of the precision level of theNDArray. All values inside the sameNDArraywould have the sameDataType.- Specified by:
- getDataTypein interface- NDArray
- Returns:
- the DataTypeof thisNDArray
 
- 
getShape
- 
toDeviceMoves thisNDArrayto a differentDevice.
- 
toTypeConverts thisNDArrayto a differentDataType.
- 
setRequiresGradientpublic void setRequiresGradient(boolean requiresGrad) Attaches a gradientNDArrayto thisNDArrayand marks it soGradientCollector.backward(NDArray)can compute the gradient with respect to it.- Specified by:
- setRequiresGradientin interface- NDArray
- Parameters:
- requiresGrad- if- NDArrayrequires gradient or not
 
- 
getGradientReturns the gradientNDArrayattached to thisNDArray.- Specified by:
- getGradientin interface- NDArray
- Returns:
- the gradient NDArray
 
- 
hasGradientpublic boolean hasGradient()Returns true if the gradient calculation is required for thisNDArray.- Specified by:
- hasGradientin interface- NDArray
- Returns:
- true if the gradient calculation is required for this NDArrayelse false
 
- 
stopGradientReturns an NDArray equal to this that stop gradient propagation through it.- Specified by:
- stopGradientin interface- NDArray
- Returns:
- an NDArray equal to this that stops gradient propagation through it
 
- 
toStringArrayConverts thisNDArrayto a String array with the specified charset.This method is only applicable to the String typed NDArray and not for printing purpose - Specified by:
- toStringArrayin interface- NDArray
- Parameters:
- charset- to charset for the string
- Returns:
- Array of Strings
 
- 
gatherReturns a partialNDArraypointed by the indexed array.out[i][j][k] = input[index[i][j][k]][j][k] # if axis == 0 out[i][j][k] = input[i][index[i][j][k]][k] # if axis == 1 out[i][j][k] = input[i][j][index[i][j][k]] # if axis == 2 
- 
gatherNdReturns a partialNDArraypointed by the indexed array.Given NDArray arr and NDArray idx. idx is the following structure: \( idx = [ idx[0, ...], idx[1, ...],..., idx[indexingDepth,...] ] \) corresponding to x, y, z index, i.e. [idx_x, idx_y, idx_z, ...]. So indexingDepth smaller than or equal to data.shape[0] If indexingDepth is smaller than data.shape[0], for instance, data.shape[0]=3, i.e. x,y,z but indexingDepth = 2, i.e. [idx_x, idx_y], then the tail co-rank = data.shape[0] - indexingDepth will be kept. With it, the output shape = idx_y.shape appended by data.shape[indexingDepth:] mx.symbol.gather_nd 
- 
takeReturns a partialNDArraypointed by index according to linear indexing, and the of output is of the same shape as index.
- 
putSets the entries ofNDArraypointed by index, according to linear indexing, to be the numbers in value.Value has to be of the same shape as index. 
- 
scatterWrites all values from the tensor value into self at the indices specified in the index tensor.This is the reverse operation of the manner described in gather(). self[index[i][j][k]][j][k] = value[i][j][k] # if axis == 0 self[i][index[i][j][k]][k] = value[i][j][k] # if axis == 1 self[i][j][index[i][j][k]] = value[i][j][k] # if axis == 2 torch.Tensor.scatter_- Specified by:
- scatterin interface- NDArray
- Parameters:
- index- the indices of elements to scatter, can be either empty or of the same dimensionality as value. When empty, the operation returns self unchanged
- value- the source element(s) to scatter
- axis- the axis along which to index
- Returns:
- the NDArray with updated values
 
- 
getReturns a partialNDArray.
- 
setSets thisNDArrayvalue fromBuffer.
- 
setSets the specified index in thisNDArraywith the given values.
- 
setSets the specified index in thisNDArraywith the given value.
- 
setSets the specific index by a function.
- 
setSets theNDArrayby boolean mask or integer index.
- 
setScalarSets the specified scalar in thisNDArraywith the given value.
- 
booleanMaskReturns portion of thisNDArraygiven the index booleanNDArrayalong given axis.- Specified by:
- booleanMaskin interface- NDArray
- Parameters:
- index- boolean- NDArraymask
- axis- an integer that represents the axis of- NDArrayto mask from
- Returns:
- the result NDArray
 
- 
sequenceMaskSets all elements outside the sequence to a constant value.This function takes an n-dimensional input array of the form [batch_size, max_sequence_length, ....] and returns an array of the same shape. Parameter sequenceLengthis used to handle variable-length sequences. sequence_length should be an input array of positive ints of dimension [batch_size].- Specified by:
- sequenceMaskin interface- NDArray
- Parameters:
- sequenceLength- used to handle variable-length sequences
- value- the constant value to be set
- Returns:
- the result NDArray
 
- 
sequenceMaskSets all elements outside the sequence to 0.This function takes an n-dimensional input array of the form [batch_size, max_sequence_length, ....] and returns an array of the same shape. Parameter sequenceLengthis used to handle variable-length sequences. sequence_length should be an input array of positive ints of dimension [batch_size].- Specified by:
- sequenceMaskin interface- NDArray
- Parameters:
- sequenceLength- used to handle variable-length sequences
- Returns:
- the result NDArray
 
- 
contentEqualsReturnstrueif all elements in thisNDArrayare equal to theNumber.Examples jshell> NDArray array = manager.ones(new Shape(2, 3)); jshell> array.contentEquals(1); // return true instead of boolean NDArray true - Specified by:
- contentEqualsin interface- NDArray
- Parameters:
- number- the number to compare
- Returns:
- the boolean result
 
- 
contentEqualsReturnstrueif all elements in thisNDArrayare equal to the otherNDArray.Examples jshell> NDArray array1 = manager.arange(6f).reshape(2, 3); jshell> NDArray array2 = manager.create(new float[] {0f, 1f, 2f, 3f, 4f, 5f}, new Shape(2, 3)); jshell> array1.contentEquals(array2); // return true instead of boolean NDArray true- Specified by:
- contentEqualsin interface- NDArray
- Parameters:
- other- the other- NDArrayto compare
- Returns:
- the boolean result
 
- 
eqReturns the booleanNDArrayfor element-wise "Equals" comparison.Examples jshell> NDArray array = manager.ones(new Shape(1)); jshell> array.eq(1); ND: (1) cpu() boolean [ true] 
- 
eqReturns the booleanNDArrayfor element-wise "Equals" comparison.Examples jshell> NDArray array1 = manager.create(new float[] {0f, 1f, 3f}); jshell> NDArray array2 = manager.arange(3f); jshell> array1.eq(array2); ND: (3) cpu() boolean [ true, true, false]
- 
neqReturns the booleanNDArrayfor element-wise "Not equals" comparison.Examples jshell> NDArray array = manager.arange(4f).reshape(2, 2); jshell> array.neq(1); ND: (2, 2) cpu() boolean [[ true, false], [ true, true], ] 
- 
neqReturns the booleanNDArrayfor element-wise "Not equals" comparison.Examples jshell> NDArray array1 = manager.create(new float[] {1f, 2f}); jshell> NDArray array2 = manager.create(new float[] {1f, 3f}); jshell> array1.neq(array2); ND: (2) cpu() boolean [false, true] jshell> NDArray array1 = manager.create(new float[] {1f, 2f}); jshell> NDArray array2 = manager.create(new float[] {1f, 3f, 1f, 4f}, new Shape(2, 2)); jshell> array1.neq(array2); // broadcasting ND: (2, 2) cpu() boolean [[false, true], [false, true], ]
- 
gtReturns the booleanNDArrayfor element-wise "Greater" comparison.Examples jshell> NDArray array = manager.create(new float[] {4f, 2f}); jshell> array.gt(2f); ND: (2) cpu() boolean [ true, false]
- 
gtReturns the booleanNDArrayfor element-wise "Greater Than" comparison.Examples jshell> NDArray array1 = manager.create(new float[] {4f, 2f}); jshell> NDArray array2 = manager.create(new float[] {2f, 2f}); jshell> array1.neq(array2); ND: (2) cpu() boolean [ true, false]
- 
gteReturns the booleanNDArrayfor element-wise "Greater or equals" comparison.jshell> NDArray array = manager.create(new float[] {4f, 2f}); jshell> array.gte(2f); ND: (2) cpu() boolean [ true, true]
- 
gteReturns the booleanNDArrayfor element-wise "Greater or equals" comparison.Examples jshell> NDArray array1 = manager.create(new float[] {4f, 2f}); jshell> NDArray array2 = manager.create(new float[] {2f, 2f}); jshell> array1.gte(array2); ND: (2) cpu() boolean [ true, true]
- 
ltReturns the booleanNDArrayfor element-wise "Less" comparison.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.lt(2f); ND: (2) cpu() boolean [ true, false]
- 
ltReturns the booleanNDArrayfor element-wise "Less" comparison.Examples jshell> NDArray array1 = manager.create(new float[] {1f, 2f}); jshell> NDArray array2 = manager.create(new float[] {2f, 2f}); jshell> array1.lt(array2); ND: (2) cpu() boolean [ true, false]
- 
lteReturns the booleanNDArrayfor element-wise "Less or equals" comparison.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.lte(2f); ND: (2) cpu() boolean [ true, true]
- 
lteReturns the booleanNDArrayfor element-wise "Less or equals" comparison.Examples jshell> NDArray array1 = manager.create(new float[] {1f, 2f}); jshell> NDArray array2 = manager.create(new float[] {2f, 2f}); jshell> array1.lte(array2); ND: (2) cpu() boolean [ true, true]
- 
addAdds a number to thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.add(2f); ND: (2) cpu() float32 [3., 4.]
- 
addAdds otherNDArrays to thisNDArrayelement-wise.The shapes of this NDArrayand otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.arange(9f).reshape(3, 3); jshell> NDArray array2 = manager.arange(3f); jshell> array1.add(array2); // broadcasting ND: (3, 3) cpu() float32 [[ 0., 2., 4.], [ 3., 5., 7.], [ 6., 8., 10.], ] 
- 
subSubtracts a number from thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.sub(2f); ND: (2) cpu() float32 [-1., 0.]
- 
subSubtracts the otherNDArrayfrom thisNDArrayelement-wise.The shapes of this NDArrayand otherNDArrays must be broadcastable.Examples jshell> NDArray array1 = manager.arange(9).reshape(3, 3); jshell> NDArray array2 = manager.arange(3); jshell> array1.sub(array2); // broadcasting ND: (3, 3) cpu() float32 [[0., 0., 0.], [3., 3., 3.], [6., 6., 6.], ] 
- 
mulMultiplies thisNDArrayby a number element-wise.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.mul(3f); ND: (2) cpu() float32 [3., 6.]
- 
mulMultiplies thisNDArrayby otherNDArrays element-wise.The shapes of this NDArrayand otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.arange(9f).reshape(3, 3); jshell> NDArray array2 = manager.arange(3f); jshell> array1.mul(array2); // broadcasting ND: (3, 3) cpu() float32 [[ 0., 1., 4.], [ 0., 4., 10.], [ 0., 7., 16.], ] 
- 
divDivides thisNDArrayby a number element-wise.Examples jshell> NDArray array = manager.arange(5f); jshell> array.div(4f); ND: (5) cpu() float32 [0. , 0.25, 0.5 , 0.75, 1. ] 
- 
divDivides thisNDArrayby the otherNDArrayelement-wise.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.arange(9f).reshape(3, 3); jshell> NDArray array2 = manager.ones(new Shape(3)).mul(10); jshell> array1.div(array2); // broadcasting ND: (3, 3) cpu() float32 [[0. , 0.1, 0.2], [0.3, 0.4, 0.5], [0.6, 0.7, 0.8], ] 
- 
modReturns element-wise remainder of division.Examples jshell> NDArray array = manager.arange(7f); jshell> array.mod(5f); ND: (7) cpu() float32 [0., 1., 2., 3., 4., 0., 1.] 
- 
modReturns element-wise remainder of division.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.create(new float[] {4f, 7f}); jshell> NDArray array2 = manager.create(new float[] {2f, 3f}); jshell> array1.mod(array2); ND: (2) cpu() float32 [0., 1.]
- 
powTakes the power of thisNDArraywith a number element-wise.Examples jshell> NDArray array = manager.arange(5f); jshell> array.pow(4f); ND: (6) cpu() float32 [ 0., 1., 8., 27., 64., 125.] 
- 
powTakes the power of thisNDArraywith the otherNDArrayelement-wise.Examples jshell> NDArray array1 = manager.arange(6f).reshape(3, 2); jshell> NDArray array2 = manager.create(new float[] {2f, 3f}); jshell> array1.pow(array2); // broadcasting ND: (3, 2) cpu() float32 [[ 0., 1.], [ 4., 27.], [ 16., 125.], ]
- 
addiAdds a number to thisNDArrayelement-wise in place.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.addi(2f); ND: (2) cpu() float32 [3., 4.] jshell> array; ND: (2) cpu() float32 [3., 4.]
- 
addiAdds otherNDArrays to thisNDArrayelement-wise in place.The shapes of this NDArrayand otherNDArrays must be broadcastable.Examples jshell> NDArray array1 = manager.create(new float[] {1f, 2f}); jshell> NDArray array2 = manager.create(new float[] {3f, 4f}); jshell> array1.addi(array2); ND: (2) cpu() float32 [4., 6.] jshell> array; ND: (2) cpu() float32 [4., 6.]
- 
subiSubtracts a number from thisNDArrayelement-wise in place.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.subi(2f); ND: (2) cpu() float32 [-1., 0.] jshell> array; ND: (2) cpu() float32 [-1., 0.]
- 
subiSubtracts the otherNDArrayfrom thisNDArrayelement-wise in place.The shapes of this NDArrayand otherNDArrays must be broadcastable.Examples jshell> NDArray array1 = manager.arange(9f).reshape(3, 3); jshell> NDArray array2 = manager.arange(3f); jshell> array1.subi(array2); // broadcasting ND: (3, 3) cpu() float32 [[0., 0., 0.], [3., 3., 3.], [6., 6., 6.], ] jshell> array1; [[0., 0., 0.], [3., 3., 3.], [6., 6., 6.], ] 
- 
muliMultiplies thisNDArrayby a number element-wise in place.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array.muli(3f); ND: (2) cpu() float32 [3., 6.] jshell> array; ND: (2) cpu() float32 [3., 6.]
- 
muliMultiplies thisNDArrayby otherNDArrayelement-wise in place.The shapes of this NDArrayand otherNDArrays must be broadcastable.Examples jshell> NDArray array1 = manager.arange(9f).reshape(3, 3); jshell> NDArray array2 = manager.arange(3f); jshell> array1.muli(array2); // broadcasting ND: (3, 3) cpu() float32 [[ 0., 1., 4.], [ 0., 4., 10.], [ 0., 7., 16.], ] jshell> array1; ND: (3, 3) cpu() float32 [[ 0., 1., 4.], [ 0., 4., 10.], [ 0., 7., 16.], ] 
- 
diviDivides thisNDArrayby a number element-wise in place.Examples jshell> NDArray array = manager.arange(5f); jshell> array.divi(4f); ND: (5) cpu() float32 [0. , 0.25, 0.5 , 0.75, 1. ] jshell> array; ND: (5) cpu() float32 [0. , 0.25, 0.5 , 0.75, 1. ] 
- 
diviDivides thisNDArrayby the otherNDArrayelement-wise in place.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.arange(9f).reshape(3, 3); jshell> NDArray array2 = manager.ones(new Shape(3)).mul(10); jshell> array1.divi(array2); // broadcasting ND: (3, 3) cpu() float32 [[0. , 0.1, 0.2], [0.3, 0.4, 0.5], [0.6, 0.7, 0.8], ] jshell> array1; [[0. , 0.1, 0.2], [0.3, 0.4, 0.5], [0.6, 0.7, 0.8], ] 
- 
modiReturns element-wise remainder of division in place.Examples jshell> NDArray array = manager.arange(7f); jshell> array.modi(5f); ND: (7) cpu() float32 [0., 1., 2., 3., 4., 0., 1.] jshell> array; ND: (7) cpu() float32 [0., 1., 2., 3., 4., 0., 1.] 
- 
modiReturns in place element-wise remainder of division in place.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.create(new float[] {4f, 7f}); jshell> NDArray array2 = manager.create(new float[] {2f, 3f}); jshell> array1.modi(array2); ND: (2) cpu() float32 [0., 1.] jshell> array1; ND: (2) cpu() float32 [0., 1.]
- 
powiTakes the power of thisNDArraywith a number element-wise in place.Examples jshell> NDArray array = manager.arange(5f); jshell> array.powi(4f); ND: (6) cpu() float32 [ 0., 1., 8., 27., 64., 125.] jshell> array; ND: (6) cpu() float32 [ 0., 1., 8., 27., 64., 125.] 
- 
powiTakes the power of thisNDArraywith the otherNDArrayelement-wise in place.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.arange(6f).reshape(3, 2); jshell> NDArray array2 = manager.create(new float[] {2f, 3f}); jshell> array1.powi(array2); // broadcasting ND: (3, 2) cpu() float32 [[ 0., 1.], [ 4., 27.], [ 16., 125.], ] jshell> array1; ND: (3, 2) cpu() float32 [[ 0., 1.], [ 4., 27.], [ 16., 125.], ]
- 
signReturns the element-wise sign.
- 
signiReturns the element-wise sign in-place.
- 
maximumReturns the maximum of thisNDArrayand a number element-wise.Examples jshell> NDArray array = manager.create(new float[] {2f, 3f, 4f}); jshell> array.maximum(3f); ND: (3) cpu() float32 [3., 3., 4.]
- 
maximumReturns the maximum of thisNDArrayand the otherNDArrayelement-wise.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.create(new float[] {2f, 3f, 4f}); jshell> NDArray array2 = manager.create(new float[] {1f, 5f, 2f}); jshell> array1.maximum(array2); ND: (3) cpu() float32 [2., 5., 4.] jshell> NDArray array1 = manager.eye(2); jshell> NDArray array2 = manager.create(new float[] {0.5f, 2f}); jshell> array1.maximum(array2); // broadcasting ND: (2, 2) cpu() float32 [[1. , 2. ], [0.5, 2. ], ]
- 
minimumReturns the minimum of thisNDArrayand a number element-wise.Examples jshell> NDArray array = manager.create(new float[] {2f, 3f, 4f}); jshell> array.minimum(3f); ND: (3) cpu() float32 [2., 3., 3.]
- 
minimumReturns the minimum of thisNDArrayand the otherNDArrayelement-wise.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.create(new float[] {2f, 3f, 4f}); jshell> NDArray array2 = manager.create(new float[] {1f, 5f, 2f}); jshell> array1.minimum(array2); ND: (3) cpu() float32 [1., 3., 2.] jshell> NDArray array1 = manager.eye(2); jshell> NDArray array2 = manager.create(new float[] {0.5f, 2f}); jshell> array1.minimum(array2); // broadcasting ND: (2, 2) cpu() float32 [[0.5, 0. ], [0. , 1. ], ]
- 
negReturns the numerical negativeNDArrayelement-wise.jshell> NDArray array = manager.arange(5f); jshell> array.neg(); ND: (5) cpu() float32 [-0., -1., -2., -3., -4.] 
- 
negiReturns the numerical negativeNDArrayelement-wise in place.jshell> NDArray array = manager.arange(5f); jshell> array.negi(); jshell> array; ND: (5) cpu() float32 [-0., -1., -2., -3., -4.] 
- 
absReturns the absolute value of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {-1f, -2f}); jshell> array.abs(); ND: (2) cpu() float32 [1., 2.]
- 
squareReturns the square of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {2f, -3f}); jshell> array.square(); ND: (2) cpu() float32 [4., 9.]
- 
sqrtReturns the square root of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {4f}); jshell> array.sqrt(); ND: (1) cpu() float32 [2., ]
- 
cbrtReturns the cube-root of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {1f, 8f, 27f}); jshell> array.cbrt(); ND: (3) cpu() float32 [1., 2., 3.]
- 
floorReturns the floor of thisNDArrayelement-wise.The floor of the scalar x is the largest integer i, such that i <= x. Examples jshell> NDArray array = manager.create(new float[] {-1.7f, -1.5f, -0.2f, 0.2f, 1.5f, 1.7f, 2.0f}); jshell> array.floor(); ND: (7) cpu() float32 [-2., -2., -1., 0., 1., 1., 2.]
- 
ceilReturns the ceiling of thisNDArrayelement-wise.The ceil of the scalar x is the smallest integer i, such that i >= x. Examples jshell> NDArray array = manager.create(new float[] {-1.7f, -1.5f, -0.2f, 0.2f, 1.5f, 1.7f, 2.0f}); jshell> array.ceil(); ND: (7) cpu() float32 [-1., -1., -0., 1., 2., 2., 2.]
- 
roundReturns the round of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {-1.7f, -1.5f, -0.2f, 0.2f, 1.5f, 1.7f, 2.0f}); jshell> array.round(); ND: (7) cpu() float32 [-2., -2., -0., 0., 2., 2., 2.]
- 
truncReturns the truncated value of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {-1.7f, -1.5f, -0.2f, 0.2f, 1.5f, 1.7f, 2.0f}); jshell> array.trunc(); ND: (7) cpu() float32 [-1., -1., -0., 0., 1., 1., 2.]
- 
expReturns the exponential value of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {0f, 2.5f}); jshell> array.exp(); ND: (2) cpu() float32 [ 1. , 12.1825]
- 
gammalnReturn the log of the absolute value of the gamma function of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {0.5f, 1f, 1.5f}); jshell> array.gammaln(); ND: (2) cpu() float32 [ 0.5724, 0.0000, -0.1208]
- 
logReturns the natural logarithmic value of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {0f, 2.5f}); jshell> array.log(); ND: (2) cpu() float32 [ -inf, 0.9163]
- 
log10Returns the base 10 logarithm of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {1000f, 1f, 150f}); jshell> array.log10(); ND: (3) cpu() float32 [3. , 0. , 2.1761]
- 
log2Returns the base 2 logarithm of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new float[] {8, 1f, 5f}); jshell> array.log2(); ND: (3) cpu() float32 [3. , 0. , 2.3219]
- 
sinReturns the trigonometric sine of thisNDArrayelement-wise.The input should be in radians (2 Pi radians equals 360 degrees). Examples jshell> NDArray array = manager.create(new float[] {0f, 30f, 45f, 60f, 90f}); jshell> array = array.mul(Math.PI).div(180f); jshell> array.sin(); ND: (5) cpu() float32 [0. , 0.5 , 0.7071, 0.866 , 1. ]
- 
cosReturns the trigonometric cosine of thisNDArrayelement-wise.The input should be in radians (2 Pi radians equals 360 degrees). Examples jshell> NDArray array = manager.create(new double[] {0, Math.PI/2, Math.PI}); jshell> array.cos(); ND: (3) cpu() float64 [ 1.0000000e+00, 6.1232340e-17, -1.0000000e+00],
- 
tanReturns the trigonometric tangent of thisNDArrayelement-wise.The input should be in radians (2 Pi radians equals 360 degrees). Examples jshell> NDArray array = manager.create(new double[] {-Math.PI, Math.PI/2, Math.PI}); jshell> array.tan(); ND: (3) cpu() float64 [ 1.2246468e-16, 1.6331239e+16, -1.2246468e-16],
- 
asinReturns the inverse trigonometric sine of thisNDArrayelement-wise.The input should be in the range [-1, 1]. The output is in the closed interval of [-Pi/2, Pi/2]. Examples jshell> NDArray array = manager.create(new float[] {1f, -1f, 0f}); jshell> array.asin(); ND: (3) cpu() float64 [ 1.5708, -1.5708, 0. ]
- 
acosReturns the inverse trigonometric cosine of thisNDArrayelement-wise.The input should be in the range [-1, 1]. The output is in the closed interval of [-Pi/2, Pi/2]. Examples jshell> NDArray array = manager.create(new float[] {1f, -1f}); jshell> array.acos(); ND: (2) cpu() float64 [0. , 3.1416]
- 
atanReturns the inverse trigonometric tangent of thisNDArrayelement-wise.The input should be in the range [-1, 1]. The output is in the closed interval of [-Pi/2, Pi/2]. Examples jshell> NDArray array = manager.create(new float[] {0f, 1f}); jshell> array.atan(); ND: (2) cpu() float64 [0. , 0.7854]
- 
atan2Returns the element-wise arc-tangent of this/other choosing the quadrant correctly.Examples jshell> NDArray x = manager.create(new float[] {0f, 1f}); jshell> NDArray y = manager.create(new float[] {0f, -6f}); jshell> x.atan2(y); ND: (2) cpu() float64 [0. , 2.9764]
- 
sinhReturns the hyperbolic sine of thisNDArrayelement-wise.sinh(x)=0.5*(exp(x) - exp(-x)) Examples jshell> NDArray array = manager.create(new double[] {0, Math.PI}); jshell> array.sinh(); ND: (2) cpu() float64 [ 0. , 11.5487]
- 
coshReturns the hyperbolic cosine of thisNDArrayelement-wise.cosh(x)=0.5*(exp(x)+exp(-x)) Examples jshell> NDArray array = manager.create(new double[] {0, Math.PI}); jshell> array.cosh(); ND: (2) cpu() float64 [ 1. , 11.592 ]
- 
tanhReturns the hyperbolic tangent of thisNDArrayelement-wise.tanh(x)=sinh(x)/cosh(x) Examples jshell> NDArray array = manager.create(new double[] {0, Math.PI}); jshell> array.tanh(); ND: (2) cpu() float64 [0. , 0.9963]
- 
asinhReturns the inverse hyperbolic sine of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new double[] {Math.E, 10}); jshell> array.asinh(); ND: (2) cpu() float64 [1.7254, 2.9982]
- 
acoshReturns the inverse hyperbolic cosine of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new double[] {Math.E, 10}); jshell> array.acosh(); ND: (2) cpu() float64 [1.6575, 2.9932]
- 
atanhReturns the inverse hyperbolic tangent of thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new double[] {0, -0.5}); jshell> array.atanh(); ND: (2) cpu() float64 [ 0. , -0.5493]
- 
toDegreesConverts thisNDArrayfrom radians to degrees element-wise.Examples jshell> NDArray array = manager.arange(6f).mul(Math.PI / 3); jshell> array.toDegrees(); ND: (6) cpu() float32 [ 0., 60., 120., 180., 240., 300.] 
- 
toRadiansConverts thisNDArrayfrom degrees to radians element-wise.Examples jshell> NDArray array = manager.arange(6f).mul(60); jshell> array.toRadians(); ND: (6) cpu() float32 [0. , 1.0472, 2.0944, 3.1416, 4.1888, 5.236 ] 
- 
maxReturns the maximum of thisNDArray.Examples jshell> NDArray array = manager.arange(4f).reshape(2,2); jshell> array; ND: (2, 2) cpu() float32 [[0., 1.], [2., 3.], ] jshell> array.max(); // Maximum of the flattened array ND: () cpu() float32 3. jshell> array.max().getFloat() // Use getFloat() to get native float 3.0 
- 
maxReturns the maximum of thisNDArrayalong given axes.Examples jshell> NDArray array = manager.arange(4f).reshape(2,2); jshell> array; ND: (2, 2) cpu() float32 [[0., 1.], [2., 3.], ] jshell> array.max(new int[]{0}, true); // Maximum along the first axis and keep dimension ND: (1, 2) cpu() float32 [[2., 3.], ] jshell> array.max(new int[]{1}, true); // Maximum along the second axis and keep dimension ND: (2, 1) cpu() float32 [[1.], [3.], ]
- 
minReturns the minimum of thisNDArray.Examples jshell> NDArray array = manager.arange(4f).reshape(2,2); jshell> array; ND: (2, 2) cpu() float32 [[0., 1.], [2., 3.], ] jshell> array.min(); // Minimum of the flattened array ND: () cpu() float32 0. jshell> array.min().getFloat(); // Use getFloat() to get native float 0.0 
- 
minReturns the minimum of thisNDArrayalong given axes.Examples jshell> NDArray array = manager.arange(4f).reshape(2,2); jshell> array ND: (2, 2) cpu() float32 [[0., 1.], [2., 3.], ] jshell> array.min(new int[]{0}, true) // Minimum along the first axis and keep dimension ND: (1, 2) cpu() float32 [[0., 1.], ] jshell> array.min(new int[]{1}, true) // Minimum along the second axis and keep dimension ND: (2, 1) cpu() float32 [[0.], [2.], ]
- 
sumReturns the sum of thisNDArray.Examples jshell> NDArray array = manager.create(new float[] {0.5f, 1.5f}); jshell> array.sum(); ND: () cpu() float32 2. jshell> array.sum().getFloat(); // Use getFloat() to get native float 2.0 jshell> NDArray array = manager.create(new float[] {0f, 1f, 0f, 5f}, new Shape(2, 2)); jshell> array.sum(); ND: () cpu() float32 6.
- 
sumReturns the sum of thisNDArrayalong given axes.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 0f, 5f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[0., 1.], [0., 5.], ] jshell> array.sum(new int[] {0}, true); ND: (1, 2) cpu() float32 [[0., 6.], ] jshell> array.sum(new int[] {1}, true); ND: (2, 2) cpu() float32 [[0., 1.], [0., 5.], ]
- 
cumProdReturns the cumulative product of elements of input in the dimension dim. For example, if input is a vector of size N, the result will also be a vector of size N, with elements. [x1, x1 * x2, x1 * x2 *x3 ...]
- 
cumProdReturns the cumulative product of elements of input in the dimension dim. For example, if input is a vector of size N, the result will also be a vector of size N, with elements. [x1, x1 * x2, x1 * x2 *x3 ...]
- 
prodReturns the product of thisNDArray.Examples jshell> NDArray array = manager.create(new float[] {2f, 3f}); jshell> array.prod(); ND: () cpu() float32 6. jshell> array.prod().getFloat(); // Use getFloat to get native float 6.0 jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array.prod(); ND: () cpu() float32 24.
- 
prodReturns the product of thisNDArrayelements over the given axes.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 2.], [3., 4.], ] jshell> array.prod(new int[] {0}, true); ND: (1, 2) cpu() float32 [[3., 8.], ] jshell> array.prod(new int[] {1}, true); ND: (2, 1) cpu() float32 [[ 2.], [12.], ]
- 
meanReturns the average of thisNDArray.Examples jshell> NDArray array = manager.create(new float[] {2f, 3f}); jshell> array.mean(); ND: () cpu() float32 2.5 jshell> array.mean().getFloat(); // Use getFloat() to get native float 2.5 jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array.mean(); ND: () cpu() float32 2.5
- 
meanReturns the average of thisNDArrayalong given axes.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 2.], [3., 4.], ] jshell> array.mean(new int[] {0}, true); ND: (1, 2) cpu() float32 [[2., 3.], ] jshell> array.mean(new int[] {1}, true); ND: (2, 1) cpu() float32 [[1.5], [3.5], ]
- 
normalizePerforms Lp normalization of the array over specified dimension.Examples jshell> NDArray array = manager.create(new float[] {1, 2, 3, 4, 5, 6}, new Shape(2, 3)); jshell> array; ND: (2, 2) cpu() float32 [[1., 2., 3.], [4., 5., 6.], ] jshell> array.normalize(2, 1, 1e-12); ND: (2, 3) cpu() float32 [[0.2673, 0.5345, 0.8018], [0.4558, 0.5698, 0.6838], ]
- 
rotate90Rotates an array by 90 degrees in the plane specified by axes.Rotation direction is from the first towards the second axis. 
- 
traceReturns the sum along diagonals of thisNDArray.If this NDArrayis 2-D, the sum along its diagonal with the given offset is returned, i.e., the sum of elements a[i,i+offset] for all i. If thisNDArrayhas more than two dimensions, then the axes specified by axis1 and axis2 are used to determine the 2-D sub-arrays whose traces are returned. TheShapeof the resulting array is the same as thisNDArraywith axis1 and axis2 removed.Examples jshell> NDArray array = manager.arange(8f).reshape(2, 2, 2); jshell> array; ND: (2, 2, 2) cpu() float32 [[[0., 1.], [2., 3.], ], [[4., 5.], [6., 7.], ], ] jshell> array.trace(1,1,2); ND: (2) cpu() float32 [1., 5.] - Specified by:
- tracein interface- NDArray
- Parameters:
- offset- offset of the diagonal from the main diagonal. Can be both positive and negative.
- axis1- axes to be used as the first axis of the 2-D sub-arrays from which the diagonals should be taken
- axis2- axes to be used as the second axis of the 2-D sub-arrays from which the diagonals should be taken
- Returns:
- the sum along diagonals of this NDArray
 
- 
splitSplits thisNDArrayinto multiple subNDArrays given sections along the given axis.Examples jshell> NDArray array = manager.arange(18f).reshape(2, 9); jshell> array; ND: (2, 9) cpu() float32 [[ 0., 1., 2., 3., 4., 5., 6., 7., 8.], [ 9., 10., 11., 12., 13., 14., 15., 16., 17.], ] jshell> array.split(3, 1).forEach(System.out::println); ND: (2, 3) cpu() float32 [[ 0., 1., 2.], [ 9., 10., 11.], ] ND: (2, 3) cpu() float32 [[ 3., 4., 5.], [12., 13., 14.], ] ND: (2, 3) cpu() float32 [[ 6., 7., 8.], [15., 16., 17.], ] 
- 
splitSplits thisNDArrayinto multiple sub-NDArrays given indices along given axis.Examples jshell> NDArray array = manager.arange(18f).reshape(2, 9); jshell> array; ND: (2, 9) cpu() float32 [[ 0., 1., 2., 3., 4., 5., 6., 7., 8.], [ 9., 10., 11., 12., 13., 14., 15., 16., 17.], ] jshell> array.split(new int[] {2,4,5}, 1).forEach(System.out::println); ND: (2, 2) cpu() float32 [[ 0., 1.], [ 9., 10.], ] ND: (2, 2) cpu() float32 [[ 2., 3.], [11., 12.], ] ND: (2, 1) cpu() float32 [[ 4.], [13.], ] ND: (2, 4) cpu() float32 [[ 5., 6., 7., 8.], [14., 15., 16., 17.], ]- Specified by:
- splitin interface- NDArray
- Parameters:
- indices- the entries indicate where along axis this- NDArrayis split. If an index exceeds the dimension of this- NDArrayalong axis, an empty sub-array is returned correspondingly
- axis- the axis to split along
- Returns:
- an NDListwith numOutputsNDArrays withShape(this.shape.axis /= axis)
 
- 
flattenFlattens thisNDArrayinto a 1-DNDArrayin row-major order.To flatten in column-major order, first transpose this NDArrayExamples jshell> NDArray array = manager.create(new float[]{1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array.flatten(); ND: (4) cpu() float32 [1., 2., 3., 4.]
- 
flattenFlattens thisNDArrayinto a partially flattenNDArray.Examples jshell> NDArray array = manager.create(new float[]{1f, 2f, 3f, 4f, 5f, 6f, 7f, 8f}, new Shape(2, 2, 2)); jshell> array.flatten(0, 1); ND: (4) cpu() float32 [[1., 2], [3., 4.], [5., 6.], [7., 8.]]
- 
fftComputes the one-dimensional discrete Fourier Transform.
- 
ifftComputes the one dimensional inverse discrete Fourier transform.
- 
rfftComputes the one dimensional Fourier transform of real-valued input.
- 
irfftComputes the one dimensional inverse Fourier transform of real-valued input.
- 
stftpublic NDArray stft(long nFft, long hopLength, boolean center, NDArray window, boolean normalize, boolean returnComplex) Computes the Short Time Fourier Transform (STFT).- Specified by:
- stftin interface- NDArray
- Parameters:
- nFft- size of Fourier transform
- hopLength- the distance between neighboring sliding window frames. Default can be: floor(n_fft / 4)
- center- whether to pad input on both sides.
- window- Desired window to use. Recommend for HanningWindow
- normalize- controls whether to return the normalized STFT results
- returnComplex- whether to return a complex tensor, or a real tensor with an extra last dimension for the real and imaginary components.
- Returns:
- A NDArray containing the STFT result with shape described above
 
- 
fft2Computes the two-dimensional Discrete Fourier Transform.
- 
padPads thisNDArraywith the givenShape.Examples NDArray array = manager.zeros(3, 3, 4, 2); array.pad(new Shape(1, 1), 0); # pad last dim by 1 on each side array.getShape() => (3, 3, 4, 4) 
- 
ifft2Computes the two-dimensional inverse Discrete Fourier Transform.
- 
reshapeReshapes thisNDArrayto the givenShape.You can reshape it to match another NDArray by calling a.reshape(b.getShape())Examples jshell> NDArray array = manager.arange(6f); jshell> array; ND: (6) cpu() float32 [0., 1., 2., 3., 4., 5.] jshell> array.reshape(new Shape(2, 3)); ND: (2, 3) cpu() float32 [[0., 1., 2.], [3., 4., 5.], ] 
- 
expandDimsExpands theShapeof aNDArray.Inserts a new axis that will appear at the axis position in the expanded NDArrayshape.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f}); jshell> array; ND: (2) cpu() float32 [1., 2.] jshell> array.expandDims(0); ND: (1, 2) cpu() float32 [[1., 2.], ] jshell> array.expandDims(1); ND: (2, 1) cpu() float32 [[1.], [2.], ]- Specified by:
- expandDimsin interface- NDArray
- Parameters:
- axis- the position in the expanded axes where the new axis is placed
- Returns:
- the result NDArray. The number of dimensions is one greater than that of theNDArray
 
- 
squeezeRemoves singleton dimensions at the given axes.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f}, new Shape(1, 3, 1)); jshell> array; ND: (1, 3, 1) cpu() float32 [[[0.], [1.], [2.], ], ] jshell> array.squeeze(new int[] {0, 2}); ND: (3) cpu() float32 [0., 1., 2.]
- 
uniqueReturns the unique elements of the input tensor.Examples jshell> NDArray array = manager.create(new float[] {3f, 1f, 2f, 3f, 1f, 2f, 1f, 3f, 2f}, new Shape(3, 3)); jshell> array; ND: (3, 3) cpu() float32 [[[3., 1., 2.], [3., 1., 2.], [1., 3., 2.], ], ] jshell> NDList output = array.unique(0, true, true, true); jshell> output.get(0); jshell> output.get(1); jshell> output.get(2); ND: (2, 3) cpu() float32 [[1., 3., 2.], [3., 1., 2.], ] ND: (3) cpu() int64 [ 1, 1, 0] ND: (2) cpu() int64 [ 1, 2]- Specified by:
- uniquein interface- NDArray
- Parameters:
- dim- the dimension to apply unique
- sorted- whether to sort the unique elements in ascending order before returning as output
- returnInverse- return the indices which, fed into the output unique array as indices, will recover the original array
- returnCounts- return the counts for each unique element
- Returns:
- An NDListcontaining: output (Tensor): the output list of unique elements or low-rank tensors. inverse_indices (Tensor): (optional) if return_inverse is True, there will be an additional returned tensor (same shape as input) representing the indices for where elements in the original input map to in the output; otherwise, this function will only return a single tensor. counts (Tensor): (optional) if return_counts is True, there will be an additional returned tensor (same shape as output or output.size(dim), if dim was specified) representing the number of occurrences for each unique value or tensor.
 
- 
logicalAndReturns the truth value of thisNDArrayAND the otherNDArrayelement-wise.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.create(new boolean[] {true}); jshell> NDArray array2 = manager.create(new boolean[] {false}); jshell> array1.logicalAnd(array2); ND: (1) cpu() boolean [false] jshell> array1 = manager.create(new boolean[] {true, false}); jshell> array2 = manager.create(new boolean[] {false, false}); jshell> array1.logicalAnd(array2); ND: (2) cpu() boolean [false, false]jshell> NDArray array = manager.arange(5f); jshell> array.gt(1).logicalAnd(array.lt(4)); ND: (5) cpu() boolean [false, false, true, true, false] - Specified by:
- logicalAndin interface- NDArray
- Parameters:
- other- the other- NDArrayto operate on
- Returns:
- the boolean NDArrayof the logical AND operation applied to the elements of thisNDArrayand the otherNDArray
 
- 
logicalOrComputes the truth value of thisNDArrayOR the otherNDArrayelement-wise.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array1 = manager.create(new boolean[] {true}); jshell> NDArray array2 = manager.create(new boolean[] {false}); jshell> array1.logicalOr(array2); ND: (1) cpu() boolean [ true] jshell> array1 = manager.create(new boolean[] {true, false}); jshell> array2 = manager.create(new boolean[] {false, false}); jshell> array1.logicalOr(array2); ND: (2) cpu() boolean [ true, false]jshell> NDArray array = manager.arange(5f); jshell> array.lt(1).logicalOr(array.gt(3)); ND: (5) cpu() boolean [ true, false, false, false, true] 
- 
logicalXorComputes the truth value of thisNDArrayXOR the otherNDArrayelement-wise.The shapes of this NDArrayand the otherNDArraymust be broadcastable.Examples jshell> NDArray array = manager.create(new boolean[] {true}); jshell> array1.logicalXor(array2); ND: (1) cpu() boolean [ true] jshell> array1 = manager.create(new boolean[] {true, false}); jshell> array2 = manager.create(new boolean[] {false, false}); jshell> array1.logicalXor(array2); ND: (2) cpu() boolean [ true, false]jshell> NDArray array = manager.arange(5f); jshell> array.lt(1).logicalXor(array.gt(3)); ND: (5) cpu() boolean [ true, false, false, false, true] - Specified by:
- logicalXorin interface- NDArray
- Parameters:
- other- the other- NDArrayto operate on
- Returns:
- the boolean NDArrayof the logical XOR operation applied to the elements of thisNDArrayand the otherNDArray
 
- 
logicalNotComputes the truth value of NOT thisNDArrayelement-wise.Examples jshell> NDArray array = manager.create(new boolean[] {true}); jshell> array.logicalNot(); ND: (1) cpu() boolean [ false]jshell> NDArray array = manager.arange(5f); jshell> array.lt(1).logicalNot(); ND: (5) cpu() boolean [false, true, true, true, true] - Specified by:
- logicalNotin interface- NDArray
- Returns:
- the boolean NDArray
 
- 
argSortReturns the indices that would sort thisNDArraygiven the axis.Perform an indirect sort along the given axis. It returns a NDArrayof indices of the sameShapeas thisNDArray.Examples jshell> NDArray array = manager.create(new float[] {0f, 3f, 2f, 2f}, new Shape(2, 2)); jshell> array.argSort(0, false); ND: (2, 2) cpu() int64 [[ 1, 0], [ 0, 1], ]- Specified by:
- argSortin interface- NDArray
- Parameters:
- axis- the axis to sort along
- ascending- whether to sort ascending
- Returns:
- a NDArrayof indices corresponding to elements in thisNDArrayon the axis, the output DataType is alwaysDataType.INT64
 
- 
sortSorts the flattenedNDArray.Examples jshell> NDArray array = manager.create(new float[] {1f, 4f, 3f, 1f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 4.], [3., 1.], ] jshell> array.sort(); // sort the flattened array ND: (2, 2) cpu() float32 [[1., 4.], [1., 3.], ]
- 
sortSorts the flattenedNDArray.Examples jshell> NDArray array = manager.create(new float[] {1f, 4f, 3f, 1f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 4.], [3., 1.], ] jshell> array.sort(0); // sort along the first axis ND: (2, 2) cpu() float32 [[1., 1.], [3., 4.], ]
- 
softmaxApplies the softmax function along the given axis.
- 
logSoftmaxApplies the softmax function followed by a logarithm.Mathematically equivalent to calling softmax and then log. This single operator is faster than calling two operators and numerically more stable when computing gradients. - Specified by:
- logSoftmaxin interface- NDArray
- Parameters:
- axis- the axis along which to apply
- Returns:
- the result NDArray
 
- 
cumSumReturns the cumulative sum of the elements in the flattenedNDArray.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f, 5f, 6f}, new Shape(2, 3)); jshell> array; ND: (2, 3) cpu() float32 [[1., 2., 3.], [4., 5., 6.], ] jshell> array.cumSum(); // cumSum on flattened array ND: (6) cpu() float32 [ 1., 3., 6., 10., 15., 21.]
- 
cumSumReturn the cumulative sum of the elements along a given axis.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f, 5f, 6f}, new Shape(2, 3)); jshell> array; ND: (2, 3) cpu() float32 [[1., 2., 3.], [4., 5., 6.], ] jshell> array.cumSum(0); ND: (2, 3) cpu() float32 [[1., 2., 3.], [5., 7., 9.], ] jshell> array.cumSum(1); ND: (2, 3) cpu() float32 [[ 1., 3., 6.], [ 4., 9., 15.], ]
- 
isInfiniteReturns the booleanNDArraywith valuetruewhere thisNDArray's entries are infinite, orfalsewhere they are not infinite.- Specified by:
- isInfinitein interface- NDArray
- Returns:
- the boolean NDArraywith valuetrueif thisNDArray's entries are infinite
 
- 
isNaNReturns the booleanNDArraywith valuetruewhere thisNDArray's entries are NaN, orfalsewhere they are not NaN.Examples jshell> NDArray array = manager.create(new float[] {Float.POSITIVE_INFINITY, 0, Float.NaN}); jshell> array.isNaN(); ND: (3) cpu() boolean [false, false, true]
- 
tileConstructs aNDArrayby repeating thisNDArraythe number of times given repeats.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f}); jshell> array.tile(2); ND: (6) cpu() float32 [0., 1., 2., 0., 1., 2.]
- 
tileConstructs aNDArrayby repeating thisNDArraythe number of times given by repeats along given axis.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f}); jshell> array.tile(1, 2); ND: (1, 6) cpu() float32 [[0., 1., 2., 0., 1., 2.], ]
- 
tileConstructs aNDArrayby repeating thisNDArraythe number of times given by repeats.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f}); jshell> array.tile(new long[] {2, 2}); ND: (2, 6) cpu() float32 [[0., 1., 2., 0., 1., 2.], [0., 1., 2., 0., 1., 2.], ]
- 
tileConstructs aNDArrayby repeating thisNDArraythe number of times to match the desired shape.If the desired Shapehas fewer dimensions than thisNDArray, it will tile against the last axis.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f}); jshell> array.tile(new Shape(6)); ND: (6) cpu() float32 [0., 1., 2., 0., 1., 2.]
- 
repeatRepeats element of thisNDArraythe number of times given repeats.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f}); jshell> array.repeat(2); ND: (6) cpu() float32 [0., 0., 1., 1., 2., 2.]
- 
repeatRepeats element of thisNDArraythe number of times given repeats along given axis.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f, 3f}, new Shape(2, 2)); jshell> array.repeat(1, 2); ND: (6) cpu() float32 [[0., 0., 1., 1.], [2., 2., 3., 3.]]
- 
repeatRepeats element of thisNDArraythe number of times given repeats along each axis.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f, 3f}, new Shape(2, 2)); jshell> array.repeat(new long[] {2, 2}); ND: (12) cpu() float32 [0., 0., 0., 0., 1., 1., 1., 1., 2., 2., 2., 2.]
- 
repeatRepeats element of thisNDArrayto match the desired shape.If the desired Shapehas fewer dimensions that the array, it will repeat against the last axis.Examples jshell> NDArray array = manager.create(new float[] {0f, 1f, 2f, 3f}, new Shape(2, 2)); jshell> array.repeat(new Shape(4, 4)); ND: (4, 4) cpu() float32 [[0., 0., 1., 1.], [0., 0., 1., 1.], [2., 2., 3., 3.], [2., 2., 3., 3.], ]
- 
dotDot product of thisNDArrayand the otherNDArray.- If both this NDArrayand the otherNDArrayare 1-DNDArrays, it is inner product of vectors (without complex conjugation).
- If both this NDArrayand the otherNDArrayare 2-DNDArrays, it is matrix multiplication.
- If either this NDArrayor the otherNDArrayis 0-DNDArray(scalar), it is equivalent to mul.
- If this NDArrayis N-DNDArrayand the otherNDArrayis 1-DNDArray, it is a sum product over the last axis of those.
- If this NDArrayis N-DNDArrayand the otherNDArrayis M-DNDArray(where M>=2), it is a sum product over the last axis of thisNDArrayand the second-to-last axis of the otherNDArray
 Examples jshell> NDArray array1 = manager.create(new float[] {1f, 2f, 3f}); jshell> NDArray array2 = manager.create(new float[] {4f, 5f, 6f}); jshell> array1.dot(array2); // inner product ND: () cpu() float32 32. jshell> array1 = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array2 = manager.create(new float[] {5f, 6f, 7f, 8f}, new Shape(2, 2)); jshell> array1.dot(array2); // matrix multiplication ND: (2, 2) cpu() float32 [[19., 22.], [43., 50.], ] jshell> array1 = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array2 = manager.create(5f); jshell> array1.dot(array2); ND: (2, 2) cpu() float32 [[ 5., 10.], [15., 20.], ] jshell> array1 = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array2 = manager.create(new float[] {1f, 2f}); jshell> array1.dot(array2); ND: (2) cpu() float32 [ 5., 11.] jshell> array1 = manager.create(new float[] {1f, 2f, 3f, 4f, 5f, 6f, 7f, 8f}, new Shape(2, 2, 2)); jshell> array2 = manager.create(new float[] {1f, 2f, 3f ,4f}, new Shape(2, 2)); jshell> array1.dot(array2); ND: (2, 2, 2) cpu() float32 [[[ 7., 10.], [15., 22.], ], [[23., 34.], [31., 46.], ], ]
- If both this 
- 
matMulProduct matrix of thisNDArrayand the otherNDArray.The behavior depends on the arguments in the following way. - If both this NDArrayand the otherNDArrayare 2-DNDArrays, they are multiplied like conventional matrices
- If either this NDArrayor the otherNDArrayis N-DNDArray, N > 2 , it is treated as a stack of matrices residing in the last two indexes and broadcast accordingly.
- If this NDArrayis 1-DNDArray, it is promoted to a matrix by prepending a 1 to its dimensions. After matrix multiplication the prepended 1 is removed.
- If other NDArrayis 1-DNDArray, it is promoted to a matrix by appending a 1 to its dimensions. After matrix multiplication the appended 1 is removed.
 Examples jshell> NDArray array1 = manager.create(new float[] {1f, 0f, 0f, 1f}, new Shape(2, 2)); jshell> NDArray array2 = manager.create(new float[] {4f, 1f, 2f, 2f}, new Shape(2, 2)); jshell> array1.matMul(array2); // for 2-D arrays, it is the matrix product ND: (2, 2) cpu() float32 [[4., 1.], [2., 2.], ] jshell> array1 = manager.create(new float[] {1f, 0f, 0f, 1f}, new Shape(2, 2)); jshell> array2 = manager.create(new float[] {1f, 2f}); jshell> array1.matMul(array2); ND: (2) cpu() float32 [1., 2.] jshell> array1 = manager.create(new float[] {1f, 0f, 0f, 1f}, new Shape(2, 2)); jshell> array2 = manager.create(new float[] {1f, 2f}); jshell> array1.matMul(array2); ND: (2) cpu() float32 [1., 2.] jshell> array1 = manager.arange(2f * 2f * 4f).reshape(2, 2, 4); jshell> array2 = manager.arange(2f * 2f * 4f).reshape(2, 4, 2); jshell> array1.matMul(array2).get("0, 1, 1"); ND: () cpu() float32 98.
- If both this 
- 
batchMatMulBatch product matrix of thisNDArrayand the otherNDArray.- Specified by:
- batchMatMulin interface- NDArray
- Parameters:
- other- the other- NDArrayto perform matrix product with
- Returns:
- the result NDArray
 
- 
xlogyComputes this * log(other).
- 
clipClips (limit) the values in thisNDArray.Given an interval, values outside the interval are clipped to the interval edges. For example, if an interval of [0, 1] is specified, values smaller than 0 become 0, and values larger than 1 become 1. Examples jshell> NDArray array = manager.arange(10f); jshell> array.clip(1, 8); ND: (10) cpu() float32 [1., 1., 2., 3., 4., 5., 6., 7., 8., 8.] 
- 
flipReturns the reverse order of elements in an array along the given axis.The shape of the array is preserved, but the elements are reordered. 
- 
transposeReturns thisNDArraywith axes transposed.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f ,3f, 4f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 2.], [3., 4.], ] jshell> array.transpose(); ND: (2, 2) cpu() float32 [[1., 3.], [2., 4.], ]
- 
transposeReturns thisNDArraywith given axes transposed.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f ,3f, 4f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 2.], [3., 4.], ] jshell> array.transpose(1, 0); ND: (2, 2) cpu() float32 [[1., 3.], [2., 4.], ] jshell> array = manager.arange(8f).reshape(2, 2, 2); jshell> array; ND: (2, 2, 2) cpu() float32 [[[0., 1.], [2., 3.], ], [[4., 5.], [6., 7.], ], ] jshell> array.transpose(1, 0, 2); ND: (2, 2, 2) cpu() float32 [[[0., 1.], [4., 5.], ], [[2., 3.], [6., 7.], ], ]
- 
broadcastBroadcasts thisNDArrayto be the given shape.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f ,3f, 4f}, new Shape(2, 2)); jshell> array; ND: (2, 2) cpu() float32 [[1., 2.], [3., 4.], ] jshell> array.broadcast(new Shape(2, 2, 2)); ND: (2, 2, 2) cpu() float32 [[[1., 2.], [3., 4.], ], [[1., 2.], [3., 4.], ], ]
- 
argMaxReturns the indices of the maximum values into the flattenedNDArray.Examples jshell> NDArray array = manager.arange(6f).reshape(2, 3); jshell> array; ND: (2, 3) cpu() float32 [[0., 1., 2.], [3., 4., 5.], ] jshell> array.argMax(); ND: () cpu() int64 5. 
- 
argMaxReturns the indices of the maximum values along given axis.Examples jshell> NDArray array = manager.arange(6f).reshape(2, 3); jshell> array; ND: (2, 3) cpu() float32 [[0., 1., 2.], [3., 4., 5.], ] jshell> array.argMax(0); ND: (3) cpu() int64 [1, 1, 1] jshell> array.argMax(1); ND: (2) cpu() int64 [2, 2] 
- 
topKReturns (values, indices) of the top k values along given axis.
- 
argMinReturns the indices of the minimum values into the flattenedNDArray.Examples jshell> NDArray array = manager.arange(6f).reshape(2, 3); jshell> array; ND: (2, 3) cpu() float32 [[0., 1., 2.], [3., 4., 5.], ] jshell> array.argMin(); ND: () cpu() int64 0. 
- 
argMinReturns the indices of the minimum values along given axis.Examples jshell> NDArray array = manager.arange(6f).reshape(2, 3); jshell> array; ND: (2, 3) cpu() float32 [[0., 1., 2.], [3., 4., 5.], ] jshell> array.argMin(0); ND: (3) cpu() int64 [0, 0, 0] jshell> array.argMin(1); ND: (2) cpu() int64 [0, 0] 
- 
percentileReturns percentile for thisNDArray.- Specified by:
- percentilein interface- NDArray
- Parameters:
- percentile- the target percentile in range of 0..100
- Returns:
- the result NDArray
 
- 
percentileReturns median along given dimension(s).- Specified by:
- percentilein interface- NDArray
- Parameters:
- percentile- the target percentile in range of 0..100
- axes- the dimension to calculate percentile for
- Returns:
- the result NDArrayNDArray
 
- 
medianReturns median value for thisNDArray.
- 
medianReturns median value along given axes.
- 
toDenseReturns a dense representation of the sparseNDArray.
- 
toSparseReturns a sparse representation ofNDArray.- Specified by:
- toSparsein interface- NDArray
- Parameters:
- fmt- the- SparseFormatof this- NDArray
- Returns:
- the result NDArray
 
- 
nonzeroReturns the indices of elements that are non-zero.Note that the behavior is slightly different from numpy.nonzero. Numpy returns a tuple of NDArray, one for each dimension of NDArray. DJL nonzero returns only one NDArraywith last dimension containing all dimension of indices.Examples jshell> NDArray array = manager.create(new float[] {1f, 1f, 1f, 0f, 1f}); jshell> array.nonzero(); ND: (4, 1) cpu() int64 [[ 0], [ 1], [ 2], [ 4], ] jshell> array = manager.create(new float[] {3f, 0f, 0f, 0f, 4f, 0f, 5f, 6f, 0f}).reshape(3, 3); jshell> array; ND: (3, 3) cpu() float32 [[3., 0., 0.], [0., 4., 0.], [5., 6., 0.], ] jshell> array.nonzero(); ND: (4, 2) cpu() int64 [[ 0, 0], [ 1, 1], [ 2, 0], [ 2, 1], ]
- 
erfinvReturns element-wise inverse gauss error function of theNDArray.Examples jshell> NDArray array = manager.create(new float[] {0f, 0.5f, -1f}); jshell> array.erfinv(); ND: (3) cpu() float32 [0., 0.4769, -inf]
- 
erfReturns element-wise gauss error function of theNDArray.Examples jshell> NDArray array = manager.create(new float[] {0f, 0.4769f, Float.NEGATIVE_INFINITY}); jshell> array.erf(); ND: (3) cpu() float32 [0., 0.5, -1]
- 
inverseComputes the inverse of squareNDArrayif it exists.
- 
normReturns the norm of thisNDArray.Examples jshell> NDArray array = manager.create(new float[] {-3f, -4f}); jshell> array.norm(true); ND: () cpu() float32 5. jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array.norm(true); ND: () cpu() float32 [[5.4772], ]
- 
normReturns the norm of thisNDArray.Examples jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array.norm(2, new int[] {0}, true); ND: (1, 2) cpu() float32 [[3.1623, 4.4721], ] jshell> NDArray array = manager.create(new float[] {1f, 2f, 3f, 4f}, new Shape(2, 2)); jshell> array.norm(2, new int[] {0}, false); ND: (2) cpu() float32 [3.1623, 4.4721]- Specified by:
- normin interface- NDArray
- Parameters:
- ord- Order of the norm.
- axes- If axes contains an integer, it specifies the axis of x along which to compute the vector norms. If axis contains 2 integers, it specifies the axes that hold 2-D matrices, and the matrix norms of these matrices are computed.
- keepDims- keepDims If this is set to True, the axes which are normed over are left in the result as dimensions with size one. With this option the result will broadcast correctly against the original x.
- Returns:
- the norm of this NDArray
 
- 
oneHotReturns a one-hotNDArray.- The locations represented by indices take value onValue, while all other locations take value offValue.
- If the input NDArrayis rank N, the output will have rank N+1. The new axis is appended at the end.
- If NDArrayis a scalar the output shape will be a vector of length depth.
- If NDArrayis a vector of length features, the output shape will be features x depth.
- If NDArrayis a matrix with shape [batch, features], the output shape will be batch x features x depth.
 Examples jshell> NDArray array = manager.create(new int[] {1, 0, 2, 0}); jshell> array.oneHot(3, 8f, 1f, array.getDataType()); ND: (4, 3) cpu() int32 [[ 1, 8, 1], [ 8, 1, 1], [ 1, 1, 8], [ 8, 1, 1], ]- Specified by:
- oneHotin interface- NDArray
- Parameters:
- depth- Depth of the one hot dimension.
- onValue- The value assigned to the locations represented by indices.
- offValue- The value assigned to the locations not represented by indices.
- dataType- dataType of the output.
- Returns:
- one-hot encoding of this NDArray
- See Also:
 
- 
batchDotBatchwise product of thisNDArrayand the otherNDArray.- batchDot is used to compute dot product of x and y when x and y are data in batch, namely N-D (N greater or equal to 3) arrays in shape of (B0, …, B_i, :, :). For example, given x with shape (B_0, …, B_i, N, M) and y with shape (B_0, …, B_i, M, K), the result array will have shape (B_0, …, B_i, N, K), which is computed by: batch_dot(x,y)[b_0, ..., b_i, :, :] = dot(x[b_0, ..., b_i, :, :], y[b_0, ..., b_i, :, :])
 Examples jshell> NDArray array1 = manager.ones(new Shape(2, 1, 4)); jshell> NDArray array2 = manager.ones(new Shape(2, 4, 6)); jshell> array1.batchDot(array2); ND: (2, 1, 6) cpu() float32 [[[4., 4., 4., 4., 4., 4.], ], [[4., 4., 4., 4., 4., 4.], ], ] 
- 
complexConvert a general NDArray to its complex math format.example: [10f, 12f] float32 -> [10+12j] in complex64 
- 
realConvert a complex NDArray to its real math format. example: [10+12j] in complex64 -> [10f, 12f] float32
- 
conjConjugate complex array.
- 
getNDArrayInternalpublic ai.djl.ndarray.internal.NDArrayEx getNDArrayInternal()Returns an internal representative of NativeNDArray.This method should only be used by Engine provider - Specified by:
- getNDArrayInternalin interface- NDArray
- Returns:
- an internal representative of Native NDArray
 
- 
isReleasedpublic boolean isReleased()Returnstrueif this NDArray has been released.- Specified by:
- isReleasedin interface- NDArray
- Returns:
- trueif this NDArray has been released
 
- 
closepublic void close()- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein interface- NDArray
- Specified by:
- closein interface- NDResource
 
- 
equals
- 
hashCodepublic int hashCode()
- 
toString
 
-