μ–΄λ–€ μΆ”μ²œμ‹œμŠ€ν…œμ„ μ‚¬μš©ν•΄μ•Ό ν• κΉŒ? (1) - ν˜‘μ—… 필터링 λͺ¨λΈκ³Ό ν•œκ³„μ 
πŸ–‹οΈ

μ–΄λ–€ μΆ”μ²œμ‹œμŠ€ν…œμ„ μ‚¬μš©ν•΄μ•Ό ν• κΉŒ? (1) - ν˜‘μ—… 필터링 λͺ¨λΈκ³Ό ν•œκ³„μ 

Created
Jul 30, 2022
Editor
cleanUrl: 'articles/1'
λͺ©μ°¨
Β 

1. μΆ”μ²œ μ‹œμŠ€ν…œ: μ½˜ν…μΈ  기반 필터링 λͺ¨λΈκ³Ό ν˜‘μ—… 필터링 λͺ¨λΈ

Β 
μΆ”μ²œ μ‹œμŠ€ν…œμ—λŠ” λŒ€ν‘œμ μœΌλ‘œ 두가지 λͺ¨λΈμ΄ μžˆμŠ΅λ‹ˆλ‹€.
μ²«λ²ˆμ§ΈλŠ” μ½˜ν…μΈ  기반 필터링 λͺ¨λΈ(Content-based Filtering)은 μ½˜ν…μΈ λ§Œμ„ ν™œμš©ν•˜μ—¬ μΆ”μ²œν•΄μ£ΌλŠ” μ•Œκ³ λ¦¬μ¦˜μΈλ°μš”, μ‚¬μš©μžκ°€ μ’‹μ•„ν•˜λŠ” μ½˜ν…μΈ λ₯Ό λΆ„μ„ν•˜μ—¬ 그와 μœ μ‚¬ν•œ μ½˜ν…μΈ λ₯Ό μΆ”μ²œν•΄μ£ΌλŠ” κΈ°μˆ μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ μ‚¬μš©μžκ°€ β€œAll I want for Christmas is youβ€λΌλŠ” λ…Έλž˜λ₯Ό κ°μƒν–ˆλ‹€λ©΄, 이λ₯Ό λ°”νƒ•μœΌλ‘œ 겨울과 κ΄€λ ¨λœ λ…Έλž˜λ₯Ό μΆ”μ²œν•΄μ€„ 수 μžˆμŠ΅λ‹ˆλ‹€.
λ‘λ²ˆμ§ΈλŠ” ν˜‘μ—… 필터링 λͺ¨λΈ(Collaborative Filtering, CF)μΈλ°μš”, 이것은 λ‹€λ₯Έ μ‚¬μš©μžλ“€λ‘œλΆ€ν„° μ·¨ν–₯ 정보듀을 λͺ¨μ•„ μ‚¬μš©μžμ˜ 관심사λ₯Ό μ˜ˆμΈ‘ν•˜λŠ” λ°©λ²•μž…λ‹ˆλ‹€. CF λͺ¨λΈμ€ λΉ„μŠ·ν•œ μ·¨ν–₯을 κ°€μ§„ μ‚¬μš©μžλ“€μ€ μ–΄λ– ν•œ μ•„μ΄ν…œμ— λŒ€ν•΄ λΉ„μŠ·ν•œ μ„ ν˜Έλ„λ₯Ό κ°€μ§ˆ κ²ƒμ΄λΌλŠ” κ°€μ • ν•˜μ— μ‚¬μš©μžμ™€ μ•„μ΄ν…œ κ°„ μƒν˜Έ μž‘μš© 데이터λ₯Ό ν™œμš©ν•©λ‹ˆλ‹€. λ§Œμ•½ 캐둀을 μ’‹μ•„ν•˜λŠ” μ‚¬λžŒλ“€μ΄ κ³΅ν†΅μ μœΌλ‘œ νŒνƒ€μ§€ μ˜ν™”μ— λŒ€ν•΄ 높은 μ„ ν˜Έλ„λ₯Ό 보인닀면 μ‚¬μš©μžμ—κ²Œ β€œν•΄λ¦¬ν¬ν„°β€λ₯Ό μΆ”μ²œν•΄μ€„ μˆ˜λ„ 있겠죠.
Β 
Β 
μ½˜ν…μΈ  기반 필터링 λͺ¨λΈκ³Ό ν˜‘μ—… 필터링 λͺ¨λΈμ€ μƒν˜Έλ³΄μ™„μ μΈ 역할을 ν•©λ‹ˆλ‹€. μƒˆλ‘œμš΄ μ•„μ΄ν…œμ΄ μΆœμ‹œλœ 경우 μ•„μ΄ν…œμ„ μ‚¬μš©ν•œ μ‚¬μš©μžμ˜ 데이터가 μ—†κΈ° λ•Œλ¬Έμ— ν˜‘μ—… 필터링 λͺ¨λΈμ„ μ‚¬μš©ν•˜κΈ° μ–΄λ ΅μ§€λ§Œ μ½˜ν…μΈ  기반 필터링 λͺ¨λΈμ—μ„œλŠ” ν…μŠ€νŠΈλ‚˜ 이미지 μœ μ‚¬μ„± 기반의 μΆ”μ²œμ΄ κ°€λŠ₯ν•©λ‹ˆλ‹€.
반면 ν˜‘μ—… 필터링 λͺ¨λΈμ€ μ‚¬μš©μžμ™€ μ•„μ΄ν…œ κ°„μ˜ μƒν˜Έμž‘μš©μ„ λ°”νƒ•μœΌλ‘œ ν•˜κΈ° λ•Œλ¬Έμ— ν…μŠ€νŠΈ/이미지 기반 μœ μ‚¬μ„±μ΄ λ†’μ§€ μ•Šλ”λΌλ„, μ‚¬μš©μžκ°€ ν•¨κ»˜ κ΅¬λ§€ν•œ μ•„μ΄ν…œμ„ μΆ”μ²œν•©λ‹ˆλ‹€.
Β 
μš°μ„  μ΄λ²ˆμ£Όμ—λŠ” μΆ”μ²œ μ‹œμŠ€ν…œμ—μ„œ κ°€μž₯ 많이 μ‚¬μš©λ˜λŠ” ν˜‘μ—… 필터링 λͺ¨λΈμ— λŒ€ν•΄ μ•Œμ•„λ³΄κ³ , λ‹€μŒμ£Όμ˜ κΈ€μ—μ„œλŠ” ν˜‘μ—… ν•„ν„°λ§μ˜ ν•œκ³„λ₯Ό λ³΄μ™„ν•˜λŠ” μ½˜ν…μΈ  기반 필터링을 μ†Œκ°œν•˜λ €κ³  ν•©λ‹ˆλ‹€.
Β 

