Yolo 비전 선전
선전
지금 참여하기

Ultralytics 에서 배포된 컴퓨터 비전 모델 모니터링

Ultralytics 사용하여 운영 환경의 컴퓨터 비전 모델을 모니터링하는 방법을 알아보세요. 메트릭을 추적하고, detect , 안정성을 향상시킬 수 있습니다.

컴퓨터 비전 프로젝트를 Ultral Ultralytics로 확장하세요

시작하기

이미지와 동영상을 분석하는 컴퓨터 비전 모델을 테스트하는 것은 실제 운영 환경에서 모델을 실행하는 것과 항상 같은 것은 아닙니다. 개발 단계에서는 이러한 모델이나 알고리즘을 조건이 통제되고 예측 가능한, 정제되고 잘 준비된 데이터셋을 사용하여 테스트합니다.

배포가 완료되면 상황은 더욱 역동적으로 변합니다. 모델은 실제 트래픽에 노출되는데, 이때 요청량은 변동될 수 있고 응답 시간도 달라질 수 있으며, 때때로 오류가 발생할 수도 있습니다. 

이 단계에서는 시스템이 안정적으로 작동하는지, 즉 변화하는 환경 속에서도 엔드포인트가 지속적으로 가용성을 유지하며 신속하게 응답하고 안정적인 상태를 유지하는지에 초점이 맞춰집니다.

그렇기 때문에 모니터링이 필수적입니다. 모니터링을 통해 요청량, 지연 시간, 오류율, 전반적인 시스템 상태와 같은 지표를 바탕으로 실제 운영 환경에서 배포된 엔드포인트가 어떻게 작동하는지 명확하게 파악할 수 있습니다.

이를 보다 수월하게 진행하기 위해서는 모델 자체만큼이나 적절한 도구를 갖추는 것이 중요합니다. 최근 Ultralytics 데이터 수집과 모델 훈련부터 배포 및 모니터링에 이르는 전체 컴퓨터 비전 워크플로우를 통합한 새로운 엔드투엔드 환경인 Ultralytics ’을 Ultralytics .

그림 1. 모니터링 기능이 포함된 Ultralytics 배포 대시보드 (출처)

이 워크플로우에 모니터링 기능이 직접 통합되어 있어, 사용자는 별도의 도구에 의존하지 않고도 track 상태를 track , 요청 동작을 분석하며, 안정적인 시스템을 유지할 수 있습니다. 이 글에서는 Ultralytics 활용하여 배포된 모델 엔드포인트를 모니터링하고, 운영 시스템을 원활하게 유지하는 방법을 살펴보겠습니다. 시작해 볼까요!

AI 모델 모니터링 개요

AI 모델의 라이프사이클에서 ‘모니터링’이란 모델이 실제 서비스에 투입되어 실제 요청을 처리하기 시작한 후, 배포된 시스템이 어떻게 작동하는지 관찰하는 것을 의미합니다. 훈련과 검증 단계가 준비된 데이터셋에서 머신러닝 모델(ML 모델)의 성능을 평가하는 데 중점을 둔다면, 모니터링은 프로덕션 환경에서 배포된 엔드포인트가 어떻게 작동하는지에 초점을 맞춥니다.

모니터링의 핵심은 시스템의 안정성과 응답성을 반영하는 시스템 수준 지표를 추적하는 것입니다. 지연 시간 및 가동 시간과 같은 지표는 시스템이 들어오는 요청을 얼마나 잘 처리하고 있는지 파악하는 데 도움이 됩니다. 지연 시간은 요청을 처리하고 응답을 반환하는 데 걸리는 시간을 측정하는 반면, 가동 시간은 엔드포인트가 얼마나 지속적으로 이용 가능한 상태를 유지하는지를 보여줍니다.

또 다른 핵심 요소는 관측 가능성으로, 이를 통해 요청이 어떻게 처리되는지 파악할 수 있습니다. 이미지나 비디오 프레임과 같은 입력 데이터가 배포된 모델로 전송될 때마다, 이는 추론 요청으로 처리됩니다. 

