Canary๋ ๋จธ์ ๋ฌ๋์ ํ์ฉํ์ฌ ์ฌ์ง ์์ ๋ณด์ ์๋ฐ ๊ฐ๋ฅ์ฑ์ด ์๋ ์์๋ฅผ ์๋ณํ๊ณ , ์๋ ๋ชจ์์ดํฌ ์ฒ๋ฆฌ๋ฅผ ํ๊ณ , ์ด๋ฅผ ์ฌ์ฉ์์๊ฒ ๊ฒฝ๊ณ ํด์ฃผ๋ ํตํฉ ๋ณด์ ๊ฒฝ๋ณด ์์คํ ์ ๋๋ค. Canary App, Canary in Instagram, Admin logweb์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ, ์ฑ์์ ์ฒ๋ฆฌ๋ ์ฌ์ง์๋ QR์ฝ๋๊ฐ ๋ค์ด๊ฐ ์ฒ๋ฆฌ ์ฌ๋ถ๋ฅผ ์ฝ๊ฒ ์๋ณํ ์ ์์ต๋๋ค.
๋ณธ ํ๋ก์ ํธ๋ ์ฌ์ง์ ๋ณด์ ๋ด์ฉ์ ์ ๊ฑฐํ๋ ๊ธฐ๋ฅ๊ณผ ๊ทธ๋ฌํ ๊ธฐ๋ฅ์ ๊ฐ์ง ์นด๋ฉ๋ผ๋ฅผ ์ ๊ณตํจ์ผ๋ก์,
- ๊ตฐ ๋ด์์ ์นด๋ฉ๋ผ๋ฅผ ์ฌ์ฉ ๊ฐ๋ฅํ๊ฒ ํจ๊ณผ ๋์์,
- SNS์ ์ฌ๋ฆด ์ฌ์ง์ ๋ณด์ ์๋ฐ ๊ฐ๋ฅ์ฑ์ ๊ฒฝ๊ณ ํ์ฌ ์ฌ์ฉ์๊ฐ ์๋ฐ์ ์ผ๋ก ๋ณด์์ ์ค์ ํ ์ ์๊ฒ ํฉ๋๋ค.
- ๋ ํ์ฌ SNS์ฌ๋ผ๊ฐ ์๋ ๊ฒ์๋ฌผ์ ๊ฒ์ฌ๋ฅผ ํด ๋ณด์์ ๋ํ ๊ฒฝ๊ฐ์ฌ์ ์ผ์ผํฌ ์ ์์ต๋๋ค.
๐์ฃผ์ ์ ์ ๋ฌธ์
- 2018๋ 12์ 27์ผ ๊ตญ๋ฐฉ๋ถ๋ โ๋ณ์๋ฌธํ ํ์ ์ ์ฑ โ์ผ๋ก ๋ณ์ฌ๋ค์ ์ผ๊ณผ ํ ํธ๋ํฐ ์ฌ์ฉ์ ๊ฒฐ์ ํ์ต๋๋ค.
- ์ด ์ํฅ์ผ๋ก ๊ตฐ๋ ๋ด์ ๋ง์ ๋ถ์กฐ๋ฆฌ๊ฐ ์ฌ๋ผ์ก๊ณ ๋ณ์ฌ๋ค์ ์คํธ๋ ์ค๊ฐ ์ค์ด๋๋ ๋ฑ ์ฌ๋ฌ ๊ธ์ ์ ์ธ ํจ๊ณผ๊ฐ ๋ํ๋ฌ์ต๋๋ค.
- ํ์ง๋ง ๊ตฐ์ฌ ๋ณด์์ ์ด์ ๋ก ํด๋ํฐ์ ์ค์ํ ๊ธฐ๋ฅ ์ค ํ๋์ธ ์นด๋ฉ๋ผ ์ฌ์ฉ์ ์ ๋ฉด์ ์ผ๋ก ํต์ ํ๊ณ ์๋ ์ํฉ์ ๋๋ค.
- ํ์ฌ '๊ตญ๋ฐฉ๋ชจ๋ฐ์ผ๋ณด์' ์ดํ๋ก ๊ตฐ ์ฅ๋ณ๋ค์ ์นด๋ฉ๋ผ ์ฌ์ฉ์ด ์ ๋ฉด์ ์ผ๋ก ์ฐจ๋จ๋ ์ํฉ์ ๋๋ค.
- ์ถ์ต ๋จ๊ธฐ๊ธฐ, ๋ถ๋ชจ๋๊ป ์์ ์ ๋ชจ์ต ๋ณด์ฌ๋๋ฆฌ๊ธฐ, ๊ณต์ต์ ์ํ ์ ๋ณด ๋ฑ ์นด๋ฉ๋ผ๊ฐ ์์ด์ผ๋ง ๊ฐ๋ฅํ ์ผ๋ค์ ํ ์ ์๊ณ , ์ด๋ก ์ธํ ์ฅ๋ณ๋ค์ ์ฌ๊ธฐ ์ ํ๊ฐ ๋ฐ์ํ๊ณ ์์ต๋๋ค.
- ๊ทธ๋ฌ๋ ์นด๋ฉ๋ผ ์ฌ์ฉ์ ์ ์ฝ ์์ด ํ์ฉํ ์ ๊ตฐ์ฌ๊ธฐ๋ฐ ๋ฑ์ ์ ์ถ ๊ฐ๋ฅ์ฑ์ด ์กด์ฌ, ๊ตญ๊ฐ ์๋ณด์ ์ฌ๊ฐํ ์ํ์ด ๊ฐํด์ง ์ ์์ต๋๋ค.
- "๋ณด์ ์๋ฐ ๊ฐ๋ฅ์ฑ์ด ์๋ ์์๋ค์ ์๋ณํ์ฌ ๋ชจ์์ดํฌ ์ฒ๋ฆฌ๋ฅผ ํด ์ฃผ๋ ์นด๋ฉ๋ผ๋ฅผ ๋ง๋ค์."
- "๋ชจํธํ ๊ตฐ์ฌ ๋ณด์ ๊ท์ ์ ์ฌ์ฉ์์๊ฒ ์ ํํ๊ฒ ์๋ ค์ฃผ์ด ๋ณด์ ์ฌ๊ณ ๋ฅผ ์ฌ์ ์ ๋ฐฉ์งํ์."
- "๋ํ, ์ด๋ฏธ ์ ๋ก๋ ๋ SNS ๊ฒ์๊ธ๋ ์ฌ์ฉ์๊ฐ ์์ฒญํ๋ค๋ฉด ๋ณด์์๋ฐ ๊ฐ๋ฅ์ฑ์ ๊ฒฝ๊ณ ํด ์ฃผ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ์."
๐์ฌ์ฉ์ ์ ์ ๋ฌธ์
๋ง ์๋๋ฐฐ์น๋ฅผ ๋ฐ์ ์์คํธ ์ด๋ณ. ํ๋ฐฐ๋ก ์ค๋งํธํฐ์ ๋ฐ๋๋ค.
- ์์คํธ ์ด๋ณ์ ์ฒ์์ผ๋ก ์ดํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ค. 0-1. ๊ตฐ๋ฒ, ์ด๋ฆ, ๊ณ๊ธ์ ์ ๋ ฅํ์ฌ ์์ ์ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ค.
- ๋๋์ด ์ค๋งํธํฐ์ ๋ฐ์ ๋๊ทผ๋๋ ๋ง์์ผ๋ก ์ฌ์ง์ ์ฐ๊ธฐ ์ํด ์ดํ๋ฆฌ์ผ์ด์ ์ ์ผ ๋ค.
- ์ดฌ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ์ ์นด๋ฉ๋ผ๋ฅผ ์ผ ํ ์ํ๊ด TV๋ฅผ ๋ฐฐ๊ฒฝ์ผ๋ก ์ฌ์ง์ ์ฐ๋๋ค.
- ์ ์ ํ, TV ๋ชจ๋ํฐ๊ฐ ๋ชจ์์ดํฌ ๋ ์ฌ์ง๊ณผ ํจ๊ป ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๊ฐ ์ถ๋ ฅ๋๋ค.
- ์ฌ์ง ์ ์ฅ ์ ์ฌ์ง์ QR์ฝ๋๊ฐ ์๊ฒจ์ง๋ค. QR์ฝ๋์๋ ์์คํธ ์ด๋ณ์ ๊ตฐ๋ฒ์ด ์ํธํ๋์ด ๋ค์ด๊ฐ๋ค.
- ๋ชจ์์ดํฌ๊ฐ ๋ ์ฌ์ง์ SNS์ ์ฌ๋ ค ์๋ํ๋ค.
๊ธด ๊ตฐ์ํ์ ๋๋ด๊ณ ๋๋์ด ์ ์ญํ ์ต์ข ํ ๋ณ์ฅ. ๊ฐ์ด ์ ์ญํ๋ ๋๊ธฐ๋ค๊ณผ ๊ธฐ๋ ์ฌ์ง์ ์ฐ๋๋ค.
- ์ต์ข ํ ๋ณ์ฅ๊ณผ ๋๊ธฐ๋ค์ ๋ถ๋ ์์์ ๊ธฐ๋ ์ฌ์ง์ ์ดฌ์ํ๋ค.
- SNS์ ์ด ๊ธ์ ๊ฒ์ํ๊ธฐ ์ , ์ต์ข ํ ๋ณ์ฅ์ ํน์ ์ฌ์ง์ ๊ตฐ์ฌ๋ณด์ ์๋ฐ์ ์๋์ง ๊ฑฑ์ ๋๋ค.
- ์ดํ๋ฆฌ์ผ์ด์ ์ ์คํํ ํ, ๋ฐฉ๊ธ ์ ์ฐ์ ์ฌ์ง์ ๊ฐค๋ฌ๋ฆฌ์์ ์ ํํ๋ค.
- ์ ์ ํ, ๋ถ๋๋งํฌ์ ๊ตฐ ํ์งํ ๋ถ๋ถ์ด ๋ชจ์์ดํฌ ๋ ์ฌ์ง๊ณผ ํจ๊ป ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๊ฐ ์ถ๋ ฅ๋๋ค.
- ์ฌ์ง ์ ์ฅ ์ ์ฌ์ง์ QR์ฝ๋๊ฐ ์๊ฒจ์ง๋ค. QR์ฝ๋์๋ ์ต์ข ํ ๋ณ์ฅ์ ๊ตฐ๋ฒ์ด ์ํธํ๋์ด ๋ค์ด๊ฐ๋ค.
- ์ต์ข ํ ๋ณ์ฅ์ ์์ฌํ๋ฉด์ SNS์ ์ฌ์ง์ ์ ๋ก๋ ํ๋ค.
์๋น๊ตฐ ์ ์์ง ์จ. ์ธ์คํ๊ทธ๋จ์ ์ฌ๋ ธ๋ ๊ตฐ๋ ์ฌ์ง๋ค์ ๋ณธ๋ค.
- ์ ์์ง ์จ๋ ์ธ์คํ๊ทธ๋จ์ ์ฌ๋ ธ๋ ํ๋ จ ์ฌ์ง์ ๋ณธ๋ค.
- ์๋ ์ฌ์ง์ ๋ณด๋ ์ค, ํ ์ฌ์ง์ ํฑํฌ๊ฐ ์ฐํ ๊ฒ์ ๋ณธ๋ค.
- Canary Instagram bot์ ์ด ์ฌ์ง์ ๊ฒํ ํด ์ค ๊ฒ์ ๋ฉ์์ง๋ก ์์ฒญํ๋ค.
- ์ ์ ํ, ํฑํฌ๊ฐ ๋ชจ์์ดํฌ ๋ ์ฌ์ง๊ณผ ํจ๊ป ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๋ฅผ ๋ฉ์์ง๋ก ๋ฐ๋๋ค.
- ์ ์์ง ์จ๋ SNS ์ฌ์ง์ ์์ ํ๋ค.
๐๊ฐ๋ฐ ๋ฌธ์
์ฑ์ ์ฒ์ ์คํ ์, ์ฌ์ฉ์๋ ์์ ์ ์ฑ๋ช ๊ณผ ๊ตฐ๋ฒ์ ํตํด ํ์๊ฐ์ ์ ์งํํฉ๋๋ค. ์ด ์ ๋ณด๋ ์ํธํ๋์ด ์ ์ฅ๋ฉ๋๋ค.
-
์นด๋ฉ๋ผ ๋ชจ๋: ๊ตฐ ๋ด๋ถ์์๋ ์ฌ์ฉ ๊ฐ๋ฅํ ์นด๋ฉ๋ผ์ ๋๋ค. ์ดฌ์ํ ์ฌ์ง ์์ ๋ณด์ ์๋ฐ ์์๋ฅผ ์๋ณ ํ ๋ชจ์์ดํฌ ์ฒ๋ฆฌํ์ฌ ๋ฐํํฉ๋๋ค.
์ฌ์ฉ์๊ฐ ์ฐ์ ์ฌ์ง์ ์ค๋งํธํฐ์ ๋ฐ๋ก ์ ์ฅ๋์ง ์๊ณ ์๋ฒ์ ์ ์ก๋์ด, ๋ณด์ ์๋ฐ ์์๋ฅผ ์๋ณ ํ ์ ์ ํ ๊ฐ๋๋ก ๋ชจ์์ดํฌ ์ฒ๋ฆฌํ์ฌ ๋ฐํ๋ฉ๋๋ค.
-
๊ฐค๋ฌ๋ฆฌ ๋ชจ๋: ๊ฐค๋ฌ๋ฆฌ์ ์ด๋ฏธ ์ ์ฅ๋ ์ฌ์ง์ ๋ชจ์์ดํฌ ํ ํ์๊ฐ ์์ ์, ํด๋น ์ฌ์ง์ ์ ๋ก๋ํ์ฌ ์นด๋ฉ๋ผ๋ก ์ดฌ์ํ ๋์ ๋์ผํ๊ฒ ๋ชจ์์ดํฌ ์ฒ๋ฆฌ๋ฅผ ํ ์ ์์ต๋๋ค.
๋ณด์ ์๋ฐ ์์๋ ์ฌ์ฉ์์ ์์ ๋ถ๋ ๋ฐ ์์น ์๋ณ ๊ฐ๋ฅ ์ฌ๋ถ, ๊ธฐ๋ฐ ์ ์ถ ๊ฐ๋ฅ ์ฌ๋ถ ๋ฑ์ ๊ณ ๋ คํ์ฌ ๋ค์๊ณผ ๊ฐ์ด ์ ์ ํ์์ต๋๋ค.
์ด(์์ด, ๋ฆฌ๋ณผ๋ฒ), ๋ฐฉํ์กฐ๋ผ, ๋ถ๋๋งํฌ, ๋ชจ๋ํฐ, ๋ ธํธ๋ถ, ์๋ฅ, ํ์งํ, ํฌ, ์ฐจ๋, ํฑํฌ, ๊ตฐ์ฉ ๋นํ๊ธฐ, ๋ฏธ์ฌ์ผ, ํญ๊ณต๋ชจํจ
๊ตฐ๋ณต์ ๊ฒฝ์ฐ ์ดฌ์ ๋น์ ๋งฅ๋ฝ์ ๋ฐ๋ผ ๋ณด์ ์ฌ๋ถ๊ฐ ๋ฌ๋ผ์ง๋ฏ๋ก ๋ชจ์์ดํฌ ์ฒ๋ฆฌ๋ ํ์ง ์๋ ์ฌ์ฉ์๊ฐ ๊ฒ์ถ ์ฌ๋ถ๋ฅผ ์ธ์งํ ์ ์๊ฒ ํฉ๋๋ค.
์ฒ๋ฆฌ๋ ์ฌ์ง์ด ๋ฐํ๋ ๋, ๊ฒ์ถ๋ ๊ฐ์ฒด์ ๋ฐ๋ผ ๋ฐ์ํ ์ ์๋ ์ํฉ์ ๋ํ ๊ฒฝ๊ณ ๋ฌธ์ ์ ์กํฉ๋๋ค. ๋ฐํ๋ ์ฌ์ง์ ํฐ์นํ๋ฉด ํ์ธํ ์ ์์ต๋๋ค.
๋ํ, ํ์๊ฐ์
์ ์
๋ ฅํ ๊ตฐ๋ฒ์ ์ํธํํ ๊ฐ์ ์ด์ฉํด ๋ง๋ QR์ฝ๋๊ฐ ์ฌ์ง์ ์ถ๊ฐ๋ฉ๋๋ค. ์ด๋ฅผ ์ด์ฉํ์ฌ ์ฌ์ง ์ฒ๋ฆฌ์์ ์ ์์ ํ์
ํ๊ฑฐ๋ ์ด๋ฏธ์ง ์ฒ๋ฆฌ ์ฌ๋ถ๋ฅผ ๋์ผ๋ก ์๋ณํ ์ ์์ต๋๋ค.
Canary app์ ์ฌ์ฉ log๋ฅผ ๋ณด๊ณ ์ model, dataset version๊ด๋ฆฌ๋ฅผ ํ ์ ์๋ API Server์
๋๋ค.
node js์์๋ ํด๋น ๊ธฐ๋ฅ์ ์ฐ๋ ๋งํผ ์ฌ๋ฌ ํ๋ซํผ์์ ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก REST API Server๋ก ๊ตฌ์ฑํ์ต๋๋ค.
Django๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ Django admin ๋ํ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฃผ์ sns ์ค ํ๋์ธ ์ธ์คํ๊ทธ๋จ ์ฌ์ฉ์์ ๋ณด์ ์๋ฐ ์ฌ๋ถ๋ฅผ ํ์งํ๊ณ , ์ฌ์ฉ์์๊ฒ direct message๋ก ๊ฒฝ๊ณ ํด์ค๋๋ค.
Canary app์์ ์ฌ์ฉ๋๋ ๋์ผํ model๋ก ์ํ ์์๋ฅผ ํ์งํ๊ณ , ์ฒ๋ฆฌ๋ ์ฌ์ง๊ณผ ๊ฒฝ๊ณ ๋ฌธ์ DM์ผ๋ก ๋ณด๋ ๋๋ค.
๋น๋๊ธฐ์ ์ฒ๋ฆฌ๋ฅผ ํตํด ๋์์ ์ฌ๋ฌ Request๊ฐ ๋ค์ด์๋ ๋์ํ ์ ์๊ฒ ๊ฐ๋ฐ๋์์ต๋๋ค.
ํ์ฌ ์ง์๋๋ ๊ฒ์ฌ ๊ธฐ๋ฅ์ ๊ฒ์๋ฌผ ๊ฒ์ฌ์ ์คํ ๋ฆฌ ๊ฒ์ฌ์ ๋๋ค.
- ๋์ (๋๋ Help)
- ์ฌ์ฉ์์๊ฒ ์ฌ์ฉ๋ฒ์ DM์ผ๋ก ์๋ดํฉ๋๋ค.
- ๊ฒ์๋ฌผ ๊ฒ์ฌํ๊ธฐ
- Canary๊ฐ ์ฌ์ฉ์๊ฐ ์ฌ๋ฆฐ Post ์ค, ๊ฒ์ฌ ๋์ง ์์ ๊ฐ์ฅ ์ต๊ทผ 3๊ฐ๋ฅผ ๊ฒ์ฌํฉ๋๋ค.
- ๊ฒ์ฌ๊ฐ ์๋ฃ๋๋ฉด ์ ์ ํ ๋ชจ์์ดํฌ ๋ ์ด๋ฏธ์ง์ ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๋ฅผ DM์ผ๋ก ๋ณด๋ด์ค๋๋ค. + Canary๊ฐ ํด๋น Post๋ฅผ Like ํฉ๋๋ค.
- ์คํ ๋ฆฌ ๊ฒ์ฌํ๊ธฐ
- Canary๊ฐ ์ฌ์ฉ์์ Story ์ค, osam_canary๊ฐ ํ๊ทธ ๋ story๋ฅผ ๊ฒ์ฌํฉ๋๋ค.
- ๊ฒ์ฌ๊ฐ ์๋ฃ๋๋ฉด ์ ์ ํ ๋ชจ์์ดํฌ ๋ ์ด๋ฏธ์ง์ ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๋ฅผ DM์ผ๋ก ๋ณด๋ด์ค๋๋ค.
- ECMAScript 6 ์ง์ ๋ธ๋ผ์ฐ์ ์ฌ์ฉ
- ๊ถ์ฅ: Google Chrome ๋ฒ์ ผ 77 ์ด์
- python >= 3.6
- pytorch >= 1.7
Node js | MySQL | Goorm Server Deploy |
Node js ์ค๋ช
-
Database ๋ช : Node_db
-
DB ๊ด๋ฆฌ์ ๋ช : node_admin
-
User Table
- id : ์ ์ id
- name : ์ ์ ์ด๋ฆ
- d_num : ์ ์ ๊ตฐ๋ฒ
- password : ์ ์ ๋น๋ฐ๋ฒํธ
- time : ์ ์ ์์ฑ TimeStamp
mysql> desc user_t;
+----------+-------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+-------------------+----------------+
| id | int(10) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | NO | | NULL | |
| d_num | varchar(10) | NO | UNI | NULL | |
| password | varchar(70) | NO | | NULL | |
| time | datetime | YES | | CURRENT_TIMESTAMP | |
+----------+-------------+------+-----+-------------------+----------------+
mysql> select * from user_t;
+----+-------------+------------+--------------------------------------------------------------+---------------------+
| id | name | d_num | password | time |
+----+-------------+------------+--------------------------------------------------------------+---------------------+
| 23 | test user | 2000001111 | 1234 | 2021-10-15 14:19:17 |
| 24 | 211015User2 | 2001112234 | $2b$08$lXHyNYavVlyr71UyREC54eppxSfTZGq41by4o9VeeqFfmE8oETJbO | 2021-10-15 14:47:18 |
| 25 | ์ค์ผํต | 2176032332 | $2b$08$B85JF1HCTvsYcGvZlFuG2OXlBNvascx6sD/La/k1x.VxO35whIa1i | 2021-10-15 14:50:49 |
| 26 | 211012User | 2012341234 | $2b$08$8OBxs8J3Qu9VKyno4KltXuVykBIOYUgX0Apf9NXdECF4cWt4XzVuC | 2021-10-16 07:53:41 |
+----+-------------+------------+--------------------------------------------------------------+---------------------+
- Upload Table
- uploader_d_num : ์ ๋ก๋ ์ ์ ์ ๊ตฐ๋ฒ
- img_id : ์ ์ ์ ๋ก๋ img id
- upload_time : img ์ ๋ก๋ TimeStamp
mysql> desc upload_t;
+----------------+-------------+------+-----+-------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-------------+------+-----+-------------------+-------+
| uploader_d_num | varchar(10) | NO | MUL | NULL | |
| img_id | varchar(30) | NO | PRI | NULL | |
| upload_time | datetime | YES | | CURRENT_TIMESTAMP | |
+----------------+-------------+------+-----+-------------------+-------+
mysql> select * from upload_t;
+----------------+-----------------------+---------------------+
| uploader_d_num | img_id | upload_time |
+----------------+-----------------------+---------------------+
| 2176000528 | decoded_1634309470576 | 2021-10-15 14:51:10 |
| 2176000528 | decoded_1634309639604 | 2021-10-15 14:53:59 |
| 2176000528 | decoded_1634309884641 | 2021-10-15 14:58:04 |
| 2176000528 | decoded_1634310044242 | 2021-10-15 15:00:44 |
| 2001112234 | decoded_1634370069825 | 2021-10-16 07:41:09 |
| 2001112234 | decoded_1634370191443 | 2021-10-16 07:43:11 |
+----------------+-----------------------+---------------------+
auth - Authentication Handling
POST /auth/create-user
parameters: {"name": "string", "d_num":"string", "password": "string"}
status: 201
respose: {"status":201,"user_name":name,"msg":'User Created Successful'}
POST /auth/login
parameters: {"d_num": "string", "password": "string"}
status: 200
respose: {"status":200,"msg":"User : ${db_result[0].name} => Login Successful"}
img - Images Handling
POST /img/upload
parameters: {"img_binary":"base64 encoded string","d_num":"string"}
status: 200 -> 204 or 205๋ก ๋ณ๊ฒฝ ๊ณ ๋ ค
respose: {"status":200,"imd_id":img_id,"user_d_num":d_num}
GET /img/output-params/:img_id/:d_num
parameters: {"name": "string", "d_num":"string", "password": "string"}
status: 200
respose: {"status":201,"user_name":name,"msg":'User Created Successful'}
Flutter | Libraries from pub.dev | Dart |
Flutter / Dart Packages
PyTorch | OpenCV | CVAT | Roboflow |
๐AI ์ค๋ช
-
Semantic segmentation: ์ฌ๋์ ์ ์ธํ ๋ฐฐ๊ฒฝ์ ์ฒ๋ฆฌ ๋์ด๋: ์๋์ ์ผ๋ก ๋ฎ์(์ฌ๋์ ๋์์ผ๋ก ํ์ต๋ model ์ฌ์ฉ) ์ฅ์ : ๊ธฐ์กด ๋ชจ๋ธ์ ์ฌ์ฉ ์ ์ฌ๋์ ๊น๋ํ๊ฒ ๊ตฌ๋ณ ๊ฐ๋ฅ ๋จ์ : ์ค์ง ์ฌ๋/๋ฐฐ๊ฒฝ๋ง ๊ตฌ๋ณ ๊ฐ๋ฅ, ์ฌ๋ ์์ ๋ฌผ์ฒด์ ๋ํด์ ๊ฐ์งํ์ง ๋ชปํ ์ ์์ (ex: ๊ธฐ๋ฐ ๋ฌธ์๋ฅผ ๋ค๊ณ ์๋ ์ฌ๋)
-
Object detection: ํ์ตํ Class๋ค์ ์ฌ์ง ์์์ ๊ฒ์ถํ์ฌ ์ฒ๋ฆฌ ๋์ด๋: ์๋์ ์ผ๋ก ๋์(We need to get dataset, annotate them, train model...) ์ฅ์ : ์ฌ๋ฌ ๋ค์ํ class๋ค์ ๊ฒ์ถํ์ฌ ์ฌ์ง์ ์ํฉ์ ๋๋ต์ ์ผ๋ก ํ์ ๊ฐ๋ฅ, ๋ณด์ ์๋ฐ ๊ฐ์ฒด๋ detect๋ง ๋๋ค๋ฉด ์ฒ๋ฆฌ ๊ฐ๋ฅ(๋ณด์์ฑ), ์ฌ๋ ์ด์ธ์ ๊ฐ์ฒด๋ค๋ ์ด๋ ค๋ผ ์ ์์ ๋จ์ : segmentation๋ณด๋ค ์๋์ ์ผ๋ก ๊น๋ํ์ง ๋ชปํ ์ฌ์ง ์ฒ๋ฆฌ, ๋์ ๋ฐ์ดํฐ ์์ง ๋์ด๋์ ํฐ ์๊ฐ ์์
๋ณด๋ค ๋์ ๋ณด์์ฑ์ ์ค์ํ๊ธฐ๋ก ๊ฒฐ์ --> Object detection
Version 1: ImageNet Object Localization Challenge
๋ฌธ์ ์
- ๋ฐ์ดํฐ ์ ๋ถ์กฑ
- ๋๋ค์ ๋ฌผ์ฒด๊ฐ ์ ์ค์ ์์น
- ๋๋ค์ ๋ฌผ์ฒด๊ฐ ์ฌ์ง ์ ์ฒด๋ฅผ ์ฐจ์ง
ํด๊ฒฐ๋ฐฉ์ 1 - ๋ฐ์ดํฐ ์ถ๊ฐ
Orignal Dataset | Add more data |
ํด๊ฒฐ๋ฐฉ์ 2, 3 - augmentation ๋ฐฉ๋ฒ ๋ณ๊ฒฝ
๊ธฐ์กด | ๋ณ๊ฒฝ |
YOLOv5, Efficientnet, SSGlite ๋ฑ์ ๋ชจ๋ธ๋ค์ ๊ณ ๋ ค.
์ฑ๋ฅ๊ณผ ํ์ต์ ๋ค์ด๊ฐ๋ ์๊ฐ ๋ฑ์ ์ข
ํฉ์ ์ผ๋ก ํ๋จ --> YOLOv5 ๊ฒฐ์ .
(Efficientnet: ํ์ต ์๊ฐ์ด ์ง๋์น๊ฒ ๋ง์ด ์์, SSGlite: YOLOv5๋ณด๋ค ๋ฎ์ ์ฑ๋ฅ)
- YOLOv5 (original github)
๋ฌธ์ ์
- ๋ฎ์ ์ฑ๋ฅ
- ๋ฌด๊ฑฐ์ด ๋ชจ๋ธ (ex. yolov5l6)
ํด๊ฒฐ๋ฐฉ์
- knowledge distillation (paper link)
enhance | model | precision | recall | mAP_0.5 | mAP_0.5:0.95 |
---|---|---|---|---|---|
Before add dataset | yolov5m6 | 0.602 | 0.651 | 0.671 | 0.535 |
None (Add dataset) | yolov5m6 | 0.736 | 0.779 | 0.815 | 0.599 |
mosaic_9 50% | yolov5m6 | 0.756 | 0.775 | 0.809 | 0.602 |
mosaic_9 100% | yolov5m6 | 0.739 | 0.813 | 0.806 | 0.594 |
knowledge distillation | yolov5m6 | 0.722 | 0.822 | 0.807 | 0.592 |
Original Image | Result Image |
์คํ ๋ฐ ์์ (link)
Node js | MySQL | AWS |
๐MLOps ์ค๋ช
๋ค์ํ ํ๋ซํผ์ผ๋ก ๋ชจ๋ธ ํ์ต์ ์๋ํ ํ ์ ์๋๋ก REST API์๋ฒ๋ก ๊ตฌ์ฑํ์ต๋๋ค. ๋ฐ์ดํฐ, ๋ชจ๋ธ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์๋์ผ๋ก ํด์ฃผ๊ณ , ์ต์ ๋ฒ์ ์ ๋ชจ๋ธ์ detection code๊ฐ ์๋์ผ๋ก ์ ๋ฐ์ดํธ ๋๋๋ก ๊ตฌ์ฑํ์ต๋๋ค.
APIํธ์ถ์ ํตํด file(dataset) upload, train model, check model version, donwload model, insert & select detection log๋ฅผ ํ ์ ์์ต๋๋ค. ๋๋ต์ ์ธ flow๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- file upload๋ฅผ ํตํด ๋ฐ์ดํฐ์ ์ ์ถ๊ฐํฉ๋๋ค.
- train model์ ์ด์ฉํ์ฌ AzureML์ ๋ชจ๋ธ ํ์ต์ ๋ฑ๋กํ๊ณ ํ์ต์ด ์๋ฃ๋๋ฉด ๋ชจ๋ธ weight์ ํจ๊ป ํ๊ฐ matrix๊ฐ ์ ์ฅ๋ฉ๋๋ค.
- node js์์ best model์ ์กฐํํ ํ ์์ (node js)๋ณด๋ค ์ข์ ๋ชจ๋ธ์ด ์์ผ๋ฉด ๋ชจ๋ธ์ ์ ๋ฐ์ดํธ ํฉ๋๋ค.
- node js์์ ๋ณด์์๋ฐ๋ฌผ์ฒด๋ฅผ ์ฐพ์ผ๋ฉด log๋ฅผ ๋ณด๋ด django์ log๋ฅผ ์์ต๋๋ค.
- api ํธ์ถ์ ํตํด log๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
ํด๋น ์๋ฒ๋ REST API์๋ฒ์ด๊ณ , ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด์๊น์ง ์ธ์ ์ ์ ์งํ ํ์๊ฐ ์๋ค๊ณ ํ๋จ๋์ด JWT Authorization์ ์ ํํ์ต๋๋ค.
python manage.py createsuperuser
GET /admin
account POST /account/login
parameters: {"username": "string", "password": string"}
status: 201
respose: {"message": "string", "token": string}
deeplearning GET /deeplearning/files
status: 200
response: { "count": 0, "next": "string", "previous": "string", "results": [{"file": "string"}]}
POST /deeplearning/files
parameters: {"file": [FILE]}
status: 200
response: {"file": "string"}
GET /deeplearning/log
response {"count": 0, "next": "string", "previous": "string", "results": [{"username": "string", "log": "string", "create_at": "2021-10-14T13:50:37.279Z"}]}
POST /deeplearning/log
parameters: {"username": "string", "log": "string", "create_at": "2021-10-14T13:52:33.709Z"}
status: 201
response: {"username": "string", "log": "string", "create_at": "2021-10-14T13:52:33.709Z"}
GET /deeplearning/models
status: 200
response: {"file": "string", "result": "string", "version": 0, "matrix": 0}
POST /deeplearning/train
headers: {'Authorization': 'Bearer [TOKEN]'}
status: 201
response: {"file": "string"}
์ฝ๋ ๋ฐ ์คํ (link)
git clone https://github.com/osamhack2021/AI_APP_WEB_Canary_Canary.git
cd AI_APP_WEB_Canary_Canary/APP/myApp
flutter run -d web-server --web-hostname=0.0.0.0
apk ํ์ผ ๋งํฌ
์์ ๋งํฌ์ ๋ค์ด๊ฐ์
์ ๋ค์ด๋ก๋ ํ ์ค์นํ์๋ฉด ๋ฉ๋๋ค.
AI๋ฅผ ์ด์ฉํ์ฌ ์ด๋ฏธ์ง๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด, AI(BE)์ requirements๊ฐ ์ถฉ์กฑ๋ ์ํ์์ Node ์๋ฒ๋ฅผ ๊ตฌ๋ํด์ผ ํฉ๋๋ค.
cd node_server
npm install # ํตํด ํ์ํ ํจํค์ง๋ค ๋ค์ด๋ก๋
node app.js # (์ผํ์ฑ ์ํ)
git clone https://github.com/osamhack2021/AI_APP_WEB_Canary_Canary/
cd AI_APP_WEB_Canary_Canary/'AI(BE)'/deeplearning/kwoledge_distillation_yolov5/
pip install -r requirements.txt
git clone https://github.com/osamhack2021/AI_APP_WEB_Canary_Canary/
cd AI_APP_WEB_Canary_Canary/'AI(BE)'/
pip install -r requirements.txt
python manage.py createsuperuser
python manage.py migrate
python manage.py runserver 0.0.0.0:8080
- ์น์ฑ ํน์ APK๋ฅผ ์ค์นํ์ฌ ์ฑ์ ์ ์ํ๋ค
- 3์ด ๊ฐ์ Splash ํ๋ฉด ์ดํ ํํ๋ฉด์ ์ ์ํ๋ค.
- go๋ฒํผ์ ๋๋ฅด๋ฉด ์ฌ์ง ์ฒ๋ฆฌ๋ฅผ ์ํ ๋ก๊ทธ์ธ ํ๋ฉด์ผ๋ก, help๋ฒํผ์ ๋๋ฅด๋ฉด ํด๋น github repository๋ก ์ ์ํ๋ค.
- ๋ก๊ทธ์ธ ์ฐฝ์์ ์ฌ๋ฐ๋ฅธ ์ ๋ณด๋ฅผ ์ ๋ ฅํ๊ณ go๋ฒํผ์ ๋๋ฅด๋ฉด option page๋ก, 'ํ์๊ฐ์ ํ๋ฌ๊ฐ๊ธฐ'๋ฒํผ์ ๋๋ฅด๋ฉด ํ์๊ฐ์ ์ฐฝ์ผ๋ก ๋์ด๊ฐ๋ค
- ํ์๊ฐ์ ์ฐฝ์์ ์ฌ๋ฐ๋ฅธ ์ ๋ณด๋ฅผ ์ ๋ ฅํ๊ณ ๊ฐ์ ์๋ฃ ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ค์ ๋ก๊ทธ์ธ ์ฐฝ์ผ๋ก ๋์์จ๋ค
- option์ฐฝ์์๋ ๊ฐค๋ฌ๋ฆฌ์์ ์ฌ์ง์ ๊ฐ์ ธ์ ์ฒ๋ฆฌํ ์ ์๋ Gallery๋ฒํผ๊ณผ ์นด๋ฉ๋ผ๋ก ๋ฐ๋ก ์ฐ์ ์ฌ์ง์ ์ฒ๋ฆฌํ๋ Camera ๋ฒํผ ์ค์ ํ๋๋ฅผ ์ ํํ๋ฉด ๋๋ค.
- ์ด๋ฏธ์ง๋ฅผ ๊ณ ๋ฅด๊ฑฐ๋ ์ฐ์ ํ, post server ๋ฒํผ์ ๋๋ฅด๋ฉด loading ํ๋ฉด์ผ๋ก ๋์ด๊ฐ๋ค.
- loading ํ๋ฉด์์ ์ด๋ฏธ์ง ์ฒ๋ฆฌ๊ฐ ์๋ฃ๋๋ฉด '๊ฒฐ๊ณผ ๋ณด๋ฌ๊ฐ๊ธฐ' ๋ฒํผ์ด ๋ฑ์ฅํ๊ณ , ๊ทธ ๋ฒํผ์ ๋๋ฅด๋ฉด ์ฒ๋ฆฌ๋ ์ด๋ฏธ์ง๋ฅผ ํ์ธ ๊ฐ๋ฅํ ์ฐฝ์ผ๋ก ๋์ด๊ฐ๋ค.
- ๋ณด์์๋ฐ ๊ฐ๋ฅ์ฑ์ด ๋ชจ์์ดํฌ ์ฒ๋ฆฌ๋ ์ด๋ฏธ์ง๋ฅผ ํด๋ฆญํ๋ฉด ๊ทธ์ ๊ด๋ จ๋ ๊ฒฝ๊ณ ๋ฌธ์ ํ์ธํ ์ ์๋ค.
- ์ฒ๋ฆฌ๋ ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ๊ธฐ ์ํด์ 'save' ๋ฒํผ์ ๋๋ฅด๋ฉด ๋๋ค.
- save ๋ฒํผ์ ๋๋ฅด๋ฉด ์ฌ์ฉ์์ ์ํธํ๋ ๊ตฐ๋ฒ ๊ฐ์ ์ด์ฉํด ์ฒ๋ฆฌ๋ QRcode๊ฐ ์ด๋ฏธ์ง์ ์ฝ์ ๋๊ณ , ๊ทธ ์ฌ์ง์ ๊พน ๋๋ฅด๋ฉด ์ ์ฅ์ฌ๋ถ๋ฅผ ๋ฌป๋ ์๋ฆผ์ฐฝ์ด ๋ฌ๋ค.
- ๋ค์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ธฐ ์ํด์ 'Try Again' ๋ฒํผ์ ๋๋ฅด๋ฉด ๋๋ค.
git clone https://github.com/osamhack2021/AI_APP_WEB_Canary_Canary/
cd AI_APP_WEB_Canary_Canary/'AI(BE)'/
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver 0.0.0.0:8080
API๋ฌธ์ ์ฐธ๊ณ
instagram์์ 'osam_canary'๋ฅผ follow ํ ํ, ๋ช ๋ น์ด๋ฅผ Direct Message๋ก ๋ณด๋ธ๋ค
- ๊ฒ์๋ฌผ ๊ฒ์ฌ ๋ช ๋ น์ด(์ต๋ 3๊ฐ์ฉ) : ๊ฒ์๋ฌผ ๊ฒ์ฌํ๊ธฐ
- ์คํ ๋ฆฌ ๊ฒ์ฌ ๋ช ๋ น์ด : ์คํ ๋ฆฌ ๊ฒ์ฌํ๊ธฐ
2.1 ์คํ ๋ฆฌ ๊ฒ์ฌ ์ ์ฃผ์ ์ฌํญ : @osam_canary ๊ณ์ ์ ์คํ ๋ฆฌ์ ํ๊ทธํด์ฃผ์ธ์!
2.2 ์คํ ๋ฆฌ๋ ํ ๋ฒ์ ์ต๋ 10๊ฐ ๊ฒ์ฌ ๊ฐ๋ฅ
-
์ฅ๋ณ ์ฌ๊ธฐ์ง์
๊ตฐ ์ฅ๋ณ๋ค์ ๋ณธ ์ดํ์ ํ์ฉํจ์ผ๋ก์จ ๊ตฐ ๋ด๋ถ์์๋ ์์์ ์ธ๊ธํ ๊ฒ๊ณผ ๊ฐ์ด ๋ค์ํ ๋ฐฉ์์ผ๋ก ์นด๋ฉ๋ผ๋ฅผ ์ฌ์ฉํ ์ ์์ ๊ฒ์ ๋๋ค. ๋ํ, ์ ํ๋ฐ๊ณ ์๋ ์์ ์ ๋ํ ๊ถ๋ฆฌ๋ฅผ ์ผ๋ถ ์ธ์ ํจ์ผ๋ก์จ ์ฅ๋ณ๋ค์ ๋ํ ๋์ฐ๊ฐ ์ ์ฐจ ๋์์ง๋ ๊ฒ์ ๋ฌผ๋ก , ์ฅ๋ณ๋ค์ ์ฌ๊ธฐ๊ฐ ์ค๋ฅด๊ณ ๊ทธ๊ฐ์ ์๋ฐ๊ฐ์์ ์ผ๋ถ ๋ฒ์ด๋ ๋ณด๋ค ํ๊ธฐ์ฐจ๊ฒ ๋ณ์์ํ์ ์ด์ด๋๊ฐ ์ ์์ผ๋ฆฌ๋ผ ๊ธฐ๋๋ฉ๋๋ค. -
๋ณ์์ํ ๊ฐ์
์นด๋ฉ๋ผ ์ฌ์ฉ์ด ๊ฐ๋ฅํด์ง๋ฉด, ์ต๊ทผ ๋ ผ๋์ด ์ผ์๋ ๊ตฐ ๋ถ์ค๊ธ์์ด๋ ๊ตฐ ๋ด์์ ์ผ์ด๋ ์ ์๋ ๊ฐ์ข ๋ถ์กฐ๋ฆฌ/์ฌ๊ฑด์ฌ๊ณ ๋ฑ์ ํ์ฅ์ ์ดฌ์ํ ์ ์๊ฒ ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ง์์ ์ผ๋ก ๊ตฐ ๋ด์ ๋ถ์กฑํ ๋ถ๋ถ์ ๊ฐ์ ํด๋๊ฐ ์ ์๊ณ , ๋ถ์กฐ๋ฆฌ๋ ์ฌ๊ฑด์ฌ๊ณ ๋ฅผ ๋ฐฉ์งํ ์ ์์ด ๋ณ์์ํ ๊ฐ์ ์ด ๊ธฐ๋๋ฉ๋๋ค. -
SNS ๋ณด์ ๊ฐํ
Instagram์ Canary ๊ณ์ ์ ํ๋ก์ฐํ ๊ณ์ ๋ค์ ์คํ ๋ฆฌ, ๊ฒ์๊ธ์ ์ค์บํ๋ฉฐ ๋ณด์ ์๋ฐ ์์๊ฐ ์๋์ง ์ง์์ ์ผ๋ก ํ์งํ ์ ์์ต๋๋ค. -
๋ณด์ ์ธ์ ๊ฐํ
ํด๋น ์๋น์ค๋ฅผ ์ฌ์ฉํ๋ฉฐ ์์ ์ด ์ฐ๊ฑฐ๋ ์ ๋ก๋ํ ์ฌ์ง์ด sns ๋ณด์์ ์ด๋ค ๋ฐฉ์์ผ๋ก ์๋ฐํ๋์ง ์ ์ ์์ด ์ฌ์ฉ์์ ๋ณด์ ์ธ์์ ๊ฐํํ ์ ์์ต๋๋ค.
-
๋ชจ๋ธ ์ฑ๋ฅ ๊ฐ์ ๊ตฐ ๋ด ์ฌ์ด๋ฒ์ง์์ ๋ณด๋ฐฉ์ด๋ผ๋ ๋ํ๋ ๊ฐ๋ฐ ํ๊ฒฝ, ์ด๋ง์ ๋ ์ ํ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๊ตฐ ์ฅ๋ณ๋ค๋ก ์ด๋ค์ง ํ, ๋ณด์์์ ๋ฌธ์ ๋ก ์ธํ ๊ตญ๋ด ๊ตฐ ๊ด๋ จ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ์ ๋น์ฝํจ ๋ฑ, ์ฝ 1๋ฌ ๋์์ ์จ๋ผ์ธ ํด์ปคํค์ผ๋ก๋ ๋ง์กฑ์ค๋ฌ์ด ์ฑ๋ฅ์ ๋ฝ์๋ด๊ธฐ ์ด๋ ค์ ์ต๋๋ค.
๊ทธ๋ฌ๋, ์ด๊ธฐ recall ์์น 0.65 --> ๋ฐ์ดํฐ์ ์ฆ๊ฐ ํ 0.77 --> annotation๊ณผ self distillation ์ ์ฉ ํ 0.82.
YOLOv5 ๋ชจ๋ธ์ ์ํํ ์ฌ์ฉํ๊ธฐ ์ํด์ ํ๋์ class ๋น ์ ์ด๋ 1300์ฅ ์ด์์ ์ด๋ฏธ์ง๊ฐ ํ์ํ๋, ๋ฐ์ดํฐ์ ์ฆ๊ฐ ํ์๋ ์ ํฌ๋ ํ๋์ class ๋น ์ฝ 1000์ฌ์ฅ ๋ฟ์ด์์ต๋๋ค. ๋ํ ์ค์ ์ํฉ๊ณผ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ๋ถ์กฑํด ์ฑ๋ฅ์ด ๋ฎ์์ง๋ ํ์๋ ๋ฐ๊ฒฌํ์ต๋๋ค.
์ง์์ ์ธ ์ด์์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์๊ณ , ๊ทธ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ๊ฑฐ๋ ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐ ์ ์ฑ๋ฅ์ด ์์นํ ๊ฒ์ด๊ณ ์ด๋ฅผ ์ํด ์ง์์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์์งํ์ฌ ๋ฐ์ดํฐ์ ์ ํฌ๊ธฐ๋ฅผ ๋๋ ค๊ฐ๋ ์ค์ ๋๋ค. -
์งง์ง ์์ ์ด๋ฏธ์ง ์ฒ๋ฆฌ ์๊ฐ ์ด๋ 1. ์๋ฒ์ ์ฑ๋ฅ์ด ๋ฎ๊ณ 2. node js์ pytorch๊ฐ ํฐ๋ฏธ๋์ ํตํด ๋ฐ์ดํฐ๋ฅผ ๊ตํํจ์ผ๋ก ํจํค์ง๋ก๋, ๋ชจ๋ธ๋ก๋์ ๋ง์ ์๊ฐ์ด ์์๋ฉ๋๋ค.
๋ฐ๋ผ์ Javascript์์ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๊ฒ tensorflow.js๋ฅผ ํ์ฉํ์ฌ ๋ชจ๋ธ์ ๋ฏธ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋น ํ, semaphore์ ๋ณํํ์ฌ ํ์ฉํ๋ฉด ์คํ์๊ฐ์ด ์ค์ด๋ค ๊ฒ์ ๋๋ค.
๋ํ ํ์ฌ๋ knowledge distillation๋ง ์ ์ฉํ์ง๋ง ์ถํ์ pruning, quantization์ ์ ์ฉํ๋ฉด ๋์์ ์์์๋ฅผ ๋๋ฆด ์ ์์ต๋๋ค. -
์์ดํฐ ์ฌ์ฉ์ ์ง์
Canary app์ ๊ฒฝ์ฐ Android์ฉ์ผ๋ก๋ง ๊ฐ๋ฐ๋์์ต๋๋ค. Instagram siren์ ํตํด ์์ดํฐ ์ฌ์ฉ์๋ ๊ฐ์ ์ ์ผ๋ก ์ง์ํ๊ณ ์์ง๋ง, ์ถํ OS ์ ์ฉ ์ฑ์ ๊ฐ๋ฐํ์ฌ
๋ ๋ง์ ์ฌ์ฉ์๊ฐ ์๋น์ค๋ฅผ ์ํํ ์ด์ฉํ๊ฒ ํ ์์ ์ ๋๋ค.
-
ํ SNS์์ ์ฐ๊ณ
ํ์ฌ Instagram ๊ณ์ ๋ง ์ง์ํ๋ ๊ฒฝ๋ณด๊ธฐ ๊ธฐ๋ฅ์ facebook ๋ฑ์ ํ SNS์์๋ ์ง์ํจ์ผ๋ก์จ ๋ณด์์ฑ์ ๊ฐํํ ์ ์์ต๋๋ค. -
๊ตญ๋ฐฉ๋ชจ๋ฐ์ผ๋ณด์ ์ดํ ์ฐ๊ณ
ํ์ฌ ์นด๋ฉ๋ผ ์ฐจ๋จ์ ๋ด๋นํ๊ณ ์๋ ํด๋น ์ดํ๊ณผ ์ฐ๊ณํจ์ผ๋ก์จ ์นด๋ฉ๋ผ ์ฐจ๋จ/ํด์ ๊ธฐ๋ฅ์ ํ์ฉํด ์ฌ์ฉ์์ ์ดํ ๊ฐ์ ์ข ๋ฃ๋ฅผ ๋ง๊ณ , ์ฌ์ฉ์ฑ์ ๊ฐ์ ํ ์ ์์ต๋๋ค. -
๊ตญ๋ฐฉ์ธ์ฌ์ ๋ณด์ฒด๊ณ ์ฐ๊ณ
์ดํ ์ต์ด ์คํ ์ ์ด๋ฆ๊ณผ ๊ตฐ๋ฒ์ ์ด์ฉํด ๊ฐ์ ํ๋ค๋ ์ ์์ ์ฐฉ์ํ์ฌ, ๊ตญ๋ฐฉ์ธ์ฌ์ ๋ณด์ฒด๊ณ์ ์ฐ๊ณํจ์ผ๋ก์จ ์ฌ์ฉ์ ๊ด๋ฆฌ๊ฐ ์์ํด์ง ๊ฒ์ ๋๋ค. ๋ ํด๋น ์๋ฒ๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ ๋ณด์ ์ฌ์ง์ ์ผ๋ฐ ์๋ฒ์ ์ ์ฅํ ๋ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๋ณด์์ฑ์ ๊ฐํํ ์ ์์ต๋๋ค. -
๊ฒ์ถ ๊ฐ๋ฅํ ๊ฐ์ฒด ์ฆ๊ฐ/๋ณ๊ฒฝ์ผ๋ก ํ ๋ถ์ผ๋ก ํ์ฅ ๊ฐ๋ฅ
Object detection์ ์ฅ์ ์ด ๋๋ฌ๋๋ ๋ถ๋ถ์ ๋๋ค. ์ ํฌ ํ์ ๊ตฐ ๋ณด์ ๋ถ๋ถ์ ์ด์ ์ ๋ง์ถฐ ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ํ์ต์์ผฐ์ต๋๋ค. ์ด๋ฅผ ํ์ฅํด๋ณด๋ฉด ์ด๋จ๊น์? ์์ ์ด ๊ฒ์ถํ๊ณ ๋ชจ์์ดํฌํ๊ณ ์ถ์ ๊ฐ์ฒด์ dataset์ ๋ชจ๋ธ์ ํ์ต์ํค๋ฉด ํด๋น ๋ถ๋ถ์ ์๋์ผ๋ก ๋ชจ์์ดํฌ ํด ์ฃผ๋ ์์คํ ์ผ๋ก ํ์ฅ๋ฉ๋๋ค!
์๋ฅผ ๋ค์ด ๊ตฐ๋๊ฐ ์๋ ๋ค๋ฅธ ์กฐ์ง์์์ ๋ณด์ ์๋ฐ ๊ฐ์ฒด๋ฅผ ๋ชจ์์ดํฌํ ๋, ์ฌ์ฉ์์ ํน์ฑ์ ๋ฐ๋ผ ์์ธํ๊ฑฐ๋ ์ ์ ์ ์ธ ์ฅ๋ฉด ๋ฑ์ ์๋์ผ๋ก ์ฒ๋ฆฌํ ํ์๊ฐ ์์ ๋ ๋ฑ์์ ์ด ์์คํ ์ ํ์ฉํ ์ ์์ต๋๋ค.
์ ๊ตฐ์ธ๋ค์ ์นด๋ฉ๋ผ๋ฅผ ์์ ๋กญ๊ฒ ์ฐ์ง ๋ชป ํ ๊น?
์ธ์ ๋ถํด๊ฐ ๋ค์๋ ์ด ์๋ฌธ์ด ํด์ปคํค ๊ฒฝํ์กฐ์ฐจ ์๋ ์ก๊ตฐ ๋ฐ ๊ตญ์ง๋ถ๋ ๋ณ์ฌ 6๋ช
์ ๋ชจ์ด๊ฒ ํ์ต๋๋ค.
๊ตฐ์ธ๋ค์ ์์ ๋ก์ด ์นด๋ฉ๋ผ ์ฌ์ฉ๊ณผ, ํ๋ค๋ฆฌ์ง ์๋ ๊ตญ๊ฐ ๋ณด์์ ์ํด.
์๋ ํ์ญ๋๊น, Team Canary์ ๋๋ค.
Azure ML Studio | Github | Google meet | |
GoormIDE | Slack | Zoom> | FlutLab |
This project is licensed under the terms of the GNU GPLv3 license.
์นด๋๋ฆฌ์๊ฐ ์ด ์คํ์์ค ์ค yolov5์ Distilling-Object-Detectors๊ฐ ์์ต๋๋ค. ์ด๋ค์ ๊ฐ๊ฐ GNU GPL, MIT ๋ผ์ด์ผ์ค๋ฅผ ์ฐ๊ณ ์์ต๋๋ค. MIT ๋ผ์ด์ผ์ค๋ ์์ ์ ์ด์ฉ, ์์ค์ฝ๋ ๊ณต๊ฐ์๋ฌด์์ ์์ ๋ก์ฐ๋, GNU GPL ๋ผ์ด์ผ์ค๋ ์ฝ๋์ ์์ ์ ์ผ๋ก ์ด์ฉ ๊ฐ๋ฅํ๋ ๋ณ๊ฒฝ๋ ํ๋ก๊ทธ๋จ ์ญ์ ์์ค์ฝ๋๋ฅผ ๊ณต๊ฐํด์ผํฉ๋๋ค. ๋ฐ๋ผ์ '์นด๋๋ฆฌ์'๋ GNU GPL์ด ๋ ๊ฐ๋ ฅํ ๋ผ์ด์ผ์ค์ด๊ธฐ ๋๋ฌธ์ GNU GPL ๋ผ์ด์ผ์ค๋ฅผ ๋ฐ๋ฅด๊ธฐ๋ก ํ์ต๋๋ค.