용어집

아담 옵티마이저

아담 옵티마이저가 적응형 학습 속도, 모멘텀, AI의 실제 애플리케이션을 통해 효율적인 신경망 학습을 지원하는 방법을 알아보세요.

YOLO 모델을 Ultralytics HUB로 간단히
훈련

자세히 알아보기

Adam 최적화 도구는 딥 러닝(DL)머신 러닝(ML)에서 광범위하게 사용되는 인기 있고 효과적인 최적화 알고리즘입니다. 적응형 순간 추정의 약자인 Adam은 확률적 경사 하강(SGD)의 다른 두 가지 확장 기능의 장점을 결합한 것입니다: 각 매개변수에 대한 적응형 학습률을 계산할 수 있다는 점이 주요 강점으로, 대규모 데이터 세트, 고차원 매개변수 공간 또는 컴퓨터 비전(CV)자연어 처리(NLP)와 같은 분야에서 흔히 발생하는 노이즈가 있는 기울기 문제에 매우 적합합니다.

아담의 작동 방식

Adam은 과거 기울기의 정보를 사용하여 훈련 중에 모델 파라미터를 반복적으로 업데이트합니다. 각 매개변수에 대해 첫 번째 모멘트(기울기의 평균)의 추정치와 두 번째 모멘트(기울기의 중심이 없는 분산)의 추정치라는 두 가지 이동 평균을 유지합니다. 이러한 모멘트는 각 매개변수에 대해 학습 속도를 개별적으로 조정하는 데 도움이 됩니다. 그래디언트 업데이트가 크거나 빈번한 매개변수는 학습 속도가 작아지고, 업데이트가 작거나 빈번하지 않은 매개변수는 학습 속도가 커집니다. 이러한 적응형 특성으로 인해 표준 SGD에 비해 수렴 속도가 빨라지는 경우가 많습니다. 또한 이 알고리즘은 기울기의 이동 평균을 사용하여 모멘텀을 통합하므로 관련 방향을 따라 진행 속도를 가속화하고 진동을 완화하는 데 도움이 됩니다. 자세한 내용은 Adam의 원본 논문에서 확인할 수 있습니다.

다른 최적화 알고리즘과의 비교

Adam은 강력한 기본 옵션이지만 다른 최적화 도구와의 관계를 이해하는 것이 유용합니다:

  • 확률적 그라디언트 하강(SGD): 가장 기본적인 최적화 기법입니다. Adam과 달리 표준 SGD는 모든 매개변수에 대해 고정된 단일 학습 속도를 사용하지만, 모멘텀이 있는 SGD와 같은 변형이 존재합니다. Adam은 실제로, 특히 훈련 초기에 더 빨리 수렴하는 경우가 많지만, 일부 연구에 따르면 SGD가 특정 작업에서 더 나은 일반화를 달성할 수 있다고 합니다.
  • AdaGrad: 과거 기울기의 제곱 합을 기반으로 학습 속도를 조정하지만, 시간이 지남에 따라 학습 속도가 무한히 작아져 학습이 중단될 수 있습니다.
  • RMSProp: AdaGrad와 유사하지만 기하급수적으로 감소하는 제곱 기울기 평균을 사용하여 학습 속도가 너무 급격하게 줄어드는 것을 방지합니다. Adam은 RMSProp의 아이디어를 기반으로 구축했습니다.

실제 애플리케이션

Adam 옵티마이저는 다양한 AI 모델을 학습하는 데 사용됩니다:

예 1: 이미지 인식 및 감지

컴퓨터 비전에서 Adam은 컨볼루션 신경망(CNN)을 훈련하는 데 자주 사용됩니다. 예를 들어 이미지넷과 같은 대규모 데이터 세트에서 이미지 분류를 위한 모델을 훈련하거나 복잡한 물체 감지 시스템을 개발할 때 수백만 개의 파라미터를 효율적으로 처리하고 높은 정확도를 달성하는 Adam의 이점을 활용할 수 있습니다.

예 2: 자연어 처리

Adam은 BERTGPT 변형과 같은 대규모 언어 모델(LLM)을 학습하기 위한 표준 최적화 프로그램입니다. 기계 번역, 텍스트 요약 또는 감정 분석과 같은 작업을 위한 모델을 학습할 때 Adam은 이러한 모델과 관련된 복잡한 손실 환경을 효율적으로 탐색하는 데 도움을 줍니다.

다음에서 사용 Ultralytics YOLO

Ultralytics 에코시스템 내에서 Adam과 그 변형인 AdamW는 Ultralytics YOLO 모델 훈련에 사용할 수 있는 최적화 프로그램입니다. Adam의 적응형 학습 속도를 활용하면 객체 감지, 인스턴스 세분화 또는 포즈 추정 모델을 훈련하는 동안 수렴을 가속화할 수 있습니다. 잠재적으로 더 나은 최종 일반화를 위해 SGD가 YOLO 모델에 대한 기본 및 권장 최적화 도구인 경우가 많지만, Adam은 특정 시나리오나 초기 실험 중에 특히 유용한 강력한 대안을 제공합니다. 최적화 도구 및 기타 학습 설정을 쉽게 구성할 수 있습니다. 사용자는 로컬 또는 클라우드 트레이닝을 통해 Adam을 포함한 다양한 옵티마이저를 사용하여 모델을 트레이닝할 수 있는 Ultralytics HUB와 같은 도구를 통해 프로세스를 간소화할 수 있습니다. 성능을 최적화하려면 하이퍼파라미터 튜닝과 같은 기술을 고려하세요. 다음과 같은 프레임워크 PyTorchTensorFlow 와 같은 프레임워크에서 아담의 구현을 제공합니다.

모두 보기