YOLO Vision 2026:
비전 AI

모델 최적화란 무엇인가요? 간단 가이드

하이퍼파라미터 튜닝, 모델 프루닝, 모델 양자화와 같은 모델 최적화 기술이 컴퓨터 비전 모델의 효율적인 실행을 어떻게 돕는지 배워보세요.

ABAbirami Vina5 min read
컴퓨터 비전을 위한 모델 최적화 기술

모델 최적화는 machine learning 모델의 효율성과 performance을 향상시키는 것을 목표로 하는 프로세스입니다. 모델의 구조와 기능을 정교화함으로써 최적화를 통해 최소한의 computational resources와 단축된 trainingevaluation 시간으로 더 나은 결과를 제공할 수 있습니다.

이 프로세스는 computer vision과 같은 분야에서 특히 중요하며, 이러한 분야에서는 modelscomplex images을 분석하는 데 상당한 리소스를 요구하는 경우가 많습니다. mobile devices나 엣지 시스템과 같은 리소스가 제한된 환경에서는 최적화된 모델이 제한된 리소스 내에서도 정확성을 유지하면서 원활하게 작동할 수 있습니다.

모델 최적화를 달성하기 위해 하이퍼파라미터 튜닝, 모델 프루닝, 모델 양자화, 혼합 정밀도 등 여러 가지 기법이 일반적으로 사용됩니다. 이 글에서는 이러한 기법과 이 기법들이 computer vision applications에 제공하는 이점에 대해 알아봅니다. 시작하겠습니다!

모델 최적화 이해하기#

Computer vision models은 대개 deep layers과 복잡한 구조를 가지고 있어 이미지의 복잡한 패턴을 인식하는 데 탁월하지만, processing power 측면에서 상당한 요구 사항이 발생할 수도 있습니다. 이러한 모델이 mobile phones이나 edge devices과 같이 하드웨어가 제한된 장치에 deployed될 때 특정 과제나 한계에 직면할 수 있습니다.

이러한 장치들의 제한된 처리 능력, 메모리, 에너지로 인해 모델이 이를 따라잡지 못해 performance이 눈에 띄게 저하될 수 있습니다. 모델 최적화 기법은 이러한 문제를 해결하는 핵심 요소입니다. 이러한 기법은 모델을 간소화하고 computational needs을 줄이며, 제한된 리소스에서도 모델이 여전히 효과적으로 작동할 수 있도록 보장합니다. 모델 최적화는 model architecture을 단순화하고, 연산의 precision을 낮추거나, 불필요한 구성 요소를 제거하여 모델을 더 가볍고 빠르게 만듦으로써 수행할 수 있습니다.

Diagram of reasons to optimize your models

그림 1. 모델을 최적화해야 하는 이유. 이미지 작성자: 저자.

다음은 가장 일반적인 모델 optimization 기법 중 일부이며, 이어지는 섹션에서 더 자세히 살펴보겠습니다.

  • Hyperparameter tuning: 학습률 및 배치 크기와 같은 하이퍼파라미터를 체계적으로 조정하여 모델 성능을 향상시키는 과정입니다.
  • Model pruning: 이 기법은 신경망에서 불필요한 가중치와 연결을 제거하여 복잡성과 연산 비용을 줄입니다.
  • Model quantization: 양자화는 일반적으로 32비트에서 16비트 또는 8비트로 모델의 가중치 및 활성화 정밀도를 낮추어 메모리 사용량과 연산 요구 사항을 대폭 줄이는 것을 포함합니다.
  • Precision adjustments: 혼합 정밀도 학습이라고도 하며, 모델의 서로 다른 부분에 서로 다른 정밀도 형식을 사용하여 정확도를 저하시키지 않으면서 리소스 사용을 최적화하는 것을 의미합니다.

설명: 머신 러닝 모델의 하이퍼파라미터#