로그에는 이러한 요청과 함께 타임스탬프, 응답 시간, 상태 코드 등의 세부 정보가 기록됩니다. 이러한 로그를 통해 요청 경로를 추적하고, 문제를 디버깅하며, 오류 발생 시 원인을 파악하기가 훨씬 수월해집니다. 특히 반복되는 오류, 느린 응답, 예상치 못한 시스템 동작과 같은 패턴을 파악하는 데 매우 유용합니다.

메트릭과 로그를 결합함으로써, 모니터링은 사용자가 프로덕션 환경에서 시스템이 어떻게 작동하는지 파악하고 문제가 발생했을 때 신속하게 대응할 수 있도록 돕습니다.

모델 성능 지표와 시스템 지표 비교

프로덕션 모니터링에 대해 자세히 알아보기 전에, 모델 성능 지표와 시스템 지표의 차이점에 대해 먼저 살펴보겠습니다.

일반적으로 모델 모니터링은 정확도, 정밀도, 재현율, mAP 평균 정밀도)와 같은 평가 지표, 즉 모델 지표와 연관되어 있습니다. 이러한 지표들은 모델의 동작을 설명하고 모델 예측의 품질을 평가하는 데 사용되며, 주로 실제 운영 데이터나 입력 데이터와 비교하여 분석됩니다. 특히 새로운 데이터에서 극단적인 사례나 이상치를 식별하는 데 유용할 수 있습니다.

하지만 이는 실제 운영 환경에서 배포된 시스템을 모니터링하는 것과는 다릅니다. 이러한 맥락에서 모니터링은 모델의 예측 결과를 직접 평가하기보다는 시스템이 어떻게 작동하고 있는지에 초점을 맞춥니다.

배포 모니터링은 모델 지표 대신 요청량, 지연 시간, 오류율, 가동 시간과 같은 시스템 수준의 신호를 기반으로 합니다. 이러한 지표는 엔드포인트가 입력 데이터를 어떻게 처리하는지, 얼마나 일관되게 응답하는지, 그리고 운영 환경에서 어떻게 작동하는지에 대한 가시성을 제공합니다.

컴퓨터 비전 프로젝트에서 모델 모니터링의 역할

다음으로, 컴퓨터 비전 시스템 구축 시 모니터링 시스템이 왜 필요한지 잘 보여주는 실제 사례를 살펴보겠습니다.

인간의 신체 움직임을 식별하고 분석하는 컴퓨터 비전 작업인 ‘자세 추정’ 기술을 활용해 건설 근로자의 안전 규정 준수 여부를 모니터링하는 비전 솔루션을 고려해 보자. 초기 모델 배포 단계에서 이러한 시스템은 시야가 확보된 통제된 환경이나 표준적인 시나리오에서는 우수한 성능을 보일 수 있다.

그러나 실제 건설 현장에서는 상황이 훨씬 더 복잡해집니다. 하루 중 요청량이 변동될 수 있고, 네트워크 상태가 불안정할 수 있으며, 여러 대의 카메라나 엔드포인트가 동시에 데이터를 전송할 수도 있습니다. 이러한 요인들로 인해 시스템을 적절히 모니터링하지 않을 경우 응답 속도가 느려지거나 간혹 오류가 발생할 수 있습니다.

그림 2. 건설 현장에서 근로자를 모니터링하는 데 활용되는 자세 추정 기술 (출처)

이러한 운영 환경에서는 시스템이 얼마나 안정적으로 작동하는지 파악하는 것이 중요합니다. 모니터링을 통해 엔드포인트의 가용성, 들어오는 요청에 대한 응답 속도, 그리고 시간이 지남에 따라 트래픽을 얼마나 일관되게 처리하는지 확인할 수 있습니다.

예를 들어, 지연 시간의 증가는 시스템 부하 증가나 리소스 부족을 의미할 수 있으며, 오류율의 상승은 요청 처리나 시스템 안정성에 문제가 있음을 나타낼 수 있습니다. 로그는 개별 요청이 어떻게 처리되는지, 그리고 오류가 발생하는 지점을 보여줌으로써 더 많은 맥락을 제공합니다.

