Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
テキスト埋め込み色々あるけどどれがいいの?
Search
ディップ株式会社
PRO
June 18, 2025
Technology
34
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
テキスト埋め込み色々あるけどどれがいいの?
ディップ株式会社
PRO
June 18, 2025
More Decks by ディップ株式会社
See All by ディップ株式会社
はじめての環境構築!デプロイ〜Docker基礎を学べるワークショップ!
dip_tech
PRO
0
36
【TSKaigi2026登壇資料】決定論的な型チェックへ Go 製コンパイラによる10倍速の裏側で stableTypeOrdering から見える並列化への挑戦
dip_tech
PRO
2
380
【TSKaigi2026登壇資料】バイトル」のTypeScriptリニューアル — 積み上がったレガシーとパフォーマンスに挑む現在地
dip_tech
PRO
1
350
【新卒研修】ライブデモ + compose.yaml読解_講義資料
dip_tech
PRO
0
240
【ディップ|26年新卒研修資料】OpenAPI/Swagger REST API研修
dip_tech
PRO
0
380
【ディップ|26年新卒研修資料】Docker_ハンズオン研修
dip_tech
PRO
0
350
【ディップ|26年新卒研修資料】TDD実装演習
dip_tech
PRO
0
400
ハッカソンや個人開発で何作る? テーマ発見〜アイデア発想ハンズオン! 技育CAMPアカデミア
dip_tech
PRO
0
87
技育祭登壇|「AIを使える」は、勘違いだった。 コードが書けてもプロになれなかった僕の1年戦記
dip_tech
PRO
0
140
Other Decks in Technology
See All in Technology
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
2
1.6k
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
0
210
非定型業務をAI slackbotで自動化する ~ 社内要望を自動壁打ちするbotを作った ~/automating-ad-hoc-work-with-ai-slackbot
shibayu36
0
530
2026.06.13_AI時代に事業会社が「SIer出身エンジニア」を求める理由 / Why Businesses Seek Engineers with a System Integrator Background in the AI Era
jumtech
0
960
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
290
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
280
個人最適 から 全体最適 へ AI情報共有会・AIギルド・AI-DLC で進める カンリーの組織展開
rfdnxbro
0
2k
Amazon Bedrock AgentCore ワークショップ JAWS UG TOHOKU / amazon-bedrock-agentcore-workshop-jawsug-tohoku-2026
gawa
9
500
Rancherの紹介&Update情報(RancherJP Online Meetup #09)
yoshiyuki_kono
0
130
SIer20年! 培ったスキルがスタートアップで輝く時
shucho0103
0
790
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
160
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
1.2k
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
190
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
140
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
Fireside Chat
paigeccino
42
3.9k
Become a Pro
speakerdeck
PRO
31
6k
GraphQLとの向き合い方2022年版
quramy
50
15k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Six Lessons from altMBA
skipperchong
29
4.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Transcript
テキスト埋め込み色々あるけどどれがいいの? ディップ株式会社 AI Embedded課 有田智也 (ARITA Tomoya) 1
アジェンダ 2 1. 良いテキスト埋め込みを求めるモチベーション 2. 良いテキスト埋め込みを得るための事例紹介
3. テキスト埋め込みモデルの評価
dip AI とは? • AIとの対話を通じて求職者が自分にあったバ イトを探せるサービス ◦ 検索ロジックはフィルタリングとベクトル検索の ハイブリッド
3
dip AI の検索のつらみ 4 1. フィルタ条件の影響が支配的 • ベクトル検索のうまみを活かせていない •
思ったような案件を出そうとするとどうしてもフィルタになる 2. 検索クエリとお仕事内容のギャップ • シンプルにcos類似度をとってもうまくいかない この課題 に着目
検索クエリとお仕事内容のギャップ 5 ベクトル検索の課題 • 意味的な類似度で検索してくるだけではうまくいかないことが多い ◦ クエリとコーパスの埋め込み空間にはギャップがある
*text embedding3 smallで評価
Retrieval でのギャップを埋める方法 6 1. クエリの内容をコーパスに寄せる HyDE:クエリに回答する仮の文章をLLMで生成してベクトル検索 2. モデルを学習させる
• クエリと回答のペアを学習させる • 最近はLLMで作成した合成データセットを学習して、LLMの知識を蒸留す るのがブーム ◦ 最近公開されたAmber, Ruri, GeckoなどのEncoderモデルは合成 データセットを利用している
アジェンダ 7 1. 良いテキスト埋め込みを求めるモチベーション 2. 良いテキスト埋め込みを得るための事例紹介
3. テキスト埋め込みモデルの評価
Gecko: Versatile Text Embeddigs from Lage Language Models 概要
8 • LLMで合成データを作成(FRet)、Transfromer言語モデルを Pre-finetuningとfine-tuningで学習 ◦ Pre-finetuning: 様々な形式の教師なしのテキストペアを Contrastive Learningで学習 ▪ query側テキストの先頭には”question answering“や”search result”などの 識別子がデータセットに基づいて付与される ◦ fine-tuning:後述のFRetデータセットと学術的データセットを混ぜて教師あり 学習
FRet 9 モチベーション • ラベルづけされた大量のデータを用意する のはコストが高い😢 →LLMを活用して擬似データセット作成 1.
LLMにWebの文書を与えタスクの説明と関 連するクエリを生成させる 2. embedding modelをRetriverとして1.の クエリに関連するパッセージを検索し正例、 負例を作成 • 検索結果とパッセージの関連性を LLM で計算 • 関連性がより高いパッセージが存在す る場合正例を変える(約15%) →660万件のデータセットを作成 https://arxiv.org/pdf/2403.20327より引用
Gecko でテキストのギャップは埋まるのか 10 *text-multilingual-embedding-002で評価 完璧に解ける訳ではないものの相対的な類似度は気持ち上がっている
アジェンダ 11 1. 良いテキスト埋め込みを求めるモチベーション 2. 良いテキスト埋め込みを得るための事例紹介
3. テキスト埋め込みモデルの評価
Retrieval 性能評価用データセット 12 • 文ベクトルの性能を測るためにJaGovFaqs-22k*を利用 ◦ Questionに対するAnswerの候補を10件予測してNDCGで評価 * JaGovFaqs-22kは日本の官公庁のWebサイトのQAデータセット
参照)https://huggingface.co/datasets/matsuxr/JaGovFaqs-22k
検索評価指標の NDCG簡単解説 13 • アイテムの出現順序を考慮した評価尺度 ◦ 理想的な順序に近いほど値が1に近づく この場合DCGは
1 / log_2(4) = 0.5 NDCGはDCGを理想的な DCGで割った値で 0.5 / 1 = 0.5
Retrieval 性能評価結果 14 • 最近のオープンな日本語に特化した埋め込みモデルはクローズな埋め込みモデ ルに匹敵する能力がある • ruri-v3-310mの検索性能が低パラメータ数にもかかわらず最も高い SentenceTransformerのInformation
Retrieval Evaluatorを利用してcos類似度で評価