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
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
140
JSAI2025 インダストリアルトーク
ghibney
0
640
polars 1.1.0以降の使える新機能
ghibney
0
380
Other Decks in Technology
See All in Technology
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
1
1.6k
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
130
なぜ「決定性」が 決定的に重要なのか? Durable Execution 基盤の数理的理解 #serverlessjp / ServerlessDays Tokyo 2026
ytaka23
0
300
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
220
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
670
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
「守り」で活用するオンデバイスLLM 〜写ってはいけないを総力戦で防ぐ〜 / iOSDC Japan 2026
nakamuuu
0
170
LTのテーマ どうきめてる?〜5つの型と私のやり方〜
yama3133
1
110
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
4
3.1k
AI de Idea
kawaguti
PRO
2
120
生成AIエージェントを用いた、 手動テスト手順書から自動テストへの 変換手法の検討
magicpod
0
160
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.4k
Featured
See All Featured
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
GraphQLとの向き合い方2022年版
quramy
50
15k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Exploring anti-patterns in Rails
aemeredith
4
510
Speed Design
sergeychernyshev
33
2.1k
Rails Girls Zürich Keynote
gr2m
96
14k
Building the Perfect Custom Keyboard
takai
2
870
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Prompt Engineering for Job Search
mfonobong
0
450
Git: the NoSQL Database
bkeepers
PRO
432
67k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
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