1 基本概念
1.1 分布仮説
分布仮説は、言語学者ジョン・ファースらによって提唱された概念であり、「同じ文脈に現れる単語は類似した意味を持つ」という考え方に基づく。この仮説は、単語の意味がその出現パターンによって決定されるという観点から、統計的言語処理の基盤を提供する。分散表現はこの仮説を直接的に実装し、単語の共起情報を低次元ベクトルに圧縮する。
1.2 シンボルとベクトルの対応
分散表現では、個別の単語や記号(シンボル)を実数値のベクトルとして表現する。これにより、離散的なシンボル間の関係(類似性、類推、階層構造)を連続ベクトル空間上の幾何学的操作として捉えることが可能となる。各シンボルは固定長のベクトルにマッピングされ、ベクトル空間内での距離や方向が意味的・文法的な類似度を反映する。
1.3 埋め込み空間の特性
埋め込み空間は、意味的に近い単語ほど近接して配置される性質を持つ。例えば、「王」と「女王」のように性別の対立がベクトルの差として現れる(「王」-「男」+「女」≈「女王」)。また、空間の次元数はハイパーパラメータであり、低次元ほど一般化性能が高まる一方、次元が低すぎると表現力が低下する。これらの特性は多くの自然言語処理タスクで活用される。
2 主要手法
2.1 カウントベース手法
2.1.1 共起行列と次元削減
カウントベース手法では、コーパス内の単語共起頻度を集計した行列(共起行列)を作成する。各行は単語、各列は文脈語(または文書)を表す。この行列は高次元で疎であるため、特異値分解(SVD)などの次元削減技術を用いて低次元の密ベクトルに変換する。代表例として潜在意味解析(LSA)がある。
2.1.2 GloVeの原理
GloVe(Global Vectors)は、共起頻度の対数線形モデルを用いて単語ベクトルを学習する手法である。共起行列の非ゼロ要素のみを対象とし、単語ベクトルと文脈ベクトルの内積が共起対数確率に近づくように最適化する。これにより、全体統計情報と局所的文脈情報をバランスよく取り込む。
2.2 予測ベース手法
2.2.1 Word2Vec
Word2Vecは、ニューラルネットワークを用いて単語ベクトルを効率的に学習するフレームワークであり、CBOWとSkip-gramの2つのアーキテクチャがある。
2.2.1.1 CBOWモデル
CBOW(Continuous Bag of Words)は、周囲の文脈語から中心語を予測するタスクを通じてベクトルを学習する。複数の文脈語のベクトルを平均し、出力層で中心語の確率分布を計算する。学習が高速で、頻出語に強い。
2.2.1.2 Skip-gramモデル
Skip-gramは、中心語から周囲の文脈語を予測するタスクを利用する。各中心語に対して複数の文脈語を独立に予測するため、低頻度語の表現に優れる。計算コストは高くなるが、意味的類似性を捉えやすい。
2.2.2 FastText
FastTextは、Word2Vecの拡張であり、単語を文字n-gramの集合として扱う。これにより、未知語や形態的に豊かな言語の表現を改善する。
2.2.2.1 サブワード情報の利用
FastTextでは、単語を構成する部分文字列(サブワード)のベクトルを学習し、それらの和として単語ベクトルを表現する。例えば、「apple」は「ap」「pp」「pl」「le」などの文字バイグラムのベクトルから合成される。この手法は、語尾変化やスペルミスに対しても頑健な表現を生成する。
2.3 ニューラルネットワークによる学習
2.3.1 負例サンプリング
負例サンプリングは、Word2VecやFastTextの学習を高速化する手法である。本来は全語彙のソフトマックスを計算する必要があるが、正例(実際に出現した文脈語)とランダムにサンプリングした少数の負例(出現しない語)のみを比較することで、近似計算を行う。これにより、大規模語彙でも効率的に学習できる。
2.3.2 階層的ソフトマックス
階層的ソフトマックスは、出力層を二分木構造に変換することでソフトマックス計算の効率を高める手法である。各葉ノードに単語を割り当て、内部ノードでは二値分類を学習する。計算量が語彙数に比例せず対数になるため、大規模コーパスに適する。
3 応用分野
3.1 自然言語処理
3.1.1 単語類似度と類推
分散表現を用いることで、単語間のコサイン類似度を計算し、意味的類似性を測ることができる。また、ベクトルの加減算による類推(例:「king」-「man」+「woman」≈「queen」)が可能であり、言語理解や知識ベース構築に応用される。
3.1.2 品詞タグ付けと構文解析
分散表現は、品詞タグ付けや依存構造解析の入力特徴量として使用される。ベクトルが単語の文法的特性を暗黙的に学習するため、分類器の性能向上に寄与する。
3.2 知識グラフの埋め込み
3.2.1 TransE、TransR
知識グラフ埋め込みは、エンティティ(ノード)と関係(エッジ)をベクトル空間に埋め込む手法である。TransEは、関係をベクトルの平行移動としてモデル化し(h + r ≈ t)、単純で効率的である。TransRは、エンティティと関係を異なる空間に射影し、複雑な関係を表現する。
3.2.2 双線形モデル
双線形モデル(例:DistMult、ComplEx)は、関係行列とエンティティベクトルの双線形相互作用を用いてスコアを計算する。これにより、対称関係や非対称関係を柔軟に捉えることができる。
3.3 情報検索とレコメンデーション
分散表現は、クエリと文書の意味的マッチングに利用される。また、レコメンデーションでは、ユーザとアイテムを共通の埋め込み空間にマッピングし、内積や距離に基づいて推薦を行う。協調フィルタリングやコンテンツベースフィルタリングの性能を向上させる。
4 評価と課題
4.1 評価指標
4.1.1 アナロジー精度
アナロジー精度は、語彙的類推問題(例:「a:b」→「c:?」)に対する正解率で評価する。テストセットには、国-首都、動詞の時制変化などのタスクが含まれる。この指標は埋め込みの意味的規則性を測る。
4.1.2 類似度タスク
類似度タスクでは、人間が評価した単語対の類似度スコアと、埋め込みベクトルのコサイン類似度との相関(Spearman rank correlation)を計算する。これにより、人間の直感とベクトル表現の一致度を評価する。
4.2 バイアスと公平性
4.2.1 社会的バイアスの学習
分散表現は、学習データに存在する性別、人種、職業などの社会的バイアスを学習し、ベクトル空間にエンコードする。例えば、「医者」と「男性」が近く、「看護師」と「女性」が近くなる傾向がある。このバイアスは、下流タスクでの不公平な判断につながる可能性がある。
4.2.2 デバイアス手法
デバイアス手法には、バイアス方向を特定しその成分を除去する方法(例えば、ハードデバイアシング)や、中立化と均等化の組み合わせがある。また、学習時に公平性を制約として組み込む手法も研究されている。
4.3 多言語・クロスモーダル表現
多言語分散表現では、異なる言語の単語を共通の埋め込み空間にマッピングし、翻訳やクロスリンガルタスクを可能にする。クロスモーダル表現では、テキストと画像、音声など異なるモダリティ間の対応を学習し、マルチモーダル検索や画像キャプション生成に応用される。
4.4 計算効率と大規模化
分散表現の学習には、巨大なコーパスと計算資源が必要である。効率化のための手法として、ストリーミング学習(オンライン更新)、量子化によるメモリ削減、並列分散処理フレームワークの活用が挙げられる。また、近似最近傍探索(ANNS)を用いて、大規模な類似度検索を高速化する。
5 発展と将来展望
5.1 動的分散表現
動的分散表現は、単語の意味が時間や文脈によって変化することをモデル化する。例えば、BERTやGPTなどの言語モデルで用いられる文脈化された埋め込みは、同じ単語でも周辺語に応じて異なるベクトルを生成する。これにより、多義語の解消や時系列データの解析が進む。
5.2 階層的・構成的表現
階層的表現は、単語を部分構成要素(形態素、文字、サブワード)に分解し、それらの組み合わせとして全体のベクトルを表現する。構成的表現は、句や文の意味を構成要素のベクトルから合成するための演算(再帰的ニューラルネットワークなど)を研究する。これにより、より複雑な言語構造を扱えるようになる。
5.3 説明可能性との統合
分散表現の内部構造を人間が理解できる形で説明する試みが進んでいる。例えば、特定の次元が性別や大きさなどの意味素性に対応することを可視化する手法や、ベクトル空間の射影を用いてモデルの判断理由を解釈する手法がある。説明可能性の向上は、信頼性の高いAIシステムの構築に寄与する。