PlaydataFinal / Final_project

0 stars 1 forks source link

๐Ÿš€ Final Project

๐Ÿ“š ๋ชฉ์ฐจ

  1. ๊ธฐํš๋ฐฐ๊ฒฝ
  2. ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„
  3. ํŒ€์› ์†Œ๊ฐœ
  4. ๊ธฐ๋Šฅ ์†Œ๊ฐœ
  5. ๋ชจ๋ธ ์„ค๊ณ„์„œ
  6. API ์„ค๊ณ„์„œ
  7. ERD
  8. ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜
  9. ๋ฐ์ดํ„ฐ ๋ช…์„ธ์„œ
  10. ๊ธฐ์ˆ  ์Šคํƒ
  11. ๊ฒฐ๊ณผ๋ฌผ

๐ŸŽฏ ๊ธฐํš๋ฐฐ๊ฒฝ

24๋…„ 2์›” 19์ผ ~ 24๋…„ 3์›” 22์ผ

๐Ÿ‘ฅ ํŒ€์› ์†Œ๊ฐœ

์ด๋ฆ„ ์—ญํ• 
๊ตฌ์ฃผ์™„(ํŒ€์žฅ) ๋ฐ์ดํ„ฐ ์—”์ง€๋‹ˆ์–ด(ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์„œ๋ฒ„ ๊ตฌ์ถ•, ๋ฐฑ์—”๋“œ ๊ธฐ๋Šฅ ๊ตฌํ˜„, ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘)
์ด์Šฌํฌ ๋ฐ์ดํ„ฐ ์—”์ง€๋‹ˆ์–ด (ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์„œ๋ฒ„ ๊ตฌ์ถ•, ๋ฐฑ์—”๋“œ ๊ธฐ๋Šฅ ๊ตฌํ˜„)
์ตœ์ƒ์œค ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธํ‹ฐ์ŠคํŠธ(๋ฐ์ดํ„ฐ ์ˆ˜์ง‘, ์ฑ—๋ด‡ ๋ชจ๋ธ ๊ฐœ๋ฐœ, ์ด๋ฏธ์ง€ ์ถ”์ฒœ์‹œ์Šคํ…œ, ๊ด€๊ด‘์ง€ ์ถ”์ฒœ์‹œ์Šคํ…œ)
๊น€ํƒœํ˜„ ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธํ‹ฐ์ŠคํŠธ(์ด๋ฏธ์ง€ ์ถ”์ฒœ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ)
์ด์œ ์ • ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธํ‹ฐ์ŠคํŠธ(์ฑ—๋ด‡ ๋ชจ๋ธ ๊ฐœ๋ฐœ)
๊น€๊ฒจ๋ ˆ ๋ฐฑ์—”๋“œ & ํ”„๋ก ํŠธ์—”๋“œ(์›น ์„ค๊ณ„ ๋ฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„)

๐ŸŽ ๊ธฐ๋Šฅ ์†Œ๊ฐœ

๊ธฐ๋Šฅ ์ƒ์„ธ ์„ค๋ช…
ํšŒ์› ๊ด€๋ฆฌ ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ
๋ฉ”์ธํŽ˜์ด์ง€ ์„œ๋น„์Šค ์†Œ๊ฐœ ๋ฐ ํŒ€์› ์†Œ๊ฐœ
์—ฌํ–‰์ง€ ์กฐํšŒ ๋ฐ ์ƒ์„ธ ํŽ˜์ด์ง€ ์—ฌํ–‰์ง€ ์ฃผ์†Œ, ์†Œ๊ฐœ ๋“ฑ ๊ธฐ๋ณธ์ •๋ณด ์กฐํšŒ. ํ•ด๋‹น ์—ฌํ–‰์ง€ ์นด์นด์˜ค๋งต ๋งˆ์ปค ๋ฐ ์ง€๋„ ํ‘œ์‹œ. ํ•ด๋‹น ์—ฌํ–‰์ง€์™€ ๋น„์Šทํ•œ ์—ฌํ–‰์ง€ ์ถ”์ฒœ
์—ฌํ–‰์ง€ ๊ธธ์ฐพ๊ธฐ ํŽ˜์ด์ง€ ์—ฌํ–‰์ง€ ์ถœ๋ฐœ์ง€, ๋„์ฐฉ์ง€ ํ‚ค์›Œ๋“œ์™€ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ตํ†ต ์˜ต์…˜์œผ๋กœ ์ตœ์ ์˜ ๊ธธ์ฐพ๊ธฐ๋ฅผ ์ œ๊ณต
๋งˆ์ดํŽ˜์ด์ง€ ์‚ฌ์šฉ์ž ๊ธฐ๋ณธ์ •๋ณด ๋ฐ ์ˆ˜์ •
์—ฌํ–‰์ง€ ์ถ”์ฒœ ์ธ๊ธฐ ์—ฌํ–‰์ง€ ์ถ”์ฒœ
์ฑ—๋ด‡ ex) ์•กํ‹ฐ๋น„ํ‹ฐ ์—ฌํ–‰์ง€ ์ถ”์ฒœ, ๋ฐ˜๋ ค๋™๋ฌผ๊ณผ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ˆ™์†Œ ์ถ”์ฒœ, ํ‘๋ผ์ง€ ์Œ์‹์  ์ถ”์ฒœ ๋“ฑ