2. ν˜‘μ—… 필터링 λͺ¨λΈμ˜ μœ ν˜•

Β 
ν˜‘μ—… 필터링 λͺ¨λΈμ€ 크게 λ©”λͺ¨λ¦¬ 기반 μ ‘κ·Ό 방식과 λͺ¨λΈ 기반 μ ‘κ·Ό λ°©μ‹μœΌλ‘œ λ‚˜λ‰©λ‹ˆλ‹€.
Β 

(1) λ©”λͺ¨λ¦¬ 기반 μ ‘κ·Ό 방식

κ°€μž₯ 전톡적인 μ ‘κ·Ό 방식이며 μœ μ‚¬λ„λ₯Ό 기반으둜 λ™μž‘ν•©λ‹ˆλ‹€. μ‚¬μš©μž κ°„ μœ μ‚¬λ„λ₯Ό κΈ°μ€€μœΌλ‘œ ν•˜λŠ” κ²½μš°μ—λŠ” μ‚¬μš©μž 기반 μΆ”μ²œ, μ•„μ΄ν…œ κ°„ μœ μ‚¬λ„λ₯Ό κΈ°μ€€μœΌλ‘œ ν•˜λŠ” κ²½μš°μ—λŠ” μ•„μ΄ν…œ 기반 μΆ”μ²œμ΄λΌκ³  ν•©λ‹ˆλ‹€.
Β 
  • μ‚¬μš©μž 기반 μΆ”μ²œ (User-based Recommendation)
