【ディープラーニング】密ベクトルと疎ベクトルの意味と例について

はるか
はるか
疎ベクトルと密ベクトル、違いは分かる?
ふゅか
ふゅか
密ベクトルはほとんどゼロじゃない値が詰まってて、疎ベクトルはゼロばっかりのやつ!

1. 密ベクトルと疎ベクトルとは?

ベクトルは機械学習・ディープラーニングなどでは、特にデータの集まりを表現する概念です。その中でも、密ベクトルと疎ベクトルは特にデータの「密度」に注目して分類されます。

2. 密ベクトルとは?

密ベクトル(Dense Vector)は、ほとんどの要素がゼロ以外の値を持つベクトルを指します。

すべての要素がデータとして重要であり、特定の構造を持っている場合が多いです。

2.1. 例

以下は密ベクトルの例です。

\[ \mathbf{v} = [1.2, 3.5, -0.8, 4.1] \]

このベクトルでは、すべての要素に有効な値が含まれており、情報が「密集」しています。

3. 疎ベクトルとは?

疎ベクトル(Sparse Vector)は、ほとんどの要素がゼロで構成されるベクトルを指します。

非ゼロの要素が非常に少ないため、データの一部に集中した情報を表現しています。

3.1. 例

以下は疎ベクトルの例です。

\[ \mathbf{v} = [0, 0, 7.3, 0, 0, 0, 0, -2.5, 0] \]

このベクトルでは、ゼロでない値がわずか2つしかありません。

3.2. 特徴

自然言語処理における単語のトークン化、推薦システム、グラフデータの表現、one-hotエンコーディングなどで使用されます。

はるか
はるか
疎ベクトル、どんなとき使うか分かる?
ふゅか
ふゅか
うん!自然言語処理で使われるよね。たとえば、単語をone-hotエンコーディングしたとき!「犬」だけ1で、ほかの単語はぜーんぶ0になる。

4. 密ベクトルと疎ベクトルの違い

特徴 密ベクトル 疎ベクトル
要素の状態 ほぼすべてがゼロ以外 ほとんどがゼロ
代表的な用途 深層学習の重み、画像データ、ベクトル検索 NLPの単語頻度、推薦システム、one-hotエンコーディング

5. まとめ

密ベクトルと疎ベクトルは、データの密度に基づいて使い分けられます。

  • 密ベクトルはデータが詰まった状態で保存される。
  • 疎ベクトルはデータが分散している場合に使われる。
PR