1

JAMA: Matrix.times() vs Matrix.arrayTimes() in JAMA 有什么区别(一个用于矩阵计算的java库)

如果我有一个d维度向量x和一个k维度向量z,并且我想获得xz^T(x 到 z 转置)我应该使用 Matrix.times 还是 Matrix.arrayTimes?

如何使用 JAMA 计算这个乘法?

4

1 回答 1

0

arrayTimes 只是逐个元素的乘法

C[i][j] = A[i][j] * B[i][j];

(视为对应的个人编号)

而时间是矩阵乘法,其中乘积的每个元素是相应行列的乘积之和。

尺寸必须与您想要达到的目标相匹配。

鉴于您的 xz^T 问题,唯一可行的解​​决方案是将它们分别转换为 dx1 和 kx1 矩阵并执行 x.times(z.transpose())。结果将是一个 dxk 维度的矩阵。

于 2016-05-07T15:16:43.310 回答