์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

ํ˜„์—… ์—”์ง€๋‹ˆ์–ด์˜ AI ์ถ”์ฒœ ์‹œ์Šคํ…œ ๋งŒ๋“ค๊ธฐ | ์ถ”์ฒœ์•Œ๊ณ ๋ฆฌ์ฆ˜ | Recommender | Recsys

์ด ๊ฐ•์˜์—์„œ๋Š” ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ํ•ต์‹ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜๋ถ€ํ„ฐ ์‹ค์ „ ๊ตฌํ˜„๊นŒ์ง€ ๋‹ค๋ฃน๋‹ˆ๋‹ค. - ์ปจํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง - ํ˜‘์—… ํ•„ํ„ฐ๋ง, ๋”ฅ๋Ÿฌ๋‹ ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ๋ชจ๋ธ ๊ตฌํ˜„ - Two-step recommender systems ๊ตฌํ˜„ - PyTorch/RecBole ํ™œ์šฉํ•œ ์‹ค์Šต - ํ˜„์—… ๋…ธํ•˜์šฐ์™€ ์ถ”์ฒœ ๊ฒฐ๊ณผ ์‹œ๊ฐํ™”๊นŒ์ง€

(5.0) ์ˆ˜๊ฐ•ํ‰ 4๊ฐœ

์ˆ˜๊ฐ•์ƒ 89๋ช…

๋‚œ์ด๋„ ์ดˆ๊ธ‰

์ˆ˜๊ฐ•๊ธฐํ•œ ๋ฌด์ œํ•œ

์ถ”์ฒœ์‹œ์Šคํ…œ
์ถ”์ฒœ์‹œ์Šคํ…œ
AI
AI
ai์ถ”์ฒœ
ai์ถ”์ฒœ
์ถ”์ฒœ-์‹œ์Šคํ…œ
์ถ”์ฒœ-์‹œ์Šคํ…œ
์ถ”์ฒœ
์ถ”์ฒœ
์ถ”์ฒœ์‹œ์Šคํ…œ
์ถ”์ฒœ์‹œ์Šคํ…œ
AI
AI
ai์ถ”์ฒœ
ai์ถ”์ฒœ
์ถ”์ฒœ-์‹œ์Šคํ…œ
์ถ”์ฒœ-์‹œ์Šคํ…œ
์ถ”์ฒœ
์ถ”์ฒœ

์ˆ˜๊ฐ• ํ›„ ์ด๋Ÿฐ๊ฑธ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”

  • ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ํ•ต์‹ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜(Content-based filter, Collaborative filter)์„ ์ดํ•ดํ•˜๊ณ  ์ง์ ‘ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

  • PyTorch์™€ RecBole์„ ํ™œ์šฉํ•ด ์‹ค์ „ ์ถ”์ฒœ ๋ชจ๋ธ์„ ๋งŒ๋“ค๊ณ  ํ‰๊ฐ€ํ•˜๋Š” ๋Šฅ๋ ฅ์„ ๊ฐ–์ถ”๊ฒŒ ๋ฉ๋‹ˆ๋‹ค

  • ์ถ”์ฒœ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๊ณ  ํŠœ๋‹ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์„ ๊ฐ–์ถ”๊ฒŒ ๋ฉ๋‹ˆ๋‹ค

ํ˜„์—… AI ์—”์ง€๋‹ˆ์–ด์™€
์ถ”์ฒœ ์‹œ์Šคํ…œ ํŒŒํ—ค์น˜๊ธฐ


์˜ํ™” ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ์ง์ ‘ ์„ค๊ณ„ํ•˜๊ณ  ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.