모델이 데이터로부터 학습하는 방식을 형성하는 설정인 하이퍼파라미터를 튜닝하여 모델이 더 잘 학습하고 성능을 발휘하도록 도울 수 있습니다. Hyperparameter tuning은 이러한 설정을 최적화하여 모델의 효율성과 accuracy을 향상시키는 기법입니다. 모델이 training 중에 학습하는 파라미터와 달리, 하이퍼파라미터는 학습 과정을 안내하는 사전 설정된 값입니다.

튜닝 가능한 하이퍼파라미터의 몇 가지 예를 살펴보겠습니다:

  • Learning rate: 이 파라미터는 모델이 내부 가중치를 조정하기 위해 취하는 보폭을 제어합니다. 학습률이 높으면 학습 속도는 빨라질 수 있지만 최적의 솔루션을 놓칠 위험이 있으며, 낮으면 더 정확하지만 느릴 수 있습니다.
  • Batch size: 각 학습 단계에서 처리되는 데이터 샘플의 수를 정의합니다. 배치 크기가 클수록 더 안정적인 학습을 제공하지만 더 많은 메모리가 필요합니다. 작은 배치는 더 빨리 학습되지만 안정성이 떨어질 수 있습니다.
  • Epochs: 이 파라미터를 사용하여 모델이 전체 dataset을 보는 횟수를 결정할 수 있습니다. 에포크가 많아지면 정확도는 향상될 수 있지만 overfitting의 위험이 있습니다.
  • 커널 크기: Convolutional Neural Networks (CNN)에서 필터 크기를 정의합니다. 큰 커널은 더 넓은 패턴을 포착하지만 더 많은 처리가 필요하고, 작은 커널은 더 세밀한 디테일에 집중합니다.

하이퍼파라미터 튜닝의 작동 방식#

하이퍼파라미터 튜닝은 일반적으로 각 하이퍼파라미터에 대한 가능한 값의 범위를 정의하는 것으로 시작됩니다. 그런 다음 검색 알고리즘이 이러한 범위 내의 다양한 조합을 탐색하여 best performance을 생성하는 설정을 식별합니다.

일반적인 튜닝 방법으로는 그리드 검색(grid search), 랜덤 검색(random search), 베이지안 최적화(Bayesian optimization)가 있습니다. 그리드 검색은 지정된 범위 내의 모든 가능한 값 조합을 테스트합니다. 랜덤 검색은 조합을 무작위로 선택하며, 종종 효과적인 설정을 더 빠르게 찾습니다. 베이지안 최적화는 확률적 모델을 사용하여 이전 결과를 기반으로 유망한 하이퍼파라미터 값을 예측합니다. 이 접근 방식은 일반적으로 필요한 시도 횟수를 줄여줍니다.

궁극적으로 하이퍼파라미터의 각 조합에 대해 모델의 성능이 evaluated됩니다. 원하는 결과가 달성될 때까지 이 과정이 반복됩니다.

하이퍼파라미터와 모델 파라미터 비교#

하이퍼파라미터 튜닝을 진행하다 보면 하이퍼파라미터와 model parameters의 차이가 무엇인지 궁금해질 수 있습니다.

하이퍼파라미터는 학습률이나 배치 크기와 같이 model이 학습하는 방식을 제어하기 위해 training 전에 설정되는 값입니다. 이러한 설정은 학습 중에 고정되며 학습 과정에 직접적인 영향을 미칩니다. 반면에 모델 파라미터는 학습 과정에서 모델 스스로가 학습하는 값입니다. 여기에는 가중치와 biases이 포함되며, 이는 모델이 학습함에 따라 조정되고 궁극적으로 predictions을 안내합니다. 본질적으로 하이퍼파라미터는 학습 여정을 형성하고, 모델 파라미터는 그 학습 과정의 결과물입니다.

Comparison of parameters and hyperparameters

Fig 2. 파라미터와 하이퍼파라미터 비교.

딥 러닝에서 모델 가지치기가 중요한 이유#

Model pruning is a size-reduction technique that removes unnecessary weights and parameters from a model, making it more efficient. In computer vision, especially with deep neural networks, a large number of parameters, like weights and activations (intermediate outputs that help calculate the final output), can increase both complexity and computational demands. Pruning helps streamline the model by identifying and removing parameters that contribute minimally to performance, resulting in a more lightweight, efficient model.