이러한 신호를 추적함으로써 AI 애호가와 데이터 과학자들은 문제를 조기에 파악하고, 보다 효과적으로 문제를 해결하며, 실제 환경이 변화함에 따라 시스템이 지속적으로 안정적으로 작동하도록 보장할 수 있습니다.

Ultralytics 사용하여 배포된 비전 모델 모니터링하기

많은 딥러닝 워크플로우에서 모니터링은 로깅, 메트릭, 시스템 상태 확인을 위한 별도의 도구들을 사용하여 처리되는 경우가 많습니다. 이러한 분산된 구성은 프로덕션 환경에서 배포된 엔드포인트가 어떻게 작동하는지 명확하게 파악하기 어렵게 만들 뿐만 아니라, 배포 관리의 복잡성을 가중시킵니다.

Ultralytics 데이터 수집 및 라벨링부터 훈련, 배포, 모니터링에 이르는 전체 컴퓨터 비전 워크플로우를 아우르는 통합 환경 내에서 직접 모니터링 기능을 제공함으로써 이 과정을 간소화합니다.

이러한 통합 환경을 통해 사용자는 별도의 로깅 시스템이나 추가 대시보드를 구축하지 않고도 배포된 엔드포인트가 실제 트래픽을 track 처리하는지 track 수 있습니다. 모든 정보가 한곳에 모여 있어 시스템 동작을 쉽게 관찰하고, 장기적으로 안정적인 배포 환경을 유지할 수 있습니다.

모니터링 기능은 ‘배포(Deploy)’ 탭에서 바로 이용할 수 있습니다. 사용자는 단일 대시보드에서 track 지표를 track , 요청 단위의 동작을 분석하며, 추세를 시각화할 수 있습니다. 이러한 내장 시각화 기능을 통해 여러 도구를 오가며 전환할 필요 없이 솔루션의 성능을 손쉽게 파악할 수 있습니다.

이 플랫폼은 모니터링, 배포 및 모델 관리를 포괄적인 워크플로우 내에서 통합함으로써 복잡성을 줄여줍니다. 이를 통해 배포 관리, 시스템 성능 최적화, 안정성 유지에 더욱 원활하게 집중할 수 있습니다.

Ultralytics 의 내장 모니터링 기능

실제 운영 환경에서는 모니터링이 시간이 지남에 따라 변화하는 조건 속에서 시스템이 어떻게 작동하는지 명확하게 파악하는 데 달려 있습니다. 이는 단순히 몇 가지 지표를 추적하는 것을 넘어, 배포된 엔드포인트가 다양한 환경에서 어떻게 동작하는지 이해하고 여러 배포 환경을 효과적으로 관리하는 것을 포함합니다.

컴퓨터 비전 분야의 일반적인 과제들에 대한 비전 AI 커뮤니티의 피드백을 반영하여, Ultralytics 모니터링을 보다 실용적이고 확장성 있게 만들어주는 여러 기능을 갖추고 있습니다. 

다음은 이러한 주요 기능 중 일부에 대한 개요입니다:

  • 전 세계 배포 현황 파악: ‘배포’ 페이지에는 활성 및 진행 중인 엔드포인트를 시각적 표시기로 보여주는 대화형 세계 지도가 포함되어 있어, 사용자가 지리적 분포와 지역별 활동을 모니터링할 수 있습니다.
  • 유연한 대시보드 보기: 배포 대시보드는 카드 보기, 간결한 그리드 보기, 이름, 지역, 상태, 요청 수 등 정렬 가능한 열을 갖춘 표 보기 등 다양한 보기 모드를 제공하여 체계적인 모니터링과 비교 분석을 지원합니다.
  • 여러 엔드포인트 모니터링: 대시보드는 개요 카드와 배포 목록을 통해 모든 배포 환경에 걸친 모니터링 데이터를 통합하여 보여줍니다.
  • 데이터 보존 정책: 모니터링 데이터는 정해진 기간 동안 보존되며, 메트릭은 30일, 로그는 7일간 제공되어 최근 성능 분석 및 디버깅 워크플로를 지원합니다.
  • 외부 모니터링 지원: 배포 엔드포인트는 Datadog, New Relic, 가동 시간 모니터링 서비스와 같은 외부 도구를 사용하여 모니터링하거나, API 엔드포인트를 통해 액세스하여 사용자 지정 모니터링 및 상태 점검을 수행할 수 있습니다.

다음으로, 이러한 기능 중 몇 가지를 좀 더 자세히 살펴보고, 이를 통해 프로덕션 환경에 배포된 엔드포인트를 모니터링하는 방법을 알아보겠습니다.

Ultralytics 사용하여 track 성과 지표를 track 방법

모델이 배포되면, 주요 시스템 지표 추적을 통해 모니터링이 시작됩니다. 정확도나 리콜률과 같은 지표는 개발 단계에서 유용하지만, 운영 환경에서의 모니터링은 응답 시간이나 오류율과 같은 시스템 수준의 신호에 중점을 둡니다. 이러한 지표들은 엔드포인트가 실제 트래픽을 얼마나 안정적으로 처리하고 있는지에 대한 측정 가능한 통찰력을 제공합니다.

Ultralytics 엔드포인트 활동과 시스템 동작을 한눈에 파악할 수 있는 중앙 집중식 대시보드를 제공합니다. 특히, 배포 대시보드에는 엔드포인트가 어떻게 사용되고 있는지, 그리고 들어오는 요청에 어떻게 응답하고 있는지를 보여주는 네 가지 핵심 지표가 포함되어 있습니다.

다음은 이러한 지표에 대한 자세한 내용입니다:

  • 총 요청: 24시간 동안 모든 엔드포인트에 대해 발생한 요청의 총 수입니다. 이를 통해 사용 패턴과 전반적인 수요를 파악할 수 있습니다.
  • 활성 배포: 현재 실행 중이며 요청을 처리하고 있는 엔드포인트의 수.
  • P95 지연 시간: 전체 요청의 95%가 처리되는 데 걸리는 응답 시간입니다. 이는 느린 응답까지 고려함으로써 성능을 보다 현실적으로 파악할 수 있게 해줍니다.
  • 오류율: 전체 요청 건수 중 실패한 요청의 비율을 말합니다. 이 지표는 문제를 파악하는 데 도움이 되며, detect 데 활용될 수 있습니다.

간단히 말해, 이러한 지표들은 배포된 엔드포인트가 실제 운영 환경에서 어떻게 작동하는지 명확하게 보여줍니다. 사용 패턴을 분석함으로써 팀과 담당자는 트래픽 분포를 파악하고, 부하가 가장 높은 시기를 식별하며, 사용량이 증가함에 따라 시스템이 지속적으로 신속하게 응답하고 안정적으로 유지되도록 할 수 있습니다.

로그를 통해 모델 배포 동작 파악하기

메트릭은 시스템 성능에 대한 전반적인 개요를 제공하는 반면, 로그는 배포된 엔드포인트가 개별 요청을 어떻게 처리하는지에 대한 보다 상세한 정보를 제공합니다. 로그는 엔드포인트로 전송된 각 요청과 이에 대한 응답을 기록합니다.

이들은 이슈를 추적하고, 오류 원인을 분석하며, 요청이 어떻게 처리되는지 파악하는 데 유용합니다. Ultralytics 내에서 원하는 배포 환경을 선택하면 로그를 포함한 세부 정보를 확인할 수 있습니다.

그림 3. Ultralytics 내 로그 예시 (출처)

플랫폼의 로그 항목은 체계적인 형식으로 표시되어, 각 요청 과정에서 발생한 상황을 더 쉽게 파악할 수 있습니다. 각 항목에는 해당 이벤트의 중요도를 나타내는 심각도 수준과 발생 시점을 보여주는 타임스탬프가 포함되어 있습니다. 