μ‚¬μš©μž 기반 μΆ”μ²œμ€ λΉ„μŠ·ν•œ μ„±ν–₯을 μ§€λ‹Œ μ‚¬μš©μžλ“€μ„ κ·Έλ£Ήν™”ν•˜μ—¬, 그룹이 μ„ ν˜Έν•˜λŠ” μƒν’ˆμ„ ν•΄λ‹Ή 그룹에 μ†ν•œ μ‚¬μš©μžμ—κ²Œ μΆ”μ²œν•©λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄ μ‚¬μš©μž A와 Bκ°€ λΉ„μŠ·ν•œ μ„±ν–₯을 κ°€μ§€κ³  μžˆλŠ”λ°, Bκ°€ μ•„μ΄μŠ€ν¬λ¦Όμ„ μ’‹μ•„ν•œλ‹€λ©΄ Aμ—­μ‹œ μ•„μ΄μŠ€ν¬λ¦Όμ„ μ’‹μ•„ν•  것이라고 μ˜ˆμΈ‘ν•˜κ³  κ΄€λ ¨ 정보λ₯Ό μΆ”μ²œν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€. μΈμŠ€νƒ€κ·Έλž¨ 같은 SNS의 친ꡬ μΆ”μ²œ 방식도 이와 κ°™μ€λ°μš”, λ‚˜μ˜ νŒ”λ‘œμ›Œλ₯Ό λ‚˜μ™€ λΉ„μŠ·ν•œ μ„±ν–₯을 κ°€μ§„ μ‚¬λžŒμœΌλ‘œ μΈμ‹ν•˜κ³  그의 또 λ‹€λ₯Έ νŒ”λ‘œμ›Œλ“€μ„ λ‚˜μ—κ²Œ μΆ”μ²œν•©λ‹ˆλ‹€.
Β 
Β 
  • μ•„μ΄ν…œ 기반 μΆ”μ²œ (Item-based Recommendation)
μ•„μ΄ν…œ 기반 μΆ”μ²œμ€ μ‚¬μš©μžκ°€ 이전에 κ΅¬λ§€ν–ˆλ˜ μ•„μ΄ν…œμ„ 기반으둜 κ·Έ μƒν’ˆκ³Ό μœ μ‚¬ν•œ λ‹€λ₯Έ μƒν’ˆμ„ μΆ”μ²œν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€. μƒν’ˆ κ°„ μœ μ‚¬λ„λŠ” ν•¨κ»˜ κ΅¬λ§€λ˜λŠ” 경우의 λΉˆλ„λ₯Ό λΆ„μ„ν•˜μ—¬ μΈ‘μ •ν•˜λŠ”λ°μš”, 예λ₯Ό λ“€μ–΄ μ•„μ΄μŠ€ν¬λ¦Όκ³Ό μ™€ν”Œμ΄ ν•¨κ»˜ κ΅¬λ§€λ˜λŠ” κ²½μš°κ°€ λ§Žλ‹€λ©΄ μ•„μ΄μŠ€ν¬λ¦Όμ„ κ΅¬λ§€ν•œ μ‚¬μš©μžμ—κ²Œ μ™€ν”Œμ„ μΆ”μ²œν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.
Β 

(2) λͺ¨λΈ 기반 μ ‘κ·Ό 방식

λ©”λͺ¨λ¦¬ 기반 μ ‘κ·Ό 방식이 기쑴의 데이터λ₯Ό μ΄μš©ν•œ μΆ”μ²œ λ°©μ‹μ΄μ—ˆλ‹€λ©΄, λͺ¨λΈ 기반 μ ‘κ·Ό 방식은 기계 ν•™μŠ΅μ„ 톡해 μ‚¬μš©μž λ˜λŠ” μ•„μ΄ν…œμ˜ μˆ¨κ²¨μ§„ νŠΉμ„± 값을 κ³„μ‚°ν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€. λͺ¨λΈ 기반의 μ ‘κ·Ό λ°©μ‹μ—λŠ” μž μž¬μš”μΈμ„ μ΄μš©ν•œ Latent Factor 방식과 Classification/Regression(λΆ„λ₯˜/νšŒκ·€)방식 및 μ΅œμ‹  μœ΅ν•© λͺ¨λΈ 방식을 μ΄μš©ν•œ λ‹€μ–‘ν•œ μ ‘κ·Ό 방식이 μžˆμŠ΅λ‹ˆλ‹€.
Β 
  • Latent Factor λͺ¨λΈ
μ‚¬μš©μžμ™€ μ•„μ΄ν…œμ„ 잠재적인 차원(Factor)듀을 μ‚¬μš©ν•΄ λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€κ³  κ°€μ •ν•˜λŠ” λͺ¨λΈμž…λ‹ˆλ‹€.
μ—¬κΈ°μ„œμ˜ 차원은 μΆ•(axis)κ³Ό 같은 의미둜 μ‚¬μš©λ˜λŠ”λ°μš”, 예λ₯Ό λ“€μ–΄ xμΆ•μ—λŠ” 성별을 λ‚˜νƒ€λ‚΄κ³  yμΆ•μ—λŠ” μ˜ν™”μ˜ μž₯λ₯΄λ₯Ό λ‚˜νƒ€λ‚΄λŠ” μ’Œν‘œν‰λ©΄μ΄ μžˆλ‹€λ©΄, μ‚¬μš©μžμ™€ μ•„μ΄ν…œμ€ μ’Œν‘œν‰λ©΄ μœ„μ˜ μ μ ˆν•œ x, y 값에 λ§€ν•‘λœλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μ‚¬μš©μž = (-2.5, -3.2), μ˜ν™” = (1.5, 4.6) 처럼 말이죠. 이 μ˜ˆμ‹œμ—μ„œλŠ” μ‚¬μš©μžμ™€ μ•„μ΄ν…œμ„ xμΆ•κ³Ό yμΆ•μ˜ 두 κ°€μ§€ μ°¨μ›μœΌλ‘œ ν‘œν˜„ν–ˆμ§€λ§Œ μ‹€μ œ Latent Factor λ°©μ‹μ—μ„œλŠ” 차원이 무엇을 μ˜λ―Έν•˜λŠ”μ§€ μ•Œ 수 μ—†μœΌλ©°, μ°¨μ›μ˜ 개수 λ˜ν•œ μ—¬λŸ¬κ°œμΌ 수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έλ ‡κΈ° λ•Œλ¬Έμ—, μ‚¬μš©μžμ™€ μ•„μ΄ν…œμ˜ λ§€ν•‘ 지점이 κ°€κΉŒμšΈμˆ˜λ‘ μœ μ‚¬ν•˜λ‹€κ³  νŒλ‹¨ν•©λ‹ˆλ‹€.
Β 
  • Classification/Regression 방식(λΆ„λ₯˜/νšŒκ·€)
Classification/Regression 방식은 μ½˜ν…μΈ  기반 μΆ”μ²œ 방식과 μ‰½κ²Œ μœ΅ν•©μ΄ κ°€λŠ₯ν•©λ‹ˆλ‹€. ν”Όμ²˜Β XΒ κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, 라벨 yλ₯Ό μ˜ˆμΈ‘ν•˜λŠ” ꡬ쑰이기 λ•Œλ¬Έμ—, ν”Όλ“œλ°±Β yλ₯Ό μ˜ˆμΈ‘ν•˜λŠ” μƒν™©μ—μ„œ,Β Β X에 μ½˜ν…μΈ  κ΄€λ ¨ 정보λ₯Ό ν”Όμ²˜λ‘œ λ§Œλ“€μ–΄μ„œ μΆ”κ°€ν•˜λ©΄, ν”Όλ“œλ°± λ°μ΄ν„°λΏλ§Œ μ•„λ‹ˆλΌ μ½˜ν…μΈ  데이터λ₯Ό ν™œμš©ν•œ μΆ”μ²œμ΄ κ°€λŠ₯ν•©λ‹ˆλ‹€.
ꡬ체적으둜 Classification은 μœ μ €μ˜ μ„±ν–₯에 따라 ꡰ집을 λΆ„λ₯˜ν•˜μ—¬ μ„±ν–₯이 λΆ€μ—¬λœ ꡰ집에 λ§žμΆ”μ–΄ μ•„μ΄ν…œμ„ μΆ”μ²œν•΄ μ£ΌλŠ” 방식이고, Regression은 μœ μ €μ™€ μ•„μ΄ν…œμ— λŒ€ν•œ 평균 평점을 κ΅¬ν•˜λŠ” λͺ¨λΈμ„ 톡해 μƒˆλ‘œμš΄ μΉ΄ν…Œκ³ λ¦¬μ—μ„œ μ˜ˆμΈ‘κ°’μ„ μ˜ˆμΈ‘ν•˜μ—¬ μΆ”μ²œν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€.
Β 
  • μ΅œμ‹  μœ΅ν•© λͺ¨λΈ 방식
μ΅œκ·Όμ—λŠ” Latent Factor λͺ¨λΈκ³Ό Classification/Regression λͺ¨λΈμ˜ νŠΉμ§•μ„ λͺ¨λ‘ κ°€μ§„ Factorization Machine, λ”₯λŸ¬λ‹μ„ ν™œμš©ν•˜μ—¬ Latent Factor λͺ¨λΈμ„ ν™•μž₯ν•œ Neural Collaborative Filtering도 μ œμ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
Β 
Β 

3. ν˜‘μ—… 필터링 λͺ¨λΈμ˜ μ•Œκ³ λ¦¬μ¦˜

(1) λ©”λͺ¨λ¦¬ 기반 μ ‘κ·Ό 방식