๋Œ€ํ•™์› ๊ณผ์ •๊ณผ ํ˜„์—…์„ ๊ฑฐ์น˜๋ฉฐ ์ง์ ‘ ์–ป์€ ๋…ธํ•˜์šฐ๋ฅผ ํ†ตํ•ด ๊ฐ•์˜๋ฅผ ์ œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
์‹ค๋ฌด์—์„œ ๋ฐ”๋กœ ํ†ตํ•˜๋Š” ์ถ”์ฒœ ๊ธฐ์ˆ ์„ ํƒ„ํƒ„ํ•˜๊ฒŒ ๊ฐ–์ถ”๊ณ  ์‹ถ๋‹ค๋ฉด,
๊ฐ•์˜๋ฅผ ํ†ตํ•ด ํ•จ๊ป˜ ๋ฐฐ์›Œ๋ด์š”!

MovieLens ๋ฐ์ดํ„ฐ์…‹ ๊ธฐ๋ฐ˜, Deep Learning ์ถ”์ฒœ ๋ชจ๋ธ ๊ตฌ์ถ•
์‚ฌ์šฉ์ž ๋งž์ถค ์˜ํ™” ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์™„์„ฑํ•ฉ๋‹ˆ๋‹ค.

Two-step recommender systems ๊ตฌ์ถ• ๋ฐ ์ถ”์ฒœ ๊ฒฐ๊ณผ ์‹œ๊ฐํ™”
ํ˜„์—… ๋…ธํ•˜์šฐ ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ๊ฒฐ๊ณผ ๋ถ„์„ ๋ฐ ํŠœ๋‹ ๋Šฅ๋ ฅ์„ ๊ฐ–์ถฅ๋‹ˆ๋‹ค.

ํ˜„์—… ์—”์ง€๋‹ˆ์–ด์™€ ํ•จ๊ป˜
AI ์˜ํ™” ์ถ”์ฒœ ์‹œ์Šคํ…œ ๋งŒ๋“ค๊ธฐ

Section 1 - ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ฐœ์š” ๋ฐ ๊ธฐ๋ณธ ์ดํ•ด

์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ๊ฐœ๋…, ๋น„์ฆˆ๋‹ˆ์Šค ๊ฐ€์น˜, ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋จธ์‹ ๋Ÿฌ๋‹ ์ž‘์—…๊ณผ์˜ ์ฐจ์ด์ ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์ •๋ณด ๊ณผ๋ถ€ํ•˜ ํ•ด์†Œ์™€ ๊ฐœ์ธํ™”๋ฅผ ์œ„ํ•œ ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ์ค‘์š”์„ฑ์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

Section 2 - ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ • ๋ฐ ํ‰๊ฐ€ ์ง€ํ‘œ

๊ฐ•์˜์— ํ•„์š”ํ•œ ์‹คํ—˜ ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜๊ณ , ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜๋Š” ๋‹ค์–‘ํ•œ ํ‰๊ฐ€ ์ง€ํ‘œ(Metric)๋ฅผ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์‚ฌ์šฉ๋  ๋ฐ์ดํ„ฐ์…‹๊ณผ ์ถ”์ฒœ ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ๊ฐœ์š”๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.

Section 3 - ์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ์‹œ์Šคํ…œ (CBF)

์‚ฌ์šฉ์ž์˜ ๊ณผ๊ฑฐ ์‹œ์ฒญ ๊ธฐ๋ก์ด๋‚˜ ์„ ํ˜ธ๋„์™€ ์œ ์‚ฌํ•œ ์ฝ˜ํ…์ธ ๋ฅผ ์ถ”์ฒœํ•˜๋Š” ์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง(CBF) ๊ธฐ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค. Sentence Transformer๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ…์ŠคํŠธ ์œ ์‚ฌ๋„๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์˜ํ™”๋ฅผ ์ถ”์ฒœํ•˜๋Š” ๊ณ ๊ธ‰ ๊ธฐ๋ฒ•์„ ์‹ค์Šตํ•ฉ๋‹ˆ๋‹ค.

Section 4 - ํ˜‘์—… ํ•„ํ„ฐ๋ง (CF) ๋ชจ๋ธ ๊ตฌํ˜„

