@Override public INDArray mean(@NonNull INDArray result, int... dimension) { return Nd4j.getExecutioner().exec(new Mean(this, null, result), dimension); }
/** * Returns the overall mean of this ndarray * * @param dimension the dimension to getScalar the mean along * @return the mean along the specified dimension of this ndarray */ @Override public INDArray mean(int... dimension) { return Nd4j.getExecutioner().exec(new Mean(this), dimension); }
public SDVariable mean(SDVariable i_x, int... dimensions) { return new Mean(sameDiff(), i_x, dimensions).outputVariables()[0]; }
@Override public void init(INDArray x, INDArray y, INDArray z, long n) { super.init(x, y, z, n); if (Nd4j.executionMode == OpExecutioner.ExecutionMode.JAVA) { if (biasCorrected) this.bias = Nd4j.getExecutioner().execAndReturn(new Bias(x)).getFinalResult().doubleValue(); mean = Nd4j.getExecutioner().execAndReturn(new Mean(x)).getFinalResult().doubleValue(); } }
/** * Returns the overall mean of this ndarray * * @param dimension the dimension to getScalar the mean along * @return the mean along the specified dimension of this ndarray */ @Override public INDArray mean(int... dimension) { return Nd4j.getExecutioner().exec(new Mean(this), dimension); }
@Override public INDArray mean(INDArray result, int... dimension) { return Nd4j.getExecutioner().exec(new Mean(this, null, result), dimension); }
@Override public Op opForDimension(int index, int... dimension) { INDArray xAlongDimension = x.tensorAlongDimension(index, dimension); Mean ret; if (y() != null) ret = new Mean(xAlongDimension, y.tensorAlongDimension(index, dimension), xAlongDimension.length()); else ret = new Mean(x.tensorAlongDimension(index, dimension)); ret.setApplyFinalTransform(applyFinalTransform()); return ret; }
@Override public Op opForDimension(int index, int dimension) { INDArray xAlongDimension = x.vectorAlongDimension(index, dimension); Mean ret; if (y() != null) ret = new Mean(xAlongDimension, y.vectorAlongDimension(index, dimension), xAlongDimension.length()); else ret = new Mean(x.vectorAlongDimension(index, dimension)); ret.setApplyFinalTransform(applyFinalTransform()); return ret; }
@Override public void exec() { this.mean = Nd4j.getExecutioner().execAndReturn(new Mean(x)).getFinalResult().doubleValue(); INDArray xMinusMean = x.sub(mean); double sum = Nd4j.getExecutioner().execAndReturn(new Sum(xMinusMean)).getFinalResult().doubleValue(); this.finalResult = sum; }
@Override public void init(INDArray x, INDArray y, INDArray z, long n) { super.init(x, y, z, n); if (Nd4j.executionMode == OpExecutioner.ExecutionMode.JAVA) { if (biasCorrected) this.bias = Nd4j.getExecutioner().execAndReturn(new Bias(x)).getFinalResult().doubleValue(); mean = Nd4j.getExecutioner().execAndReturn(new Mean(x)).getFinalResult().doubleValue(); } }
private static double getAverageFloatMaxArray(INDArray array) { INDArray max = Nd4j.getExecutioner().exec(new Max(array), 0); int maxValidIndex = max.gt(0).sumNumber().intValue(); INDArray truncatedMax = maxValidIndex > 0 ? max.get(NDArrayIndex.all(), NDArrayIndex.interval(0, maxValidIndex)) : max; return Nd4j.getExecutioner().execAndReturn(new Mean(truncatedMax)).getFinalResult().doubleValue(); }
@Override public void exec() { if (biasCorrected) this.bias = Nd4j.getExecutioner().execAndReturn(new Bias(x)).getFinalResult().doubleValue(); this.mean = Nd4j.getExecutioner().execAndReturn(new Mean(x)).getFinalResult().doubleValue(); INDArray xSubMean = x.sub(mean); INDArray squared = xSubMean.muli(xSubMean); double accum = Nd4j.getExecutioner().execAndReturn(new Sum(squared)).getFinalResult().doubleValue(); getAndSetFinalResult(accum); this.z = Nd4j.scalar(this.finalResult); }