아담 옵티마이저가 적응형 학습 속도, 모멘텀, AI의 실제 애플리케이션을 통해 효율적인 신경망 학습을 지원하는 방법을 알아보세요.
Adam 최적화 도구는 딥 러닝(DL) 과 머신 러닝(ML)에서 광범위하게 사용되는 인기 있고 효과적인 최적화 알고리즘입니다. 적응형 순간 추정의 약자인 Adam은 확률적 경사 하강(SGD)의 다른 두 가지 확장 기능의 장점을 결합한 것입니다: 각 매개변수에 대한 적응형 학습률을 계산할 수 있다는 점이 주요 강점으로, 대규모 데이터 세트, 고차원 매개변수 공간 또는 컴퓨터 비전(CV) 및 자연어 처리(NLP)와 같은 분야에서 흔히 발생하는 노이즈가 있는 기울기 문제에 매우 적합합니다.
Adam은 과거 기울기의 정보를 사용하여 훈련 중에 모델 파라미터를 반복적으로 업데이트합니다. 각 매개변수에 대해 첫 번째 모멘트(기울기의 평균)의 추정치와 두 번째 모멘트(기울기의 중심이 없는 분산)의 추정치라는 두 가지 이동 평균을 유지합니다. 이러한 모멘트는 각 매개변수에 대해 학습 속도를 개별적으로 조정하는 데 도움이 됩니다. 그래디언트 업데이트가 크거나 빈번한 매개변수는 학습 속도가 작아지고, 업데이트가 작거나 빈번하지 않은 매개변수는 학습 속도가 커집니다. 이러한 적응형 특성으로 인해 표준 SGD에 비해 수렴 속도가 빨라지는 경우가 많습니다. 또한 이 알고리즘은 기울기의 이동 평균을 사용하여 모멘텀을 통합하므로 관련 방향을 따라 진행 속도를 가속화하고 진동을 완화하는 데 도움이 됩니다. 자세한 내용은 Adam의 원본 논문에서 확인할 수 있습니다.
Adam은 강력한 기본 옵션이지만 다른 최적화 도구와의 관계를 이해하는 것이 유용합니다:
Adam 옵티마이저는 다양한 AI 모델을 학습하는 데 사용됩니다:
Ultralytics 에코시스템 내에서 Adam과 그 변형인 AdamW는 Ultralytics YOLO 모델 훈련에 사용할 수 있는 최적화 프로그램입니다. Adam의 적응형 학습 속도를 활용하면 객체 감지, 인스턴스 세분화 또는 포즈 추정 모델을 훈련하는 동안 수렴을 가속화할 수 있습니다. 잠재적으로 더 나은 최종 일반화를 위해 SGD가 YOLO 모델에 대한 기본 및 권장 최적화 도구인 경우가 많지만, Adam은 특정 시나리오나 초기 실험 중에 특히 유용한 강력한 대안을 제공합니다. 최적화 도구 및 기타 학습 설정을 쉽게 구성할 수 있습니다. 사용자는 로컬 또는 클라우드 트레이닝을 통해 Adam을 포함한 다양한 옵티마이저를 사용하여 모델을 트레이닝할 수 있는 Ultralytics HUB와 같은 도구를 통해 프로세스를 간소화할 수 있습니다. 성능을 최적화하려면 하이퍼파라미터 튜닝과 같은 기술을 고려하세요. 다음과 같은 프레임워크 PyTorch 및 TensorFlow 와 같은 프레임워크에서 아담의 구현을 제공합니다.