gpt4 book ai didi

java - RowMatrix、MLlib、Java Spark

转载 作者:行者123 更新时间:2023-12-01 11:17:42 25 4
gpt4 key购买 nike

我有RowMatrix我的问题是,我如何通过索引来操纵它?这个问题与这个问题非常相似:

Matrix Operation in Spark MLlib in Java

最后,我需要的就是拥有带有良好类库的 Matrix。目前我无法操作这个对象。

最佳答案

正如RowMatrix的JavaDocs所示

:: Experimental :: Represents a row-oriented distributed Matrix with no meaningful row indices.

行上没有顺序。您可以通过调用 toBreeze 从中获取 breeze.linalg.DenseMatrix,但不能保证行的顺序。当它们到达主设备时,它们只是被插入到结果矩阵中。这意味着此操作的结果可能会不时发生变化。

如果您需要 toBreeze 操作的确定性结果,则必须使用 IndexedRowMatrix。每行都分配了一个行索引,用于构建breeze.linalg.DenseMatrix

从那里您可以使用建议的解决方案 here ,即

import no.uib.cipr.matrix.DenseMatrix;
// ...
IndexedRowMatrix U = svd.U();
DenseMatrix U_mtj = new DenseMatrix((int) U.numCols(), (int) U.numRows(), U.toBreeze().toArray$mcD$sp(), true);
// From there, matrix operations are available on U_mtj

关于java - RowMatrix、MLlib、Java Spark,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31606022/

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