AzureML์—์„œ์˜ YOLO26 ๐Ÿš€

Azure๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

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

Azure Machine Learning(AzureML)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

Azure Machine Learning(์ผ๋ฐ˜์ ์œผ๋กœ AzureML๋กœ ์ง€์นญ)์€ ๋ฐ์ดํ„ฐ ๊ณผํ•™์ž์™€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์˜ˆ์ธก ๋ถ„์„์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํšจ์œจ์ ์œผ๋กœ ๋‚ด์žฅํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ์™„์ „ ๊ด€๋ฆฌํ˜• ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์กฐ์ง์ด ๋ฐฉ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ํ™œ์šฉํ•˜๊ณ  ํด๋ผ์šฐ๋“œ์˜ ๋ชจ๋“  ์ด์ ์„ ๋จธ์‹ ๋Ÿฌ๋‹์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•์Šต๋‹ˆ๋‹ค. AzureML์€ ๋จธ์‹ ๋Ÿฌ๋‹์„ ์ ‘๊ทผํ•˜๊ธฐ ์‰ฝ๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ํŽธ๋ฆฌํ•˜๋ฉฐ ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค์™€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ž๋™ํ™”๋œ ๋จธ์‹ ๋Ÿฌ๋‹, ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ ๋ชจ๋ธ ํ•™์Šต, ๊ทธ๋ฆฌ๊ณ  ๊ฐœ๋ฐœ์ž๊ฐ€ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ๊ฐ•๋ ฅํ•œ Python SDK์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

AzureML์ด YOLO ์‚ฌ์šฉ์ž์—๊ฒŒ ์ฃผ๋Š” ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

YOLO(You Only Look Once) ์‚ฌ์šฉ์ž์—๊ฒŒ AzureML์€ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ํ•™์Šตํ•˜๊ณ  ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ•๋ ฅํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๋ฉฐ ํšจ์œจ์ ์ธ ํ”Œ๋žซํผ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋น ๋ฅธ ํ”„๋กœํ† ํƒ€์ž… ์‹คํ–‰์„ ์›ํ•˜๋“  ๋” ๋ฐฉ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํ™•์žฅํ•˜๋“ , AzureML์˜ ์œ ์—ฐํ•˜๊ณ  ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ํ™˜๊ฒฝ์€ ๊ท€ํ•˜์˜ ํ•„์š”์— ๋งž๋Š” ๋‹ค์–‘ํ•œ ๋„๊ตฌ์™€ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. AzureML์„ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ํ•™์Šต์„ ์œ„ํ•œ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ฐ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋ฅผ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ, ํŠน์ง• ์„ ํƒ ๋ฐ ๋ชจ๋ธ ํ•™์Šต์„ ์œ„ํ•œ ๋‚ด์žฅ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๋ชจ๋ธ ๋ฐ ๋ฐ์ดํ„ฐ์˜ ๋ชจ๋‹ˆํ„ฐ๋ง, ๊ฐ์‚ฌ, ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ํฌํ•จํ•˜๋˜ ์ด์— ๊ตญํ•œ๋˜์ง€ ์•Š๋Š” MLOps(๋จธ์‹ ๋Ÿฌ๋‹ ์šด์˜) ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ณด๋‹ค ํšจ์œจ์ ์œผ๋กœ ํ˜‘์—…ํ•ฉ๋‹ˆ๋‹ค.

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

์‚ฌ์ „ ์š”๊ตฌ ์‚ฌํ•ญ

์‹œ์ž‘ํ•˜๊ธฐ ์ „์— AzureML ์ž‘์—… ์˜์—ญ(workspace)์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ์ž‘์—… ์˜์—ญ์ด ์—†๋Š” ๊ฒฝ์šฐ, Azure ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ๋”ฐ๋ผ ์ƒˆ๋กœ์šด AzureML ์ž‘์—… ์˜์—ญ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ž‘์—… ์˜์—ญ์€ ๋ชจ๋“  AzureML ๋ฆฌ์†Œ์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์ค‘์•™ ์ง‘์ค‘์‹ ์žฅ์†Œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

์ปดํ“จํŒ… ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ

AzureML ์ž‘์—… ์˜์—ญ์—์„œ Compute > Compute instances > New๋ฅผ ์„ ํƒํ•˜๊ณ , ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ํฌํ•จ๋œ ์ธ์Šคํ„ด์Šค๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

Create Azure Compute Instance

ํ„ฐ๋ฏธ๋„์—์„œ ํ€ต์Šคํƒ€ํŠธ

์ปดํ“จํŒ…์„ ์‹œ์ž‘ํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ์—ฌ์‹ญ์‹œ์˜ค:

Open Terminal

virtualenv ์ƒ์„ฑ