μœ„μ—μ„œ λͺ¨λΈμ˜ μœ ν˜•μ„ μ„€λͺ… ν•  λ•Œ λ©”λͺ¨λ¦¬ 기반 μ ‘κ·Ό 방식은 μœ μ‚¬λ„λ₯Ό μΈ‘μ •ν•˜μ—¬ μ‚¬μš©ν•œλ‹€κ³  ν–ˆλŠ”λ°μš”. 이 λ•Œ 두 μ‚¬μš©μž κ°„μ˜ μœ μ‚¬λ„λŠ” 두 벑터 κ°„μ˜ μœ μ‚¬λ„λ‘œ μ •μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 두 벑터 κ°„ μœ μ‚¬λ„λ₯Ό κ΅¬ν•˜κΈ° μœ„ν•΄μ„œ 일반적으둜 코사인 μœ μ‚¬λ„(Cosine Similarity)와 ν”Όμ–΄μŠ¨ μœ μ‚¬λ„(Pearson Similarity)μž…λ‹ˆλ‹€.
Β 
  • 코사인 μœ μ‚¬λ„
코사인 μœ μ‚¬λ„λŠ” 두 λ²‘ν„°μ˜ 코사인 각도λ₯Ό κ³„μ‚°ν•˜μ—¬ μœ μ‚¬μ„±μ„ μΈ‘μ •ν•©λ‹ˆλ‹€. 코사인 ν•¨μˆ˜λ₯Ό 생각해 보면 0λ„μ—μ„œμ˜ 값이 1, 180λ„μ—μ„œμ˜ 값이 -1이죠. 두 벑터가 μ„œλ‘œ κ°€κΉŒμš°λ©΄ 각도가 μž‘μ•„μ„œ 값이 1에 κ°€κΉŒμ›Œμ Έ μœ μ‚¬ν•˜λ‹€κ³  ν•˜κ³ , 두 벑터가 μ„œλ‘œ λŒ€μ²™λ˜λ©΄ 각도가 μ»€μ Έμ„œ 값이 -1에 κ°€κΉŒμ›Œμ Έ μœ μ‚¬ν•˜μ§€ μ•Šλ‹€κ³  ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 이λ₯Ό μ§κ΄€μ μœΌλ‘œ μ΄ν•΄ν•˜λ©΄ 두 벑터가 κ°€λ¦¬ν‚€λŠ” λ°©ν–₯이 μ–Όλ§ˆλ‚˜ μœ μ‚¬ν•œκ°€λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€.
Β 
  • μ‚¬μš©μž 와 μ‚¬μš©μž κ°„μ˜ 코사인 μœ μ‚¬λ„
    • Β 
Β 
  • μƒν’ˆ 와 μƒν’ˆ κ°„μ˜ 코사인 μœ μ‚¬λ„
    • Β 
Β 
Β 
  • ν”Όμ–΄μŠ¨ μœ μ‚¬λ„
ν”Όμ–΄μŠ¨ μœ μ‚¬λ„(Pearson Similarity)λŠ” 두 λ²‘ν„°μ˜ μƒκ΄€κ³„μˆ˜(Pearson correlation coefficient)λ₯Ό λ§ν•˜λ©° λ‹€μŒκ³Ό 같이 μ •μ˜ν•©λ‹ˆλ‹€.
  • μ‚¬μš©μž 와 μ‚¬μš©μž κ°„μ˜ ν”Όμ–΄μŠ¨ μœ μ‚¬λ„
Β 
Β 
  • μƒν’ˆ 와 μƒν’ˆ κ°„μ˜ ν”Όμ–΄μŠ¨ μœ μ‚¬λ„
