テキスト埋め込みは完全にテキストを符号化するのか?Vec2Textが明らかにするセキュリティリスク
本稿では、テキスト埋め込みベクトルから元のテキストを完全に復元できるvec2text手法を紹介し、現在のRAGシステムとベクトルデータベースにおけるデータセキュリティの重大な脅威を指摘する。
生成AIの急速な進歩により、多くの企業がビジネスにAIを統合し始めている。最も一般的な方法の一つは、データベース内のドキュメントに関する質問に答えるAIシステムを構築することであり、その多くは検索拡張生成(RAG)に基づいている。RAGシステムは、大量のドキュメントをデータベースに保存し、AIが入力に最も関連するドキュメントを検索し、それに基づいて応答を生成する。関連性の判断には「埋め込み」、つまり埋め込みモデルが生成するドキュメントのベクトル表現が使われる。これらの埋め込みは意味的な類似性を表現することを目的としており、関連ドキュメントは埋め込み空間で高いベクトル類似度を持つ。RAGの普及により、ベクトルデータベースという新しいタイプのデータベースが台頭した。これは大量の埋め込みを保存・検索するために設計されており、スタートアップ企業には数億ドルの資金が投じられている。しかし、埋め込みベクトルは解読が困難で、ランダムな数字の羅列にしか見えない。このため、もし誰かがデータベースに侵入して埋め込みベクトルを入手した場合、それらを元のテキストに戻せるのかというセキュリティ上の疑問が生じる。この問題に取り組んだのが、我々の論文『Text Embeddings Reveal As Much as Text』(EMNLP 2023)である。我々はvec2textという手法を開発し、埋め込みから元のテキストを復元できることを示した。最初に、埋め込みを入力としてテキストを出力するトランスフォーマーモデルを訓練したが、BLEUスコアは30程度で、完全一致はほぼゼロだった。しかし、生成されたテキストの埋め込みと真の埋め込みのコサイン類似度が0.97と非常に高いことに気づいた。これにより、反復最適化アプローチが着想された。現在の仮説テキストとその埋め込みを入力とし、真の埋め込みに近づける補正モデルを訓練した。50ステップの反復といくつかの工夫により、32トークンの系列に対して92%の完全一致率、BLEUスコア97を達成し、ほぼ完全な復元を実現した。この発見は、現在の埋め込みベースのデータ保存に対する深刻な課題を突きつける。ベクトルデータベースには元のテキストではなく埋め込みベクトルが保存されているが、それが簡単に逆変換されるなら、顧客のプライバシーやデータセキュリティは大きなリスクにさらされる。今後は、このような逆変換攻撃に耐性を持ちつつ、埋め込みの有用性を維持するモデルの開発が求められる。また、vec2textの手法はテキストに限らず、画像などの他モダリティにも応用可能である。著者のJack Morrisはコーネル工科大学の博士課程学生で、機械学習、自然言語処理、セキュリティの交差点を研究している。コードはGitHubで公開されており、さらなる研究に利用できる。