Matlab:sumの使用法、各行の合計、repmatの使用法、sumとrepmatの併用によるループの削減



Matlab Usage Sum



時折、行列要素の合計を使用し、一般的に使用されるものを要約します

目次



1.ベクトルの合計

2.行列の加法



(1)デフォルトで列ごとに合計して、行ベクトルを取得します

(2)各行の合計を求めます

3.sumとrepmatを一緒に使用します



(1)行列Aの各行の二乗和

(2)repmatの基本的な使用法

(3)ガウスカーネルの計算


1.ベクトルの合計

sumを直接呼び出すだけで、すべての要素の合計を取得できます

a = [1 3 5 7]
s = sum(a)

2.行列の加法

通話形式:

s = sum(A、dim)%dim = 1、列ごとの合計dim = 2、行ごとの合計

(1)デフォルトで列ごとに合計して、行ベクトルを取得します

(2)各行の合計を求めます

b = [1 3 5 72 4 6 8]
s = sum(b、2)%は列ベクトルを取得します

3.sumとrepmatを一緒に使用します

repmatと組み合わせて使用​​すると、サポートベクターマシン(ガウスカーネル)でのカーネル関数の表現など、forループ操作の一部を保存できます。

(1)行列Aの各行の二乗和

A = [1 3 5 72 4 6 8]
s = sum(A。* A、2)%は要素のドット乗算に対応し、行で加算します

(2)repmatの基本的な使用法

%Aはベクトルまたは行列にすることができます

B = repmat(A、m、n)%は、m行n列のAを生成し、行列を形成します

(3)ガウスカーネルの計算

%Aはm1行n列の行列Cはm行n列の行列

KA = exp(-(repmat(sum(A。* A、2)、1、m)+ repmat(sum(C。* C、2) '、m1,1)-2 * A * C')/( p ^ 2))%K(A、C)