Β 
Β 
Β 
κ³„μ‚°λœ ν”Όμ–΄μŠ¨ μœ μ‚¬λ„κ°€ 1이면 μ–‘μ˜ 상관관계(λΉ„κ΅ν•˜λŠ” 데이터 쀑 ν•˜λ‚˜κ°€ μ¦κ°€ν•˜λ©΄ λ‹€λ₯Έ ν•˜λ‚˜λ„ 증가함), -1이면 음의 상관관계(ν•˜λ‚˜κ°€ μ¦κ°€ν•˜λ©΄ λ‹€λ₯Έ ν•˜λ‚˜λŠ” κ°μ†Œν•¨), 0이면 상관관계가 μ—†μŒ(독립)을 μ˜λ―Έν•©λ‹ˆλ‹€.
Β 
그럼 κ°„λ‹¨ν•œ μ˜ˆμ‹œ 상황을 κ°€μ •ν•˜μ—¬ μœ μ‚¬λ„λ₯Ό ꡬ해보도둝 ν•˜κ² μŠ΅λ‹ˆλ‹€. μ•„λž˜μ˜ ν‘œλŠ” μ‚¬μš©μžλ“€μ΄ μ˜ν™” 평점을 0~5점 μ‚¬μ΄μ˜ κ°’μœΌλ‘œ ν‘œν˜„ν•œ κ²°κ³Ό ν‘œμž…λ‹ˆλ‹€. λΉˆμΉΈμ€ ν‰κ°€ν•˜μ§€ μ•Šμ€ ν•­λͺ©μž…λ‹ˆλ‹€.
γ…€
기생좩
κ²¨μšΈμ™•κ΅­
μŠ€νŒŒμ΄λ”λ§¨
λΌλΌλžœλ“œ
λ―Έλ‚˜λ¦¬
A
5
4
4
3
γ…€
B
1
0
1
γ…€
4
C
4
4
γ…€
5
3
D
γ…€
2
1
4
3
E
4
γ…€
4
4
2
F
4
2
3
γ…€
1
코사인 μœ μ‚¬λ„λ₯Ό μ΄μš©ν•΄ B와 D의 μœ μ‚¬λ„λ₯Ό κ΅¬ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€. μœ μ‚¬λ„λ₯Ό ꡬ할 λ•Œμ—λŠ” 두 μ‚¬μš©μžκ°€ κ³΅ν†΅μœΌλ‘œ ν‰κ°€ν•œ ν•­λͺ©(κ²¨μšΈμ™•κ΅­, μŠ€νŒŒμ΄λ”λ§¨, λ―Έλ‚˜λ¦¬)에 λŒ€ν•΄μ„œλ§Œ κ³„μ‚°ν•˜κΈ° λ•Œλ¬Έμ—, u=(0, 1, 4), v=(2, 1, 3)으둜 두고 κ³„μ‚°ν•˜λ©΄ μœ μ‚¬λ„λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
Β 
Β 
μ΄λŸ¬ν•œ λ°©λ²•μœΌλ‘œ λͺ¨λ“  μ‚¬μš©μžμ— λŒ€ν•΄μ„œ μœ μ‚¬λ„λ₯Ό κ΅¬ν•˜λ©΄ μ•„λž˜μ™€ 같이 λ‚˜μ˜€λŠ”λ°μš”.
similarity
A
B
C
D
E
F
A
1
0.84
0.96
0.82
0.98
0.98
B
0.84
1
0.61
0.84
0.63
0.47
C
0.96
0.61
1
0.97
0.99
0.92
D
0.82
0.84
0.97
1
0.85
0.71
E
0.98
0.63
0.99
0.85
1
0.98
F
0.98
0.47
0.92
0.71
0.98
1
이λ₯Ό ν™œμš©ν•˜μ—¬ νŠΉμ • 인물이 ν‰κ°€ν•˜μ§€ μ•Šμ•˜λ˜ μ˜ν™”μ— λŒ€ν•œ 평가 점수λ₯Ό μ˜ˆμΈ‘ν•΄λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ κ°€μž₯ μœ μ‚¬ν•œ λͺ‡λͺ…μ˜ 점수λ₯Ό μ΄μš©ν•˜μ—¬ 예츑 점수둜 ꡬ할 μˆ˜λ„ 있고, 전체λ₯Ό λŒ€μƒμœΌλ‘œ μœ μ‚¬λ„ 기반의 weighted sum 값을 예츑 점수둜 μ‚¬μš©ν•˜λŠ” κ±°μ£ . E의 κ²¨μšΈμ™•κ΅­μ— λŒ€ν•œ 평가 점수λ₯Ό 2번째 λ°©λ²•μœΌλ‘œ μ˜ˆμΈ‘ν•΄λ³΄λ©΄ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
Β 
Β 

(2) λͺ¨λΈ 기반 μ ‘κ·Ό 방식