์›ํ•˜๋Š” Python ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜์—ฌ conda ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ ์•ˆ์— pip๋ฅผ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค. ํ˜„์žฌ AzureML์—์„œ Python 3.13.1์€ ์˜์กด์„ฑ ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ๋Œ€์‹  Python 3.12๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

conda create --name yolo26env -y python=3.12
conda activate yolo26env
conda install pip -y

ํ•„์ˆ˜ ์˜์กด์„ฑ์„ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค:

cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx

YOLO26 ์ž‘์—… ์ˆ˜ํ–‰

์˜ˆ์ธก(Predict):

yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'

์ดˆ๊ธฐ learning_rate๋ฅผ 0.01๋กœ ์„ค์ •ํ•˜๊ณ  10 ์—ํฌํฌ(epochs) ๋™์•ˆ ํƒ์ง€ ๋ชจ๋ธ์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค:

yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01

์—ฌ๊ธฐ์—์„œ Ultralytics CLI ์‚ฌ์šฉ๋ฒ•์— ๋Œ€ํ•œ ๋” ๋งŽ์€ ์ง€์นจ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋…ธํŠธ๋ถ์—์„œ ํ€ต์Šคํƒ€ํŠธ

์ƒˆ IPython ์ปค๋„ ์ƒ์„ฑ

์ปดํ“จํŒ… ํ„ฐ๋ฏธ๋„์„ ์—ฝ๋‹ˆ๋‹ค.

Open Terminal

์ปดํ“จํŒ… ํ„ฐ๋ฏธ๋„์—์„œ, ๋…ธํŠธ๋ถ์ด ์˜์กด์„ฑ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  Python 3.12๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ ipykernel์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค:

conda create --name yolo26env -y python=3.12
conda activate yolo26env
conda install pip -y
conda install ipykernel -y
python -m ipykernel install --user --name yolo26env --display-name "yolo26env"

ํ„ฐ๋ฏธ๋„์„ ๋‹ซ๊ณ  ์ƒˆ ๋…ธํŠธ๋ถ์„ ๋งŒ๋“œ์‹ญ์‹œ์˜ค. ๋…ธํŠธ๋ถ์—์„œ ๋ฐฉ๊ธˆ ์ƒ์„ฑํ•œ ์ปค๋„์„ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ ๋…ธํŠธ๋ถ ์…€์„ ์—ด๊ณ  ํ•„์ˆ˜ ์˜์กด์„ฑ์„ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค:

%%bash
source activate yolo26env
cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx

Note that you need to run source activate yolo26env in every %%bash cell to ensure the cell uses the intended environment.

Ultralytics CLI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ช‡ ๊ฐ€์ง€ ์˜ˆ์ธก์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค:

%%bash
source activate yolo26env
yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'

๋˜๋Š” Ultralytics Python ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ํ•™์Šตํ•˜๋Š” ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค:

from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")  # load an official YOLO26n 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

์œ„์˜ ํ„ฐ๋ฏธ๋„ ์„น์…˜์—์„œ ์„ค๋ช…ํ•œ ๋Œ€๋กœ Ultralytics CLI ๋˜๋Š” Python ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ YOLO26 ์ž‘์—…์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด๋ฉด AzureML์—์„œ YOLO26์„ ๋น ๋ฅด๊ฒŒ ์‹คํ–‰ํ•˜์—ฌ ์‹ ์†ํ•˜๊ฒŒ ํ…Œ์ŠคํŠธํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ๊ณ ๊ธ‰ ํ™œ์šฉ์„ ์›ํ•˜์‹œ๋ฉด ์ด ๊ฐ€์ด๋“œ ์‹œ์ž‘ ๋ถ€๋ถ„์— ๋งํฌ๋œ ์ „์ฒด AzureML ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

AzureML๋กœ ๋” ๋งŽ์€ ๊ธฐ๋Šฅ ํƒ์ƒ‰