Neural network before and after model pruning

Fig3. 모델 프루닝 전과 후.

모델이 학습된 후에는 크기 기반 가지치기나 민감도 분석과 같은 기술을 사용하여 각 파라미터의 중요도를 평가할 수 있습니다. 그런 다음 가중치 가지치기, 뉴런 가지치기, 구조적 가지치기 중 하나를 사용하여 중요도가 낮은 파라미터를 가지치기합니다.

가중치 프루닝은 출력에 미치는 영향이 최소화된 개별 연결을 제거합니다. 뉴런 프루닝은 모델 기능에 기여하는 바가 적은 뉴런 전체를 제거합니다. 구조적 프루닝은 컨볼루션 필터나 완전 연결 층의 뉴런과 같은 더 큰 섹션을 제거하여 모델의 효율성을 최적화합니다. 프루닝이 완료되면 남은 파라미터를 fine-tune하기 위해 모델을 재학습하여 축소된 형태에서도 높은 정확도를 유지하도록 보장합니다.

양자화를 통해 AI 모델의 지연 시간 줄이기#

Model quantization은 모델의 가중치와 활성화를 표현하는 데 사용되는 비트 수를 줄입니다. 일반적으로 고정밀 32비트 부동 소수점 값을 16비트 또는 8비트 정수와 같은 더 낮은 정밀도로 변환합니다. 비트 정밀도를 낮춤으로써 양자화는 model's size, 메모리 사용량, 연산 비용을 대폭 줄입니다.

computer vision에서는 32비트 부동 소수점이 표준이지만 16비트나 8비트로 변환하면 효율성을 향상시킬 수 있습니다. 양자화에는 가중치 양자화와 활성화 양자화의 두 가지 주요 유형이 있습니다. 가중치 양자화는 모델 가중치의 정밀도를 낮추어 크기 감소와 정확도의 균형을 맞춥니다. 활성화 양자화는 활성화의 정밀도를 낮추어 메모리 및 연산 요구 사항을 더욱 줄입니다.

Quantization from 32-bit float to 8-bit integer

Fig 4. 32비트 부동 소수점에서 8비트 정수로의 양자화 예시.

혼합 정밀도가 AI 추론 속도를 높이는 방법#

Mixed precisionneural network의 다양한 부분에 서로 다른 수치 정밀도를 사용하는 기법입니다. 32비트 부동 소수점과 같은 고정밀도 값과 16비트 또는 8비트 부동 소수점과 같은 저정밀도 값을 결합하여, 혼합 정밀도를 통해 computer vision models이 정확도를 희생하지 않고도 학습을 가속화하고 메모리 사용량을 줄일 수 있습니다.

학습 중에 혼합 정밀도는 네트워크 전반에 걸쳐 필요한 곳에 높은 정밀도를 유지하면서 특정 레이어에서 더 낮은 정밀도를 사용하여 달성됩니다. 이는 캐스팅(casting)과 손실 스케일링(loss scaling)을 통해 수행됩니다. 캐스팅은 모델이 필요로 하는 대로 서로 다른 정밀도 사이에서 데이터 유형을 변환합니다. 손실 스케일링은 수치적 언더플로우를 방지하기 위해 감소된 정밀도를 조정하여 안정적인 학습을 보장합니다. 혼합 정밀도는 대규모 모델과 대규모 배치 크기에 특히 유용합니다.

Mixed precision training using FP16 and FP32 floating-point types

Fig 5. 혼합 정밀도 학습은 16비트(FP16) 및 32비트(FP32) 부동 소수점 유형을 모두 사용합니다.

모델 정확도와 효율성 간의 균형 유지#

여러 가지 모델 최적화 기법을 다루었으므로, 이제 특정 요구 사항에 따라 사용할 기법을 결정하는 방법에 대해 논의해 보겠습니다. 선택은 사용 가능한 hardware, deployment environment,의 연산 및 메모리 제약, 필요한 정확도 수준 등의 요인에 따라 달라집니다.

예를 들어, 작고 빠른 모델은 리소스가 제한된 모바일 기기에 더 적합하며, 크고 정확한 모델은 고성능 시스템에서 사용할 수 있습니다. 각 기법이 different goals과 일치하는 방식은 다음과 같습니다:

  • 가지치기: 정확도에 큰 영향을 주지 않으면서 모델 크기를 줄이는 데 이상적이며, 모바일 폰이나 사물 인터넷(IoT) 장치와 같은 자원 제약이 있는 장치에 적합합니다.
  • Quantization: 메모리와 처리 능력이 제한된 모바일 기기 및 embedded systems에서 특히 모델 크기를 줄이고 inference을 가속화하는 훌륭한 옵션입니다. 약간의 정확도 저하가 허용되는 애플리케이션에 적합합니다.
  • Mixed precision: 대규모 모델을 위해 설계된 이 기법은 혼합 정밀도 연산을 지원하는 GPU 및 TPUs 같은 하드웨어에서 메모리 사용량을 줄이고 학습을 가속화합니다. 효율성이 중요한 고성능 작업에서 자주 사용됩니다.
  • Hyperparameter tuning: 연산 집약적이기는 하지만, medical imaging이나 autonomous driving과 같이 높은 정확도가 요구되는 애플리케이션에 필수적입니다.

핵심 요약#

모델 최적화는 특히 실제 애플리케이션에 AI를 배포하는 데 있어 머신 러닝의 핵심적인 부분입니다. 하이퍼파라미터 튜닝, 모델 가지치기, 양자화, 혼합 정밀도와 같은 기술은 컴퓨터 비전 모델의 성능, 효율성 및 자원 활용을 개선하는 데 도움이 됩니다. 이러한 최적화는 모델을 더 빠르고 자원 소모가 적게 만들며, 이는 메모리와 처리 능력이 제한된 장치에 이상적입니다. 최적화된 모델은 다양한 플랫폼에서 더 쉽게 확장 및 배포될 수 있어, 효과적이면서도 광범위한 용도에 적응 가능한 AI 솔루션을 가능하게 합니다.

Ultralytics GitHub repository를 방문하고 community에 가입하여 manufacturingagriculture에서의 AI 애플리케이션에 대해 자세히 알아보세요.

Explore solutions

Real-time AI that works with your team

로봇 공학에서의 AI

Ultralytics YOLO 모델로 더 스마트한 기기를 구동하십시오. 로봇 공학의 비전 AI는 자율 주행, 인식, 객체 추적 및 실시간 제어를 촉진합니다.
더 알아보기
Real-time AI that works with your team

물류 분야의 AI

Ultralytics YOLO 모델로 물류 프로세스를 간소화하십시오. 비전 AI를 통해 패키지 검사, 분류, 차량 추적 및 실시간 창고 안전 모니터링이 가능합니다.
더 알아보기
Real-time AI that works with your team

소매업에서의 AI

Ultralytics YOLO 모델로 소매업을 재구상하십시오. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리 및 더 스마트한 고객 인사이트를 지원합니다.
더 알아보기
Real-time AI that works with your team

의료 분야의 AI

Ultralytics YOLO 모델로 의료 솔루션을 구축하십시오. 의료 분야의 비전 AI는 더 빠른 의료 영상 분석, 더 스마트한 진단 및 환자 모니터링을 지원합니다.
더 알아보기
Real-time AI that works with your team

제조 분야의 AI

Ultralytics YOLO 모델로 제조 공정을 최적화하십시오. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수 및 조립 라인 자동화를 주도합니다.
더 알아보기
Real-time AI that works with your operation

자동차 분야의 AI

Ultralytics YOLO 모델을 통해 자동차 분야에 컴퓨터 비전을 적용하십시오. 비전 AI는 도로 안전, 운전자 보조 및 차량 자동화를 향상하여 더 스마트한 도로를 만듭니다.
더 알아보기
Real-time AI tailored to your operation

농업 분야의 AI

Ultralytics YOLO 모델을 통해 스마트 농업에 비전 AI를 도입하십시오. 작물 모니터링, 가축 추적 및 정밀 농업을 강화하여 더 높고 스마트한 생산량을 달성하십시오.
더 알아보기
Real-time AI that works with your team

로봇 공학에서의 AI

Ultralytics YOLO 모델로 더 스마트한 기기를 구동하십시오. 로봇 공학의 비전 AI는 자율 주행, 인식, 객체 추적 및 실시간 제어를 촉진합니다.
더 알아보기
Real-time AI that works with your team

물류 분야의 AI

Ultralytics YOLO 모델로 물류 프로세스를 간소화하십시오. 비전 AI를 통해 패키지 검사, 분류, 차량 추적 및 실시간 창고 안전 모니터링이 가능합니다.
더 알아보기
Real-time AI that works with your team

소매업에서의 AI

Ultralytics YOLO 모델로 소매업을 재구상하십시오. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리 및 더 스마트한 고객 인사이트를 지원합니다.
더 알아보기
Real-time AI that works with your team

의료 분야의 AI

Ultralytics YOLO 모델로 의료 솔루션을 구축하십시오. 의료 분야의 비전 AI는 더 빠른 의료 영상 분석, 더 스마트한 진단 및 환자 모니터링을 지원합니다.
더 알아보기
Real-time AI that works with your team

제조 분야의 AI

Ultralytics YOLO 모델로 제조 공정을 최적화하십시오. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수 및 조립 라인 자동화를 주도합니다.
더 알아보기
Real-time AI that works with your operation

자동차 분야의 AI

Ultralytics YOLO 모델을 통해 자동차 분야에 컴퓨터 비전을 적용하십시오. 비전 AI는 도로 안전, 운전자 보조 및 차량 자동화를 향상하여 더 스마트한 도로를 만듭니다.
더 알아보기
Real-time AI tailored to your operation

농업 분야의 AI

Ultralytics YOLO 모델을 통해 스마트 농업에 비전 AI를 도입하십시오. 작물 모니터링, 가축 추적 및 정밀 농업을 강화하여 더 높고 스마트한 생산량을 달성하십시오.
더 알아보기
Real-time AI that works with your team

로봇 공학에서의 AI

Ultralytics YOLO 모델로 더 스마트한 기기를 구동하십시오. 로봇 공학의 비전 AI는 자율 주행, 인식, 객체 추적 및 실시간 제어를 촉진합니다.
더 알아보기
Real-time AI that works with your team

물류 분야의 AI

Ultralytics YOLO 모델로 물류 프로세스를 간소화하십시오. 비전 AI를 통해 패키지 검사, 분류, 차량 추적 및 실시간 창고 안전 모니터링이 가능합니다.
더 알아보기
Real-time AI that works with your team

소매업에서의 AI

Ultralytics YOLO 모델로 소매업을 재구상하십시오. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리 및 더 스마트한 고객 인사이트를 지원합니다.
더 알아보기
Real-time AI that works with your team

의료 분야의 AI

Ultralytics YOLO 모델로 의료 솔루션을 구축하십시오. 의료 분야의 비전 AI는 더 빠른 의료 영상 분석, 더 스마트한 진단 및 환자 모니터링을 지원합니다.
더 알아보기
Real-time AI that works with your team

제조 분야의 AI

Ultralytics YOLO 모델로 제조 공정을 최적화하십시오. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수 및 조립 라인 자동화를 주도합니다.
더 알아보기
Real-time AI that works with your operation

자동차 분야의 AI

Ultralytics YOLO 모델을 통해 자동차 분야에 컴퓨터 비전을 적용하십시오. 비전 AI는 도로 안전, 운전자 보조 및 차량 자동화를 향상하여 더 스마트한 도로를 만듭니다.
더 알아보기
Real-time AI tailored to your operation

농업 분야의 AI

Ultralytics YOLO 모델을 통해 스마트 농업에 비전 AI를 도입하십시오. 작물 모니터링, 가축 추적 및 정밀 농업을 강화하여 더 높고 스마트한 생산량을 달성하십시오.
더 알아보기

미래의 AI를 함께 구축합시다!

머신 러닝의 미래와 함께 여정을 시작하십시오.