機械学習では、スパースベクトルとデンスベクトルの違いは何ですか?


ベストアンサー

概念的には同じです。単なるベクトルです。

その背後にあるデータ構造は異なります。スパースであるということは、各座標が明示的に含まれないことを意味します。説明します。

広告の次元ベクトルu \ in I \!R ^ d、u =(u\_1、…、u\_d)を検討します。

ベクトルには多くのu\_i = 0の値があります。次に、メモリの浪費を避けるために、0以外の値を格納してから、他の値をゼロと見なすことができます。これは、ワンホットを使用する場合に非常に役立ちます。

通常、スパースベクトルはタプル(id、value)など:u\_i = values [j] if id [j] = i;それ以外の場合はu\_i = 0(iidにない場合)

開発の観点から、まばらになります密なベクトルからのベクトルは次のようなものです:

sparse\_vec = {“id”: [], “values”: []}

d = len(dense\_vec)

for i in range(0, d):

if d[i] != 0:

sparse\_vec["id"].append(i)

sparse\_vec["values"].append(d[i])

たとえば、密なベクトル(1, 2, 0, 0, 5, 0, 9, 0, 0)が表されます。 as {(0,1,4,6), (1, 2, 5, 9)}

pltrdy

回答

ベクトルは大きさと方向を持つ物理量。これに加えて、ベクトル加算の法則に従う必要があります。

例:力、速度、変位、トルクモーメント、加速度、帯電など。

位置ベクトルもベクトルです。これは、参照フレームの原点に対する粒子の位置を特定します。 \ vec {r} = x \ hat {i} + y \ hat {j} + z \ hat {k}で表されます。

ここで、\ hat {i}、\、\ hat { j}と\ hat {k}は、それぞれx、\、y、z軸に沿った単位ベクトルです。また、(x、\、y、\、z)は、参照フレームの原点に対する粒子の位置の座標です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です