4 Thu

[AI ์Šค์ฟจ 1๊ธฐ] 12์ฃผ์ฐจ DAY 4

Recommendation system : ML ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ์—”์ง„ - SVD & ๋”ฅ๋Ÿฌ๋‹ ์ถ”์ฒœ ์—”์ง„

์‚ฌ์šฉ์ž/์•„์ดํ…œ ๊ธฐ๋ฐ˜ ํ˜‘์—… ํ•„ํ„ฐ๋ง์˜ ๋ฌธ์ œ์ 

  • ํ™•์žฅ์„ฑ : ํฐ ํ–‰๋ ฌ ๊ณ„์‚ฐ์€ ์‰ฝ์ง€ ์•Š์Œ

    • ์•„์ดํ…œ ๊ธฐ๋ฐ˜์€ ๊ณ„์‚ฐ๋Ÿ‰์ด ์ค„์–ด๋“ค๊ธด ํ•จ

    • Spark๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํฐ ํ–‰๋ ฌ ๊ณ„์‚ฐ๋„ ์–ผ๋งˆ๋“ ์ง€ ๊ฐ€๋Šฅ

  • ๋ถ€์กฑํ•œ ๋ฐ์ดํ„ฐ

    • ๋งŽ์€ ์‚ฌ์šฉ์ž๋“ค์ด ์ถฉ๋ถ„ํ•œ ๋ฆฌ๋ทฐ๋ฅผ ๋‚จ๊ธฐ์ง€ ์•Š์Œ

  • ํ•ด๊ฒฐ์ฑ…

    • ๋ชจ๋ธ ๊ธฐ๋ฐ˜ ํ˜‘์—… ํ•„ํ„ฐ๋ง : ๋จธ์‹  ๋Ÿฌ๋‹ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•ด ํ‰์ ์„ ์˜ˆ์ธก. ์ž…๋ ฅ์€ ์‚ฌ์šฉ์ž - ์•„์ดํ…œ ํ‰์  ํ–‰๋ ฌ

      • ํ–‰๋ ฌ ๋ถ„ํ•ด ๋ฐฉ์‹

      • ๋”ฅ๋Ÿฌ๋‹ ๋ฐฉ์‹

      • ๊ณ„์‚ฐ๋Ÿ‰์„ ์ค„์ด๊ณ  ์˜๋ฏธ์žˆ๋Š” ์ •๋ณด๋งŒ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์ด ํฌ์ธํŠธ

ํ–‰๋ ฌ ๋ถ„ํ•ด ๋ฐฉ์‹

  • ํ˜‘์—… ํ•„ํ„ฐ๋ง ๋ฌธ์ œ๋ฅผ ์‚ฌ์šฉ์ž-์•„์ดํ…œ ํ‰์  ํ–‰๋ ฌ์„ ์ฑ„์šฐ๋Š” ๋ฌธ์ œ๋กœ ์žฌ์ •์˜

    • ๋‹ค์Œ ๊ทธ๋ฆผ์—์„œ ?๋ฅผ ์ฑ„์šฐ๋Š” ๋ฌธ์ œ

    • ์‚ฌ์šฉ์ž ๋˜๋Š” ์•„์ดํ…œ์„ ์ ์€ ์ˆ˜์˜ ์ฐจ์›์œผ๋กœ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•จ

  • ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ํ–‰๋ ฌ ๋ถ„ํ•ด ๋ฐฉ์‹

    • PCA, Principal Component Analysis

    • SVD, Singular Vector Decomposition (๋˜๋Š” SVD ++)

PCA

  • ์ฐจ์›์„ ์ถ•์†Œํ•˜๋˜ ์›๋ž˜ ์˜๋ฏธ๋Š” ์ตœ๋Œ€ํ•œ ๋ณด์กด

  • ์ •ํ™•ํžˆ ์–ด๋–ค ์ด์œ ๋กœ ์ถ•์†Œ๋˜์—ˆ๋Š”์ง€ ์•Œ๊ธฐ๋Š” ์–ด๋ ค์›€

SVD

  • 2๊ฐœ ํ˜น์€ 3๊ฐœ์˜ ์ž‘์€ ํ–‰๋ ฌ์˜ ๊ณฑ์œผ๋กœ ๋‹จ์ˆœํ™” (์†Œ์ธ์ˆ˜ ๋ถ„ํ•ด์™€ ๋น„์Šท)

