CRINN: 近似最近傍探索のための対比強化学習
CRINN: Contrastive Reinforcement Learning for Approximate Nearest Neighbor Search
August 4, 2025
著者: Xiaoya Li, Xiaofei Sun, Albert Wang, Chris Shum, Jiwei Li
cs.AI
要旨
近似最近傍探索(ANNS)アルゴリズムは、最近のAIアプリケーション、特に検索拡張生成(RAG)やエージェントベースのLLMアプリケーションにおいて、ますます重要な役割を果たすようになっています。本論文では、ANNSアルゴリズムの新しいパラダイムであるCRINNを提案します。CRINNは、ANNSの最適化を強化学習問題として扱い、実行速度を報酬信号として利用します。このアプローチにより、精度の制約を維持しながら、次第に高速化されるANNS実装を自動生成することが可能になります。実験評価では、CRINNが6つの広く使用されているNNSベンチマークデータセットにおいて有効性を示しています。最先端のオープンソースANNSアルゴリズムと比較した場合、CRINNはそのうち3つ(GIST-960-Euclidean、MNIST-784-Euclidean、GloVe-25-angular)で最高の性能を達成し、2つ(SIFT-128-EuclideanとGloVe-25-angular)では首位を分け合いました。CRINNの成功の意義は、ANNS最適化の範囲をはるかに超えています:強化学習を組み合わせたLLMが、専門知識と労力を要する手動の改良を必要とする高度なアルゴリズム最適化を自動化するための効果的なツールとして機能し得ることを検証しています。コードはhttps://github.com/deepreinforce-ai/CRINNで公開されています。
English
Approximate nearest-neighbor search (ANNS) algorithms have become
increasingly critical for recent AI applications, particularly in
retrieval-augmented generation (RAG) and agent-based LLM applications. In this
paper, we present CRINN, a new paradigm for ANNS algorithms. CRINN treats ANNS
optimization as a reinforcement learning problem where execution speed serves
as the reward signal. This approach enables the automatic generation of
progressively faster ANNS implementations while maintaining accuracy
constraints. Our experimental evaluation demonstrates CRINN's effectiveness
across six widely-used NNS benchmark datasets. When compared against
state-of-the-art open-source ANNS algorithms, CRINN achieves best performance
on three of them (GIST-960-Euclidean, MNIST-784-Euclidean, and
GloVe-25-angular), and tied for first place on two of them (SIFT-128-Euclidean
and GloVe-25-angular). The implications of CRINN's success reach well beyond
ANNS optimization: It validates that LLMs augmented with reinforcement learning
can function as an effective tool for automating sophisticated algorithmic
optimizations that demand specialized knowledge and labor-intensive manual
refinement.Code can be found at https://github.com/deepreinforce-ai/CRINN