본문 바로가기
AI/AI 부트캠프

[AI 부트캠프] DAY 127 - 파이널 프로젝트 18

by HOHHOH 2024. 1. 20.

[오늘의 일지]

프로젝트 - YOLOv8 모델 성능 비교

[상세 내용]

YOLOv8 모델 성능 비교

- 오늘의 실험 주제는 YOLOv8 모델의 n, s, m, l , x로 가벼운 모델인 n부터 시작해서 무거운 모델인 x까지의 모델의 성능을 비교해 보려고 했습니다. 모델의 알파벳의 의미는 n은 nano, s는 small, m은 middle, l은 large, x는 xlarge를 뜻합니다. 사실 이번 주제는 실제로 ultralytics 홈페이지 문서에 가보면 나와있듯이 각 모델의 성능비교는 잘 정리되어 있는 것으로 확인했습니다. 그러나 직접 모델을 돌려보면서 진짜 그런지에 대해서 평가해 보면 좋을 거 같아서 이번 실험을 진행게 되었습니다.

 

YOLOv8

실시간 물체 감지기의 최신 버전인 YOLOv8 의 놀라운 기능을 살펴보세요! 고급 아키텍처, 사전 학습된 모델, 정확도와 속도 사이의 최적의 균형이 어떻게 YOLOv8 을 물체 감지 작업에 완벽한 선택으

docs.ultralytics.com

 

학습 배경 스펙

- 오늘 학습은 어제와 다르게 gpu의 성능이 더 좋아야 할 거 같아서 colab의 V100 모델을 사용했습니다. 확실히 gpu 성능이 좋을수록 학습속도가 빨라지는 것을 몸으로 느꼈습니다. 고성능 모델로 갈 수로 gpu의 vram을 더 많이 사용하는 것도 확인할 수 있었습니다. 

 

실험 결과 (mAP)

- n 모델

 

- s 모델

 

- m 모델

 

- l 모델

 

- x 모델

 

인사이트

- 사실 이번 실험은 모델의 성능을 보기에는 다소 빈약한 부분이 많이 있습니다. 그 이유는 위에 있는 결과를 보면 알 수 있듯이 결과적인 측면에서는 처음 n이나 s 모델을 제외하고서는 크게 차이가 나지 않는 모습을 보이고 있습니다. 분명 홈페이지에서는 고성능 모델로 갈수록 평가지표가 올라간다는 문서가 존재하는데 말입니다. 위에 결과와 같이 나온 이유에 대해서 설명해 드리겠습니다. 사실 이번 실험은 모델이 학습을 충분하게 하지 못한 상황인 짧은 학습 횟수 동안의 결과를 가져온 것입니다. 제가 학습한 epoch는 단지 5회밖에 지정하지 않았습니다. 그렇다면 짧은 학습 횟수를 통해서 어떠한 인사이트를 얻을 수 있냐에 대해서 알아보자면 분명 홈페이지에는 A100 gpu 기준일 때는 속도가 고성능으로 갈수록 빠르다는 문서가 존재하는데 V100 환경에서 돌려봤을 때는 가벼운 모델일수록 속도가 빠르다는 것을 알 수 있습니다. 제가 느끼기에는 더 복잡하게 들어가면 gpu의 성능을 고도화로 사용할 수 있다는 의미가 아닐까 생각해 봤습니다. 그렇지만 일반 사용자 입장에서는 gpu 소스도 부족하고 제한이 있다면 가벼운 모델을 사용할수록 시간도 절약할 수 있고 가성비적인 측면에서 좋은 결과를 얻을 수 있을 거라는 결론을 내리고 싶습니다.

출처:https://docs.ultralytics.com/ko/models/yolov8/#__tabbed_1_1

 

[마무리]

 오늘은 YOLOv8 모델들의 성능에 대해서 몇 가지 실험을 해보았습니다. 비록 얕은 지식으로 어쩌면 크게 중요하게 생각하지 않을 수도 있는 주제를 실험해 보았는데 일반 사용자의 관점에서 실용적인 점을 찾기 위해서 진행했다고 말하고 싶습니다. 

반응형

댓글