์ด ๊ฐ€์ด๋“œ๋Š” AzureML์—์„œ YOLO26์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•œ ์ž…๋ฌธ์„œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Š” AzureML์ด ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ์˜ ์ผ๋ถ€๋ถ„์— ๋ถˆ๊ณผํ•ฉ๋‹ˆ๋‹ค. ๋” ๊นŠ์ด ํƒ๊ตฌํ•˜๊ณ  ๋จธ์‹ ๋Ÿฌ๋‹ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด AzureML์˜ ์ž ์žฌ๋ ฅ์„ ์™„์ „ํžˆ ํ™œ์šฉํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋ฆฌ์†Œ์Šค๋ฅผ ํƒ์ƒ‰ํ•ด ๋ณด์‹ญ์‹œ์˜ค:

  • ๋ฐ์ดํ„ฐ ์—์…‹ ์ƒ์„ฑ: AzureML ํ™˜๊ฒฝ ๋‚ด์—์„œ ๋ฐ์ดํ„ฐ ์—์…‹์„ ํšจ๊ณผ์ ์œผ๋กœ ์„ค์ •ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์‹ญ์‹œ์˜ค.
  • AzureML ์ž‘์—… ์‹œ์ž‘: AzureML์—์„œ ๋จธ์‹ ๋Ÿฌ๋‹ ํ•™์Šต ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ข…ํ•ฉ์ ์œผ๋กœ ์ดํ•ดํ•˜์‹ญ์‹œ์˜ค.
  • ๋ชจ๋ธ ๋“ฑ๋ก: ๋“ฑ๋ก, ๋ฒ„์ „ ๊ด€๋ฆฌ, ๋ฐฐํฌ๋ฅผ ํฌํ•จํ•œ ๋ชจ๋ธ ๊ด€๋ฆฌ ๊ด€ํ–‰์„ ์ตํžˆ์‹ญ์‹œ์˜ค.
  • AzureML Python SDK๋กœ YOLO26 ํ•™์Šตํ•˜๊ธฐ: AzureML Python SDK๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ YOLO26 ๋ชจ๋ธ์„ ํ•™์Šตํ•˜๋Š” ๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ๋ฅผ ์‚ดํŽด๋ณด์‹ญ์‹œ์˜ค.
  • AzureML CLI๋กœ YOLO26 ํ•™์Šตํ•˜๊ธฐ: AzureML์—์„œ YOLO26 ๋ชจ๋ธ์„ ๋Šฅ๋ฅ ์ ์œผ๋กœ ํ•™์Šตํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด CLI๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

FAQ

AzureML์—์„œ ๋ชจ๋ธ ํ•™์Šต์„ ์œ„ํ•ด YOLO26์„ ์–ด๋–ป๊ฒŒ ์‹คํ–‰ํ•˜๋‚˜์š”?

AzureML์—์„œ ๋ชจ๋ธ ํ•™์Šต์„ ์œ„ํ•ด YOLO26์„ ์‹คํ–‰ํ•˜๋Š” ๊ณผ์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. ์ปดํ“จํŒ… ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ: AzureML ์ž‘์—… ์˜์—ญ์—์„œ Compute > Compute instances > New๋กœ ์ด๋™ํ•˜์—ฌ ํ•„์š”ํ•œ ์ธ์Šคํ„ด์Šค๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

  2. ํ™˜๊ฒฝ ์„ค์ •: ์ปดํ“จํŒ… ์ธ์Šคํ„ด์Šค๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ์—ฐ ๋‹ค์Œ Conda ํ™˜๊ฒฝ์„ ์ƒ์„ฑํ•˜์‹ญ์‹œ์˜ค. Python ๋ฒ„์ „์„ ์„ค์ •ํ•˜์‹ญ์‹œ์˜ค(Python 3.13.1์€ ์•„์ง ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค):

    conda create --name yolo26env -y python=3.12
    conda activate yolo26env
    conda install pip -y
    pip install ultralytics onnx
  3. YOLO26 ์ž‘์—… ์‹คํ–‰: Ultralytics CLI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ํ•™์Šตํ•˜์‹ญ์‹œ์˜ค:

    yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01

๋” ์ž์„ธํ•œ ๋‚ด์šฉ์€ Ultralytics CLI ์‚ฌ์šฉ ์ง€์นจ์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

YOLO26 ํ•™์Šต์— AzureML์„ ์‚ฌ์šฉํ•  ๋•Œ์˜ ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

AzureML์€ YOLO26 ๋ชจ๋ธ ํ•™์Šต์„ ์œ„ํ•œ ๊ฐ•๋ ฅํ•˜๊ณ  ํšจ์œจ์ ์ธ ์ƒํƒœ๊ณ„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

  • ํ™•์žฅ์„ฑ: ๋ฐ์ดํ„ฐ์™€ ๋ชจ๋ธ ๋ณต์žก์„ฑ์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋ฅผ ์‰ฝ๊ฒŒ ํ™•์žฅํ•˜์‹ญ์‹œ์˜ค.
  • MLOps ํ†ตํ•ฉ: ๋ฒ„์ „ ๊ด€๋ฆฌ, ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๊ฐ์‚ฌ์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜์—ฌ ML ์šด์˜์„ ๋Šฅ๋ฅ ํ™”ํ•˜์‹ญ์‹œ์˜ค.
  • ํ˜‘์—…: ํŒ€ ๋‚ด์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ณต์œ ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜์—ฌ ํ˜‘์—… ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ๊ฐœ์„ ํ•˜์‹ญ์‹œ์˜ค.

์ด๋Ÿฌํ•œ ์ด์  ๋•๋ถ„์— AzureML์€ ๋น ๋ฅธ ํ”„๋กœํ† ํƒ€์ž…๋ถ€ํ„ฐ ๋Œ€๊ทœ๋ชจ ๋ฐฐํฌ๊นŒ์ง€์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•œ ์ด์ƒ์ ์ธ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ํŒ์€ AzureML Jobs๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

AzureML์—์„œ YOLO26์„ ์‹คํ–‰ํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•˜๋‚˜์š”?

AzureML์—์„œ YOLO26๊ณผ ๊ด€๋ จ๋œ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ ํ•ด๊ฒฐ์€ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ์˜์กด์„ฑ ๋ฌธ์ œ: ํ•„์š”ํ•œ ๋ชจ๋“  ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ์˜์กด์„ฑ ํ•ญ๋ชฉ์€ requirements.txt ํŒŒ์ผ์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
  • ํ™˜๊ฒฝ ์„ค์ •: ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๊ธฐ ์ „์— conda ํ™˜๊ฒฝ์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ™œ์„ฑํ™”๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
  • ๋ฆฌ์†Œ์Šค ํ• ๋‹น: ์ปดํ“จํŒ… ์ธ์Šคํ„ด์Šค์— ํ•™์Šต ์›Œํฌ๋กœ๋“œ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ถฉ๋ถ„ํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์ถ”๊ฐ€์ ์ธ ์•ˆ๋‚ด๋Š” YOLO ์ผ๋ฐ˜ ๋ฌธ์ œ ๋ฌธ์„œ๋ฅผ ๊ฒ€ํ† ํ•˜์‹ญ์‹œ์˜ค.

AzureML์—์„œ Ultralytics CLI์™€ Python ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

์˜ˆ, AzureML์—์„œ๋Š” Ultralytics CLI์™€ Python ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋ชจ๋‘ ์›ํ™œํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • CLI: ๋น ๋ฅธ ์ž‘์—… ๋ฐ ํ„ฐ๋ฏธ๋„์—์„œ ์ง์ ‘ ํ‘œ์ค€ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์ด์ƒ์ ์ž…๋‹ˆ๋‹ค.

    yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'
  • Python ์ธํ„ฐํŽ˜์ด์Šค: ๋…ธํŠธ๋ถ ๋‚ด์—์„œ ์‚ฌ์šฉ์ž ์ •์˜ ์ฝ”๋”ฉ ๋ฐ ํ†ตํ•ฉ์ด ํ•„์š”ํ•œ ๋” ๋ณต์žกํ•œ ์ž‘์—…์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.pt")
    model.train(data="coco8.yaml", epochs=3)

๋‹จ๊ณ„๋ณ„ ์ง€์นจ์€ CLI ํ€ต์Šคํƒ€ํŠธ ๊ฐ€์ด๋“œ ๋ฐ Python ํ€ต์Šคํƒ€ํŠธ ๊ฐ€์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๋‹ค๋ฅธ ๊ฐ์ฒด ํƒ์ง€ ๋ชจ๋ธ ๋Œ€๋น„ Ultralytics YOLO26์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

Ultralytics YOLO26์€ ๊ฒฝ์Ÿ ๊ฐ์ฒด ํƒ์ง€ ๋ชจ๋ธ๋ณด๋‹ค ๋ช‡ ๊ฐ€์ง€ ๋…๋ณด์ ์ธ ์ด์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

  • ์†๋„: Faster R-CNN ๋ฐ SSD์™€ ๊ฐ™์€ ๋ชจ๋ธ๋ณด๋‹ค ๋น ๋ฅธ ์ถ”๋ก  ๋ฐ ํ•™์Šต ์‹œ๊ฐ„.
  • ์ •ํ™•๋„: ์•ต์ปค ํ”„๋ฆฌ(anchor-free) ์„ค๊ณ„์™€ ํ–ฅ์ƒ๋œ ์ฆ๊ฐ• ์ „๋žต๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์œผ๋กœ ํƒ์ง€ ์ž‘์—…์—์„œ ๋†’์€ ์ •ํ™•๋„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ ํŽธ์˜์„ฑ: ๋น ๋ฅธ ์„ค์ •์„ ์œ„ํ•œ ์ง๊ด€์ ์ธ API ๋ฐ CLI๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์ดˆ๋ณด์ž์™€ ์ „๋ฌธ๊ฐ€ ๋ชจ๋‘๊ฐ€ ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

YOLO26์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ๋” ์•Œ์•„๋ณด๋ ค๋ฉด Ultralytics YOLO ํŽ˜์ด์ง€์—์„œ ์ž์„ธํ•œ ํ†ต์ฐฐ๋ ฅ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

๋Œ“๊ธ€