YOLO11 AzureML์ ๐
Azure๋ ๋ฌด์์ธ๊ฐ์?
Azure๋ Microsoft ์ ํด๋ผ์ฐ๋ ์ปดํจํ ํ๋ซํผ์ผ๋ก, ์กฐ์ง์ด ์ํฌ๋ก๋๋ฅผ ์จ-ํ๋ ๋ฏธ์ค ๋ฐ์ดํฐ ์ผํฐ์์ ํด๋ผ์ฐ๋๋ก ์ฎ๊ธธ ์ ์๋๋ก ์ค๊ณ๋์์ต๋๋ค. ์ปดํจํ , ๋ฐ์ดํฐ๋ฒ ์ด์ค, ๋ถ์, ๋จธ์ ๋ฌ๋, ๋คํธ์ํน์ ํฌํจํ ๋ค์ํ ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ํตํด ์ฌ์ฉ์๋ ์ด๋ฌํ ์๋น์ค ์ค์์ ์ ํํ์ฌ ํผ๋ธ๋ฆญ ํด๋ผ์ฐ๋์์ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐ ๋ฐ ํ์ฅํ๊ฑฐ๋ ๊ธฐ์กด ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ์ ์์ต๋๋ค.
AzureML(Azure ๋จธ์ ๋ฌ๋)์ด๋?
์ผ๋ฐ์ ์ผ๋ก AzureML์ด๋ผ๊ณ ํ๋ Azure ๊ธฐ๊ณ ํ์ต์ ๋ฐ์ดํฐ ๊ณผํ์์ ๊ฐ๋ฐ์๊ฐ ์์ธก ๋ถ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ํจ์จ์ ์ผ๋ก ํฌํจํ ์ ์๋๋ก ์ง์ํ๋ ์์ ๊ด๋ฆฌํ ํด๋ผ์ฐ๋ ์๋น์ค๋ก, ์กฐ์ง์ด ๋๊ท๋ชจ ๋ฐ์ดํฐ ์งํฉ์ ์ฌ์ฉํ๊ณ ํด๋ผ์ฐ๋์ ๋ชจ๋ ์ด์ ์ ๊ธฐ๊ณ ํ์ต์ ์ ์ฉํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. AzureML์ ๋จธ์ ๋ฌ๋์ ๋ํ ์ ๊ทผ์ฑ, ์ฌ์ฉ ํธ์์ฑ, ํ์ฅ์ฑ์ ๋ชฉํ๋ก ํ๋ ๋ค์ํ ์๋น์ค์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๊ฐ๋ฐ์๊ฐ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ ์ต๋ํ ํ์ฉํ ์ ์๋๋ก ์๋ํ๋ ๋จธ์ ๋ฌ๋, ๋๋๊ทธ ์ค ๋๋กญ ๋ชจ๋ธ ํ์ต๊ณผ ๊ฐ์ ๊ธฐ๋ฅ๋ฟ๋ง ์๋๋ผ ๊ฐ๋ ฅํ Python SDK๋ฅผ ์ ๊ณตํฉ๋๋ค.
AzureML์ YOLO ์ฌ์ฉ์์๊ฒ ์ด๋ค ์ด์ ์ด ์๋์?
YOLO (You Only Look Once) ์ฌ์ฉ์๋ฅผ ์ํด AzureML์ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ ํ์ตํ๊ณ ๋ฐฐํฌํ ์ ์๋ ๊ฐ๋ ฅํ๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ํจ์จ์ ์ธ ํ๋ซํผ์ ์ ๊ณตํฉ๋๋ค. ๋น ๋ฅธ ํ๋กํ ํ์ ์ ์คํํ๊ฑฐ๋ ๋ ๊ด๋ฒ์ํ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ํ์ฅํ๋ ค๋ ๊ฒฝ์ฐ, AzureML์ ์ ์ฐํ๊ณ ์ฌ์ฉ์ ์นํ์ ์ธ ํ๊ฒฝ์ ์ฌ์ฉ์์ ํ์์ ๋ง๋ ๋ค์ํ ๋๊ตฌ์ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. AzureML์ ํ์ฉํ์ฌ ๋ค์์ ์ํํ ์ ์์ต๋๋ค:
- ๊ต์ก์ ์ํ ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ธํธ์ ์ปดํจํ ๋ฆฌ์์ค๋ฅผ ์ฝ๊ฒ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
- ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ, ๊ธฐ๋ฅ ์ ํ, ๋ชจ๋ธ ํ์ต์ ์ํ ๊ธฐ๋ณธ ์ ๊ณต ๋๊ตฌ๋ฅผ ํ์ฉํ์ธ์.
- ๋ชจ๋ธ ๋ฐ ๋ฐ์ดํฐ์ ๋ชจ๋ํฐ๋ง, ๊ฐ์ฌ, ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ํฌํจํ๋ ์ด์ ๊ตญํ๋์ง ์๋ MLOps(๋จธ์ ๋ฌ๋ ์ด์) ๊ธฐ๋ฅ์ผ๋ก ๋์ฑ ํจ์จ์ ์ผ๋ก ํ์ ํ์ธ์.
๋ค์ ์น์ ์์๋ ์ปดํจํ ํฐ๋ฏธ๋ ๋๋ ๋ ธํธ๋ถ์์ AzureML์ ์ฌ์ฉํ์ฌ YOLO11 ๊ฐ์ฒด ํ์ง ๋ชจ๋ธ์ ์คํํ๋ ๋ฐฉ๋ฒ์ ์์ธํ ์ค๋ช ํ๋ ๋น ๋ฅธ ์์ ๊ฐ์ด๋๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
์ ์ ์กฐ๊ฑด
์์ํ๊ธฐ ์ ์ AzureML ์์ ์์ญ์ ์ก์ธ์คํ ์ ์๋์ง ํ์ธํ์ธ์. ์๋ ๊ฒฝ์ฐ Azure์ ๊ณต์ ์ค๋ช ์์ ๋ฐ๋ผ ์ AzureML ์์ ์์ญ์ ๋ง๋ค ์ ์์ต๋๋ค. ์ด ์์ ์์ญ์ ๋ชจ๋ AzureML ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๋ ์ค์ ์ง์ค์ ๊ณต๊ฐ์ ์ญํ ์ ํฉ๋๋ค.
์ปดํจํ ์ธ์คํด์ค ๋ง๋ค๊ธฐ
AzureML ์์ ์์ญ์์ ์ปดํจํ > ์ธ์คํด์ค ์ปดํจํ > ์๋ก ๋ง๋ค๊ธฐ๋ฅผ ์ ํํ๊ณ ํ์ํ ๋ฆฌ์์ค๊ฐ ์๋ ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
ํฐ๋ฏธ๋์์ ๋น ๋ฅธ ์์
์ปดํจํ ์ ์์ํ๊ณ ํฐ๋ฏธ๋์ ์ฝ๋๋ค:
๊ฐ์ ํ๊ฒฝ ๋ง๋ค๊ธฐ
์ฝ๋ค ๊ฐ์ ํ๊ฒฝ์ ์์ฑํ๊ณ ๊ทธ ์์ pip๋ฅผ ์ค์นํฉ๋๋ค:
ํ์ํ ์ข ์์ฑ์ ์ค์นํฉ๋๋ค:
YOLO11 ์์ ์ํ
์์ธก:
์ด๊ธฐ ํ์ต๋ฅ ์ 0.01๋ก ์ค์ ํ์ฌ 10๊ฐ์ ์ํฌํฌ์ ๋ํ ํ์ง ๋ชจ๋ธ์ ํ๋ จํฉ๋๋ค:
์์ธํ ์ฌ์ฉ ๋ฐฉ๋ฒ์ Ultralytics CLI ์์ ํ์ธํ ์ ์์ต๋๋ค.
๋ ธํธ๋ถ์์ ๋น ๋ฅธ ์์
์ IPython ์ปค๋ ์์ฑ
์ปดํจํ ํฐ๋ฏธ๋์ ์ฝ๋๋ค.
์ปดํจํ ํฐ๋ฏธ๋์์ ๋ ธํธ๋ถ์์ ์ข ์์ฑ์ ๊ด๋ฆฌํ๊ธฐ ์ํด ์ฌ์ฉํ ์ ์์ดํผ์ปค๋์ ๋ง๋ค์ด์ผ ํฉ๋๋ค:
conda create --name yolo11env -y
conda activate yolo11env
conda install pip -y
conda install ipykernel -y
python -m ipykernel install --user --name yolo11env --display-name "yolo11env"
ํฐ๋ฏธ๋์ ๋ซ๊ณ ์ ๋ ธํธ๋ถ์ ๋ง๋ญ๋๋ค. ๋ ธํธ๋ถ์์ ์ ์ปค๋์ ์ ํํ ์ ์์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ๋ ธํธ๋ถ ์ ์ ์ด๊ณ ํ์ํ ์ข ์์ฑ์ ์ค์นํ ์ ์์ต๋๋ค:
%%bash
source activate yolo11env
cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx>=1.12.0
์ฃผ์ํ ์ ์ source activate yolo11env
๋ฅผ ๋ชจ๋ %%bash ์
์ ์ ์ฉํ์ฌ %%bash ์
์ด ์ํ๋ ํ๊ฒฝ์ ์ฌ์ฉํ๋๋ก ํฉ๋๋ค.
๋ฅผ ์ฌ์ฉํ์ฌ ๋ช ๊ฐ์ง ์์ธก์ ์คํํฉ๋๋ค. Ultralytics CLI:
%%bash
source activate yolo11env
yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'
๋๋ Ultralytics Python ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ์ ํ๋ จํ ์ ์์ต๋๋ค:
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.pt") # load an official YOLO11n model
# Use the model
model.train(data="coco8.yaml", epochs=3) # train the model
metrics = model.val() # evaluate model performance on the validation set
results = model("https://ultralytics.com/images/bus.jpg") # predict on an image
path = model.export(format="onnx") # export the model to ONNX format
์์ ํฐ๋ฏธ๋ ์น์ ์ ์ค๋ช ๋ ๋๋ก YOLO11 ์์ ์ ์คํํ๊ธฐ ์ํด Ultralytics CLI ๋๋ Python ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ค์ ๋จ๊ณ๋ฅผ ์ํํ๋ฉด ๋น ๋ฅธ ํ๊ฐํ์ ์ํด AzureML์์ YOLO11 ์ ๋น ๋ฅด๊ฒ ์คํํ ์ ์์ต๋๋ค. ๋ ๊ณ ๊ธ ์ฌ์ฉ๋ฒ์ ์ด ๊ฐ์ด๋์ ์์ ๋ถ๋ถ์ ๋งํฌ๋ ์ ์ฒด AzureML ์ค๋ช ์๋ฅผ ์ฐธ์กฐํ์ธ์.
AzureML๋ก ์์ธํ ์์๋ณด๊ธฐ
์ด ๊ฐ์ด๋๋ AzureML์์ YOLO11 ์ ์์ํ๊ณ ์คํํ๋ ๋ฐ ๋์์ด ๋๋ ์๊ฐ ์ญํ ์ ํฉ๋๋ค. ํ์ง๋ง ์ด ๊ฐ์ด๋๋ AzureML์ด ์ ๊ณตํ ์ ์๋ ๊ธฐ๋ฅ์ ์ผ๋ถ์ ๋ถ๊ณผํฉ๋๋ค. ๋จธ์ ๋ฌ๋ ํ๋ก์ ํธ์ ๋ํด ๋ ์์ธํ ์์๋ณด๊ณ AzureML์ ์ ์ฌ๋ ฅ์ ์ต๋ํ ํ์ฉํ๋ ค๋ฉด ๋ค์ ๋ฆฌ์์ค๋ฅผ ์ดํด๋ณด์ธ์:
- ๋ฐ์ดํฐ ์์ฐ ๋ง๋ค๊ธฐ: AzureML ํ๊ฒฝ ๋ด์์ ๋ฐ์ดํฐ ์์ฐ์ ํจ๊ณผ์ ์ผ๋ก ์ค์ ํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
- AzureML ์์ ์์ํ๊ธฐ: AzureML์์ ๋จธ์ ๋ฌ๋ ๊ต์ก ์์ ์ ์์ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํฌ๊ด์ ์ธ ์ดํด๋ฅผ ์ป์ผ์ธ์.
- ๋ชจ๋ธ ๋ฑ๋กํ๊ธฐ: ๋ฑ๋ก, ๋ฒ์ ๊ด๋ฆฌ ๋ฐ ๋ฐฐํฌ๋ฅผ ํฌํจํ ๋ชจ๋ธ ๊ด๋ฆฌ ๋ฐฉ๋ฒ์ ์์งํ์ธ์.
- AzureML Python SDK๋ก YOLO11 ํ๋ จํ๊ธฐ: AzureML Python SDK๋ฅผ ์ฌ์ฉํ์ฌ YOLO11 ๋ชจ๋ธ์ ํ๋ จํ๋ ๋ฐฉ๋ฒ์ ๋ํ ๋จ๊ณ๋ณ ๊ฐ์ด๋๋ฅผ ์ดํด๋ณด์ธ์.
- AzureML๋ก YOLO11 ๊ต์ก CLI: ๋ช ๋ น์ค ์ธํฐํ์ด์ค๋ฅผ ํ์ฉํ์ฌ AzureML์์ YOLO11 ๋ชจ๋ธ์ ๊ฐ์ํํ์ฌ ๊ต์ก ๋ฐ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
๋ชจ๋ธ ํ์ต์ ์ํด AzureML์์ YOLO11 ์ ์คํํ๋ ค๋ฉด ์ด๋ป๊ฒ ํ๋์?
๋ชจ๋ธ ํ์ต์ ์ํด AzureML์์ YOLO11 ์ ์คํํ๋ ค๋ฉด ๋ช ๊ฐ์ง ๋จ๊ณ๊ฐ ํ์ํฉ๋๋ค:
-
์ปดํจํ ์ธ์คํด์ค๋ฅผ ๋ง๋ญ๋๋ค: AzureML ์์ ์์ญ์์ ์ปดํจํ > ์ปดํจํ ์ธ์คํด์ค > ์๋ก ๋ง๋ค๊ธฐ๋ก ์ด๋ํ์ฌ ํ์ํ ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
-
ํ๊ฒฝ ์ค์ : ์ปดํจํ ์ธ์คํด์ค๋ฅผ ์์ํ๊ณ ํฐ๋ฏธ๋์ ์ฐ ๋ค์ ์ฝ๋ค ํ๊ฒฝ์ ๋ง๋ญ๋๋ค:
-
YOLO11 ์์ ์ ์คํํฉ๋๋ค: Ultralytics CLI ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ์ ํ์ต์ํต๋๋ค:
์์ธํ ๋ด์ฉ์ Ultralytics CLI ์์ ์ฌ์ฉ ์ง์นจ์ ์ฐธ์กฐํ์ธ์.
YOLO11 ๊ต์ก์ AzureML์ ์ฌ์ฉํ๋ฉด ์ด๋ค ์ด์ ์ด ์๋์?
AzureML์ ๋ชจ๋ธ ํ์ต์ ์ํ ๊ฐ๋ ฅํ๊ณ ํจ์จ์ ์ธ ์์ฝ์์คํ ( YOLO11 )์ ์ ๊ณตํฉ๋๋ค:
- ํ์ฅ์ฑ: ๋ฐ์ดํฐ์ ๋ชจ๋ธ์ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ ์ปดํจํ ๋ฆฌ์์ค๋ฅผ ์ฝ๊ฒ ํ์ฅํ ์ ์์ต๋๋ค.
- MLOps ํตํฉ: ๋ฒ์ ๊ด๋ฆฌ, ๋ชจ๋ํฐ๋ง ๋ฐ ๊ฐ์ฌ์ ๊ฐ์ ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ML ์ด์์ ๊ฐ์ํํ์ธ์.
- ํ์ : ํ ๋ด์์ ๋ฆฌ์์ค๋ฅผ ๊ณต์ ํ๊ณ ๊ด๋ฆฌํ์ฌ ํ์ ์ํฌํ๋ก์ฐ๋ฅผ ๊ฐ์ ํ์ธ์.
์ด๋ฌํ ์ฅ์ ๋๋ถ์ AzureML์ ๋น ๋ฅธ ํ๋กํ ํ์ ๋ถํฐ ๋๊ท๋ชจ ๋ฐฐํฌ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ค์ํ ํ๋ก์ ํธ์ ์ด์์ ์ธ ํ๋ซํผ์ ๋๋ค. ๋ ๋ง์ ํ์ AzureML ์์ ์ ํ์ธํ์ธ์.
AzureML์์ YOLO11 ์คํ ์ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ๋์?
AzureML์์ YOLO11 ๊ด๋ จ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ํด๊ฒฐ์๋ ๋ค์ ๋จ๊ณ๊ฐ ํฌํจ๋ ์ ์์ต๋๋ค:
- ์ข
์์ฑ ๋ฌธ์ : ํ์ํ ํจํค์ง๊ฐ ๋ชจ๋ ์ค์น๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ํ์ํ ํจํค์ง๊ฐ ์ค์น๋์ด ์๋์ง ํ์ธํฉ๋๋ค.
requirements.txt
ํ์ผ์์ ์ข ์์ฑ์ ํ์ธํฉ๋๋ค. - ํ๊ฒฝ ์ค์ : ๋ช ๋ น์ ์คํํ๊ธฐ ์ ์ ์ฝ๋ค ํ๊ฒฝ์ด ์ฌ๋ฐ๋ฅด๊ฒ ํ์ฑํ๋์๋์ง ํ์ธํฉ๋๋ค.
- ๋ฆฌ์์ค ํ ๋น: ์ปดํจํ ์ธ์คํด์ค์ ๊ต์ก ์ํฌ๋ก๋๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ ์ถฉ๋ถํ ๋ฆฌ์์ค๊ฐ ์๋์ง ํ์ธํ์ธ์.
์ถ๊ฐ ์ง์นจ์ YOLO ์ผ๋ฐ ๋ฌธ์ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
AzureML์์ Ultralytics CLI ๋ฐ Python ์ธํฐํ์ด์ค๋ฅผ ๋ชจ๋ ์ฌ์ฉํ ์ ์๋์?
์, AzureML์ ์ฌ์ฉํ๋ฉด Ultralytics CLI ๋ฐ Python ์ธํฐํ์ด์ค๋ฅผ ๋ชจ๋ ์ํํ๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค:
-
CLI: ๋น ๋ฅธ ์์ ๊ณผ ํฐ๋ฏธ๋์์ ์ง์ ํ์ค ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๋ ๋ฐ ์ด์์ ์ ๋๋ค.
-
Python ์ธํฐํ์ด์ค: ์ฌ์ฉ์ ์ง์ ์ฝ๋ฉ๊ณผ ๋ ธํธ๋ถ ๋ด ํตํฉ์ด ํ์ํ ๋ณต์กํ ์์ ์ ์ ์ฉํฉ๋๋ค.
๋ ์์ธํ ์ง์นจ์ ์ฌ๊ธฐ์ ์ฌ๊ธฐ ๋น ๋ฅธ ์์ ๊ฐ์ด๋๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ค๋ฅธ ๊ฐ์ฒด ๊ฐ์ง ๋ชจ๋ธ์ ๋นํด Ultralytics YOLO11 ์ ์ฌ์ฉํ๋ฉด ์ด๋ค ์ด์ ์ด ์๋์?
Ultralytics YOLO11 ๋ ๊ฒฝ์ ๋ฌผ์ฒด ๊ฐ์ง ๋ชจ๋ธ์ ๋นํด ๋ช ๊ฐ์ง ๊ณ ์ ํ ์ด์ ์ ์ ๊ณตํฉ๋๋ค:
- ์๋: Faster R-CNN ๋ฐ SSD์ ๊ฐ์ ๋ชจ๋ธ์ ๋นํด ์ถ๋ก ๋ฐ ํ์ต ์๊ฐ์ด ๋ ๋น ๋ฆ ๋๋ค.
- ์ ํ๋: ์ต์ปค ํ๋ฆฌ ์ค๊ณ ๋ฐ ํฅ์๋ ์ฆ๊ฐ ์ ๋ต๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ผ๋ก ํ์ง ์์ ์ ์ ํ๋๊ฐ ๋์ต๋๋ค.
- ์ฌ์ฉ ํธ์์ฑ: ์ง๊ด์ ์ธ API์ CLI ๋ฅผ ํตํด ์ด๋ณด์๋ ์ ๋ฌธ๊ฐ ๋ชจ๋ ๋น ๋ฅด๊ฒ ์ค์ ํ ์ ์์ต๋๋ค.
YOLO11 ์ ๊ธฐ๋ฅ์ ๋ํ ์์ธํ ๋ด์ฉ์ Ultralytics YOLO ํ์ด์ง์์ ์์ธํ ๋ด์ฉ์ ํ์ธํ์ธ์.