๐Ÿ“„ ๋ชจ๋ธ ์„ค๊ณ„์„œ

๐ŸŽ‰ ์ถ”์ฒœ์‹œ์Šคํ…œ

์„œ๋น„์Šค ์šด์˜ ์ „์ด๋ผ Cold start issue๊ฐ€ ์žˆ๋Š” ์ƒํ™ฉ. ์œ ์ € ์ •๋ณด๋‚˜ ์„ ํƒ ์ •๋ณด๊ฐ€ ์—†์–ด์„œ Collaborative Filtering์„ ์ ์šฉํ•˜๊ธฐ ํž˜๋“ค๋‹ค. Content-Based Filtering์„ ์ฑ„ํƒ.

Ai Hub์—์„œ ์—ฌํ–‰ ๋ฐฉ๋ฌธ์ง€, ๊ฒฝ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐœ๊ฒฌํ•˜์—ฌ Collaborative Filtering์ด๋‚˜ Hybrid ๊ธฐ๋ฒ• ์ ์šฉ์„ ๊ณ ๋ คํ–ˆ๋‹ค. ๋‹ค๋งŒ ํ›„์ˆ ํ•  ๋ฐ์ดํ„ฐ ์ถœ์ฒ˜์ธ ์ œ์ฃผ๊ด€๊ด‘๊ณต์‚ฌ ํ™ˆํŽ˜์ด์ง€์ธ visitjeju์˜ ๋ฐ์ดํ„ฐ์™€ idx๊ฐ€ ๋‹ฌ๋ผ์„œ ํ…Œ์ด๋ธ” join ์ „์ฒ˜๋ฆฌ์˜ ์–ด๋ ค์›€์ด ์žˆ์—ˆ์Œ. ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ์ถœ์ฒ˜๋ฅผ ์„ ํƒํ•˜๊ธฐ๋ณด๋‹จ visitjeju ํ™ˆํŽ˜์ด์ง€์—์„œ ํฌ๋กค๋งํ•ด์˜ฌ ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.

image

์ข‹์•„์š”, ๋ณ„์ , ๋ฆฌ๋ทฐ ๋ฐ์ดํ„ฐ์™€ ํ•ด๋‹น ์œ ์ €์˜ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๋Š” ์ƒํ™ฉ์—์„œ ๊ด€๊ด‘์ง€ ๊ฐ„ ์œ ์‚ฌ๋„๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฏผํ–ˆ๋‹ค. -> Contents์— ๋Œ€ํ•œ ํŠน์ง•์„ ๋‹ด๊ณ  ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑํ„ฐํ™”ํ•˜์—ฌ ๋ฐฑํ„ฐ ๊ฐ„ ์ฝ”์‚ฌ์ธ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋ฉด ์šฐ๋ฆฌ ์ถ”์ฒœ์‹œ์Šคํ…œ์˜ ๊ถ๊ทน์ ์ธ ํƒ€๊ฒŸ ํ”ผ์ณ์ธ ๊ด€๊ด‘์ง€ ๊ฐ„ ์œ ์‚ฌ์„ฑ์„ ๋„์ถœํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.

image


ํƒœ๊ทธ ์œ ์‚ฌ๋„

