如何在 Java 中使用 MLeap DenseTensor
How to use MLeap DenseTensor in Java
我在 java 程序中使用 MLeap 运行 Pyspark 逻辑回归模型。一旦我 运行 管道,我就能得到一个 DefaultLeapFrame
一行 Stream(Row(1.3,12,3.6,DenseTensor([D@538613b3,List(2)),1.0), ?)
的对象。
但我不确定如何实际检查 DenseTensor 对象。当我在这一行使用 getTensor(3)
时,我得到一个对象。我不熟悉 Scala,但这似乎是与之交互的方式。在 Java 中,如何获取此 DenseVector 中的值?
这就是我正在做的事情。我猜使用 Object 不适合这种类型。 . .
DefaultLeapFrame df = leapFrameSupport.select(frame2, Arrays.asList("feat1", "feat2", "feat3", "probability", "prediction"));
Tensor<Object> tensor = df.dataset().head().getTensor(3);
谢谢
所以 Java DSL 的 MLeap 文档不是很好,但我能够查看一些单元测试 (link),它们为我指出了正确的使用方法。如果其他人有兴趣,这就是我所做的。
DefaultLeapFrame df = leapFrameSupport.select(frame, Arrays.asList("feat1", "feat2", "feat3", "probability", "prediction"));
TensorSupport tensorSupport = new TensorSupport();
List<Double> tensor_vals = tensorSupport.toArray(df.dataset().head().getTensor(3));
我在 java 程序中使用 MLeap 运行 Pyspark 逻辑回归模型。一旦我 运行 管道,我就能得到一个 DefaultLeapFrame
一行 Stream(Row(1.3,12,3.6,DenseTensor([D@538613b3,List(2)),1.0), ?)
的对象。
但我不确定如何实际检查 DenseTensor 对象。当我在这一行使用 getTensor(3)
时,我得到一个对象。我不熟悉 Scala,但这似乎是与之交互的方式。在 Java 中,如何获取此 DenseVector 中的值?
这就是我正在做的事情。我猜使用 Object 不适合这种类型。 . .
DefaultLeapFrame df = leapFrameSupport.select(frame2, Arrays.asList("feat1", "feat2", "feat3", "probability", "prediction"));
Tensor<Object> tensor = df.dataset().head().getTensor(3);
谢谢
所以 Java DSL 的 MLeap 文档不是很好,但我能够查看一些单元测试 (link),它们为我指出了正确的使用方法。如果其他人有兴趣,这就是我所做的。
DefaultLeapFrame df = leapFrameSupport.select(frame, Arrays.asList("feat1", "feat2", "feat3", "probability", "prediction"));
TensorSupport tensorSupport = new TensorSupport();
List<Double> tensor_vals = tensorSupport.toArray(df.dataset().head().getTensor(3));