๐Ÿ“‘Paper Review

[paper review] Recommender system

date
Jun 6, 2023
slug
recommender-system
author
status
Public
tags
paper
summary
type
Post
thumbnail
category
๐Ÿ“‘Paper Review
updatedAt
Sep 6, 2024 01:33 PM
ย 
์ถ”์ฒœ์‹œ์Šคํ…œ ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ ์ „์—, ๊ฐœ๊ด„์ ์ธ ๋ฆฌ๋ทฐ๋ฅผ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

Recommender System

์ถ”์ฒœ ์‹œ์Šคํ…œ์€ ์ „์ž ์ƒ๊ฑฐ๋ž˜, ์˜จ๋ผ์ธ ๋‰ด์Šค ๋ฐ ์†Œ์…œ ๋ฏธ๋””์–ด ์‚ฌ์ดํŠธ๋ฅผ ํฌํ•จํ•œ ๋งŽ์€ ์˜จ๋ผ์ธ ์„œ๋น„์Šค์— ๋„๋ฆฌ ์ฑ„ํƒ๋˜์–ด ๊ธฐํ˜ธ์— ๋งž๋Š” ์ƒํ’ˆ์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Œ.
์ œํ’ˆ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž์˜ ํŒจํ„ด์„ ๋ถ„์„ํ•˜์—ฌ ๊ฐœ์ธํ™”๋œ ์ถ”์ฒœ์„ ์ œ๊ณตํ•จ.
ย 
strategies for Recommender System
์ถ”์ฒœ ์‹œ์Šคํ…œ์—๋Š” ํฌ๊ฒŒ ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์กด์žฌํ•จ.
  1. ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง(content-based)
