gpt4 book ai didi

matlab - 使用 bsxfun 批处理外部产品

转载 作者:行者123 更新时间:2023-12-02 04:02:15 27 4
gpt4 key购买 nike

假设我有 2 个向量,我想做一个外积。我可以使用:

A=x*y';

或者我可以像这样使用bsxfun:

bsxfun(@times,x,y')

但我想批量生产外部产品。我有 2 个矩阵,每个矩阵都包含 p 向量:

n=1000;  p=6;
A=rand(n,p);
D=rand(n,p);

我想计算所有外积并对结果求和,如下所示:

AA=zeros(n,n);

for j=1:p
AA = AA + A(:,j) * D(:,j).';
end

我想更有效地做到这一点,但我不知道如何做。

最佳答案

只需将两个矩阵相乘即可​​:

n=1000;  p=6;
A=rand(n,p);
D=rand(n,p);

way1=zeros(n,n);

for j=1:p
way1 = way1 + A(:,j) * D(:,j).';
end

way2 = A * D.';

any(way1(:) ~= way2(:))

关于matlab - 使用 bsxfun 批处理外部产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32678773/

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