【发布时间】:2011-12-24 20:50:20
【问题描述】:
我对 MATLAB 还很陌生。 M x K 矩阵乘以 K x N 矩阵的正态矩阵乘法 -- C = A * B -- 具有 c_ij = sum(a_ik * b_kj, k = 1:K)。如果我希望它改为c_ij = sum(op(a_ik, b_kj), k = 1:K) 用于一些简单的二进制操作op 怎么办?有没有什么好的方法可以在 MATLAB(或者甚至是内置函数)中对其进行矢量化?
编辑:这是目前我能做的最好的。
% A is M x K, B is K x N
% op is min
C = zeros(M, N);
for i = 1:M:
C(i, :) = sum(bsxfun(@min, A(i, :)', B));
end
【问题讨论】:
-
这里列出的任何解决方案对您有用吗?
标签: matlab vectorization matrix-multiplication bsxfun