insight ๋™๋ฐฑ๊ณผ ์ˆ˜๊ตญ, ๋™๋ฐฑ๊ณผ ์˜จ์ฒœ ์ค‘ ์ „์ž๊ฐ€ ๋” ์œ ์‚ฌํ•˜๋‹ค. ์ด๊ฒƒ์„ ์•„๋Š” ๋ฐฉ๋ฒ•์€ ๋™๋ฐฑ๊ณผ ์ˆ˜๊ตญ ํƒœ๊ทธ๋ฅผ ๋™์‹œ์— ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ด€๊ด‘์ง€๊ฐ€ ํ›„์ž๋ณด๋‹ค ๋งŽ๋‹ค๋Š” ์ ๋งŒ์œผ๋กœ ํƒœ๊ทธ ๊ฐ„ ์œ ์‚ฌ์„ฑ์„ ์‹œ์‚ฌํ•  ์ˆ˜ ์žˆ๋‹ค.. ํƒœ๊ทธ๋“ค์ด ํŠน์ • ๊ด€๊ด‘์ง€๋ผ๋Š” ํ•˜๋‚˜์˜ ์˜ค๋ธŒ์ ํŠธ๋กœ ๋ฌถ์ž„์œผ๋กœ์„œ ๋ผ๋ฒจ์ด ์ƒ๊ธฐ๋Š” ๋Š๋‚Œ. -> ํƒœ๊ทธ ํด๋Ÿฌ์Šคํ„ฐ๋ง, ํƒœ๊ทธ ์œ ์‚ฌ๋„ ๊ธฐ๋ฐ˜ ์ถ”์ฒœ์‹œ์Šคํ…œ -> ์ œ์ฃผ๊ด€๊ด‘๊ณต์‚ฌ ํ™ˆํŽ˜์ด์ง€ visitjeju์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ด€๊ด‘์ง€๋ณ„ ํƒœ๊ทธ ๋ฐ์ดํ„ฐ ํฌ๋กค๋ง

image

image


์œ ์‚ฌ๋„ ํ–‰๋ ฌ์„ ์‚ฌ์šฉํ•˜๋ฉด ์œ ์ €๊ฐ€ ํ•œ ๊ด€๊ด‘์ง€๋ฅผ ๊ณจ๋ž์„ ๋•Œ ๊ทธ์™€ ๋น„์Šทํ•œ ๊ด€๊ด‘์ง€๋ฅผ ์ถ”์ฒœํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค. ์ตœ์ข…์ ์œผ๋กœ ํƒœ๊ทธ ์œ ์‚ฌ๋„ ์ถ”์ฒœ์‹œ์Šคํ…œ์€ ์ฑ—๋ด‡์— ์‚ฌ์šฉํ•œ ์ƒ์„ธ์„ค๋ช…์„ ์ž„๋ฒ ๋”ฉํ•œ ๊ฐ’๊ณผ ํ•จ๊ป˜ ์›นํŽ˜์ด์ง€ ์ค‘ ๊ด€๊ด‘์ง€ ์ƒ์„ธ์ •๋ณด ํŽ˜์ด์ง€์—์„œ ํ•ด๋‹น ๊ด€๊ด‘์ง€์™€ ์œ ์‚ฌํ•œ 3๊ณณ์„ ์ถ”์ฒœํ•ด์ฃผ๋Š” ์„œ๋น„์Šค๋กœ์„œ ์ ์šฉ๋˜์—ˆ๋‹ค.

image


ํ…์ŠคํŠธ ์œ ์‚ฌ๋„

ํƒœ๊ทธ ์œ ์‚ฌ๋„ ๋ชจ๋ธ๋ง์—์„œ ์‚ฌ์šฉํ•œ ๋ฐ์ดํ„ฐ๋Š” ์ œ์ฃผ๊ด€๊ด‘๊ณต์‚ฌ์—์„œ ๋„๋ฉ”์ธ ์ง€์‹์— ๋”ฐ๋ผ labelingํ•œ ์ •์ œ๋œ ํƒœ๊ทธ ๋ฐ์ดํ„ฐ์ด๋‹ค. ๊ด€๊ด‘์ง€์— ๋Œ€ํ•œ ์ •์„ฑ์ ์ธ ์ •๋ณด๋“ค์„ ๋” ์ž˜ ๋‹ด๊ณ  ์žˆ๋Š” ์ž์œ ๋„ ๋†’์€ low-level ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ์œ ์‚ฌ๋„๋ฅผ ๋„์ถœํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค. -> ๋„ค์ด๋ฒ„ ๋ฆฌ๋ทฐ, ๋ธ”๋กœ๊ทธ ๋ฆฌ๋ทฐ๋กœ๋ถ€ํ„ฐ ๋ช…์‚ฌ๋ฅผ ์ถ”์ถœํ•˜๊ณ  ์–ดํœ˜์ง‘์„ ๋งŒ๋“ค์–ด์„œ ์œ ์˜์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ชจ๋ธ๋ง์„ ๊ตฌ์ƒํ–ˆ๋‹ค.