RecBole ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ˜‘์—… ํ•„ํ„ฐ๋ง(CF) ๊ธฐ๋ฐ˜์˜ ์ถ”์ฒœ ๋ชจ๋ธ์„ ๊ตฌ์ถ•ํ•˜๊ณ  ํ›ˆ๋ จํ•˜๋Š” ๊ณผ์ •์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ LightGCN ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž-์•„์ดํ…œ ์ƒํ˜ธ์ž‘์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์ถ”์ฒœ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.

Section 5 - Two-step ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง๊ณผ ํ˜‘์—… ํ•„ํ„ฐ๋ง์„ ๊ฒฐํ•ฉํ•œ Two-step ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. LightGCN ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ์ธํ™” ์ถ”์ฒœ๊ณผ ์ฝ˜ํ…์ธ  ์œ ์‚ฌ์„ฑ ์ถ”์ฒœ์„ ์œตํ•ฉํ•˜์—ฌ ๋”์šฑ ์ •๊ตํ•œ ์ถ”์ฒœ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค.

Section 6 - Streamlit์„ ํ™œ์šฉํ•œ ์ถ”์ฒœ ๊ฒฐ๊ณผ ์‹œ๊ฐํ™”

Streamlit ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์ถ•๋œ ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ๊ฒฐ๊ณผ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‹œ๊ฐํ™”ํ•ฉ๋‹ˆ๋‹ค. TMDB API ์—ฐ๋™์„ ํ†ตํ•ด ์˜ํ™” ํฌ์Šคํ„ฐ์™€ ์ƒ์„ธ ์ •๋ณด๋ฅผ ํฌํ•จํ•œ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ์‹œ๊ฐํ™” ํŽ˜์ด์ง€๋ฅผ ๊ฐœ๋ฐœํ•ฉ๋‹ˆ๋‹ค.

๋ณต์žกํ•œ ์ถ”์ฒœ ์‹œ์Šคํ…œ, ๊ฐ์„ ์žก๊ธฐ ์–ด๋ ค์šฐ์‹ ๊ฐ€์š”?

์ด ๊ฐ•์˜๋Š” ๋ฐ”๋กœ ์ด๋Ÿฐ ๋ถ„๋“ค์„ ์œ„ํ•ด ๋งŒ๋“ค์—ˆ์–ด์š”.

โœ”๏ธ ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ๋ฐฐ์šฐ๊ณ  ์‹ถ์€ ์ž…๋ฌธ์ž ๋ฐ ๋Œ€ํ•™(์›)์ƒ

  • ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ๊ธฐ๋ณธ ์›๋ฆฌ(์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜, ํ˜‘์—… ํ•„ํ„ฐ๋ง)๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ์ดํ•ดํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • PyTorch์™€ RecBole์„ ํ™œ์šฉํ•˜์—ฌ ์‹ค์ œ ์ถ”์ฒœ ๋ชจ๋ธ์„ ์ง์ ‘ ๋งŒ๋“ค์–ด๋ณด๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • ์ถ”์ฒœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ž‘๋™ ๋ฐฉ์‹์„ ๋ฐฐ์šฐ๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํ•ด์„ํ•˜๋Š” ๋Šฅ๋ ฅ์„ ๊ธฐ๋ฅด๊ณ  ์‹ถ์œผ์‹  ๋ถ„

โœ”๏ธ ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ์„œ๋น„์Šค์— ๋„์ž…ํ•˜๋ ค๋Š” ํ˜„์—… ์—”์ง€๋‹ˆ์–ด

  • ์ตœ์‹  ์ถ”์ฒœ ์•Œ๊ณ ๋ฆฌ์ฆ˜(๋”ฅ๋Ÿฌ๋‹ ๊ธฐ๋ฐ˜, Two-step)์˜ ์‹ค์ „ ์ ์šฉ ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • ํ˜„์—…์—์„œ ํ™œ์šฉ๋˜๋Š” ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ตฌ์ถ• ๋…ธํ•˜์šฐ๋ฅผ ์Šต๋“ํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • ์‹ค์ œ ์˜ํ™” ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค์–ด๋ณด๋ฉฐ ๊ธฐ์ˆ ์  ์ธ์‚ฌ์ดํŠธ๋ฅผ ์–ป๊ณ  ์‹ถ์œผ์‹  ๋ถ„