SVD++

  • ๋„ทํ”Œ๋ฆญ์Šค ์ปจํ…Œ์ŠคํŠธ ๋•Œ ๊ณ ์•ˆ๋œ ๋ฐฉ์‹

  • SVD๋‚˜ PCA๋Š” ์™„์ „ํ•˜๊ฒŒ ์ฑ„์›Œ์ ธ์žˆ๋Š” ํ–‰๋ ฌ์˜ ์ฐจ์›์„ ์ค„์ด๋Š” ๋ฐฉ์‹์ธ๋ฐ SVD++๋Š” ํฌ์†Œ ํ–‰๋ ฌ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ๋น„์–ด์žˆ๋Š” ์…€๋“ค์„ ์ฑ„์šฐ๋Š” ๋ฐฉ์‹

    • ์ฑ„์›Œ์ง„ ์…€๋“ค์˜ ๊ฐ’์„ ์ตœ๋Œ€ํ•œ ๋น„์Šทํ•˜๊ฒŒ ์ฑ„์šฐ๋Š” ๋ฐฉ์‹

    • ๋ณดํ†ต RMSE์˜ ๊ฐ’์„ ์ตœ์†Œํ™” ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ SGD๋ฅผ ์‚ฌ์šฉ

Recommendation system : ์˜คํ† ์ธ์ฝ”๋” ์†Œ๊ฐœ

์˜คํ†  ์ธ์ฝ”๋”

  • ๋Œ€ํ‘œ์ ์ธ ๋น„์ง€๋„ํ•™์Šต์„ ์œ„ํ•œ ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ

  • ์ž…๋ ฅ์ด ๊ณง ์ถœ๋ ฅ์ด ๋˜๋Š” ๊ตฌ์กฐ

    • ๊ณง ์ž…๋ ฅ ๋ ˆ์ด์–ด์˜ ์ฐจ์›๊ณผ ์ถœ๋ ฅ ๋ ˆ์ด์–ด์˜ ์ฐจ์›์ด ๋™์ผํ•ด์•ผํ•จ

    • ๋‹จ, ์€๋‹‰์ธต์˜ ์ฐจ์›์€ ์ž…์ถœ๋ ฅ ์ฐจ์›์˜ ๋น„ํ•ด ๊ต‰์žฅํžˆ ์ž‘์•„์•ผ ํ•จ

  • ๋ฐ์ดํ„ฐ์˜ ์ˆจ๊ฒจ์ง„ ๊ตฌ์กฐ๋ฅผ ๋ฐœ๊ฒฌํ•˜๋ฉด์„œ ๋…ธ๋“œ์˜ ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ

    • ์ž…๋ ฅ ๋ฐ์ดํ„ฐ์—์„œ ๋ถˆํ•„์š”ํ•œ ํŠน์ง•๋“ค์„ ์ œ๊ฑฐํ•œ ์••์ถ•๋œ ํŠน์ง•์„ ํ•™์Šตํ•˜๋ ค๋Š” ๊ฒƒ

์ผ€๋ผ์Šค

  • ํŒŒ์ด์ฌ์œผ๋กœ ์ž‘์„ฑ๋œ ์˜คํ”ˆ์†Œ์Šค ๋”ฅ๋Ÿฌ๋‹ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

  • ๊ตฌ๊ธ€์—์„œ ์‹œ์ž‘

  • ๋‹ค์–‘ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ์œ„์—์„œ ๋™์ž‘ํ•˜๋Š” ์ƒ์œ„๋ ˆ๋ฒจ ๋”ฅ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„ ์›Œํฌ

  • TensorFlow 2.0์—์„œ ์ผ€๋ผ์Šค๊ฐ€ TF์˜ ์ƒ์œ„๋ ˆ๋ฒจ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ณต์‹ ํ™•์ •๋จ

  • API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์„ธ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•

    • Sequential ๋ชจ๋ธ API

      • ๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๋ฉฐ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ

      • ํ•˜๋‚˜์˜ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ, ์ถœ๋ ฅ ๋ฐ์ดํ„ฐ ๊ทธ๋ฆฌ๊ณ  ์ˆœ์ฐจ ๋ ˆ์ด์–ด ์Šคํƒ์„ ์ง€์›

    • Functional API

      • ๋ ˆ๊ณ ๋ธ”๋ก ๋ชจ๋ธ

      • ๋‹ค์ค‘ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ, ์ถœ๋ ฅ ๋ฐ์ดํ„ฐ ๊ทธ๋ฆฌ๊ณ  ์ž„์˜์˜ ๊ทธ๋ž˜ํ”„ ๊ตฌ์กฐ ์ง€์›

      • Sequential ๋ชจ๋ธ์— ๋น„ํ•ด ๋ณต์žก

    • Model Subclassing

Last updated

Was this helpful?