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
540
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
[最強DB講義]推薦システム | 評価編
recsyslab
PRO
0
160
[最強DB講義]推薦システム | 基礎編
recsyslab
PRO
1
250
データベース|SQL
recsyslab
PRO
0
140
龍谷ICT教育|プログラミング演習科目における自動採点ツールを用いた自由進度学習
recsyslab
PRO
0
190
[RecSys2023論文読み会]Interface Design to Mitigate Inflation in Recommender Systems
recsyslab
PRO
0
180
[RecSys2022論文読み会]Bundle MCR: Towards Conversational Bundle Recommendation
recsyslab
PRO
0
470
高校講座 | 第1回 推薦システムとは
recsyslab
PRO
0
620
高校講座 | 第2回 内容ベース推薦システム
recsyslab
PRO
0
560
内容ベース推薦システム | 第2回 推薦システム概論
recsyslab
PRO
0
910
Other Decks in Technology
See All in Technology
個人OSSが、机の上から世界に広がるまでの話
shinyasaita
1
380
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
290
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
13
8.5k
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
220
Flutterをカメラで動かしたかった話
sony
1
130
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.4k
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
【CEDEC2026】専門性の高いデフォルメチームが挑んだ人材育成戦略 〜Cygames Academiaの企画から実施まで〜
cygames
PRO
0
550
Genie Codeハンズオン基礎編
taka_aki
1
100
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
220
ガバメント AI 源内を地方自治体は活用できるのか可能性と課題、期待について
takeda_h
1
390
第3回しろおびセキュリティスポンサーセッション
log0417
0
160
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Un-Boring Meetings
codingconduct
0
380
Automating Front-end Workflow
addyosmani
1369
210k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
How to Ace a Technical Interview
jacobian
281
24k
30 Presentation Tips
portentint
PRO
1
360
A Soul's Torment
seathinner
6
3.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
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