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
高校講座 | 第3回 協調ベース推薦システム
Search
RecSysLab
PRO
August 06, 2022
Technology
520
0
Share
高校講座 | 第3回 協調ベース推薦システム
下記教科書を基にした高校生向けの推薦システム講座の講義スライドです。
奥 健太:基礎から学ぶ推薦システム - 情報技術で嗜好を予測する -, コロナ社 (2022)
RecSysLab
PRO
August 06, 2022
More Decks by RecSysLab
See All by RecSysLab
[最強DB講義]推薦システム | 評価編
recsyslab
PRO
0
120
[最強DB講義]推薦システム | 基礎編
recsyslab
PRO
1
210
データベース|SQL
recsyslab
PRO
0
120
龍谷ICT教育|プログラミング演習科目における自動採点ツールを用いた自由進度学習
recsyslab
PRO
0
170
[RecSys2023論文読み会]Interface Design to Mitigate Inflation in Recommender Systems
recsyslab
PRO
0
170
[RecSys2022論文読み会]Bundle MCR: Towards Conversational Bundle Recommendation
recsyslab
PRO
0
460
高校講座 | 第1回 推薦システムとは
recsyslab
PRO
0
590
高校講座 | 第2回 内容ベース推薦システム
recsyslab
PRO
0
540
内容ベース推薦システム | 第2回 推薦システム概論
recsyslab
PRO
0
880
Other Decks in Technology
See All in Technology
PdM・Eng・QAで進めるAI駆動開発の現在地/aidd-with-pdm-eng-qa
shota_kusaba
0
150
(きっとたぶん)人材育成や教育のような何かの話
sejima
0
670
Anthropic「Long-running a gents」をGeminiで再現してみた
tkikuchi
0
800
freeeで運用しているAIQAについて
qatonchan
0
440
AIエージェントの支払い基盤 AgentCore Payments概要
kmiya84377
1
150
The 7 pitfalls of AI
ufried
0
200
AI時代に越境し、 組織を変えるQAスキルの正体 / QA Skills for Transforming an Organization
mii3king
5
4.2k
AI 時代の Platform Engineering
recruitengineers
PRO
1
130
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
2
290
データモデリング通り #5オンライン勉強会: AIに『ビジネスの文脈』を教え込むデータモデリング
datayokocho
0
210
「QA=テスト」「シフトレフト=スクラムイベントの参加者の一員」の呪縛を解く。アジャイルな開発を止めないために、10Xで挑んだ「右側のしわ寄せ」解消記 #scrumniigata
nihonbuson
PRO
4
960
生成AIはソフトウェア開発の革命か、ソフトウェア工学の宿題再提出なのか -ソフトウェア品質特性の追加提案-
kyonmm
PRO
2
870
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
490
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
690
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
140
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
290
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
Designing Powerful Visuals for Engaging Learning
tmiket
1
360
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Transcript
推薦システムの仕組み ~この商品を買った人は、こんな商品も買っています~ 高校講座 | 第3回 協調ベース推薦システム 奥 健太
シナリオ Aliceはとある寿司屋を訪れました。この寿司屋では、表に示すように、カツオ、マグロ、中 トロ、タイ、ヒラメ、スズキの6種類の寿司を提供しています。この寿司屋にはAlice、 Bruno、Chiara、Dhruv、Emiがよく訪れます。そして、寿司に対する好みを1から5の5段 階で評価しています。さて、Aliceはカツオとスズキを試したことがありません。果たして、 Aliceはカツオとスズキを好むでしょうか? ユーザ-寿司評価値行列 カツオ マグロ 中トロ
タイ ヒラメ スズキ Alice ? 5 4 1 2 ? Bruno 5 5 4 ? 3 3 Chiara 4 ? 5 2 1 ? Dhruv ? 4 ? 2 1 1 Emi 1 2 1 3 ? 3 2
ユーザ、アイテム、評価履歴 ユーザ: 推薦システムの利用者 アイテム:推薦システムにおいて扱う商品やコンテンツなど 評価値: ユーザのアイテムに対する好き嫌いの程度 ユーザ アイテム 評価値 1:
Alice 2: マグロ 5 1: Alice 3: 中トロ 4 1: Alice 4: タイ 1 1: Alice 5: ヒラメ 2 2: Bruno 1: カツオ 5 : : : 5: Emi 6: スズキ 3 評価履歴 3 評価履歴: ユーザがこれまで利用してきた アイテムに対して与えた評価値の履歴
1 Bruno Chiara Dhruv Emi カ ツ オ マ グ
ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? ユーザの評価履歴をベクトルで表そう Bruno Chiara Dhruv Emi 2 3 4 5 ? ? ? ? ? ? ベクトル*:数を縦または横に並べたもの Aliceのマグロに対する評価値 欠損値: Aliceが未評価 *数学B -> 数学C:ベクトル 評価値ベクトル:特定のユーザの評価履歴をベクトルで表したもの 4 ユーザ アイテム 評価値 1: Alice 2: マグロ 5 1: Alice 3: 中トロ 4 1: Alice 4: タイ 1 1: Alice 5: ヒラメ 2 2: Bruno 1: カツオ 5 : : : 5: Emi 6: スズキ 3 評価履歴
すべてのユーザの評価値ベクトルをつなげよう 1 Bruno Chiara Dhruv Emi カ ツ オ マ
グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? 行列*:数を縦と 横に並べたもの *数学C:数学的な表現の工夫 評価値行列:各ユーザの各アイテムに対する評価値を縦と横に並べたもの 5
問題 | Aliceはカツオを好む?スズキを好む? 欠損値 に入るべき評価値をどう求める? ? 1 Bruno Chiara Dhruv
Emi カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? 6
案1 | Aliceの平均評価値で予測 1 Bruno Chiara Dhruv Emi カ ツ
オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? 3.0 7
案2 | カツオに対する平均評価値で予測 1 Bruno Chiara Dhruv Emi カ ツ
オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? 3.3 8
案3 | Aliceと好みが似ているユーザを参考にして予測 1 Bruno Chiara Dhruv Emi カ ツ
オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? 4.5 9
似ているユーザを探そう 10
AliceとBrunoの評価値の関係 0 1 5 2 3 4 1 5 2
3 4 Aliceの評価値 Brunoの評価値 マグロ 中トロ ヒラメ 正の相関* *数学I:データの分析 Aliceが高く評価しているアイテムは Brunoも高く評価している 1 Bruno カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 1 2 3 4 5 6 ? ? ? 11
AliceとEmiの評価値の関係 0 1 5 2 3 4 1 5 2
3 4 Aliceの評価値 Emiの評価値 マグロ 中トロ タイ 負の相関* Aliceが高く評価しているアイテムは Emiは低く評価している 1 Emi カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 5 1 2 3 4 5 6 ? ? ? *数学I:データの分析 12
評価値行列の平均中心化 ユーザによって評価基準が異なるため、ユーザごとの平均評価値よりも好 きか嫌いかをみる 平 均 3 4 3 2 2
1 Bruno Chiara Dhruv Emi カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? ? カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? ? ? ? ? ? 13
AliceとBrunoは似ている? -2 +2 -1 0 +1 -2 +2 -1 0
+1 Aliceの評価値 Brunoの評価値 マグロ 中トロ ヒラメ 正の相関 AliceとBrunoの評価値の相関係数* ユーザ類似度 *数学I:データの分析 1 Bruno Alice 2 カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? 14
AliceとEmiは似ている? 0 Aliceの評価値 Emiの評価値 マグロ 中トロ タイ 負の相関 AliceとEmiの評価値の相関係数* ユーザ類似度
-2 +2 -1 0 +1 -2 +2 -1 0 +1 15 カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 1 Emi Alice 5 ? ? ? *数学I:データの分析
演習 | AliceとChiaraの評価値の相関係数 AliceとChiaraの評価値の相関係数* ユーザ類似度 ※計算してみよう(分数、平方根はそのままで良い) 16 1 Chiara Alice
3 カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? ? *数学I:データの分析
演習 | AliceとDhruvの評価値の相関係数 AliceとDhruvの評価値の相関係数* ユーザ類似度 ※計算してみよう(分数、平方根はそのままで良い) 17 1 Dhruv Alice
4 カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? ? *数学I:データの分析
Aliceと好みが似ているユーザは? ユーザ ユーザ類似度 Alice Bruno Chiara Dhruv Emi 類似ユーザ ユーザ類似度が
• 上位 k 人のユーザを選ぶ • しきい値以上のユーザを選ぶ 類似ユーザの選び方 1.000 Aliceと嗜好が類似するユーザ 18
嗜好を予測しよう 19
1 カ ツ オ マ グ ロ 中 ト ロ
タ イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? ? ? ? ? ? Aliceのカツオに対する嗜好を予測しよう +1 類似ユーザ 類似ユーザの嗜好を参考に、Aliceがカツオに対して、平均よりも好むか嫌 うかを予測 20 Bruno Chiara Dhruv Emi Alice 2 3 4 5
カ ツ オ マ グ ロ 中 ト ロ タ
イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? ? ? ? ? Aliceのカツオに対する評価値を予測しよう 元の平均評価値を足して、Aliceの評価基準で評価値を予測 平 均 3 4 3 2 2 1 Bruno Chiara Dhruv Emi カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? ? +1 4 21
カ ツ オ マ グ ロ 中 ト ロ タ
イ ヒ ラ メ ス ズ キ 1 2 3 4 5 6 ? ? ? ? ? ? +1 演習 | Aliceのスズキに対する評価値 ※Aliceのスズキに対する評価値を計算してみよう 平 均 3 4 3 2 2 1 Bruno Chiara Dhruv Emi カ ツ オ マ グ ロ 中 ト ロ タ イ ヒ ラ メ ス ズ キ Alice 2 3 4 5 1 2 3 4 5 6 ? ? ? ? ? ? 4 22
嗜好予測の結果 Aliceはとある寿司屋を訪れました。この寿司屋では、表に示すように、カツオ、マグロ、中 トロ、タイ、ヒラメ、スズキの6種類の寿司を提供しています。この寿司屋にはAlice、 Bruno、Chiara、Dhruv、Emiがよく訪れます。そして、寿司に対する好みを1から5の5段 階で評価しています。さて、Aliceはカツオとスズキを試したことがありません。果たして、 Aliceはカツオとスズキを好むでしょうか? ユーザ-寿司評価値行列 カツオ マグロ 中トロ
タイ ヒラメ スズキ Alice ? 5 4 1 2 ? Bruno 5 5 4 ? 3 3 Chiara 4 ? 5 2 1 ? Dhruv ? 4 ? 2 1 1 Emi 1 2 1 3 ? 3 23 Aliceはカツオを好む 4 Aliceはスズキを嫌う 2