notion image
์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ์‹œ์Šคํ…œ์€ ๊ฐ๊ฐ์˜ ์œ ์ €, ์•„์ดํ…œ์— ๋Œ€ํ•œ Profile์„ ์ƒ์„ฑํ•จ.
e.g.)์˜ํ™”์— ๊ด€ํ•œ ์•„์ดํ…œ Profile์—๋Š” ์žฅ๋ฅด, ์ฐธ์—ฌํ•œ ๋ฐฐ์šฐ, ์ธ๊ธฐ๋„, ๋“ฑ์˜ ์†์„ฑ ํฌํ•จ.
e.g.)์œ ์ €์˜ Profile์—๋Š” ์ธ๊ตฌํ†ต๊ณ„์  ์ •๋ณด ํ˜น์€ ์„ค๋ฌธ์กฐ์‚ฌ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์ •๋„ ๋“ฑ์ด ํฌํ•จ.
ย 
์ƒ์„ฑ๋œ ์œ ์ €๋ณ„ Profile์„ ํ†ตํ•ด ๊ณผ๊ฑฐ์— ์ ‘ํ•œ ์•„์ดํ…œ ์ค‘ ์œ ์ €๊ฐ€ ์„ ํ˜ธํ•˜์˜€๋˜ ์•„์ดํ…œ๊ณผ ์œ ์‚ฌํ•œ ์•„์ดํ…œ์„ ์ถ”์ฒœ.
e.g.) "์œ ์ € A๊ฐ€ ์•„์ดํ…œ 1์„ ์ข‹์•„ํ•˜๋‹ˆ, ์•„์ดํ…œ 1๊ณผ ๋น„์Šทํ•œ ์•„์ดํ…œ 2๋ฅผ ์ถ”์ฒœ"
ย 
์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง์˜ ์žฅ,๋‹จ์ 
์žฅ์  : ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ์‹œ์Šคํ…œ์€ ๋‹ค๋ฅธ ์œ ์ €์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Œ. ์ถ”์ฒœ์— ๋Œ€ํ•œ ์„ค๋ช…๋ ฅ์ด ์žˆ์Œ.
๋‹จ์  : Profile์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ explicit feature๋ฅผ ์ฐพ๊ธฐ ์–ด๋ ค์›€. profile์„ ์ž‘์„ฑํ•˜์ง€ ๋ชปํ•œ ์ƒˆ๋กœ์šด ์œ ์ €์— ๋Œ€ํ•œ ์ถ”์ฒœ์ด ์–ด๋ ค์›€. ์ถฉ๋ถ„ํžˆ ๊ตฌ๋งค์ด๋ ฅ์ด ์Œ“์ธ ์ƒํ™ฉ์—์„œ๋Š” ์ƒ๋Œ€์ ์œผ๋กœ ํ˜‘์—… ํ•„ํ„ฐ๋ง์— ๋น„ํ•ด ๋ถ€์กฑํ•œ ์„ฑ๋Šฅ.
ย 
์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง ๋ฐฉ๋ฒ•
์•„์ดํ…œ์ด ์œ ์‚ฌํ•œ์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ์•„์ดํ…œ์˜ ๋น„์Šทํ•œ ์ •๋„(์œ ์‚ฌ๋„, similarity)๋ฅผ ์ˆ˜์น˜๋กœ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•จ.
notion image
์œ ์‚ฌ๋„ ๊ณ„์‚ฐ์„ ์œ„ํ•ด์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ์•„์ดํ…œ์„ ๋ฒกํ„ฐ ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์ด๋“ค ๋ฒกํ„ฐ ๊ฐ„์˜ ์œ ์‚ฌ๋„ ๊ณ„์‚ฐ ๋ฐฉ๋ฒ•์„ ๋งŽ์ด ํ™œ์šฉ. โ€”> ๋ฒกํ„ฐ ์œ ์‚ฌ๋„ ๋น„๊ต(cosine sim, pearson corr)
ย 
ํ…์ŠคํŠธ :One-hot, tf-idf, word2vec, attention ๊ธฐ๋ฐ˜ ์–ธ์–ด๋ชจ๋ธ ๋“ฑ ๋‹ค์–‘ํ•œ ์ž„๋ฒ ๋”ฉ ๋ฐฉ๋ฒ•์„ ์ƒํ™ฉ์— ๋งž๊ฒŒ.
์ด๋ฏธ์ง€ :Bottleneck feature(Classifer ์ด์ „ feature, penultimate layer)
ย 
์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง ์‚ฌ๋ก€ - ์นด์นด์˜ค ์›นํˆฐ
notion image
์นด์นด์˜ค์›นํˆฐ์˜ ์—ฐ๊ด€ ์ž‘ํ’ˆ ์ถ”์ฒœ ์˜์—ญ.
์นด์นด์˜ค ์›นํˆฐ UI์—์„œ, ์‚ฌ์šฉ์ž๋Š” ์ขŒ์šฐ๋กœ ์ถ”์ฒœ ๋ฆฌ์ŠคํŠธ๋ฅผ ์Šค์™€์ดํ”„ ํ•ด ๋‹ค๋ฅธ ์ž‘ํ’ˆ์„ ํƒ์ƒ‰ํ•˜๊ณ  ์—ด๋žŒํ•  ์ˆ˜ ์žˆ์Œ.
์—ฌ๊ธฐ์— ์ œ๊ณต๋˜๋Š” ์ถ”์ฒœ์— ์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Œ.
ย 
์ƒˆ๋กœ์šด ์ž‘ํ’ˆ์ด ์ถ”๊ฐ€๋  ์‹œ, ์•„๋ž˜์™€ ๊ฐ™์€ ๊ณผ์ •์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ˆ˜ํ–‰.
์ปจํ…์ธ  ํ”„๋กœํŒŒ์ผ ์ƒ์„ฑ
์ž„๋ฒ ๋”ฉ
  • ์ž‘ํ’ˆ ์ค„๊ฑฐ๋ฆฌ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ž‘ํ’ˆ ํ…์ŠคํŠธ ์ž„๋ฒ ๋”ฉ์„ ์ƒ์„ฑ. ์‚ฌ์ „ํ•™์Šต ํ•œ๊ตญ์–ด ์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ์„ ์‚ฌ์šฉ.
  • ์‚ฌ์ „ํ•™์Šต ์‹œ์ผœ ๋‘” ์ด๋ฏธ์ง€ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด ์ž‘ํ’ˆ ๋Œ€ํ‘œ ์ด๋ฏธ์ง€์˜ ์ž„๋ฒ ๋”ฉ์„ ์ƒ์„ฑ.
  • ์นด์นด์˜ค๋ธŒ๋ ˆ์ธ์—์„œ ๊ฐœ๋ฐœํ•œ ์›นํˆฐ ๊ทธ๋ฆผ์ฒด ์ถ”์ถœ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด ์ž‘ํ’ˆ ๋Œ€ํ‘œ ์ด๋ฏธ์ง€์˜ ๊ทธ๋ฆผ์ฒด ์ž„๋ฒ ๋”ฉ์„ ์ƒ์„ฑ.
