Skip to content

jenny99lee/test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

17 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Contents-based Filtering (Cosine-Similarity)

ํŒŒ์ผ ์„ค๋ช…

์‚ฌ์šฉํ•œ ๋ฐ์ดํ„ฐ์…‹

  • ์†Œ์ƒ๊ณต์ธ ๋ฐ์ดํ„ฐ: ์นดํŽ˜ ์‹œ๊ตฐ๊ตฌ๋ช… ๋น„๊ต
  • ๋„ค์ด๋ฒ„ ๋ฐ์ดํ„ฐ : ์นดํŽ˜์— ๋Œ€ํ•œ 15๊ฐœ์˜ ํ‚ค์›Œ๋“œ ๋ฐ์ดํ„ฐ ํฌํ•จ

์ฝ”๋“œ ๊ฐ„๋žต ์„ค๋ช… (์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„ ๊ด€๋ จ):

  • ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” sklearn.metrics.pairwise ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.
  • ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด rating๊ฐ’์„ matrix_dummy์— ๋ณต์‚ฌํ•œ๋‹ค.
  • ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ NaN ๊ฐ’์ด ์žˆ์œผ๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฏ€๋กœ NaN์„ 0์œผ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.
  • ๋ชจ๋“  ์‚ฌ์šฉ์ž ๊ฐ„์˜ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ๊ตฌํ•œ๋‹ค. ์‹คํ–‰ํ•ด ๋ณด๋ฉด user_simlarity๋Š” (n X n)์˜ ์ฐจ์›์„ ๊ฐ€์ง€๋ฉฐ ๋Œ€๊ฐ์„ ์ด 1.0(์ž๊ธฐ ์ž์‹ ๊ณผ์˜ ์œ ์‚ฌ๋„)์ธ ๋Œ€์นญ ๋งคํŠธ๋ฆญ์Šค์ž„์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
  • ๋‚˜์ค‘์— ํ•„์š”ํ•œ ๊ฐ’์„ ๋ฝ‘์•„๋‚ผ ์ˆ˜ ์žˆ๋„๋ก user_similarity์— index๋ฅผ ์ง€์ •ํ•ด์ค€๋‹ค.

๋ชจ๋ธ ์„ค๋ช… (Content-Based Filtering):

  • ์•„์ดํ…œ์˜ ๋‚ด์šฉ์„ ๋ถ„์„ํ•ด์„œ ์•„์ดํ…œ ๊ฐ„์˜ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ถ”์ฒœ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๊ฐ ์•„์ดํ…œ ๊ฐ„์˜ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์นดํŽ˜๋ช…์„ ์ž…๋ ฅ๋ฐ›์•„ ์ด ์นดํŽ˜์™€ ๊ฐ€์žฅ ์œ ์‚ฌ๋„๊ฐ€ ๋†’์€ n๊ฐœ์˜ ์•„์ดํ…œ์„ ์ฐพ์•„์„œ ์ด๊ฑธ ์ถ”์ฒœํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ์ด๋•Œ ์•„์ดํ…œ ๊ฐ„์˜ ์œ ์‚ฌ๋„๋ฅผ ์–ด๋–ค ๋ฐฉ๋ฒ•์œผ๋กœ ๊ณ„์‚ฐํ• ์ง€๊ฐ€ ์ด์ŠŒ๋ฐ, ์—ฌ๊ธฐ์„œ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„ ์‚ฌ์šฉ!
    1. Binaryํ•œ ๊ฐ’์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ ๋ชจ๋ธ๊ณผ 2) Vector๋กœ ์ˆซ์ž ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ๋‘ ํฌํ•จํ•œ ๋ชจ๋ธ

์‹คํ–‰ ๋ฐฉ๋ฒ•