image

image

๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์ดํ„ฐ merge ์‹œ ๋‚œ์ ๋•Œ๋ฌธ์— ํ™œ์šฉํ•˜๊ธฐ ์–ด๋ ค์› ๋‹ค. ๊ทธ๋ž˜์„œ ํ…์ŠคํŠธ ์œ ์‚ฌ๋„ ๋ชจ๋ธ๋ง์˜ ๋ฐ์ดํ„ฐ๋กœ visitjeju์— ๊ด€๊ด‘์ง€๋ณ„ ์ƒ์„ธ์„ค๋ช… ๊ธ€์„ ์ฑ„ํƒํ–ˆ๋‹ค. ํ…์ŠคํŠธ ์œ ์‚ฌ๋„ ๋ชจ๋ธ๋ง์€ ์ฑ—๋ด‡ ์„œ๋น„์Šค๋กœ ์ ์šฉํ•˜์˜€๋‹ค.


์ด๋ฏธ์ง€ ์œ ์‚ฌ๋„

reference

<์˜ค๋Š˜์˜ ์ง‘> ์ด๋ฏธ์ง€ ์œ ์‚ฌ๋„ ๋ชจ๋ธ ๋ธŒ๋žœ๋“œ <์˜ค๋Š˜์˜ ์ง‘>์—์„œ ์ฃผ์–ด์ง„ ์ธํ…Œ๋ฆฌ์–ด ์ด๋ฏธ์ง€์™€ ๋น„์Šทํ•œ ๊ณต๊ฐ„, ๋น„์Šทํ•œ ์ƒํ’ˆ์„ ์ถ”์ฒœํ•ด์ฃผ๋Š” ์„œ๋น„์Šค์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ฐธ๊ณ ํ–ˆ๋‹ค. <์˜ค๋Š˜์˜ ์ง‘>์—์„œ๋Š” ๋น„์Šทํ•œ ๊ณต๊ฐ„์„ ์ถ”์ฒœํ•ด์ค„ ๋•Œ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ ๋ชจ๋ธ๋กœ ์•Œ๋ ค์ง„ VGGNet์„ ์‚ฌ์šฉํ•˜์—ฌ classifier ์ „ layer์—์„œ ์ด๋ฏธ์ง€ ๋ฐฑํ„ฐ๋ฅผ ์–ป์–ด๋ƒˆ๋‹ค. ์ดํ›„ ๋ฐฑํ„ฐ๋“ค ๊ฐ„ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜์˜€๋‹ค. ์ด ๋ชจ๋ธ๋ง์ด ์ •์„ฑ์ ์œผ๋กœ ๋น„์Šทํ•œ ์ธํ…Œ๋ฆฌ์–ด ์Šคํƒ€์ผ์˜ ์ด๋ฏธ์ง€๋ฅผ ์ถ”์ฒœํ•ด์ฃผ๊ธฐ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ๋‹ค๋Š” ์ ์—์„œ ์šฐ๋ฆฌ๊ฐ€ ํ™œ์šฉํ•˜๊ธฐ ์ ํ•ฉํ•˜๋‹ค๊ณ  ๋ณด์•˜๋‹ค. image

๋‹ค๋งŒ, ์ด๋ฏธ์ง€ ์œ ์‚ฌ๋„์— ์™œ ์ง€๋„ํ•™์Šต์„ ์จ์•ผ ๋˜๋Š”์ง€?, ๋ถ„๋ฅ˜๋ชจ๋ธ์„ ๋ชจ๋ธ๋ง์— ํฌํ•จํ•˜๋ฉด ์œ ์‚ฌ๋„ ์ถ”์ถœ์— ๊ธ์ •์ ์ธ ์˜ํ–ฅ์„ ์ฃผ๋Š”์ง€?๋Š” ์˜๋ฌธ์ด ๋˜์—ˆ๋‹ค. -> ํ•ด๋‹น ๋ ˆํผ๋Ÿฐ์Šค์—์„œ๋Š” ๋ชจ๋˜, ํ•œ์˜ฅ, ๋„ค์ถ”๋Ÿด ๋“ฑ ์ธํ…Œ๋ฆฌ์–ด ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ์ด๋ฏธ์ง€ ์ถ”์ฒœ์— ํ™œ์šฉํ•˜๋ ค ํ–ˆ์ง€๋งŒ ์šฐ๋ฆฌ์˜ ๋ชจ๋ธ๋ง์—์„œ๋Š” ํ•„์š”์—†๋Š” ๊ณผ์ •์ด๋ผ ์ƒ๊ฐํ•˜๊ณ  VGGNet์„ ๊ฐœ๋ณ„ ์ด๋ฏธ์ง€์˜ feature extractionํ•˜๋Š” ๊ณผ์ •์œผ๋กœ๋งŒ ํ™œ์šฉํ–ˆ๋‹ค.

