3

Numpy を使用して実行できるのと同じ方法で、任意のサイズの Nd4j でスライスを実行したいと考えています。

a = numpy.arange(100)
a[25:50]

nd4j スライス メソッドは、長さではなく、次元とインデックスの引数のみを受け取ります。どうすればこれを達成できますか?

4

1 に答える 1

4

私はそれが古い質問であることを知っていますが、この問題を正確にグーグルで調べているときに遭遇しました。

ソースコードを調べると、sliceインデックスからインデックスへの部分的ではなく、完全な行/列のみを返すことができると思います。そのためにインスタンスの引数でメソッドgetを使用できます。NDArrayIndexたとえば、このコードはコードの翻訳numpyです。

import org.nd4j.linalg.api.ndarray.INDArray;
import static org.nd4j.linalg.factory.Nd4j.linspace;
import static org.nd4j.linalg.indexing.NDArrayIndex.interval;

class SliceExample {
    public static void main(String[] args) {
        INDArray a = linspace(0, 99, 100);    // up to 99 inclusive
        INDArray s = a.get(interval(25, 50)); // up to 50th non inclusive
    }
}

NDArrayIndex ドキュメント

于 2016-12-23T13:55:50.710 に答える