아담 옵티마이저가 적응형 학습 속도, 모멘텀, AI의 실제 애플리케이션을 통해 효율적인 신경망 학습을 지원하는 방법을 알아보세요.
Adam(적응형 순간 추정)은 딥러닝(DL) 과 머신러닝(ML)에서 광범위하게 사용되는 최적화 알고리즘입니다. 각 매개변수에 대한 학습 속도를 개별적으로 조정하여 학습 과정에서 네트워크 가중치를 효율적으로 업데이트하도록 설계되었습니다. Diederik P. Kingma와 Jimmy Ba의 논문"Adam: 확률적 최적화를 위한 방법"에서 소개된 Adam은 다른 두 가지 인기 있는 최적화 기법의 장점을 결합한 것입니다: AdaGrad(적응형 그라디언트 알고리즘)와 RMSprop(루트 평균 제곱 전파)입니다. 이 조합은 수많은 매개변수와 복잡한 데이터 세트를 가진 대규모 신경망을 훈련하는 데 특히 효과적입니다.
Adam은 기울기의 첫 번째와 두 번째 모멘트의 추정치를 기반으로 각 파라미터에 대한 적응형 학습률을 계산합니다. 기본적으로 과거 기울기의 기하급수적으로 감소하는 평균(모멘텀과 유사)과 과거 제곱 기울기의 기하급수적으로 감소하는 평균(AdaGrad/RMSprop과 유사)을 추적합니다.
단일 고정 학습률(또는 일정에 따라 감쇠하는 학습률)을 사용하는 확률적 경사 하강(SGD)과 같은 단순한 알고리즘에 비해 아담의 파라미터별 적응은 특히 복잡한 손실 환경에서 좋은 솔루션을 더 빠르게 찾을 수 있도록 해줍니다.
아담은 여러 가지 이유로 인기가 있습니다:
Adam은 많은 최신 모델의 최적화 전문가입니다:
컴퓨터 비전에서 Adam은 이미지 분류, 물체 감지, 이미지 분할과 같은 작업을 위해 심층 컨볼루션 신경망(CNN)을 훈련하는 데 자주 사용됩니다. 예를 들어 Ultralytics YOLO 모델(예: COCO 데이터 세트에 있는 것과 같은 이미지에서 객체를 감지하거나 인스턴스 분할을 수행하기 위한 훈련 단계에서 효율적인 융합을 위해 Adam을 활용할 수 있습니다. 또한 종양 감지와 같은 작업을 위한 의료 이미지 분석에도 적용됩니다.
Ultralytics 에코시스템 내에서, Adam과 그 변형인 AdamW(가중치 감쇠가 분리된 Adam)는 Ultralytics YOLO 모델 훈련에 사용할 수 있는 최적화 프로그램입니다. Adam의 적응형 학습 속도를 활용하면 다음과 같은 객체 감지, 인스턴스 세분화 또는 포즈 추정 모델을 학습하는 동안 수렴을 가속화할 수 있습니다. YOLO11 또는 YOLOv10과 같은 모델을 학습할 때 수렴을 가속화할 수 있습니다. SGD는 잠재적으로 더 나은 최종 일반화(과적합 방지)로 인해 일부 YOLO 모델의 기본 및 권장 최적화 도구이지만, Adam은 특정 시나리오에서 또는 초기 실험 및 모델 평가 중에 특히 유용한 강력한 대안을 제공합니다. 최적화 도구 및 기타 학습 설정을 쉽게 구성할 수 있습니다. 사용자는 로컬 또는 클라우드 트레이닝을 통해 Adam을 포함한 다양한 옵티마이저를 사용하여 모델을 트레이닝할 수 있으므로, Ultralytics HUB와 같은 도구를 사용하면 프로세스를 간소화할 수 있습니다. 다음과 같은 프레임워크 PyTorch 및 TensorFlow 와 같은 프레임워크는 Adam의 표준 구현을 제공하며, 이러한 프레임워크는 Ultralytics 프레임워크 내에서 활용됩니다. 추가적인 성능 향상을 위해 지식 증류 또는 다양한 모델 아키텍처 탐색과 같은 기술을 고려해 보세요.