gpt4 book ai didi

java - 获取 Nd4j 数组的任意切片

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:15:06 26 4
gpt4 key购买 nike

我想以与使用 Numpy 相同的方式在任意大小的 Nd4j 中执行切片。

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

nd4j slice 方法只接受维度和索引参数,不接受长度。我怎样才能做到这一点?

最佳答案

我知道这是一个老问题,但我在谷歌搜索这个问题时遇到了这个问题。

通过检查 slice 的源代码,我相信它只能返回完整的行/列,而不是从索引到索引的部分。为此,您可以使用带有 NDArrayIndex 实例参数的方法 get。例如,此代码是您的 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 documentation

关于java - 获取 Nd4j 数组的任意切片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36973444/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com