Binary

  • ๋ฐ์ดํ„ฐ์…‹ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
  • astype(bool).astype(int)์„ ํ†ตํ•ด ํ‚ค์›Œ๋“œ ๋ณ„ ์ˆซ์ž๋ฅผ 1,0์˜ binary ๊ฐ’์œผ๋กœ ๋ฐ”๊พธ๊ธฐ
  • ์นดํŽ˜ ์ข…๋ฅ˜๋“ค๊ณผ ํŠน์ง• ์ˆ˜์— ๋งž๋Š” ์—ด ํ–‰๋ ฌ ์ƒ์„ฑ
  • 7661๊ฐœ์˜ ์นดํŽ˜๋ผ๋ฆฌ ํŠน์ง•์— ๊ด€ํ•˜์—ฌ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„ ๊ณ„์‚ฐ
  • ๊ฑฐ๋ฆฌ์ง€ํ‘œ: ์ž…๋ ฅ๋œ โ€˜์‹œ๊ตฐ๊ตฌ๋ช…โ€™๊ณผ ๋™์ผํ•œ ์‹œ๊ตฐ๊ตฌ์— ์†ํ•œ ์นดํŽ˜๋“ค ์•ˆ์—์„œ ์ถ”์ฒœ๋ฆฌ์ŠคํŠธ ๋ฝ‘๊ธฐ
  • ์ถ”์ฒœ ํ•จ์ˆ˜: ์ฃผ์–ด์ง„ ์นดํŽ˜์™€ ๋‹ค๋ฅธ ์นดํŽ˜์˜ ํŠน์ง•์˜ similarity๋ฅผ ๊ฐ€์ ธ์˜ด โ€”> ๊ฑฐ๋ฆฌ์ง€ํ‘œ ๊ณ ๋ ค โ€”> similarity๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ โ€”> ์ž๊ธฐ์ž์‹ ์€ ๋นผ๊ณ  ์ถ”์ฒœํ•ด์ค„ ์นดํŽ˜๋ฅผ ์ฃผ์–ด์ง„ ์ˆ˜๋งŒํผ ๊ฐ€์ ธ์˜ด
  • Input: 1) ๋ช‡๋ฒˆ์งธ ์นดํŽ˜์— ๋Œ€ํ•œ ์ถ”์ฒœ์„ ๋ฐ›๊ณ  ์‹ถ์€์ง€, 2) ๋ช‡๊ฐœ์˜ ์นดํŽ˜๋ฅผ ์ถ”์ฒœ๋ฐ›๊ณ  ์‹ถ์€์ง€, 3) ์–ด๋А ์ง€์—ญ์— ์žˆ๋Š” ์นดํŽ˜๋ฅผ ์ถ”์ฒœ๋ฐ›๊ณ  ์‹ถ์€์ง€
  • Output: ์ถ”์ฒœํ•ด์ค„ ์นดํŽ˜ ์ด๋ฆ„

Vector

  • ์œ„์™€ ๊ณผ์ • ๋™์ผ, BUT binary๊ฐ’์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋Œ€์‹ ์— ๊ธฐ์กด ๋ฐ์ดํ„ฐ์…‹์˜ ์ˆซ์ž ๋ฐ์ดํ„ฐ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ!

๊ฒฐ๊ณผ

  1. Binary image

  2. Vector image

์–ธ๊ธ‰ํ•ด๋ณผ ๋งŒํ•œ ์ :

  • ์ผ๋ฐ˜์ ์ธ ์ถ”์ฒœ ์‹œ์Šคํ…œ๋“ค์€ ํŠน์ง•์„ binary ๊ฐ’์œผ๋กœ ๋ฐ˜์˜ํ•ด์„œ ์ปจํ…์ธ  based๋ฅผ ํ•จ
  • โ€”> ์ฒ˜์Œ์—๋Š” ์ด๊ฑธ ์‹œ๋„ํ•ด๋ดค๋Š”๋ฐ, ๋„ค์ด๋ฒ„ ํ‚ค์›Œ๋“œ์—๋Š” ๊ฐ ํ‚ค์›Œ๋“œ๋ฅผ ์„ ํƒํ•œ ์‚ฌ๋žŒ๋“ค์˜ ์ˆซ์ž ๋ฐ์ดํ„ฐ๋„ ํฌํ•จ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฑธ ๋ฐ˜์˜ํ•˜๋ฉด ๋” ์ •ํ™•ํ•œ ์ถ”์ฒœ์„ ํ•ด์ฃผ์ง€ ์•Š์„๊นŒ ์‹ถ์–ด์„œ ๋ฐ˜์˜!
  • ์„ฑ๋Šฅ์„ ์ธก์ •ํ•  ์ •ํ™•ํ•œ ์ง€ํ‘œ(RMSE)๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์ด ํ•œ๊ณ„์ ์ด์ง€๋งŒ, ๋™์ผํ•œ ์นดํŽ˜์— ๋Œ€ํ•ด ์ถ”์ฒœํ•ด์ฃผ๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณด๋ฉด Vector๋ชจ๋ธ์ด Binary ๋ชจ๋ธ์— ๋น„ํ•ด ํ›จ์”ฌ ํŠน์ง•์„ ์ž˜ ๊ณ ๋ คํ•œ ํšจ๊ณผ์ ์ธ ์ถ”์ฒœ์„ ํ•ด์ฃผ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Œ!

๋ ˆํผ๋Ÿฐ์Šค

https://lsjsj92.tistory.com/568 https://pearlluck.tistory.com/666

About

git test

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published