โœ”๏ธ ์ถ”์ฒœ ์‹œ์Šคํ…œ ๋ถ„์•ผ์˜ ์ปค๋ฆฌ์–ด๋ฅผ ์Œ“๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ์ž

  • ์ธ๊ธฐ ์„œ๋น„์Šค(๋„ทํ”Œ๋ฆญ์Šค, ์œ ํŠœ๋ธŒ, ์ฟ ํŒก)์˜ ํ•ต์‹ฌ ๊ธฐ์ˆ ์ธ ์ถ”์ฒœ ์‹œ์Šคํ…œ ์ „๋ฌธ๊ฐ€๋กœ ์„ฑ์žฅํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ˜์‹ ํ•˜๋Š” ๋ชจ๋ธ ๊ฐœ๋ฐœ ์—ญ๋Ÿ‰์„ ๊ฐ•ํ™”ํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • ๊ฐœ์ธํ™” ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ตฌ์ถ•๋ถ€ํ„ฐ ๊ฒฐ๊ณผ ์‹œ๊ฐํ™”๊นŒ์ง€ ์ „ ๊ณผ์ •์„ ๊ฒฝํ—˜ํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„


์ด์ œ ๋ณต์žกํ•˜๊ฒŒ๋งŒ ๋А๊ปด์กŒ๋˜ ์ถ”์ฒœ ์‹œ์Šคํ…œ์˜ ์„ธ๊ณ„๋ฅผ ์ž์‹ ๊ฐ ์žˆ๊ฒŒ ํƒํ—˜ํ•˜๊ณ , ์ง์ ‘ AI ์˜ํ™” ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค์–ด๋ณด๋Š” ๊ฒฝํ—˜์„ ์Œ“์•„๋ณด์„ธ์š”.

์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ  ์‚ฌํ•ญ


์‹ค์Šต ํ™˜๊ฒฝ

  • Windows OS

  • Python 3.12

  • PyTorch 2.6 ๋ฐ RecBole

  • ๊ถŒ์žฅ ์‚ฌ์–‘: 8GB RAM ์ด์ƒ, SSD ์ €์žฅ ๊ณต๊ฐ„ 10GB ์ด์ƒ

์„ ์ˆ˜ ์ง€์‹ ๋ฐ ์œ ์˜์‚ฌํ•ญ

  • Python ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋ณธ ๋ฌธ๋ฒ•์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  • ๋จธ์‹ ๋Ÿฌ๋‹ ๋˜๋Š” ์ถ”์ฒœ ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์‚ฌ์ „ ์ง€์‹์ด ์žˆ์œผ๋ฉด ํ•™์Šต์— ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.


ํ•™์Šต ์ž๋ฃŒ

  • ๊ฐ•์˜์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œ ์˜ˆ์ œ๋Š” ๋ชจ๋‘ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

  • MovieLens ๋ฐ์ดํ„ฐ์…‹์„ ํ™œ์šฉํ•œ ์‹ค์Šต์ด ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.


์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • ์ถ”์ฒœ ์‹œ์Šคํ…œ์„ ๋„์ž…ํ•˜๋ ค๋Š” ์—”์ง€๋‹ˆ์–ด

  • ์ถ”์ฒœ ์‹œ์Šคํ…œ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ๋˜๊ณ  ์‹ถ์€ ๋Œ€ํ•™(์›)์ƒ

  • ์ถ”์ฒœ ์‹œ์Šคํ…œ์— ๋Œ€ํ•ด ์•Œ๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ ๋ˆ„๊ตฌ๋‚˜

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • ๊ธฐ๋ณธ์ ์ธ Python ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์—ญ๋Ÿ‰์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  • Pytorch๋ฅผ ์‚ฌ์šฉํ•ด ๋ณธ ๊ฒฝํ—˜์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”
Jay์ž…๋‹ˆ๋‹ค.

7,252

๋ช…

์ˆ˜๊ฐ•์ƒ

