๐Ÿ ๋จธ์‹ ๋Ÿฌ๋‹ | ๋”ฅ๋Ÿฌ๋‹/์ถ”์ฒœ์‹œ์Šคํ…œ

2022.01.14 - [๋จธ์‹ ๋Ÿฌ๋‹ | ๋”ฅ๋Ÿฌ๋‹/์ถ”์ฒœ์‹œ์Šคํ…œ] - [K-Data x ๋Ÿฌ๋‹์Šคํ‘ผ์ฆˆ] 2-1. ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ(CB), TF-IDF [K-Data x ๋Ÿฌ๋‹์Šคํ‘ผ์ฆˆ] 2-1. ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ(CB), TF-IDF # ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ? : CB(Content-based Recommendation) ์œ ์ € A๋ผ๋Š” ์‚ฌ๋žŒ์ด ๊ณผ๊ฑฐ์— ์„ ํ˜ธํ•œ ์•„์ดํ…œ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ๋น„์Šทํ•œ ์•„์ดํ…œ์„ ์œ ์ € A์—๊ฒŒ ์ถ”์ฒœํ•œ๋‹ค. => ์•„์ดํ…œ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์˜ ์˜ˆ) - ์˜ํ™” : ๋ฐฐ xod22.tistory.com CB์— ๋Œ€ํ•œ ์ด๋ก ์€ ๋‹ค๋ค„๋ณด์•˜๋Š”๋ฐ ์ด๋ฒˆ์—” ์ง์ ‘ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ(CB)๋ฅผ ์‹ค์Šตํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! CB(Content-based Recommendation) : ๋จผ์ € ์‹ค์Šต์— ์•ž์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋‹ค์‹œ CB(Content-..
2022.02.17 - [๋จธ์‹ ๋Ÿฌ๋‹ | ๋”ฅ๋Ÿฌ๋‹/์ถ”์ฒœ์‹œ์Šคํ…œ] - [K-Data x ๋Ÿฌ๋‹์Šคํ‘ผ์ฆˆ] 4-3. Multi-Armed Bandit (MAB) [K-Data x ๋Ÿฌ๋‹์Šคํ‘ผ์ฆˆ] 4-3. Multi-Armed Bandit (MAB) ์‹ค์ œ ์ถ”์ฒœ์— ๋งŽ์ด ํ™œ์šฉ๋˜๊ณ  ์žˆ๋Š” ๋ฐฉ๋ฒ•์ธ Mutli-Armed Bandit์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! Multi-Armed Bandit(MAB)? ๊ฐ•ํ™”ํ•™์Šต์€ ์•„๋‹ˆ์ง€๋งŒ ๊ฐ•ํ™”ํ•™์Šค๋ธŒ์ด ํ•ต์‹ฌ ์•„์ด๋””์–ด์ธ Exploitation(์ฐฉ์ทจ) / Exploration(ํƒํ—˜).. xod22.tistory.com ์ €๋ฒˆ ํฌ์ŠคํŒ…์—์„œ MAB์˜ ๊ธฐ๋ณธ์ ์ธ ์›๋ฆฌ์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค! ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” MAB์˜ 4๊ฐ€์ง€ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค!! 1. Simple Average Method (greedy ..
์‹ค์ œ ์ถ”์ฒœ์— ๋งŽ์ด ํ™œ์šฉ๋˜๊ณ  ์žˆ๋Š” ๋ฐฉ๋ฒ•์ธ Mutli-Armed Bandit์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! Multi-Armed Bandit(MAB)? ๊ฐ•ํ™”ํ•™์Šต์€ ์•„๋‹ˆ์ง€๋งŒ ๊ฐ•ํ™”ํ•™์Šต์˜ ํ•ต์‹ฌ ์•„์ด๋””์–ด์ธ Exploitation(์ฐฉ์ทจ) / Exploration(ํƒํ—˜)์„ ํ™œ์šฉ * ์›๋ฆฌ 1) ์นด์ง€๋…ธ์— ์žˆ๋Š” K๊ฐœ์˜ ์Šฌ๋กฏ๋จธ์‹ ์„ N๋ฒˆ ํ”Œ๋ ˆ์ด ํ•  ์ˆ˜ ์žˆ๋‹ค - ํ•œ๋ฒˆ์— ํ•œ๊ฐœ์˜ ์Šฌ๋กฏ๋จธ์‹ ์„ ๋‹น๊ธธ ์ˆ˜ ์žˆ์Œ! 2) ๊ฐ๊ฐ์˜ ์Šฌ๋กฏ๋จธ์‹ ์—์„œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” Reward์˜ ํ™•๋ฅ ์€ ๋ชจ๋‘ ๋‹ค๋ฅด๋‹ค - Reward๋Š” 0 ๋˜๋Š” 1๋กœ ๊ฐ€์ • 3) ์ˆ˜์ต์„ ์ตœ๋Œ€ํ™”ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์Šฌ๋กฏ๋จธ์‹ ์„ ์–ด๋–ค ์ˆœ์„œ๋กœ ๋‹น๊ฒจ์•ผ ํ•˜๋Š”๊ฐ€? ๋ชจ๋“  ์Šฌ๋กฏ๋จธ์‹ ์„ ๋™์ผํ•˜๊ฒŒ ๋‹น๊ฒจ๋ณธ๋‹ค(?) -> 5๋ฒˆ์”ฉ -> explore(ํƒํ—˜) ์ผ์ • ํšŸ์ˆ˜๋งŒํผ ์Šฌ๋กฏ๋จธ์‹ ์„ ๋‹น๊ฒจ๋ณด๊ณ , ๋‚จ์€ ํšŸ์ˆ˜๋Š” ๊ทธ ์‹œ๊ฐ„ ๋™์•ˆ ์ œ์ผ ๋†’์€ ..
Item2Vec ๋‹จ์–ด๊ฐ€ ์•„๋‹Œ ์ถ”์ฒœ ์•„์ดํ…œ(Item)์„ Word2Vec ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž„๋ฒ ๋”ฉ! ์œ ์ €๊ฐ€ ์†Œ๋น„ํ•œ ์•„์ดํ…œ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฌธ์žฅ์œผ๋กœ, ์•„์ดํ…œ์„ ๋‹จ์–ด๋กœ ๊ฐ€์ •ํ•˜์—ฌ Word2Vec์— ์ ์šฉ ์•„์ดํ…œ ์—ฐ๊ด€ ์ถ”์ฒœ์—์„œ MF๋ฅผ ์‚ฌ์šฉํ•œ ์•„์ดํ…œ ๊ธฐ๋ฐ˜ CF๋ณด๋‹ค ๋†’์€ ์„ฑ๋Šฅ๊ณผ ์–‘์งˆ์˜ ์ถ”์ฒœ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณต! Item2Vec ์ƒ์„ธ ์œ ์ € ํ˜น์€ ์„ธ์…˜๋ณ„๋กœ ์†Œ๋น„ํ•œ ์•„์ดํ…œ ์ง‘ํ•ฉ์„ ์ƒ์„ฑํ•œ๋‹ค..! ํ•™์Šต์„ ํ†ตํ•ด ์ƒ์„ฑ๋œ ์•„์ดํ…œ ๋ฒกํ„ฐ ๊ฐ„์˜ ์œ ์‚ฌ๋„๋Š” ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ์‚ฌ์šฉํ•จ! Item2Vec ์˜ˆ์‹œ - ์•„ํ”„๋ฆฌ์นดTV์˜ Live2Vec : ์œ ์ €์˜ ์‹œ์ฒญ ์ด๋ ฅ = ๋ฌธ์žฅ, Live๋ฐฉ์†ก = ๋‹จ์–ด - Spotify์˜ Song2Vec : ์œ ์ €์˜ ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ(์žฌ์ฆˆ,,,๋“ฑ๋“ฑ) = ๋ฌธ์žฅ, ๋…ธ๋ž˜ = ๋‹จ์–ด - ํฌ๋ฆฌํ…Œ์˜ค์˜ Meta-Prod2Vec : ์œ ์ €์˜ ์‡ผํ•‘ ์„ธ์…˜ = ๋ฌธ์žฅ, ์ƒํ’ˆ..
์ž„๋ฒ ๋”ฉ 1) Sparse Representation : one-hot encoding ex) ๋ฉด๋„๊ธฐ = [0, 0, 0, 0, ..,1, 0, 0, ..., 0], ์ฐจ์›์˜ ๊ฐœ์ˆ˜๋Š” ์•„์ดํ…œ ์ „์ฒด ๊ฐœ์ˆ˜์™€ ๊ฐ™๋‹ค..! ๋ฒกํ„ฐ์˜ ์ฐจ์›์€ ํ•œ์—†์ด ์ปค์ง€๊ณ  ๊ณต๊ฐ„์ด ๋‚ญ๋น„๋œ๋‹ค๋Š” ํŠน์ง• 2) Dense Representation : ์•„์ดํ…œ ์ „์ฒด ๊ฐœ์ˆ˜๋ณด๋‹ค ํ›จ์”ฌ ์ž‘์€ ์ฐจ์›์œผ๋กœ ํ‘œํ˜„๋จ..! ์•„์ดํ…œ์˜ ์˜๋ฏธ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ์˜ ์ฐจ์›์— ๋ถ„์‚ฐํ•˜์—ฌ ํ‘œํ˜„ํ•œ๋‹ค ex) ๋ฉด๋„๊ธฐ = [0.2, 1.4, -0.4, 1.2, 0.3] ์›Œ๋“œ ์ž„๋ฒ ๋”ฉ ๋‹จ์–ด๋ฅผ ์ •ํ•ด์ง„ ์‚ฌ์ด์ฆˆ์˜ dense vector๋กœ ๋‚˜ํƒ€๋‚ด๋Š”๊ฒƒ์ด๋‹ค.!! one-hot encoding->dense representation [0,0,1,...,0]-> 3์ฐจ์›[0.2, 0.4, 0.4] ์ž„๋ฒ ๋”ฉ ์‹œํ‚ค๋ฉด ๋‹จ์–ด๊ฐ„์˜..
LDA์˜ ์ƒ์„ฑ๊ณผ์ • 1. ํ† ํ”ฝ ๊ฐœ์ˆ˜ K๋ฅผ ์„ค์ • : ํ† ํ”ฝ์€ ๋ชจ๋“  ๋ฌธ์„œ์— ๋ถ„ํฌ๋˜์–ด ์žˆ์Œ! 2. ๋ฌธ์„œ์— ์žˆ๋Š” ๋ชจ๋“  ๋‹จ์–ด๋ฅผ K๊ฐœ ์ค‘ ํ•˜๋‚˜์— ํ† ํ”ฝ์— ๋žœ๋ค์œผ๋กœ ํ• ๋‹น : ๋งŒ์•ฝ ํ•œ ๋‹จ์–ด๊ฐ€ ํ•œ ๋ฌธ์„œ์— ๋‘ ๋ฒˆ ์ด์ƒ ๋“ฑ์žฅํ•œ๋‹ค๋ฉด ๊ฐ ๋‹จ์–ด๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ํ† ํ”ฝ์— ํ• ๋‹น๋  ์ˆ˜๋„ ์žˆ์Œ 3. ๊ฐ ๋ฌธ์„œ์˜ ๊ฐœ๋ณ„ ๋‹จ์–ด์— ๋Œ€ํ•ด์„œ ๋‹ค์Œ ๊ณ„์‚ฐ์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ๋‹จ์–ด ํ•˜๋‚˜์˜ topic์„ ๋ชจ๋ฅธ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ๋ฌธ์„œ 1(doc1) ์ค‘์— A๊ฐ€ ๋‚˜ํƒ€๋‚  ํ™•๋ฅ  = 2/4 = 0.5 ๋ฌธ์„œ ์ „์ฒด์—์„œ A๋ผ๋Š” topic์„ ๊ณจ๋ž์„ ๋•Œ cat์ด ๋‚˜์˜ฌ ํ™•๋ฅ  = 1/6 = 0.167 => ๋‘ ๊ฐ’์„ ๊ณฑํ•ด์„œ cat์— A๊ฐ€ ํ• ๋‹น๋  ํ™•๋ฅ ์„ ๊ตฌํ•จ! =0.0835 ๋ฌธ์„œ 1(doc1) ์ค‘์— B๊ฐ€ ๋‚˜ํƒ€๋‚  ํ™•๋ฅ  = 2/4 = 0.5 ๋ฌธ์„œ ์ „์ฒด์—์„œ B๋ผ๋Š” toopic์„ ๊ณจ๋ž์„ ๋•Œ cat์ด ๋‚˜์˜ฌ ํ™•๋ฅ  =..
์˜ค๋Š˜ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋น ๋ฅด๊ณ  ์‹ค์šฉ์ ์ธ ์ถ”์ฒœ ๊ธฐ๋ฒ•๋“ค์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! ์œ ๋ช…ํ•˜์ง„ ์•Š์ง€๋งŒ ์‹ค์ œ๋กœ ๋น„์ฆˆ๋‹ˆ์Šค/์„œ๋น„์Šค์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋ชจ๋ธ๋“ค์ด๋‹ˆ ์ž˜ ๊ณต๋ถ€ํ•ด๋†“์œผ์‹œ๋ฉด ๋„์›€์ด ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹คเฌช(´‘โ–ฝ‘๏ฝ€)เฌ“โ™กโƒ› 1. LDA 2. ์ž„๋ฒ ๋”ฉ๊ณผ Word2Vec->Item2Vec 3. Multi-Armed Bandit ์ด ์„ธ๊ฐ€์ง€์— ๋Œ€ํ•ด ์•ž์œผ๋กœ ์ฐจ๋ก€๋Œ€๋กœ ํฌ์ŠคํŒ… ํ•ด๋ณผ ๊ณ„ํš์ž…๋‹ˆ๋‹ค! LDA๋ฅผ ์ด์šฉํ•œ ์ถ”์ฒœ : Latent Dirichlet Allocatioin ํ† ํ”ฝ ๋ชจ๋ธ๋ง์€ ๋ฌธ์„œ์˜ ์ง‘ํ•ฉ์—์„œ ํ† ํ”ฝ์„ ์ถ”์ถœํ•˜๋Š” ํฌ๋ฅด์„ธ์Šค๋กœ ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด LDA์ด๋‹ค! LDA๋Š” ์ฃผ์–ด์ง„ ๋ฌธ์„œ์™€ ๊ฐ ๋ฌธ์„œ๊ฐ€ ์–ด๋–ค ํ† ํ”ฝ์„ ๊ฐ€์ง€๋Š”์ง€ ํ™•๋ฅ ๋ชจํ˜•์„ ํ†ตํ•ด ํ‘œํ˜„ํ•˜๋ฉฐ ํ† ํ”ฝ๋ณ„ ๋‹จ์–ด์˜ ๋ถ„ํฌ, ๋ฌธ์„œ์˜ ํ† ํ”ฝ์˜ ๋ถ„ํฌ๋ฅผ ๋””๋ฆฌํด๋ ˆ ๋ถ„ํฌ๋กœ ๊ฐ€์ •ํ•˜๊ณ  ํ’€์–ด๋‚ธ๋‹ค.! LDA๋Š” ..
MF ์„œ๋น™ ์ด์Šˆ MF ํ•™์Šต์€ Pu, Qi ๊ฐ’์„ ๊ตฌํ•จ -> ํŠน์ • ์œ ์ € u์—๊ฒŒ ์ถ”์ฒœ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ•ด๋‹น ์œ ์ €๋ฒกํ„ฐ์™€ ํ›„๋ณด ์•„์ดํ…œ ๋ฒกํ„ฐ๋“ค์˜ ์—ฐ์‚ฐ์ด ํ•„์š”ํ•จ -> ํŠน์ • ์•„์ดํ…œ i์™€ ๋น„์Šทํ•œ ์•„์ดํ…œ(i')๋ฅผ ์ถ”์ฒœํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ•ด๋‹น ์•„์ดํ…œ ๋ฒกํ„ฐ์™€ ํ›„๋ณด ์•„์ดํ…œ ๋ฒกํ„ฐ์˜ ์œ ์‚ฌ๋„ ์—ฐ์‚ฐ์ด ํ•„์š”ํ•จ -> ๋งŒ์•ฝ ์•„์ดํ…œ ๊ฐœ์ˆ˜๊ฐ€ ์—„์ฒญ ๋งŽ๋‹ค๋ฉด.. ์Šค์ฝ”์–ด๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ์˜ค๋žœ ์‹œ๊ฐ„๊ณผ ๋†’์€ ์—ฐ์‚ฐ๋Ÿ‰์ด ํ•„์š”ํ•˜๊ฒŒ๋จ Anooy : approximate nearest-neighborhood ( ANN๊ณ„์—ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ) ์ˆ˜๋งŽ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” n์ฐจ์› ๋ฒกํ„ฐ ๊ณต๊ฐ„์—์„œ ์ฃผ์–ด์ง„ ๋ฒกํ„ฐ์™€ ๊ฐ€์žฅ ์œ ์‚ฌํ•œ ๋ฒกํ„ฐ๋“ค์„ ์ฐพ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฃผ์–ด์ง„ ๋ฒกํ„ฐ๊ฐ€ ์†ํ•œ ๊ณต๊ฐ„์„ tree search๋กœ ์ฐพ๊ณ , ๊ทธ ๊ถŒ์—ญ ์•ˆ์—์„œ๋งŒ nearest neighbor ์—ฐ์‚ฐ์„ ํ•จ! Annoy ์‚ฌ์šฉ ์˜ˆ์‹œ ์œ ์ €์—๊ฒŒ..
xod22
'๐Ÿ ๋จธ์‹ ๋Ÿฌ๋‹ | ๋”ฅ๋Ÿฌ๋‹/์ถ”์ฒœ์‹œ์Šคํ…œ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก