240216_mvc_api.md

๋…ธ์ฝ”๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ rete js์˜ ๊ตฌ์กฐ ์ž์ฒด๊ฐ€ ์‚ฌ์‹ค MVC ํŒจํ„ด์ธ๋ฐ, ์šฐ๋ฆฌ๋Š” ์ด ์ค‘ Control ๋ถ€๋ถ„์˜ ์—ญํ• ์„ SidePanel๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ญํ• 
๋™์ž‘

Model

๋…ธ๋“œ ๋ฐ์ดํ„ฐ

๋ฐ์ดํ„ฐ ์ €์žฅ

๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ

โฌ‡๏ธ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ

โฌ†๏ธ ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’ ์ „๋‹ฌ

Control

์ธํ’‹ ์ปดํฌ๋„ŒํŠธ

์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ํ‘œ์‹œ

์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’ ๋ฐ›๊ธฐ

โฌ‡๏ธ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ

Component

๋…ธ๋“œ UI

๋…ธ๋“œ ์ •๋ณด ๋ฐ ์—ฐ๊ฒฐ ๊ตฌ์กฐ ๊ฐ€์‹œํ™”

๋ฌธ์ œ์ƒํ™ฉ 1 - ๊ฑฐ๋Œ€ํ•œ Control์€ ๋˜ ๋‹ค๋ฅธ MVC ํŒจํ„ด์„ ๋งŒ๋“ ๋‹ค

Control == SidePanel ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์„ ๋•Œ, ๋ถ„๋ฆฌํ•œ ๋งŒํผ ์ด SidePanel์˜ ์—ญํ• ์ด ์ ์  ์ปค์กŒ๊ณ , ๋‹จ์ˆœํžˆ ์‚ฌ์šฉ์ž์™€ interaction ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์„ ๋„˜์–ด์„œ์„œ ๊ทธ ์•ˆ์—์„œ ๋˜ ์„ค์ •๋œ input ๊ฐ’์„ ๊ธฐ๋ฐ˜์œผ๋กœ api ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์™€์„œ ํ™”๋ฉด์— ํ‘œ์‹œํ•ด์•ผ ํ•˜๋Š” ์ •๋„๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

mvcํŒจํ„ด์„ ์ ์šฉํ•œ trainer pannel ํ™”๋ฉด

์ปดํฌ๋„ŒํŠธ๊ฐ€ ๊ฑฐ๋Œ€ํ•ด์ง€๋Š” ๊ฒƒ์„ ๋ง‰๊ณ ์ž api๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์˜ค๋Š” ํ•จ์ˆ˜๋“ค์„ ContextAPI๋ฅผ ํ™œ์šฉํ•ด์„œ ๊บผ๋‚ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. TrainContext๊ฐ€ ๋˜๋‹ค๋ฅธ Model์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ•จ์ˆ˜๋“ค์„ ํ˜ธ์ถœํ•˜๋Š” ๋ฒ„ํŠผ์€ TrainControl์ด๋ผ๋Š” ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๋ถ„๋ฆฌํ•ด์ฃผ์—ˆ๊ณ , ๋ฐ›์•„์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ์ง€ํ•˜๊ณ  d3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•ด์„œ ๊ทธ๋ž˜ํ”„๋กœ ํ‘œ์‹œํ•˜๋Š” TrainResultTab์€ View์˜ ์—ญํ• ์„ ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ •๋ฆฌํ•˜์ž๋ฉด

์ด๋ ‡๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์™œ ํ•„์š”ํ–ˆ๋Š”๋ฐ?

์ œ๊ฐ€ train์„ ์œ„ํ•œ ๋…ธ๋“œ์˜ ํŒจ๋„(์ปจํŠธ๋กค)๋งŒ ์ด๋ ‡๊ฒŒ ๊ตฌ์„ฑํ•˜๊ฒŒ๋œ ์ด์œ ๊ฐ€ ์žˆ๋Š”๋ฐ์š”.