또한 해당 이벤트를 설명하는 메시지와 상태 코드, 지연 시간 등 HTTP 관련 세부 정보도 포함되어 있습니다. 이 정보는 요청을 추적하고, 문제 해결을 지원하며, 문제를 보다 효과적으로 디버깅하는 데 도움이 됩니다. 게다가 로그가 심각도별로 분류되어 있으므로, 사용자는 주의가 필요한 배포 항목의 우선순위를 정할 수 있습니다. 

Ultralytics 에서 엔드포인트 상태 및 안정성 분석

모니터링에는 배포된 엔드포인트의 전반적인 상태를 파악하는 작업도 포함되며, 여기에는 엔드포인트가 정상적으로 작동하는지, 적시에 응답하는지, 오류 없이 일관되게 요청을 처리하는지 여부 등이 포함됩니다. Ultralytics 각 배포 환경의 상태를 명확하게 보여주므로, 엔드포인트가 예상대로 작동하는지 손쉽게 확인할 수 있습니다.

이 플랫폼에는 각 배포에 대한 시각적 상태 지표가 포함되어 있으며, 이는 개별 배포 카드에 표시됩니다. 

예를 들어, 녹색 표시등은 엔드포인트가 정상적으로 작동하고 있음을 나타내는 반면, 빨간색 표시등은 문제나 가동 중단을 의미합니다. 회전하는 아이콘은 시스템이 배포 상태를 적극적으로 확인 중임을 나타냅니다.

시간 경과에 따른 엔드포인트 상태를 모니터링함으로써, detect 조기에 detect 일관된 성능을 유지하며, 프로덕션 환경에서 실행되는 애플리케이션에 안정적인 사용 경험을 보장할 수 있습니다.

모니터링 데이터와 성과 개선의 상관관계

모델 모니터링은 단순히 지표를 추적하는 데 그치지 않습니다. 이는 시간이 지남에 따라 지속적인 개선을 뒷받침하는 피드백 루프를 형성합니다. 엔드포인트가 실제 트래픽을 처리함에 따라 지표와 로그에서 특정 패턴이 나타나기 시작하며, 이를 통해 지연 시간 증가, 오류율 상승, 또는 시스템 동작의 불일치와 같은 문제를 파악할 수 있습니다.

모니터링을 통해 주의가 필요한 부분을 파악할 수 있습니다. 예를 들어, 지속적으로 높은 지연 시간은 리소스 할당이나 확장 조정이 필요함을 시사할 수 있으며, 오류율이 증가하는 것은 요청 처리나 시스템 안정성에 문제가 있음을 나타낼 수 있습니다.

이러한 문제점이 파악되면 신뢰성을 높이기 위한 조치를 취할 수 있습니다. 여기에는 인프라 조정, 리소스 확장, 또는 요청 처리 방식의 문제 해결 등이 포함될 수 있습니다. 이러한 변경 사항이 적용된 후에는 시스템 성능을 지속적으로 모니터링하여 실제로 성능이 개선되었는지 확인할 수 있습니다.

모니터링과 지속적인 개선을 연계함으로써, 사용자는 시스템 사용량이 증가하고 환경이 변화하더라도 안정적인 시스템을 유지할 수 있습니다.

실제 사례를 살펴보기: 항공 업계의 수하물 처리 모니터링

실제 현장에서 모니터링이 미치는 영향을 더 잘 이해하기 위해, 항공 지상 운영 자동화에 모니터링이 어떻게 적용되는지 살펴보겠습니다.

항공기 지상 작업 중 수하물 적재 및 하역을 모니터링하도록 설계된 비전 시스템을 예로 들어보자. 이러한 환경에서 Ultralytics 같은 물체 탐지 모델을 사용하여 수하물이 컨베이어 벨트나 취급 장비에서 떨어지는지 detect 수 있다. 

테스트 및 초기 운영 단계에서는 실시간 시스템이 원활하게 작동하여 수하물을 정확하게 식별하고 신속하게 대응할 수 있습니다.

함께 AI의 미래를 만들어 갑시다!

미래의 머신러닝 여정을 시작하세요