org.nd4j.linalg.factory.Nd4j.getExecutioner()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(7.0k)|赞(0)|评价(0)|浏览(156)

本文整理了Java中org.nd4j.linalg.factory.Nd4j.getExecutioner()方法的一些代码示例,展示了Nd4j.getExecutioner()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Nd4j.getExecutioner()方法的具体详情如下:
包路径:org.nd4j.linalg.factory.Nd4j
类名称:Nd4j
方法名:getExecutioner

Nd4j.getExecutioner介绍

[英]Get the operation executioner instance
[中]获取操作执行器实例

代码示例

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray nextFloat(char order, int[] shape) {
  3. INDArray array = Nd4j.createUninitialized(shape, order);
  4. UniformDistribution op = new UniformDistribution(array, 0.0, 1.0);
  5. Nd4j.getExecutioner().exec(op, this);
  6. return array;
  7. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Sin function
  3. * @param in
  4. * @param copy
  5. * @return
  6. */
  7. public static INDArray sin(INDArray in, boolean copy) {
  8. return Nd4j.getExecutioner().execAndReturn(new Sin((copy ? in.dup() : in)));
  9. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray getActivation(INDArray in, boolean training) {
  3. Nd4j.getExecutioner().execAndReturn(new SoftSign(in));
  4. return in;
  5. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Returns non-normalized Shannon entropy along dimension
  3. * @param dimension
  4. * @return
  5. */
  6. @Override
  7. public INDArray shannonEntropy(int... dimension) {
  8. return Nd4j.getExecutioner().exec(new ShannonEntropy(this), dimension);
  9. }

代码示例来源:origin: deeplearning4j/nd4j

  1. public static void checkForInf(INDArray z) {
  2. if (Nd4j.getExecutioner().getProfilingMode() != OpExecutioner.ProfilingMode.INF_PANIC
  3. && Nd4j.getExecutioner().getProfilingMode() != OpExecutioner.ProfilingMode.ANY_PANIC)
  4. return;
  5. int match = 0;
  6. if (!z.isScalar()) {
  7. MatchCondition condition = new MatchCondition(z, Conditions.isInfinite());
  8. match = Nd4j.getExecutioner().exec(condition, Integer.MAX_VALUE).getInt(0);
  9. } else {
  10. if (z.data().dataType() == DataBuffer.Type.DOUBLE) {
  11. if (Double.isInfinite(z.getDouble(0)))
  12. match = 1;
  13. } else {
  14. if (Float.isInfinite(z.getFloat(0)))
  15. match = 1;
  16. }
  17. }
  18. if (match > 0)
  19. throw new ND4JIllegalStateException("P.A.N.I.C.! Op.Z() contains " + match + " Inf value(s)");
  20. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray compress(INDArray array) {
  3. INDArray dup = array.dup(array.ordering());
  4. Nd4j.getExecutioner().commit();
  5. dup.setData(compress(dup.data()));
  6. dup.markAsCompressed(true);
  7. return dup;
  8. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Log on arbitrary base
  3. *
  4. * @param ndArray
  5. * @param base
  6. * @return
  7. */
  8. public static INDArray log(INDArray ndArray, double base, boolean duplicate) {
  9. return Nd4j.getExecutioner().exec(new LogX(duplicate ? ndArray.dup(ndArray.ordering()) : ndArray, base)).z();
  10. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public int iamax(long n, INDArray arr, int stride) {
  3. if (Nd4j.getExecutioner().getProfilingMode() == OpExecutioner.ProfilingMode.ALL)
  4. OpProfiler.getInstance().processBlasCall(false, arr);
  5. if (arr.data().dataType() == DataBuffer.Type.DOUBLE) {
  6. DefaultOpExecutioner.validateDataType(DataBuffer.Type.DOUBLE, arr);
  7. return idamax(n, arr, stride);
  8. } else {
  9. DefaultOpExecutioner.validateDataType(DataBuffer.Type.FLOAT, arr);
  10. return isamax(n, arr, stride);
  11. }
  12. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Atan2 operation, new INDArray instance will be returned
  3. * Note the order of x and y parameters is opposite to that of java.lang.Math.atan2
  4. *
  5. * @param x the abscissa coordinate
  6. * @param y the ordinate coordinate
  7. * @return the theta from point (r, theta) when converting (x,y) from to cartesian to polar coordinates
  8. */
  9. public static INDArray atan2(@NonNull INDArray x, @NonNull INDArray y) {
  10. return Nd4j.getExecutioner()
  11. .execAndReturn(new OldAtan2Op(x, y, Nd4j.createUninitialized(x.shape(), x.ordering())));
  12. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Sin function
  3. * @param in
  4. * @param copy
  5. * @return
  6. */
  7. public static INDArray atanh(INDArray in, boolean copy) {
  8. return Nd4j.getExecutioner().execAndReturn(new ATanh((copy ? in.dup() : in)));
  9. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Negate each element (in-place).
  3. */
  4. @Override
  5. public INDArray negi() {
  6. Nd4j.getExecutioner().exec(new Negative(this));
  7. return this;
  8. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray nextGaussian(char order, int[] shape) {
  3. INDArray array = Nd4j.createUninitialized(shape, order);
  4. GaussianDistribution op = new GaussianDistribution(array, 0.0, 1.0);
  5. Nd4j.getExecutioner().exec(op, this);
  6. return array;
  7. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray getActivation(INDArray in, boolean training) {
  3. Nd4j.getExecutioner().execAndReturn(new RectifiedTanh(in));
  4. return in;
  5. }

代码示例来源:origin: deeplearning4j/nd4j

  1. public static void checkForNaN(INDArray z) {
  2. if (Nd4j.getExecutioner().getProfilingMode() != OpExecutioner.ProfilingMode.NAN_PANIC
  3. && Nd4j.getExecutioner().getProfilingMode() != OpExecutioner.ProfilingMode.ANY_PANIC)
  4. return;
  5. int match = 0;
  6. if (!z.isScalar()) {
  7. MatchCondition condition = new MatchCondition(z, Conditions.isNan());
  8. match = Nd4j.getExecutioner().exec(condition, Integer.MAX_VALUE).getInt(0);
  9. } else {
  10. if (z.data().dataType() == DataBuffer.Type.DOUBLE) {
  11. if (Double.isNaN(z.getDouble(0)))
  12. match = 1;
  13. } else {
  14. if (Float.isNaN(z.getFloat(0)))
  15. match = 1;
  16. }
  17. }
  18. if (match > 0)
  19. throw new ND4JIllegalStateException("P.A.N.I.C.! Op.Z() contains " + match + " NaN value(s): ");
  20. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * swaps a vector with another vector.
  3. *
  4. * @param x
  5. * @param y
  6. */
  7. @Override
  8. public void copy(INDArray x, INDArray y) {
  9. if (Nd4j.getExecutioner().getProfilingMode() == OpExecutioner.ProfilingMode.ALL)
  10. OpProfiler.getInstance().processBlasCall(false, x, y);
  11. if (x.isSparse() || y.isSparse()) {
  12. Nd4j.getSparseBlasWrapper().level1().copy(x, y);
  13. return;
  14. }
  15. if (x.data().dataType() == DataBuffer.Type.DOUBLE) {
  16. DefaultOpExecutioner.validateDataType(DataBuffer.Type.DOUBLE, x, y);
  17. dcopy(x.length(), x, BlasBufferUtil.getBlasStride(x), y, BlasBufferUtil.getBlasStride(y));
  18. } else {
  19. DefaultOpExecutioner.validateDataType(DataBuffer.Type.FLOAT, x, y);
  20. scopy(x.length(), x, BlasBufferUtil.getBlasStride(x), y, BlasBufferUtil.getBlasStride(y));
  21. }
  22. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. *
  3. * @param in
  4. * @param copy
  5. * @return
  6. */
  7. public static INDArray cos(INDArray in, boolean copy) {
  8. return Nd4j.getExecutioner().execAndReturn(new Cos((copy ? in.dup() : in)));
  9. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * Returns the product along a given dimension
  3. *
  4. * @param dimension the dimension to getScalar the product along
  5. * @return the product along the specified dimension
  6. */
  7. @Override
  8. public INDArray prod(int... dimension) {
  9. return Nd4j.getExecutioner().exec(new Prod(this), dimension);
  10. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray nextGaussian(char order, long[] shape) {
  3. INDArray array = Nd4j.createUninitialized(shape, order);
  4. GaussianDistribution op = new GaussianDistribution(array, 0.0, 1.0);
  5. Nd4j.getExecutioner().exec(op, this);
  6. return array;
  7. }

代码示例来源:origin: deeplearning4j/nd4j

  1. @Override
  2. public INDArray getActivation(INDArray in, boolean training) {
  3. Nd4j.getExecutioner().execAndReturn(new Swish(in));
  4. return in;
  5. }

代码示例来源:origin: deeplearning4j/nd4j

  1. /**
  2. * computes a vector by a scalar product.
  3. *
  4. * @param N
  5. * @param alpha
  6. * @param X
  7. */
  8. @Override
  9. public void scal(long N, double alpha, INDArray X) {
  10. if (Nd4j.getExecutioner().getProfilingMode() == OpExecutioner.ProfilingMode.ALL)
  11. OpProfiler.getInstance().processBlasCall(false, X);
  12. if (X.isSparse()) {
  13. Nd4j.getSparseBlasWrapper().level1().scal(N, alpha, X);
  14. } else if (X.data().dataType() == DataBuffer.Type.DOUBLE)
  15. dscal(N, alpha, X, BlasBufferUtil.getBlasStride(X));
  16. else if (X.data().dataType() == DataBuffer.Type.FLOAT)
  17. sscal(N, (float) alpha, X, BlasBufferUtil.getBlasStride(X));
  18. else if (X.data().dataType() == DataBuffer.Type.HALF)
  19. Nd4j.getExecutioner().exec(new ScalarMultiplication(X, alpha));
  20. }

相关文章