๋ชจ๋ธ๋ง

๋ฐ์ดํ„ฐ์…‹์€ visitjeju์˜ ๊ด€๊ด‘์ง€๋ณ„ ๋Œ€ํ‘œ์ด๋ฏธ์ง€ ํ•œ ์žฅ์”ฉ์„ ํฌ๋กค๋งํ•ด์„œ ํ™œ์šฉํ–ˆ๋‹ค. ์ด 1473๊ฐœ์˜ ๊ด€๊ด‘์ง€๋ณ„ ์ด๋ฏธ์ง€์— VGG16์„ ์ ์šฉํ•ด ์ด๋ฏธ์ง€ vector๋ฅผ ๋„์ถœํ•˜๊ณ  ๋ฐฑํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์˜ ์ƒˆ๋กœ์šด ์ปฌ๋Ÿผ์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์„ db์— ์ €์žฅํ•ด๋†“๋Š”๋‹ค. ์„œ๋น„์Šค ์‹œ์—๋Š” ์œ ์ €๊ฐ€ ๊ด€๊ด‘์ง€ ์ด๋ฏธ์ง€ 10-20๊ฐœ ์ค‘์—์„œ ์ž๊ธฐ ์ทจํ–ฅ์ธ ๊ด€๊ด‘์ง€ ์ด๋ฏธ์ง€ 4๊ฐœ๋ฅผ ๊ณ ๋ฅธ๋‹ค. ์ด 4๊ฐœ์˜ ๋ชฉ๋ก์„ ๋ฐ›์•„์„œ ์„ ํƒํ•œ ๊ด€๊ด‘์ง€์˜ ๋ฐฑํ„ฐ์™€ 1473๊ฐœ์˜ ๊ด€๊ด‘์ง€์˜ ๋ฐฑํ„ฐ ๊ฐ„ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•œ ๋’ค sortingํ•˜์—ฌ ์œ ์‚ฌํ•œ ๊ด€๊ด‘์ง€๋ฅผ ๋„์ถœํ•˜๋Š” ๋ฐฉ์‹์„ ๋งŒ๋“ค์—ˆ๋‹ค. image


๋ชจ๋ธ ํ•™์Šต ๋ฐ ์ถ”๋ก  ๊ฒฐ๊ณผ

์ด๋ฏธ์ง€ ๋ฐฑํ„ฐ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๊ณ  ๋ชจ๋“  image_names์— ๋Œ€ํ•œ ๋ฐฑํ„ฐ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ํ•˜์˜€๋‹ค. ๊ณ„์‚ฐ ์‹œ๊ฐ„์€ 40๋ถ„~1์‹œ๊ฐ„์ด ๊ฑธ๋ ธ๋Š”๋ฐ ๊ฐœ๋ฐœํ™˜๊ฒฝ์€ ์ฝ”๋žฉ ํ”„๋กœ๋กœ ๋ฐ”๊พธ์–ด๋„ ๊ณ„์‚ฐ ์‹œ๊ฐ„์ด ๊ฐœ์„ ๋˜์ง€๋Š” ์•Š์•˜๋‹ค. ๋ชจ๋ธ ํ•™์Šต์ด ์•„๋‹ˆ๋ผ ๊ฒฐ๊ตญ ์ถ”๋ก  ์ƒํ™ฉ์ด์–ด์„œ GPU ๋ฆฌ์†Œ์Šค์˜ ์˜ํ–ฅ๋ ฅ์ด ์ ์šฉ๋˜์ง€๋Š” ์•Š๋Š” ๊ฒƒ ๊ฐ™์•˜๋‹ค. ๊ณ„์‚ฐํ•œ ๋ฐฑํ„ฐ๋ฅผ ํฌํ•จํ•œ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์„ ๋งŒ๋“ค๊ณ  ์ด๋ฅผ db์— ์ €์žฅํ•ด๋†“์„ ๊ฒƒ์ด๋‹ค.
image

๊ณ„์‚ฐ๋œ ๋ฐฑํ„ฐ๋Š” 25088์ฐจ์›์ด์—ˆ๋‹ค.

