セマンティック検索は、単語の完全一致ではなく意味を照合する検索方法です。ベクトル埋め込みによって質問と文書の両方を共通の空間で表現するため、表現が異なっても、似た概念は互いに近く配置されます。

この手法には2つの段階が必要です。まず、モデルが文章を文脈を捉える密なベクトルへ変換します。次に、類似度関数が質問ベクトルと保存済みベクトルを比較して順位付けします。これにより、初期の検索エンジンが使った疎なバッグ・オブ・ワーズ表現を置き換えます。

セマンティック検索の仕組み

ステップ1:文章からベクトルへの変換。 埋め込みモデルが、入力された質問と保存済みのすべての文書を処理します。各文または段落は、固定長の数値ベクトルになります。ベクトルの位置には、モデル訓練中に学習した関係性が符号化されます。たとえば、「会議メモ」と「議論の要約」のベクトルは互いに近くなります。

ステップ2:類似度の採点

コサイン類似度は、質問ベクトルと各文書ベクトルの角度を測ります。値が1に近いほど一致度が高いことを示します。システムは得点の高い文書から返します。この工程が、BM25の単語頻度計算を置き換えます。

ステップ3:結果の絞り込み

最初の類似度判定後に、再順位付けやフィルターを加えるシステムもあります。フィルターにより、利用者の非公開コレクションや、指定期間内に更新されたファイルへ結果を限定できます。埋め込み検索と任意のフィルターを組み合わせて、最終的な一覧を作ります。

簡単な例えで流れを説明できます。各文書を地図上の点、質問を新しい点だと考えてください。検索エンジンは、同じ通りの名前を持つかではなく、直線距離によって最も近い点を探します。

限界も残っています。埋め込みには、訓練データに存在する偏りが反映される可能性があります。非常に短い、または極めて曖昧な質問では、文脈が豊富な長い質問より精度が低くなります。現在のシステムでは、こうした境界的な事例の改善が続いています。

複数の論文を扱う研究者は、同じ技術を使い、タイトルのキーワードではなく話題別に研究をまとめます。「トランスフォーマーのスケーリング」という質問から、手作業で引用をたどらなくても、アテンション機構に関する以前の研究を見つけられます。

パーソナルナレッジツールは、利用者自身が収集したコンテンツへセマンティック検索を適用します。ウェブの切り抜き、会議の文字起こし、ローカルファイルが、1つの検索可能なコレクションになります。正確なファイル名やキーワードを思い出さなくても、過去の仕事から関連項目を返します。

質問:現在のセマンティック検索における最大の課題は何ですか?

回答:短い質問や曖昧な質問では、今も精度が低下します。分野固有の専門用語には、埋め込みモデルの追加微調整が必要になる場合もあります。現在の研究は、こうした境界条件の改善に重点を置いています。

関連記事
参考資料

ツールディレクトリを見る →