Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ANNライブラリの移行における技術選定
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tatsuya Ute
March 27, 2025
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ANNライブラリの移行における技術選定
Tatsuya Ute
March 27, 2025
More Decks by Tatsuya Ute
See All by Tatsuya Ute
推薦システム改善で事業 KPI を改善する:ウォンテッドリーにおけるユーザー離脱 抑制の取り組み
ghibney
1
350
JSAI2025 インダストリアルトーク
ghibney
0
690
polars 1.1.0以降の使える新機能
ghibney
0
390
Other Decks in Technology
See All in Technology
Flutter Widget Previewerで始めるUIプレビューとVRTの自動化
sakusaku3939
0
160
クラウドエージェントの先駆け Devin。今も最先端を走る、他との違い
kinopeee
1
500
Adversary Infrastructure Hunting101
disconinja
0
170
ドメインエキスパートは いかにして AI を使って プロダクト開発をするか
tatsuyashiraishi
1
220
Claude for Google Workspaces ポン出し/claude-for-google-workspace-slide-conversion
emiki
0
13k
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
410
ガチで放置できるClaude Code実行環境の作り方.pdf
lamaglama39
5
10k
Lint の層を組み直した話
bengo4com
1
140
Draft AIエージェントの トークン消費を最小化する 8つの原則
kinopeee
6
1.8k
これだけは抑えておきたい!後悔しない re:Invent の過ごし方 / AWS re:Invent 2026 prestudy
kinunori
2
520
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
160
2026-10-24 JAWS JAWS-UG 茨城 #18 IAM Policy Autopilotってなにさ。terraform planからIAM Policyつくれるの? / What's IAM Policy Autopilot
masasuzu
0
180
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
280
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
330
Optimising Largest Contentful Paint
csswizardry
37
4k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
530
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Everyday Curiosity
cassininazir
0
370
Agile that works and the tools we love
rasmusluckow
331
22k
The Invisible Side of Design
smashingmag
301
52k
Scaling GitHub
holman
464
140k
Practical Orchestrator
shlominoach
192
12k
Transcript
© 2025 Wantedly, Inc. ANNライブラリの移行 における技術選定 Mar. 27 2025 -
Tatsuya Ute みんなのpython勉強会 # 113
© 2025 Wantedly, Inc. 自己紹介 名前:右手達也(うてたつや) 仕事:データサイエンティスト @ウォ ンテッドリー 趣味:旅行、散歩
X: @ghibney
© 2025 Wantedly, Inc. ⽬次 • ANN(近似最近傍探索)とは • 調査に至った背景 •
ANNライブラリの調査
© 2025 Wantedly, Inc. ANN(近似最近傍探索)とは • クエリが与えられた時に、そのクエリに最も近いベクトルを 近似的に探索するアルゴリズム • アルゴリズムはHNSW、ライブラリはFaiss等が有名
• Wantedlyも推薦システムの技術要素の一つとして活用 1.15 0.19 0.32 2.73 1.22 0.27 0.24 2.68
© 2025 Wantedly, Inc. 調査に⾄った背景 利用していたANNライブラリ(nmslib)の開発が停止したため https://github.com/nmslib/nmslib/issues/540 よい機会なので、ANNライブラリごと変更したい
© 2025 Wantedly, Inc. ANNライブラリの調査 - 調査⽅針 プロダクトの持続性を考慮し、初期調査では性能面以外を優先 • 初期調査
◦ 開発の継続性:アクティブにメンテナンスされているか? ◦ 既存システムとの互換性:技術負債にならないか? • 追加調査 ◦ 精度:実データを用いた精度 ◦ 速度:実データを用いた速度(インデックス、クエリ) 本日の内容
© 2025 Wantedly, Inc. ANNライブラリの調査 - 初期調査の流れ 有名なパッケージから、各項目で絞り込んだ 候補 •
voyager • usearch 候補 • voyager • Faiss • scann • ngt • usearch 開発の 継続性 有名なライブラリ • voyager • Faiss • scann • ngt • usearch • hnswlib 既存システムと の互換性
© 2025 Wantedly, Inc. ANNライブラリの調査 - 調査した項⽬ パッケージ ライセンス 開発元
アルゴリズム star数 リリース(直近 3回) voyager Apache-2.0 license Spotify HNSW 1.4k Dec 14, 2024 Aug 1, 2024 Jul 30, 2024 Faiss MIT license Facebook HNSW, IVF, LSH, ... 32.9k Feb 1, 2025 Oct 10, 2024 Mar 1, 2024 … … … … … … リリース間隔やアルゴリズムなどの項目を調査した (2025/2/13現在)
© 2025 Wantedly, Inc. ANNライブラリの調査 - 開発の継続性の観点 開発継続性の観点から、hnswlibを除外 (2025/2/13現在) 主な観点
• リリース頻度が 極端に低くないか 結果 • hnswlib以外 リリース頻度が高く、 継続して開発されていそう • hnswlib リリース頻度が低く、継続的開発 が不安 除外
© 2025 Wantedly, Inc. ANNライブラリの調査 - 既存システムとの互換性 既存システムとの互換性の観点から、Faiss, ngt, scannを除外
主な観点 • poetry 単体で管理できるか • tensorflowベースでないか (プロダクトでtorchを使ってい るため) 結果 • voyager/usearch: 問題なし • Faiss: 公式がcondaを推奨 • ngt: poetry単体で管理不可 • scann: tensorflowに依存 (2025/2/13現在) 除外
© 2025 Wantedly, Inc. ANNライブラリの調査 - 追加調査対象ライブラリ 残ったvoyagerとusearchを追加調査の対象とした (2025/2/13現在) •
voyager/usearch ◦ リリース頻度も高く、メンテナンスされていそう ◦ poetry単体で管理でき、依存ライブラリも少ない ◦ アルゴリズムが現行のもの(HNSW)と同じで コードの修正が軽微ですむ
© 2025 Wantedly, Inc. まとめ • プロダクト開発においては技術選定する際は、 精度や速度だけが全てではないことを改めて実感した • ANNライブラリの調査を通じて、
ライブラリごとの特徴をざっくり知ることができた
© 2025 Wantedly, Inc. Appendix: ANNライブラリの調査結果(2025/2/13現在) アルゴリズム ライセンス 開発元 アルゴリズム
star数 リリース(直近 3回) voyager Apache-2.0 license Spotify HNSW 1.4k Dec 14, 2024 Aug 1, 2024 Jul 30, 2024 Faiss MIT license Facebook HNSW, IVF, LSH, ... 32.9k Feb 1, 2025 Oct 10, 2024 Mar 1, 2024 scann Apache-2.0 license Google ScaNN - Jan 17, 2025 Aug 23, 2024 Jul 23, 2024 ngt Apache-2.0 license Yahoo NGT, ... 1.3k Jan 29, 2025 Jan 28, 2025 Jan 21, 2025 usearch Apache-2.0 license Unum Cloud HNSW 2.5k Feb 8, 2025 Jan 23, 2025 Jan 15, 2025 hnswlib Apache-2.0 license Yury Malkov HNSW 4.6k Dec 3, 2023 Feb 6, 2023 Feb 15, 2022