이 방법은 λ¨Έμ‹ λŸ¬λ‹ μ•Œκ³ λ¦¬μ¦˜μ„ 톡해, μ‚¬μš©μžκ°€ 아직 ν‰κ°€ν•˜μ§€ μ•Šμ€ μ•„μ΄ν…œμ˜ 평점을 μ˜ˆμΈ‘ν•©λ‹ˆλ‹€. μ‚¬μš©μžμ˜ μ„ ν˜Έλ„κ°€ μ†Œμˆ˜μ˜ 잠재된 μš”μΈμœΌλ‘œ 결정될 수 μžˆλ‹€λŠ” 아이디어λ₯Ό λ°”νƒ•μœΌλ‘œ ν•˜κΈ° λ•Œλ¬Έμ— ν–‰λ ¬ λΆ„ν•΄λ₯Ό μ΄μš©ν•˜μ—¬ 잠재된 μš”μΈμ„ μΆ”μΆœν•©λ‹ˆλ‹€.
좜처 vvakki_.log
좜처 vvakki_.log
ν–‰λ ¬ λΆ„ν•΄λŠ” User-Item Matrixλ₯Ό Fμ°¨μ›μ˜ User와 Item의 latent factor ν–‰λ ¬κ³±μœΌλ‘œ λΆ„ν•΄ν•˜λŠ” 방법을 λ§ν•©λ‹ˆλ‹€. User-Item Matrix의 μœ μ € u의 μ•„μ΄ν…œ i에 λŒ€ν•œ μ„ ν˜Έλ„λŠ” λ‹€μŒκ³Ό 같이 User/Item Latent Matrix의 λ²‘ν„°μ˜ 곱으둜 ν‘œν˜„λ  수 μžˆμŠ΅λ‹ˆλ‹€. 이 ν‘œν˜„μ„ 톡해 μœ μ €κ°€ ν‰κ°€ν•˜μ§€ μ•Šμ€ μ„ ν˜Έλ„μ— λŒ€ν•΄μ„œλ„ μ•„λž˜μ˜ μˆ˜μ‹μ„ 톡해 μ‰½κ²Œ μΆ”μ •ν•  수 있으며 내적 값이 λ†’μ„μˆ˜λ‘ μœ μ € uμ—κ²Œ μ•„μ΄ν…œ iκ°€ 더 쒋은 μΆ”μ²œμ΄λΌλŠ” 것을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€.
Β 
  • : User, Item Latent Matrix의 벑터
  • : μœ μ € u의 μ•„μ΄ν…œ i에 λŒ€ν•œ μ„ ν˜Έλ„ μΆ”μ • κ°’
Β 
Β 

4. ν˜‘μ—… ν•„ν„°λ§μ˜ ν•œκ³„

λͺ¨λ“  μ•Œκ³ λ¦¬μ¦˜μ΄ κ·Έλ ‡λ“― ν˜‘μ—… 필터링에도 λͺ‡ κ°€μ§€ ν•œκ³„κ°€ μžˆμŠ΅λ‹ˆλ‹€.
Β 
  • μ½œλ“œ μŠ€νƒ€νŠΈ(Cold start)
ν˜‘μ—… 필터링을 μ‚¬μš©ν•˜κΈ° μœ„ν•΄μ„œλŠ” κΈ°μ‘΄ 데이터λ₯Ό ν™œμš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ‚¬μš©μž 기반 μΆ”μ²œλ°©μ‹μ—μ„œλŠ” μ‹ κ·œ μ‚¬μš©μžμ˜ 행동이 κΈ°λ‘λ˜μ§€ μ•ŠμœΌλ©΄, μ–΄λ–€ μ•„μ΄ν…œλ„ μΆ”μ²œν•˜μ§€ λͺ»ν•œλ‹€λŠ” λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€. μ•„μ΄ν…œ 기반 μΆ”μ²œλ°©μ‹μ—μ„œλ„, μ‹ κ·œ μƒν’ˆμ΄ μΆœμ‹œλ˜λ”λΌλ„ 이λ₯Ό μΆ”μ²œν•  수 μžˆλŠ” 정보가 μŒ“μΌ λ•ŒκΉŒμ§€ μΆ”μ²œμ„ ν•  수 μ—†λ‹€λŠ” μ˜λ―Έμž…λ‹ˆλ‹€. 즉, μ‹œμŠ€ν…œμ΄ 아직 μΆ©λΆ„ν•œ 정보λ₯Ό λͺ¨μœΌμ§€ λͺ»ν•˜λ©΄ μ‚¬μš©μžμ— λŒ€ν•œ 좔둠을 μ΄λŒμ–΄ λ‚΄μ§€ λͺ»ν•΄ μΆ”μ²œμ„ ν•  수 μ—†λŠ” ν•œκ³„κ°€ μžˆμŠ΅λ‹ˆλ‹€.
Β 
  • 계산 효율 μ €ν•˜