์„œ๋น„์Šค ๊ฐœ๋ฐœ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ์ด 4x1473 ๊ฐœ์˜ ๊ณ„์‚ฐ๋œ ์œ ์‚ฌ๋„๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฅผ sortingํ•œ ๋’ค [4:9]๋กœ ์Šฌ๋ผ์ด์‹ฑํ•˜๋ฉด ์œ ์ €๊ฐ€ ์„ ํƒํ•œ ๊ด€๊ด‘์ง€ 4๊ฐœ์™€ ์œ ์‚ฌํ•œ ๊ด€๊ด‘์ง€ 5๊ฐœ๋ฅผ ๋„์ถœํ•  ์ˆ˜ ์žˆ๋‹ค.
image


๋ฒกํ„ฐ ์ €์žฅ ๋ฐฉ์‹

1473๊ฐœ ์ด๋ฏธ์ง€์˜ ๋ฐฑํ„ฐ๋ฅผ ๊ตฌํ•œ ๋’ค db์— ์ €์žฅํ•ด๋†“๋Š” ์ ์ ˆํ•œ ๋ฐฉ์‹์„ ๊ณ ๋ฏผํ–ˆ๋‹ค. ๊ธฐ์กด์— ๊ตฌ์ถ•ํ•ด๋†“์€ ๊ด€๊ณ„ํ˜•db์ธ mariadb์— ํ…Œ์ด๋ธ” ํ˜•์‹์œผ๋กœ ์ €์žฅํ•  ์ˆ˜๋„ ์žˆ๊ฒ ๋‹ค. ๋‹ค๋งŒ ์šฉ๋Ÿ‰์ด ๋น„๊ต์  ํฌ๋ฉฐ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽ์ด ์žก์•„๋จน์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ž˜์„œ ์กฐํšŒ์— ์‹œ๊ฐ„์ด ๋” ๊ฑธ๋ฆฐ๋‹ค๋Š” ๋งน์ ์ด ์กด์žฌํ–ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋น„์ •ํ˜• NoSQL ์ค‘ ๋ชฝ๊ณ db์— ๋ฐฑํ„ฐ๋ฅผ ์ €์žฅํ•  ๊ฒƒ์„ ๊ตฌ์ƒํ–ˆ๋‹ค. ํ…Œ์ด๋ธ” ํ˜•ํƒœ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฐฑํ„ฐ ๊ฐ™์€ ๋น„๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋ฅผ ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ. ๋ฌผ๋ก  ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋ชฝ๊ณ db์˜ ์ €์žฅ ๊ณต๊ฐ„ ๋ถ€์กฑ์œผ๋กœ ์ด๋ฏธ์ง€ ๋ฐฑํ„ฐ๋Š” csv ํŒŒ์ผ๋กœ ์ €์žฅํ•ด์„œ ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ–ˆ๋‹ค. ์ด ๊ณผ์ •์—์„œ csvํŒŒ์ผ๋กœ ์ €์žฅํ•  ๋•Œ csvํŒŒ์ผ์ด ๋ฐฑํ„ฐ๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ์ €์žฅํ•˜์ง€ ์•Š๊ณ  ๋ฆฌ์ŠคํŠธ์— โ€˜โ€™๋ฅผ ์–‘์ชฝ์— ๋ถ™์ธ ๋ฌธ์ž์—ด๋กœ ์ €์žฅํ•˜๋Š” ์ด์Šˆ๊ฐ€ ์žˆ์–ด ๋ฌธ์ž์—ด์„ ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋กœ์ง์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ–ˆ๋‹ค. image


๋ชจ๋ธ ์„œ๋น™ ํ”Œ๋กœ์šฐ ์„ค๊ณ„

image

์ถ”์ฒœ ๋ชจ๋ธ ์„œ๋น™ ํ”Œ๋กœ์šฐ. ์œ ์‚ฌ๋„ ํ–‰๋ ฌ์ด ์•„๋‹ˆ๋ผ ๋ฐฑํ„ฐ๋ฅผ db์— ์ €์žฅํ•ด๋†“๊ธฐ๋กœ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ˜น์‹œ ์„œ๋น„์Šค ์ฝ”๋“œ ์‹คํ–‰ ์‹œ ์œ ์‚ฌ๋„ ๊ณ„์‚ฐ ๋ฐ sorting์— ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฌ๋Š”์ง€ ๊ด€์ฐฐํ•ด์•ผํ–ˆ๋‹ค. ๋‹คํ–‰ํžˆ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ์ด์Šˆ๋Š” ์—†์—ˆ๋‹ค.

์ถ”์ฒœ์„œ๋น„์Šค ๋กœ์ง ๊ตฌ์„ฑ