218

๊ฐœ

์ˆ˜๊ฐ•ํ‰

171

๊ฐœ

๋‹ต๋ณ€

4.9

์ 

๊ฐ•์˜ ํ‰์ 

5

๊ฐœ

๊ฐ•์˜

๋ˆ„๊ตฌ๋‚˜ ์žฌ๋ฐŒ๊ณ  ์œ ์ตํ•˜๊ฒŒ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐœ ์ฝ˜ํ…์ธ ๋ฅผ ๋งŒ๋“ค๊ฒ ์Šต๋‹ˆ๋‹ค.

 

์ด๋ ฅ ์‚ฌํ•ญ โœ’๏ธ

  • ๋„ค์ด๋ฒ„์ปค๋„ฅํŠธ ๋ถ€์ŠคํŠธ์บ ํ”„ ์›น ๋ฐฑ์—”๋“œ(Node.js) 6๊ธฐ code reviewer ํ™œ๋™

  • ์„œ์šธ์‚ฐ์—…์ง„ํฅ์› SeSSAC ์˜จ๋ผ์ธ IT์ฝ˜ํ…์ธ  ํŒŒํŠธ๋„ˆ (Full Stack)

  • ์„œ์šธ์‚ฐ์—…์ง„ํฅ์› SeSSAC ๊ฐœ๋ฐœ์ž ์ž…๋ฌธ๊ณผ์ • ์ง„ํ–‰ (Python, Javascript)

  • ๊ฑด๊ตญ๋Œ€ ๋ชฐ์ž…ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ณผ์ • ๊ฐ•์˜ ์ง„ํ–‰

  • ์„œ์šธ์‹œ SSAC ๋ผ์ด์ง• ํ”„๋กœ๊ทธ๋ž˜๋จธ ์„œ๋ฒ„ํŒŒํŠธ ์ด๊ด„

  • ์•”ํ˜ธํ™”ํ ๋งค๋งค ์ž๋™ํ™” ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ ์™ธ์ฃผ (Qt)

  • ๋งˆ์ผ€ํŒ… ์—์ด์ „์‹œ ๋žœ๋”ฉ ํŽ˜์ด์ง€ ๊ฐœ๋ฐœ ์™ธ์ฃผ (Web)

  • ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ์ฒ˜๋ฆฌ Windows ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ ์™ธ์ฃผ (Qt)

     

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

18๊ฐœ โˆ™ (2์‹œ๊ฐ„ 7๋ถ„)

ํ•ด๋‹น ๊ฐ•์˜์—์„œ ์ œ๊ณต:

์ˆ˜์—…์ž๋ฃŒ
๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์ „์ฒด

4๊ฐœ

5.0

4๊ฐœ์˜ ์ˆ˜๊ฐ•ํ‰

  • ์ด์ฑ„์šฑ๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
    ์ด์ฑ„์šฑ

    ์ˆ˜๊ฐ•ํ‰ 1

    โˆ™

    ํ‰๊ท  ํ‰์  5.0

    5

    33% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

    • AAiss๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
      AAiss

      ์ˆ˜๊ฐ•ํ‰ 2

      โˆ™

      ํ‰๊ท  ํ‰์  5.0

      5

      33% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

      • ์ด์€์ •๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
        ์ด์€์ •

        ์ˆ˜๊ฐ•ํ‰ 1

        โˆ™

        ํ‰๊ท  ํ‰์  5.0

        5

        100% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

        • ์Šคํ”„๋ง๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
          ์Šคํ”„๋ง

          ์ˆ˜๊ฐ•ํ‰ 111

          โˆ™

          ํ‰๊ท  ํ‰์  4.9

          5

          33% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

          Jay๋‹˜์˜ ๋‹ค๋ฅธ ๊ฐ•์˜

          ์ง€์‹๊ณต์œ ์ž๋‹˜์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

          ๋น„์Šทํ•œ ๊ฐ•์˜

          ๊ฐ™์€ ๋ถ„์•ผ์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

          โ‚ฉ55,000