์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ
notion image
์ƒ์„ฑ๋œ ์ž„๋ฒ ๋”ฉ + ์ปจํ…์ธ  ํ”„๋กœํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ํ•ฉํ•œ ์•„์ดํ…œ(์›นํˆฐ)์„ ์ถ”์ฒœํ•จ.
ย 
์ตœ์ข…์ ์œผ๋กœ ์„ ์ •ํ•œ ์œ ์‚ฌ ์ž‘ํ’ˆ๋“ค์„ ๋ฉ€ํ‹ฐ์•”๋“œ ๋ฐด๋”ง(multi-armed bandit) ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ์ถ”์ฒœ๋ฐ›์€ ์ž‘ํ’ˆ์„ ์—ด๋žŒํ•  ํ™•๋ฅ ์„ ์ตœ๋Œ€๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ์ˆœ์„œ๋ฅผ ์กฐ์ •ํ•ด ์‚ฌ์šฉ์ž์—๊ฒŒ ๋…ธ์ถœ์‹œํ‚ด.
ย 
ย 
  1. ํ˜‘์—… ํ•„ํ„ฐ๋ง(Collaborative Filtering)
notion image
ํ˜‘์—… ํ•„ํ„ฐ๋ง(Collaborative Filtering)์€ย profile์„ ๋”ฐ๋กœ ๋งŒ๋“ค ํ•„์š” ์—†์ด,ย ํ‰์ ๊ณผ ๋ฐฉ๋ฌธ๊ธฐ๋ก ๋“ฑ์˜ ์•„์ดํ…œ, ์œ ์ €์˜ ๊ณผ๊ฑฐ ์ƒํ˜ธ๊ด€๊ณ„(interaction)์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์ถ”์ฒœ์„ ์ œ๊ณต.
e.g.) "์œ ์ € A์™€ B๊ฐ€ ์•„์ดํ…œ 1์„ ์„ ํ˜ธํ•˜๋ฉด, ์œ ์ € A๊ฐ€ ์„ ํ˜ธํ•˜๋Š” ๋‹ค๋ฅธ ์•„์ดํ…œ 2๋ฅผ ์œ ์ € B์—๊ฒŒ ์ถ”์ฒœ"
๋งŽ์€ ์‚ฌ๋žŒ์˜ ์˜๊ฒฌ์„ ํ†ตํ•ด ๋” ๋‚˜์€ ์ถ”์ฒœ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Œ. ์ง‘๋‹จ์ง€์„ฑ !!
ย 
ํ˜‘์—… ํ•„ํ„ฐ๋ง์˜ ์žฅ,๋‹จ์ 
ํ˜‘์—…ํ•„ํ„ฐ๋ง์˜ ์žฅ, ๋‹จ์ ์€ ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ๊ณผ ์ƒ๋ฐ˜๋จ.
์žฅ์  : ์œ ์ €์— ๋Œ€ํ•œ profile์„ ์ƒ์„ฑํ•  ํ•„์š”๊ฐ€ ์—†์Œ. Domain์— ๋Œ€ํ•œ ์ง€์‹์ด ์ƒ๋Œ€์ ์œผ๋กœ ๋œ ์š”๊ตฌ๋จ. ์ผ๋ฐ˜์ ์œผ๋กœ ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง์— ๋น„ํ•ด ์šฐ์ˆ˜ํ•œ ์„ฑ๋Šฅ.
๋‹จ์  : ์ƒํ˜ธ๊ด€๊ณ„์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ถ€์กฑํ•  ์‹œ ํ˜‘์—…์ด ๋ถˆ๊ฐ€๋Šฅํ•˜์—ฌ ์ƒˆ๋กœ์šด ์œ ์ €, ์•„์ดํ…œ์— ๋Œ€ํ•œ ์ถ”์ฒœ์ด ์–ด๋ ค์›€ โ€”> "Cold-start problem"
ย 
ํ˜‘์—… ํ•„ํ„ฐ๋ง ๋ฐฉ๋ฒ•
ํ˜‘์—…ํ•„ํ„ฐ๋ง์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋ฐฉ๋ฒ•์—๋Š” neighborhood method์™€ Latent factor model์ด ์žˆ์Œ.
neighbor method๋Š” ์•„์ดํ…œ ์‚ฌ์ด, ํ˜น์€ ์œ ์ € ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š”๋ฐ ์ดˆ์ .
๋™์ผํ•œ ์œ ์ €์—๊ฒŒ ๋น„์Šทํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์•˜๋‹ค๋ฉด ์„œ๋กœ ํ•ด๋‹นํ•˜๋Š” ์•„์ดํ…œ๋“ค์€ ์ด์›ƒ์ด ๋จ.(item-oriented),
๋™์ผํ•œ ์•„์ดํ…œ์—๊ฒŒ ๋น„์Šทํ•œ ํ‰๊ฐ€๋ฅผ ๋‚ด๋ฆฐ ์œ ์ €๋“ค์€ ์„œ๋กœ ์ด์›ƒ์ด ๋จ(user-oriented).
๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ž˜ ์•Œ๊ณ  ์žˆ๋Š” KNN์ด ์žˆ์Œ.
ย 
e.g) Joe๊ฐ€ ์ข‹์•„ํ•˜๋Š” ์˜ํ™”(์Šคํƒ€์›Œ์ฆˆ)๋ฅผ ์ข‹์•„ํ•œ ์œ ์ €๋“ค์ด ์ข‹์•„ํ•œ ์˜ํ™”(์ŠคํŒŒ์ด๋” ๋งจ)๋ฅผ Joe์—๊ฒŒ ๋‹ค์‹œ ์ถ”์ฒœ. <๊ทธ๋ฆผ>
๊ทธ๋ฆผ
๊ทธ๋ฆผ
Latent factor model์€ user์˜ item ์ƒํ˜ธ๊ด€๊ณ„ ํŒจํ„ด(rating, ๊ตฌ๋งค์—ฌ๋ถ€)์—์„œ ์ถ”์ถœ๋œ 20~100๊ฐœ์— ํ•ด๋‹นํ•˜๋Š” Latent factor(์ฐจ์›, ์ถ•)๋ฅผ ์ด์šฉํ•˜์—ฌ ์œ ์ €์™€ ์•„์ดํ…œ์„ ํ•จ๊ป˜ ํŠน์„ฑํ™” ํ•˜๋Š” ๋ฐฉ๋ฒ•.
๊ฐ๊ฐ์˜ ํ•™์Šต๋œ factor ์ค‘์—๋Š” ์ฝ”๋ฉ”๋”” vs ๋“œ๋ผ๋งˆ ์™€ ๊ฐ™์ด ๋ถ„๋ช…ํ•œ ํŠน์„ฑ ๋Œ€๋น„๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” factor๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ๋„ ์žˆ์œผ๋ฉฐ, ์บ๋ฆญํ„ฐ์˜ ๊นŠ์ด ํ˜น์€ ๊ธฐ๋ฐœํ•จ๊ณผ ๊ฐ™์ด ๋ถ„๋ช…ํ•˜์ง€ ์•Š์€ ํŠน์ง•์„ ํ‘œํ˜„ํ•˜๋Š” factor ๋˜ํ•œ ์กด์žฌํ•  ์ˆ˜ ์žˆ์Œ.
Matrix Factorization์€ ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ Latent factor model์ž„.
e.g.) 2๊ฐœ์˜ Factor(2์ฐจ์›)๋ฅผ ์ด์šฉํ•˜์—ฌ user์™€ item์„ ๋™์ผํ•œ ๊ณต๊ฐ„์— ํ‘œํ˜„.
notion image
ย 
ํ˜‘์—… ํ•„ํ„ฐ๋ง ์‚ฌ๋ก€ - Netflix
๊ทธ๋ฆผ
๊ทธ๋ฆผ
<๊ทธ๋ฆผ>์€ Netflix์˜ ์œ ์ € - ํ”„๋กœ๊ทธ๋žจ rating data๋ฅผ Matrix factorizationํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ ๋ฒกํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•œ ๊ฒฐ๊ณผ.
netflix prize competition์—์„œ ์šฐ์ˆ˜ํ•œ ์„ฑ๋Šฅ์„ ๋ณด์˜€์Œ.
ย