@Override public INDArray amin(int... dimension) { return Nd4j.getExecutioner().exec(new AMin(this), dimension); }
@Override public String onnxName() { throw new NoOpNameFoundException("No onnx op opName found for " + opName()); }
@Override public Type getOpType() { return opType(); } }
@Override public Op opForDimension(int index, int dimension) { INDArray xAlongDimension = x.vectorAlongDimension(index, dimension); if (y() != null) return new AMin(xAlongDimension, y.vectorAlongDimension(index, dimension), xAlongDimension.length()); else return new AMin(x.vectorAlongDimension(index, dimension)); }
@Override public Op opForDimension(int index, int... dimension) { INDArray xAlongDimension = x.tensorAlongDimension(index, dimension); if (y() != null) return new AMin(xAlongDimension, y.tensorAlongDimension(index, dimension), xAlongDimension.length()); else return new AMin(x.tensorAlongDimension(index, dimension)); }
/** * Broadcast absolute min op. See: {@link BroadcastAMax} */ public static INDArray amin(INDArray x, INDArray y, INDArray z, int... dimensions) { if(dimensions == null) { Preconditions.checkArgument(Arrays.equals(x.shape(),y.shape()),getFormattedShapeErrorMessageXy(x,y)); Preconditions.checkArgument(Arrays.equals(x.shape(),z.shape()),getFormattedShapeErrorMessageXResult(x,z)); return Nd4j.getExecutioner().execAndReturn(new AMin(x,y,z,x.length())).z(); } return Nd4j.getExecutioner().execAndReturn(new BroadcastAMin(x,y,z,dimensions)); }
@Override public String tensorflowName() { throw new NoOpNameFoundException("No tensorflow op opName found for " + opName()); }
public INDArray amin(int... dimension) { return Nd4j.getExecutioner().exec(new AMin(this), dimension); }