埋め込みベクトルとは、文章・画像・音声を一連の数字に変換し、機械がそれらの似ている度合いを計算できるようにしたものです。検索エンジンやレコメンド、チャットボットの知識ベースは、キーワードの完全一致ではなく、主にこの仕組みで情報を探しています。
ベクトルはどう生まれるのか
モデルは大量のテキストから単語同士の共起関係を学びます。よく一緒に現れる単語は近くに、意味が反対の単語は遠くに配置されます。だから「猫」は「車」よりも「犬」に近くなります。これは人が採点したものではなく、学習の中で自然に形成された距離です。
キーワード検索との違い
キーワード検索は文字通りの一致しか見ないため、言い換えると見つかりません。ベクトル検索は意味を見ます。「スマホが充電できない」と検索すれば、「充電口の接触不良」といった表現の違う内容も見つかります。代わりに「少し似ているが間違っている」内容が上位に来ることもあるため、もう一段の絞り込みが必要です。
よくある3つの誤解
第一に、ベクトルは文にラベルを付けるものではなく、正誤を判断しません。似ている度合いだけを記録します。第二に、ベクトルが長いほど正確とは限りません。次元数、学習データ、タスクへの適合性のほうが重要です。第三に、2つのベクトルが近くても、両方の文が正しいとは限りません。言い回しが似ているだけの場合もあります。
どんな場面で使われるのか
個人の知識ベース、カスタマーサポートのQ&A、商品レコメンドでは、埋め込みベクトルがまず大量の候補を絞り込み、その後で大規模モデルやルールが最終判断を下します。「大まかな絞り込み役」として使うのが最も安定します。