์ด๋Š” 4x1473๊ฐœ์˜ ๊ณ„์‚ฐ๋œ ์œ ์‚ฌ๋„๋ฅผ sortingํ•œ ๊ฒƒ์ด๋‹ค. row3์— ๋Œ€ํ•ด์„œ๋งŒ ์ฆ‰, ๊ฒฐ๊ตญ ํ•œ ๊ด€๊ด‘์ง€์— ๋Œ€ํ•œ ์ถ”์ฒœ๋งŒ ํ•˜๊ฒŒ ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๋ฐœ๋ผ๋“œ, ํž™ํ•ฉ, ๋ฝ ์„ ๊ณจ๋ž๋Š”๋ฐ ๊ฒฐ๊ตญ ๋ฐœ๋ผ๋“œ์™€ ์œ ์‚ฌํ•œ ๊ฒƒ๋“ค๋งŒ ์ถ”์ฒœํ•˜๊ฒŒ ๋˜๋Š” ์ƒํ™ฉ์ด์—ˆ๋‹ค. ํŽธํ–ฅ ๋ฌธ์ œ ๊ฐœ์„ ์„ ์œ„ํ•ด ๊ฐ๊ฐ ์ถ”์ฒœํ•ด์ฃผ๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ”๊ฟจ๋‹ค.

Evaluation๊ณผ Future Work

-์œ ์ €์˜ ์„ ํƒ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์—ˆ๋‹ค๋ฉด ํ˜‘์—… ํ•„ํ„ฐ๋ง์ด๋‚˜ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ธฐ๋ฒ•์„ ์ ์šฉํ•ด๋ณผ ์ˆ˜ ์žˆ์—ˆ์„ํ…๋ฐ ์‹ค์ œ ๊ธฐ์—… ๋น„์ฆˆ๋‹ˆ์Šค ๊ณผ์ •์ด ์•„๋‹ˆ์–ด์„œ ์ด๋ฅผ ์‹คํ˜„ํ•˜์ง€ ๋ชป ํ•œ ๊ฒƒ์ด ์•„์‰ฝ๋‹ค. ๊ธฐํšŒ๊ฐ€ ๋œ๋‹ค๋ฉด ํ˜‘์—… ํ•„ํ„ฐ๋ง์ด๋‚˜ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ธฐ๋ฒ•์„ ๊ตฌํ˜„ํ•ด๋ณด๊ณ  ์‹ถ๋‹ค. A/B test ๊ฐ™์€ ์„ฑ๋Šฅ ํ‰๊ฐ€๋„ ํ•ด๋ณด๊ณ  ์‹ถ๋‹ค.

-ํƒœ๊ทธ ์œ ์‚ฌ๋„, ํ…์ŠคํŠธ ์œ ์‚ฌ๋„๋ฅผ ๋™์‹œ์— ๊ณ ๋ คํ•œ ์ถ”์ฒœ์‹œ์Šคํ…œ์„ ๊ตฌ์„ฑํ•ด๋ณด๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•ด๋ณด๊ณ  ์‹ถ์—ˆ์œผ๋‚˜ ์ด๋ฏธ์ง€ ์œ ์‚ฌ๋„์— ์น˜์ค‘ํ•˜๋Š๋ผ ๋‹ฌ์„ฑํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.

-์ตœ์ข…์ ์ธ ๊ด€๊ด‘์ง€ ์ถ”์ฒœ์—์„œ ํŠน์ • ๊ด€๊ด‘์ง€์— ํŽธํ–ฅ์ด ์ƒ๊ธฐ๋Š” ์ด์Šˆ๋ฅผ ๊ต์ •ํ•˜์˜€๋‹ค. ๋‹ค๋งŒ ์‹ค์ œ ๋”์šฑ ๋ณต์žกํ•œ input ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ์ƒํ™ฉ์—์„œ๋Š” ๋” ์ •๊ตํ•œ ์ถ”์ฒœ ๋กœ์ง ๊ตฌ์„ฑ์ด ์š”๊ตฌ๋  ๊ฒƒ์ด๋‹ค. ์‹ค์ œ ๊ธฐ์—…์—์„œ ์“ฐ๋Š” ์ถ”์ฒœ ๋กœ์ง์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์กฐ์‚ฌํ•ด๋ณผ ๊ฒƒ์ด๋‹ค.

