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
高校講座 | 第3回 協調ベース推薦システム
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
RecSysLab
PRO
August 06, 2022
Technology
600
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
高校講座 | 第3回 協調ベース推薦システム
下記教科書を基にした高校生向けの推薦システム講座の講義スライドです。
奥 健太:基礎から学ぶ推薦システム - 情報技術で嗜好を予測する -, コロナ社 (2022)
RecSysLab
PRO
August 06, 2022
More Decks by RecSysLab
See All by RecSysLab
[WebDB2026]セレンディピティ指向推薦システム再考 ―セレンディピティの原義・類型・発生過程に基づく設計指針―
recsyslab
PRO
0
220
[最強DB講義]推薦システム | 評価編
recsyslab
PRO
0
230
[最強DB講義]推薦システム | 基礎編
recsyslab
PRO
1
290
データベース|SQL
recsyslab
PRO
0
150
龍谷ICT教育|プログラミング演習科目における自動採点ツールを用いた自由進度学習
recsyslab
PRO
0
210
[RecSys2023論文読み会]Interface Design to Mitigate Inflation in Recommender Systems
recsyslab
PRO
0
190
[RecSys2022論文読み会]Bundle MCR: Towards Conversational Bundle Recommendation
recsyslab
PRO
0
480
高校講座 | 第1回 推薦システムとは
recsyslab
PRO
0
670
高校講座 | 第2回 内容ベース推薦システム
recsyslab
PRO
0
630
Other Decks in Technology
See All in Technology
バックオフィスに染み出すTypeScript ── clasp で安全に仕組みを作る
nealle
1
150
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
5
640
Snowflake でできることが増えたら、 ABAC が必要になった
kaeton
0
130
詳解 never 型 - ボトム型の性質を深掘り
nealle
0
120
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
2.7k
cdk deployとcdkd deploy、実際にデプロイして5倍速近くの差を実測した
yama3133
1
150
AX時代の自治体支援リソース再配分と役割分担の再構成:戦略とロードマップ(概要)
sishi2026
0
160
新米を「売り越さない」、Aurora DSQLで作る在庫ゼロ死守の限定ドロップEC
yama3133
0
130
Claude Codeから見る、エンジニアの世界の変容とその先
oikon48
8
5.1k
"AWSはちょっと苦手"でも大丈夫。AWS Blocks で手軽に作る Flutter のバックエンド #FlutterKaigi
tacck
PRO
0
120
外国人エンジニアがVueプロトタイプで仕様を合わせている話 / Vue Fes Japan 2026 LT
eluwing
0
350
Don't write the architecture only in the prompt.
neohsu
0
290
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
510
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Balancing Empowerment & Direction
lara
6
1.4k
Technical Leadership for Architectural Decision Making
baasie
3
620
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
The Cost Of JavaScript in 2023
addyosmani
55
10k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
340
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
290
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
540
We Have a Design System, Now What?
morganepeng
55
8.4k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
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