์ฝ˜ํ…์ธ ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

Ultralytics ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ: YOLO ๋ชจ๋ธ์„ ํ†ตํ•œ ์‹ค์‹œ๊ฐ„ ๋ฌผ์ฒด ๊ฐ์ง€

Ultralytics HUB ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ด๋ฏธ์ง€

Ultralytics GitHub ๊ณต๊ฐ„ Ultralytics LinkedIn ๊ณต๊ฐ„ Ultralytics ํŠธ์œ„ํ„ฐ ๊ณต๊ฐ„ Ultralytics YouTube ๊ณต๊ฐ„ Ultralytics TikTok ๊ณต๊ฐ„ Ultralytics ์ธ์Šคํƒ€๊ทธ๋žจ ๊ณต๊ฐ„ Ultralytics ๋ถˆํ™”

Google Play ์Šคํ† ์–ดย 

Ultralytics ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์€ ์‹ค์‹œ๊ฐ„ ๋ฌผ์ฒด ๊ฐ์ง€๋ฅผ ์œ„ํ•ด ์•ˆ๋“œ๋กœ์ด๋“œ ๊ธฐ๊ธฐ์—์„œ YOLO ๋ชจ๋ธ์„ ์ง์ ‘ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ด ์•ฑ์€ ๋ชจ๋ธ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ TensorFlow Lite์™€ ๊ฐ€์†์„ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ๋ธ๋ฆฌ๊ฒŒ์ดํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์œผ๋กœ ๋ฌผ์ฒด๋ฅผ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.



Watch: Ultralytics HUB ์•ฑ ์‹œ์ž‘ํ•˜๊ธฐ(IOS ๋ฐ Android)

์ •๋Ÿ‰ํ™” ๋ฐ ๊ฐ€์†

Android ๊ธฐ๊ธฐ์—์„œ ์‹ค์‹œ๊ฐ„ ์„ฑ๋Šฅ์„ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด YOLO ๋ชจ๋ธ์€ FP16 ๋˜๋Š” INT8 ์ •๋ฐ€๋„๋กœ ์–‘์žํ™”๋ฉ๋‹ˆ๋‹ค. ์–‘์žํ™”๋Š” ๋ชจ๋ธ์˜ weights and biases ์˜ ์ˆ˜์น˜ ์ •๋ฐ€๋„๋ฅผ ์ค„์—ฌ ๋ชจ๋ธ์˜ ํฌ๊ธฐ์™€ ํ•„์š”ํ•œ ๊ณ„์‚ฐ๋Ÿ‰์„ ์ค„์ด๋Š” ํ”„๋กœ์„ธ์Šค์ž…๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ ๋ชจ๋ธ์˜ ์ •ํ™•๋„์— ํฐ ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์œผ๋ฉด์„œ ์ถ”๋ก  ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

FP16 ์ •๋Ÿ‰ํ™”

FP16(๋˜๋Š” ๋ฐ˜์ •๋ฐ€๋„) ์–‘์žํ™”๋Š” ๋ชจ๋ธ์˜ 32๋น„ํŠธ ๋ถ€๋™์†Œ์ˆ˜์  ์ˆซ์ž๋ฅผ 16๋น„ํŠธ ๋ถ€๋™์†Œ์ˆ˜์  ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ชจ๋ธ์˜ ํฌ๊ธฐ๊ฐ€ ์ ˆ๋ฐ˜์œผ๋กœ ์ค„์–ด๋“ค๊ณ  ์ถ”๋ก  ํ”„๋กœ์„ธ์Šค์˜ ์†๋„๊ฐ€ ๋นจ๋ผ์ง€๋Š” ๋™์‹œ์— ์ •ํ™•๋„์™€ ์„ฑ๋Šฅ ๊ฐ„์˜ ๊ท ํ˜•์ด ์ž˜ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

INT8 ์ •๋Ÿ‰ํ™”

INT8(๋˜๋Š” 8๋น„ํŠธ ์ •์ˆ˜) ์–‘์žํ™”๋Š” 32๋น„ํŠธ ๋ถ€๋™์†Œ์ˆ˜์  ์ˆซ์ž๋ฅผ 8๋น„ํŠธ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ชจ๋ธ์˜ ํฌ๊ธฐ์™€ ๊ณ„์‚ฐ ์š”๊ตฌ ์‚ฌํ•ญ์„ ๋”์šฑ ์ค„์—ฌ์ค๋‹ˆ๋‹ค. ์ด ์–‘์žํ™” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์†๋„๊ฐ€ ํฌ๊ฒŒ ํ–ฅ์ƒ๋  ์ˆ˜ ์žˆ์ง€๋งŒ ์ˆ˜์น˜ ์ •๋ฐ€๋„๊ฐ€ ๋‚ฎ์•„์ ธ ํ‰๊ท  ํ‰๊ท  ์ •๋ฐ€๋„(mAP)๊ฐ€ ์•ฝ๊ฐ„ ๊ฐ์†Œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