์œ ์ €๊ฐ€ ํ•™์Šต ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ธฐ ๊นŒ์ง€ ๊ฑฐ์ณ์•ผํ•˜๋Š” ๋‹จ๊ณ„์—์„œ ํ•„์š”ํ•œ ๋ฒ„ํŠผ๋“ค์ด ๊ธฐ์กด์—๋Š” ์—ฌ๊ธฐ์ €๊ธฐ ์‚ฐ์žฌ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. DataConvert ํƒญ์—์„œ train์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋…ธ๋“œ๋“ค์„ pytorch์ฝ”๋“œ๋กœ ๋ณ€ํ™˜์‹œํ‚ค๊ณ , Train result ํƒญ์œผ๋กœ ๋„˜์–ด๊ฐ€ ํ•™์Šต์„ ์‹œ์ž‘ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ , ํ•™์Šต ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์•„์˜ค๋Š” ๊ณผ์ •์—์„œ ์œ ์ €๊ฐ€ ๋งˆ์šฐ์Šค๋ฅผ ์ด๊ณณ ์ €๊ณณ ๋ˆŒ๋Ÿฌ์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ด ๋ฒ„ํŠผ๋“ค์„ ํ•œ ๊ณณ์— ๋ชจ์•„๋†“๊ณ  ์œ ์ €๋กœ ํ•˜์—ฌ๊ธˆ '๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด์ž'๋Š” ์ƒ๊ฐ ์™ธ์— ๋‹ค๋ฅธ ์ƒ๊ฐ์ด ๋“ค์ง€ ์•Š๊ฒŒ๋” ์œ ๋„ํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

  1. ์žฅ์ 

    1. ๋ฒ„ํŠผ์„ ํ•œ ์ปดํฌ๋„ŒํŠธ์—์„œ ๊ด€๋ฆฌ

    2. UX๊ฐœ์„ :

      1. ์œ ์ €๊ฐ€ ์ˆœ์ฐจ์ ์ธ ์ž‘์—…์„ ํ•œ ๊ณณ์—์„œ ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ

      2. ์ˆœ์ฐจ์ ์œผ๋กœ ๋ฒ„ํŠผ ๋น„ํ™œ์„ฑํ™”ํ•˜์—ฌ ์œ ์ € ์›Œํฌํ”Œ๋กœ์šฐ ์ง„ํ–‰๋„๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ์— ์šฉ์ดํ•จ

  2. ์ ์šฉํ™”๋ฉด

    1. ๋…ธ๋“œ ์—ฐ๊ฒฐ ์งํ›„

      1. ๋…ธ๋“œ ์—ฐ๊ฒฐ ์งํ›„

    2. convert

      1. convert

    3. train ์‹œ์ž‘ ์ดํ›„

      1. train ์‹œ์ž‘ ์ดํ›„

๋ฐฐ์šด ์  - ์žฌ์‚ฌ์šฉ์„ฑ

์ปดํฌ๋„ŒํŠธ์˜ ์žฌ์‚ฌ์šฉ์„ฑ์ด ๊ทน๋Œ€ํ™”๋˜๋Š” ๊ฒƒ๋„ ์ฒด๊ฐํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•™์Šต ๊ฒฐ๊ณผ๋งŒ ๋ชจ์•„์„œ ๋ณด์—ฌ์ฃผ๋Š” Detail Page๋ฅผ ๊ฐœ๋ฐœํ•  ๋•Œ View๋กœ ์‚ฌ์šฉ๋˜์—ˆ๋˜ TrainResultTab์ด props๋„ ์“ธ ํ•„์š” ์—†์ด ๊ทธ๋Œ€๋กœ import๋งŒ ํ•˜๋ฉด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด ์žฌ์‚ฌ์šฉ์ด ๋งค์šฐ ๊ฐ„ํŽธํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Last updated