-๊ธฐ์—… ํ™œ๋™์ด ์•„๋‹ˆ์–ด์„œ ์‚ฌ์‹ค์ƒ ์ถ”์ฒœ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ๊ฐ€ ๋ถ€์žฌ์ค‘์ด๋ผ๋Š” ์ ์ด ์•„์‰ฝ๋‹ค.

-AiHub์—์„œ ์ฐพ์€ ์—ฌํ–‰ ๊ฒฝ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ๊ด€๊ด‘์ง€ ๊ฐ„ ์‚ฌํšŒ์—ฐ๊ฒฐ๋ง ๋ถ„์„, ๊ด€๊ด‘์ง€ ํด๋Ÿฌ์Šคํ„ฐ๋ง ๋“ฑ์„ ๊ถ๋ฆฌํ–ˆ์œผ๋‚˜ ์„œ๋น„์Šคํ™”ํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.

-์ถ”์ฒœ์‹œ์Šคํ…œ๊ณผ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜์— ์žˆ์–ด SOTA๋ผ ํ•  ์ˆ˜ ์žˆ๋Š” transformer๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š์•˜๋‹ค. ์„ ๋„์ ์ธ ๋ชจ๋ธ์„ ์ฐพ์•„์„œ ์ ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ์กฐ๊ธˆ์€ ๊ตฌ์‹์˜ ๋ชจ๋ธ์ด๋ผ๋„ ์ง์ ‘ ๊ตฌ์กฐ์™€ ์ด๋ก ์„ ๊ณต๋ถ€ํ•˜๊ณ  ํ•ด๋‹น ๋งฅ๋ฝ์—์„œ ์ฐธ์‹ ํ•œ ํ”Œ๋กœ์šฐ๋ฅผ ์งœ๊ธฐ ์œ„ํ•ด ์น˜์—ดํ•˜๊ฒŒ ๊ณ ๋ฏผํ•ด๋ณด๋Š” ๊ฒƒ์ด ์ข€ ๋” ๋‚ด์‹ค์žˆ๋Š” ๊ณผ์ •์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋˜ํ•œ ์ด๋ ‡๊ฒŒ ์ง์ ‘ ์„ค๊ณ„ํ•˜๊ณ  ๊ตฌํ˜„ํ•ด๋‚ธ ๊ฒฝํ—˜์€ ์ดํ›„ SOTA ๋ชจ๋ธ์„ ํ™œ์šฉํ•˜๊ณ  ๊ทธ ์ด์ƒ์„ ๋šซ๊ธฐ ์œ„ํ•œ ์ œ๋ฐ˜์ด ๋  ๊ฒƒ์ด๋‹ค.

๐Ÿ’ฌ ์ฑ—๋ด‡

001 002 003


004 005

์ฑ—๋ด‡ ๋ชจ๋ธ ์„ค๊ณ„

๋งˆ

์ฑ—๋ด‡ ๋ชจ๋ธ ์„œ๋น™ ํ”Œ๋กœ์šฐ

๋งˆ์šฉ

๐ŸŒ API ์„ค๊ณ„์„œ

์นด์นด์˜ค API

tmap API

GEMINI-Pro API

๐Ÿ—ƒ๏ธ ERD

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-03-20 แ„‹แ…ฉแ„’แ…ฎ 12 44 56

๐Ÿ—๏ธ ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜

แ„‹แ…ฐแ†ธแ„‹แ…กแ„แ…ตแ„แ…ขแ†จแ„Žแ…ฅ

1. ๊ด€๊ด‘์ง€(์Œ์‹์ , ์ˆ™๋ฐ•) ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ

2. ๊ด€๊ด‘์ง€ ์„ค๋ช… ๋ฐ์ดํ„ฐ

3. ์ฑ—๋ด‡ ๋ฐ์ดํ„ฐ

4. ์ด๋ฏธ์ง€ ์ถ”์ฒœ ๋ฐ์ดํ„ฐ

5. ๊ด€๊ด‘์ง€๋ณ„ ์ถ”์ฒœ ๋ฐ์ดํ„ฐ

๐Ÿ’ป ๊ธฐ์ˆ  ์Šคํƒ

๋ถ„๋ฅ˜ ํ•ญ๋ชฉ
FRONT-END Tmap API,KAKAO API, HTML, CSS
BACK-END Django, Python, Kakao API, GEMINI-Pro API, Tmap API
DATA Python, MySQL(Maria DB), MongoDB
CI/CD Docker, AWS S3
ํ˜‘์—… Slack, Git

๐ŸŽˆ ๊ฒฐ๊ณผ๋ฌผ

(๊ฒฐ๊ณผ๋ฌผ ๋‚ด์šฉ)