INT8 ๋ชจ๋ธ์—์„œ์˜ ๋งต ๊ฐ์†Œ

INT8 ๋ชจ๋ธ์˜ ์ˆ˜์น˜ ์ •๋ฐ€๋„๊ฐ€ ๊ฐ์†Œํ•˜๋ฉด ์–‘์žํ™” ๊ณผ์ •์—์„œ ์•ฝ๊ฐ„์˜ ์ •๋ณด ์†์‹ค์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋กœ ์ธํ•ด mAP๊ฐ€ ์•ฝ๊ฐ„ ๊ฐ์†Œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ INT8 ์ •๋Ÿ‰ํ™”๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ƒ๋‹นํ•œ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ๊ณ ๋ คํ•˜๋ฉด ์ด๋Ÿฌํ•œ ์ ˆ์ถฉ์•ˆ์„ ์ˆ˜์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

๋ธ๋ฆฌ๊ฒŒ์ดํŠธ ๋ฐ ์„ฑ๋Šฅ ๊ฐ€๋ณ€์„ฑ

Android ๊ธฐ๊ธฐ์—์„œ๋Š” ๋ชจ๋ธ ์ถ”๋ก ์„ ๊ฐ€์†ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ๋ธ๋ฆฌ๊ฒŒ์ดํŠธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ธ๋ฆฌ๊ฒŒ์ดํŠธ์—๋Š” CPU, GPU, Hexagon ๋ฐ NNAPI๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ธ๋ฆฌ๊ฒŒ์ดํŠธ์˜ ์„ฑ๋Šฅ์€ ๋””๋ฐ”์ด์Šค์˜ ํ•˜๋“œ์›จ์–ด ๊ณต๊ธ‰์—…์ฒด, ์ œํ’ˆ ๋ผ์ธ ๋ฐ ๋””๋ฐ”์ด์Šค์— ์‚ฌ์šฉ๋œ ํŠน์ • ์นฉ์…‹์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

  1. CPU: ๊ธฐ๋ณธ ์˜ต์…˜์œผ๋กœ, ๋Œ€๋ถ€๋ถ„์˜ ๊ธฐ๊ธฐ์—์„œ ํ•ฉ๋ฆฌ์ ์ธ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  2. GPU: ๋””๋ฐ”์ด์Šค์˜ GPU๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ถ”๋ก  ์†๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค. ๊ฐ•๋ ฅํ•œ GPU๊ฐ€ ํƒ‘์žฌ๋œ ๋””๋ฐ”์ด์Šค์—์„œ ์ƒ๋‹นํ•œ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. Hexagon: ๋” ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ํ€„์ปด์˜ ํ—ฅ์‚ฌ๊ณค DSP๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์€ ํ€„์ปด ์Šค๋ƒ…๋“œ๋ž˜๊ณค ํ”„๋กœ์„ธ์„œ๊ฐ€ ํƒ‘์žฌ๋œ ๋””๋ฐ”์ด์Šค์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. NNAPI: Android ์‹ ๊ฒฝ๋ง API(NNAPI)๋Š” Android ๊ธฐ๊ธฐ์—์„œ ML ๋ชจ๋ธ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ถ”์ƒํ™” ๊ณ„์ธต ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. NNAPI๋Š” CPU, GPU, ์ „์šฉ AI ์นฉ(์˜ˆ: Google์˜ Edge TPU, ๋˜๋Š” Pixel Neural Core)๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ๊ฐ€์†๊ธฐ๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์ฃผ์š” ๊ณต๊ธ‰์—…์ฒด, ํ•ด๋‹น ์ œํ’ˆ๊ตฐ, ์ธ๊ธฐ ๋””๋ฐ”์ด์Šค ๋ฐ ์ง€์›๋˜๋Š” ๋Œ€๋ฆฌ์ธ์„ ๋ณด์—ฌ์ฃผ๋Š” ํ‘œ์ž…๋‹ˆ๋‹ค:

๊ณต๊ธ‰์—…์ฒด ์ œํ’ˆ ๋ผ์ธ ์ธ๊ธฐ ๋””๋ฐ”์ด์Šค ์ง€์›๋˜๋Š” ๋Œ€๋ฆฌ์ธ
ํ€„์ปด ์Šค๋ƒ…๋“œ๋ž˜๊ณค(์˜ˆ: 800 ์‹œ๋ฆฌ์ฆˆ) ์‚ผ์„ฑ ๊ฐค๋Ÿญ์‹œ S21, ์›ํ”Œ๋Ÿฌ์Šค 9, ๊ตฌ๊ธ€ ํ”ฝ์…€ 6 CPU, GPU, ํ—ฅ์‚ฌ๊ณค, NNAPI
์‚ผ์„ฑ ์—‘์‹œ๋…ธ์Šค(์˜ˆ: ์—‘์‹œ๋…ธ์Šค 2100) ์‚ผ์„ฑ ๊ฐค๋Ÿญ์‹œ S21(๊ธ€๋กœ๋ฒŒ ๋ฒ„์ „) CPU, GPU, NNAPI
MediaTek ์ฐจ์›(์˜ˆ: ์ฐจ์› 1200) ๋ฆฌ์–ผ๋ฏธ GT, ์ƒค์˜ค๋ฏธ ๋ ˆ๋“œ๋ฏธ ๋…ธํŠธ CPU, GPU, NNAPI
HiSilicon ๊ธฐ๋ฆฐ(์˜ˆ: ๊ธฐ๋ฆฐ 990) ํ™”์›จ์ด P40 Pro, ํ™”์›จ์ด ๋ฉ”์ดํŠธ 30 Pro CPU, GPU, NNAPI
NVIDIA ํ…Œ๊ทธ๋ผ(์˜ˆ: ํ…Œ๊ทธ๋ผ X1) ์—”๋น„๋””์•„ ์‰ด๋“œ TV, ๋‹Œํ…๋„ ์Šค์œ„์น˜ CPU, GPU, NNAPI

์–ธ๊ธ‰๋œ ๋””๋ฐ”์ด์Šค ๋ชฉ๋ก์€ ์ „์ฒด ๋ชฉ๋ก์ด ์•„๋‹ˆ๋ฉฐ ํŠน์ • ์นฉ์…‹ ๋ฐ ๋””๋ฐ”์ด์Šค ๋ชจ๋ธ์— ๋”ฐ๋ผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ญ์ƒ ๋Œ€์ƒ ๊ธฐ๊ธฐ์—์„œ ๋ชจ๋ธ์„ ํ…Œ์ŠคํŠธํ•˜์—ฌ ํ˜ธํ™˜์„ฑ๊ณผ ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ํ™•์ธํ•˜์„ธ์š”.

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

Ultralytics ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ์‹œ์ž‘ํ•˜๊ธฐ

Ultralytics Android ์•ฑ์„ ์‹œ์ž‘ํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์„ธ์š”:

  1. Google Play ์Šคํ† ์–ด์—์„œ Ultralytics ์•ฑ์„ ๋‹ค์šด๋กœ๋“œํ•˜์„ธ์š”.

  2. Android ๋””๋ฐ”์ด์Šค์—์„œ ์•ฑ์„ ์‹คํ–‰ํ•˜๊ณ  Ultralytics ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธํ•ฉ๋‹ˆ๋‹ค. ์•„์ง ๊ณ„์ •์ด ์—†๋Š” ๊ฒฝ์šฐ ์—ฌ๊ธฐ์—์„œ ๊ณ„์ •์„ ๋งŒ๋“œ์„ธ์š”.

  3. ๋กœ๊ทธ์ธํ•˜๋ฉด ํ•™์Šต๋œ YOLO ๋ชจ๋ธ ๋ชฉ๋ก์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ฐ์ฒด ๊ฐ์ง€์— ์‚ฌ์šฉํ•  ๋ชจ๋ธ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  4. ์•ฑ์— ๋””๋ฐ”์ด์Šค์˜ ์นด๋ฉ”๋ผ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

  5. ๊ฐ์ง€ํ•˜๋ ค๋Š” ๋ฌผ์ฒด๋ฅผ ๊ธฐ๊ธฐ์˜ ์นด๋ฉ”๋ผ๋กœ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค. ์•ฑ์ด ๊ฐ์ฒด๋ฅผ ๊ฐ์ง€ํ•˜๋ฉด ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ฒฝ๊ณ„ ์ƒ์ž์™€ ํด๋ž˜์Šค ๋ ˆ์ด๋ธ”์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  6. ์•ฑ์˜ ์„ค์ •์„ ์‚ดํŽด๋ณด๊ณ  ๊ฐ์ง€ ์ž„๊ณ„๊ฐ’์„ ์กฐ์ •ํ•˜๊ณ  ํŠน์ • ๊ฐœ์ฒด ํด๋ž˜์Šค๋ฅผ ํ™œ์„ฑํ™” ๋˜๋Š” ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋“ฑ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Ultralytics ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด์ œ YOLO ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ๋ฌผ์ฒด ๊ฐ์ง€ ๊ธฐ๋Šฅ์„ ์†๋์—์„œ ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฑ์˜ ๊ธฐ๋Šฅ์„ ์‚ดํŽด๋ณด๊ณ  ํŠน์ • ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋งž๊ฒŒ ์„ค์ •์„ ์ตœ์ ํ™”ํ•ด ๋ณด์„ธ์š”.



Created 2023-11-12, Updated 2024-06-21
Authors: glenn-jocher (7), sergiuwaxmann (2), RizwanMunawar (1)

๋Œ“๊ธ€