ν˜‘μ—… 필터링은 κ³„μ‚°λŸ‰μ΄ λ§Žμ€ μ•Œκ³ λ¦¬μ¦˜μ΄κΈ° λ•Œλ¬Έμ— μ‚¬μš©μžκ°€ λ§Žμ•„μ§ˆμˆ˜λ‘ 계산 μ‹œκ°„ μ¦κ°€ν•˜κ²Œ λ©λ‹ˆλ‹€. μ‚¬μš©μžκ°€ λ§Žμ•„μ•Ό μ •ν™•ν•œ μΆ”μ²œ κ²°κ³Όλ₯Ό λ„μΆœν•  수 μžˆμ§€λ§Œ, λ™μ‹œμ— 계산 μ‹œκ°„λ„ μ¦κ°€ν•˜κΈ° λ•Œλ¬Έμ— κΈΈκ²ŒλŠ” 며칠이 걸리기도 ν•©λ‹ˆλ‹€. μ΄λ ‡κ²Œ μ•Œκ³ λ¦¬μ¦˜μ˜ 정확도와 κ±Έλ¦¬λŠ” μ‹œκ°„μ΄λΌλŠ” μƒμΆ©λ˜λŠ” λ¬Έμ œμ μ€ ν˜‘μ—… ν•„ν„°λ§μ˜ λ”œλ ˆλ§ˆμž…λ‹ˆλ‹€.
Β 
  • λ‘±ν…ŒμΌ(Long-Tail) 문제
νŒŒλ ˆν†  법칙(전체 결과의 80%κ°€ 전체 μ›μΈμ˜ 20%μ—μ„œ μΌμ–΄λ‚˜λŠ” ν˜„μƒ)을 κ·Έλž˜ν”„λ‘œ λ‚˜νƒ€λ‚΄μ—ˆμ„ λ•Œ 꼬리처럼 κΈ΄ 뢀뢄을 ν˜•μ„±ν•˜λŠ” 80%의 뢀뢄을 λ‘±ν…ŒμΌμ΄λΌκ³  ν•©λ‹ˆλ‹€. μ΄λŠ” μ‚¬μš©μžλ“€μ΄ 관심을 많이 λ³΄μ΄λŠ” μ†Œμˆ˜μ˜ 인기 μžˆλŠ” μ½˜ν…μΈ λ₯Ό 주둜 μΆ”μ²œν•˜μ—¬ β€˜λΉ„λŒ€μΉ­μ  쏠림 ν˜„μƒ'이 λ°œμƒν•œλ‹€λŠ” μ˜λ―Έμž…λ‹ˆλ‹€. μ‚¬μš©μžλ“€μ€ μ†Œμˆ˜μ˜ 인기 μžˆλŠ” ν•­λͺ©μ—λ§Œ 관심을 보이고 관심이 μ €μ‘°ν•œ μ•„μ΄ν…œμ€ 정보가 λΆ€μ‘±ν•˜μ—¬ μΆ”μ²œλ˜μ§€ λͺ»ν•˜μ—¬, 닀양성이 λ–¨μ–΄μ§€λŠ” λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.
Β 
πŸ˜€
ν˜‘μ—… 필터링은 λͺ‡κ°€μ§€ 단점에도 λΆˆκ΅¬ν•˜κ³  간결함과 μ •ν™•μ„± 덕뢄에 μ•„μ§κΉŒμ§€λ„ λ§Žμ€ μΆ”μ²œ μ‹œμŠ€ν…œμ—μ„œ ν™œμš©λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€. ν•œνŽΈμœΌλ‘œλŠ” μ΄λŸ¬ν•œ ν•œκ³„μ μ„ κ·Ήλ³΅ν•˜κΈ° μœ„ν•΄ μ½˜ν…μΈ μ— λŒ€ν•œ 뢄석을 기반으둜 μΆ”μ²œν•˜λŠ” 방식이 λ“±μž₯ν•˜κ²Œ λ˜λŠ”λ°μš”, μ˜ν™” μ½˜ν…μΈ μ˜ 경우라면 감독, μž₯λ₯΄, λ“±μž₯인물 등을 λΆ„μ„ν•˜κ³ , μƒν’ˆμ΄λΌλ©΄ μƒν’ˆ μ„€λͺ…, μ’…λ₯˜ 등을 λΆ„μ„ν•©λ‹ˆλ‹€. 그럼 λ‹€μŒ μ‹œκ°„μ—λŠ” 이 μƒˆλ‘œ λ“±μž₯ν•œ 방법인 μ½˜ν…μΈ  기반 필터링에 λŒ€ν•΄ μ–΄λ–€ μ•Œκ³ λ¦¬μ¦˜μœΌλ‘œ μ›€μ§μ΄λŠ”μ§€, μž₯단점은 무엇인지, μ–΄λ–»κ²Œ κ΅¬ν˜„λ˜λŠ”μ§€μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λŠ” μ‹œκ°„μ„ 가져보도둝 ν•΄μš”.
Β