更新:2024/11/23
【ディープラーニング】密ベクトルと疎ベクトルの意味と例について


はるか
疎ベクトルと密ベクトル、違いは分かる?

ふゅか
密ベクトルはほとんどゼロじゃない値が詰まってて、疎ベクトルはゼロばっかりのやつ!
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