テキストマイニング機械学習自然言語処理

バグ・オブ・ワーズ

ばぐおぶわーず · Bag of Words
24 views

Bag of Words(バグ・オブ・ワーズ)は、文章や単語の順序を無視し、単語の出現回数だけを数えて数値データ化する自然言語処理の基本的な手法です。文書分類や感情分析の前処理として広く使われます。

バグ・オブ・ワーズとは

Bag of Wordsとは、テキストを「単語の袋(Bag)」とみなし、文法や語順の構造を完全に無視して、どの単語が何回出現したかという頻度情報のみで文書を表現する手法です。

詳しく解説

自然言語処理においてコンピュータは直接文字を理解できないため、テキストを数値に変換する必要があります。Bag of Wordsでは、まず文書群から重複を除いた全単語のリスト(語彙集)を作成します。次に、個々の文書において各単語が何回出現するかを数え、ベクトル(数値の並び)に変換します。この仕組みはシンプルでありながら、文書の特徴を大まかに捉えることができるため、テキスト分類や感情分析などの基礎として長年利用されてきました。

具体例・使われ方

例えば、「猫が好き」と「犬が好き」という2つの文がある場合、「猫」「犬」「が」「好き」という語彙リストを作成します。「猫が好き」は「猫:1、犬:0、が:1、好き:1」というベクトルに変換され、機械学習モデルの入力データとして利用できるようになります。

似た用語との違い

単語の出現回数だけを数えるBag of Wordsとは異なり、TF-IDFは文書全体での単語の珍しさ(レア度)を考慮して重み付けを行います。また、Word2Vecなどの単語埋め込み手法は、単語の意味的な文脈や類似性を高次元のベクトルで表現する点が異なります。

注意点

Bag of Wordsの最大の限界は、語順を完全に無視する点です。「猫がネズミを噛んだ」と「ネズミが猫を噛んだ」は、どちらも同じ単語が出現するため、Bag of Wordsでは全く同じベクトルになってしまい、文脈や意味の違いを区別できません。また、語彙が増えるほどベクトルの次元数が膨大になり、出現しない単語が多くなることで計算効率が下がるスパース性の問題も生じます。

更新日時: 2026年8月30日 05:51