업계 뉴스레터
전문가가 전하는 최신 AI 트렌드
가장 중요하고 흥미로운 AI 뉴스에 대한 선별된 인사이트를 확인하세요. 주간 Think 뉴스레터를 구독하세요. IBM 개인정보 보호정책을 참조하세요.
구독은 영어로 제공됩니다. 모든 뉴스레터에는 구독 취소 링크가 있습니다. 여기에서 구독을 관리하거나 취소할 수 있습니다. 자세한 정보는 IBM 개인정보 보호정책을 참조하세요.
학습률은 머신 러닝 모델이 최적화 알고리즘의 각 단계에서 매개변수를 조정하는 정도를 결정하는 하이퍼매개변수입니다. 학습률은 모델이 학습 과정에서 최적의 성능을 제공하는지 여부를 결정할 수 있습니다.
최적화 알고리즘의 목표는 모델의 예측과 실제 데이터 간의 차이를 측정하는 손실 함수의 값을 최소화하는 것입니다. 모델은 최적화 알고리즘을 실행할 때마다 결과에 따라 모델 매개변수를 업데이트합니다. 학습률 또는 걸음 수는 그리스 문자 η로 표시되며 모델이 수행할 수 있는 변경 사항의 크기를 결정합니다.
학습률은 모델이 학습을 통해 매개변수를 의미 있게 조정할 수 있을 만큼 충분히 학습하면서도 과도하게 수정하지 않도록 하는 데 도움이 됩니다. 언덕을 내려가는 상황을 상상해 보세요. 언덕을 안전하게 내려가려면 의미 있는 진전을 이루기 위해 충분히 빠르게 내려가야 하지만 너무 빨라서 통제력을 잃고 비틀거릴 정도는 아니어야 합니다. 최적의 학습 속도는 안전한 하강 속도를 설정합니다.
각 학습 단계는 모델이 데이터 세트에 대한 이전 이해를 재정의하는 것을 나타냅니다. 신경망은 최적화 알고리즘을 통과할 때마다 훈련 데이터에 대해 더 많은 것을 "학습"합니다.
업계 뉴스레터
가장 중요하고 흥미로운 AI 뉴스에 대한 선별된 인사이트를 확인하세요. 주간 Think 뉴스레터를 구독하세요. IBM 개인정보 보호정책을 참조하세요.
구독은 영어로 제공됩니다. 모든 뉴스레터에는 구독 취소 링크가 있습니다. 여기에서 구독을 관리하거나 취소할 수 있습니다. 자세한 정보는 IBM 개인정보 보호정책을 참조하세요.
학습률은 AI 모델이 학습 데이터를 효과적으로 학습할 수 있도록 안내하기 때문에 중요합니다.
학습률이 낮으면 모델이 각 단계에서 충분히 '학습'할 수 없습니다. 모델이 매개변수를 너무 느리게 업데이트하고 수렴에 도달하는 데 너무 오래 걸립니다. 하지만 그렇다고 해서 높은 학습률이 정답은 아닙니다.
학습률이 높으면 알고리즘이 실수를 너무 많이 수정하는 오버슈팅의 희생양이 될 수 있습니다. 이 경우 알고리즘은 더 작은 학습률이 필요하지만 학습이 비효율적일 정도로 너무 작아서는 안 됩니다.
예를 들어 지구의 생명체에 대해 배우러 온 외계인을 상상해 보세요. 외계인은 고양이, 개, 말, 돼지, 소를 보고 모든 동물은 다리가 네 개라는 결론을 내립니다. 그런 다음 외계인은 닭을 봅니다. 이 생물도 동물인가요? 외계인의 학습 속도에 따라 다음 세 가지 결론 중 하나에 도달하게 됩니다.
최적의 학습률이라면, 외계인은 닭도 동물이라는 결론을 내릴 것입니다. 그리고 만약 그렇다면, 이것은 다리의 개수가 어떤 것이 동물인지 여부를 결정하는 핵심 요인이 아니라는 것을 의미해야 합니다.
외계인이 학습률이 낮으면 이 닭 한 마리로부터 충분한 통찰력을 얻을 수 없습니다. 외계인은 닭의 다리가 네 개가 아니기 때문에 동물이 아니라고 결론을 내릴 것입니다. 외계인의 작은 학습률은 닭을 더 많이 보기 전까지는 생각을 업데이트하는 것을 허용하지 않습니다.
학습률이 높으면 외계인은 과잉 교정합니다. 이제 닭은 동물이고 닭은 다리가 두 개이기 때문에 모든 동물은 다리가 두 개여야 한다는 결론을 내릴 것입니다. 학습률이 높다는 것은 모델이 한 번에 “너무 많이” 학습한다는 의미입니다.
학습률이 다르면 학습 결과도 달라집니다. 최상의 학습률은 알고리즘이 수렴 지점을 초과하지 않고 적시에 모델의 매개변수를 조정할 수 있도록 하는 학습률입니다.
매개변수는 딥 러닝 모델이 작동하는 방식을 제어하는 구성 변수입니다. 매개변수는 모델의 동작을 결정하고 모델의 성능을 개선하기 위해 조정할 수 있다는 점에서 모델의 설정과 유사합니다.
모델 학습 매개변수 또는 모델 가중치는 모델 내부에 있으며 학습 중에 학습됩니다. 각 학습 단계에서 모델은 성능을 개선하기 위해 내부 매개변수를 변경합니다. 모델이 변경하는 변경의 크기는 학습률에 따라 설정됩니다. 모델의 매개변수 구성은 성능에 직접적인 영향을 미칩니다.
모델을 미세 조정할 때 모델이 이미 학습되었기 때문에 더 작은 조정은 필요합니다. 미세 조정은 일반적으로 모델을 처음 학습할 때보다 더 낮은 학습률을 필요로 합니다.
하이퍼매개변수는 모델의 구조와 학습 프로세스를 형성하는 외부 규칙입니다. 하이퍼매개변수는 모델 학습을 담당하는 사람이 구성합니다. 학습률은 이러한 하이퍼매개변수 중 하나이며 일반적으로 0.0에서 1.0 사이의 값을 갖습니다.
다른 두 가지 기본 하이퍼매개변수는 다음과 같습니다.
에포크: 학습 중 전체 데이터 세트가 모델을 통과하는 횟수입니다. 모델이 학습 데이터의 각 샘플을 한 번씩 처리하면 하나의 에포크가 완료됩니다. 에포크 하이퍼매개변수는 학습 과정에서 에포크 수를 설정합니다.
배치 크기: 학습 에포크는 배치(batch)라고 하는 더 작은 단위로 나눌 수 있습니다. 모델은 각 학습 배치 후에 가중치를 업데이트합니다.
Epoch는 훈련 프로세스의 기간을 설정하고, 배치 크기는 모델이 가중치를 업데이트하는 빈도를 결정합니다. 학습률은 각 배치 후에 얼마나 많은 것을 학습해야 하는지 모델에 알려줍니다.
경사 하강법은 머신 러닝 모델을 학습하기 위한 최적화 알고리즘입니다. 경사 하강법 알고리즘은 손실 함수를 사용하여 머신 러닝 알고리즘의 예측과 실제 값 간의 차이를 차트로 표시합니다. 기울기는 함수의 기울기로, 잠재적인 값을 나타냅니다.
최적화 알고리즘의 목표는 경사를 로컬 최솟값 수준으로 낮추는 것이며, 여기서 함수는 가장 낮은 아웃풋을 생성합니다. 그러나 로컬 최솟값이 반드시 함수의 단일 전역 최솟값 또는 전체 최솟값인 것은 아닙니다. 데이터 과학자는 아웃풋이 감소함에 따라 모델이 최적이 아닌 국소적 최솟값에 머무르지 않도록 하기 위해 다른 알고리즘 및 정규화와 같은 보완적 방법을 사용합니다.
손실 함수의 최소화를 통해 모델의 가중치를 업데이트하는 프로세스를 역전파(backpropagation)라고 합니다. 경사 하강법은 역전파 기법을 수행하는 일반적인 방법입니다.
알고리즘이 모델의 매개변수를 업데이트하여 손실 함수를 줄이고 기울기를 하강시킬 때마다 모델은 수렴에 조금 더 가까워집니다. 학습률은 알고리즘이 모델 가중치를 업데이트하는 속도를 제한하여 이러한 하강을 제어합니다.
경사하강법에는 세 가지 유형이 있습니다.
배치 경사 하강법은 데이터 세트의 모든 샘플에 대한 손실을 계산한 후 반복됩니다. 매우 안정적이지만 최적의 수렴을 달성하는 데 가장 적합하지는 않습니다.
확률적 경사 하강법(SGD)는 반복당 하나의 데이터 포인트를 무작위로 선택하여 속도와 뉘앙스를 크게 증가시킵니다. 그러나 업데이트 빈도가 높으면 안정성이 저하될 수 있습니다. SGD에는 Adam, AdaGrad 및 RMSProp을 포함하여 다양한 변형이 있습니다.
미니 배치 경사 하강법은 대신 반복당 작은 데이터 포인트 그룹을 선택하는 절충안입니다. 안정성을 저하시키지 않으면서 우수한 업데이트 빈도와 속도를 제공합니다.
좋은 학습률을 결정하는 것은 주로 시행착오 과정을 거쳐야 합니다. 훈련 중 진행 상황을 평가하지 않고 최적의 초기 학습률을 보장할 수 있는 완벽한 데이터 과학 기법은 없습니다.
학습률을 결정하는 일반적인 방법은 다음과 같습니다.
그리드 검색
학습률 일정
적응형 학습률
하이퍼매개변수 최적화
학습률 최적화는 감쇠와 모멘텀의 핵심 원칙에 크게 의존합니다. 많은 딥 러닝 라이브러리가 사용자를 대신해 감쇠와 모멘텀을 계산합니다. 그러한 라이브러리 중 하나는 TensorFlow, JAX, PyTorch를 지원하고 Python으로 작성된 오픈 소스 Keras API입니다.
훈련이 진행됨에 따라 감쇠는 학습 속도를 늦춥니다. 감쇠를 효과적으로 사용하면 모델이 처음에는 빠르게 학습한 다음 점진적으로 학습하여 수렴을 오버슈팅하지 않도록 할 수 있습니다.
모멘텀은 최적화 알고리즘의 관성입니다. 경사가 같은 방향을 따를 때(알고리즘이 아직 수렴에 도달하지 않았음을 의미) 학습 속도가 증가하며, 국소 최솟값을 우회하여 계속 하향 진행을 진행합니다. 모멘텀을 높이면 수렴 속도가 빨라질 수 있습니다. 낮은 모멘텀은 사소한 국소 최솟값에서 학습을 지연시킬 수 있는 반면, 높은 모멘텀은 실수로 국소 최솟값을 크게 건너뛸 수 있습니다.
그리드 검색은 학습률을 결정하기 위한 무차별 대입 방법입니다. 데이터 과학자는 모든 잠재적 학습률을 포함하는 그리드를 구성합니다. 그런 다음 각 학습률을 테스트하고 검증합니다. 검증은 새 데이터 집합에서 학습된 모델을 테스트하고 해당 하이퍼매개변수를 추가로 업데이트합니다.
그리드 검색은 철저한 학습률 평가 프로세스를 용이하게 하지만 시간이 많이 걸리고 컴퓨팅 집약적입니다.
학습률 일정은 미리 결정된 여러 계획 중 하나에 따라 훈련 프로세스 중에 학습률을 업데이트합니다. 일반적인 학습률 일정은 다음과 같습니다.
고정 학습률
시간 기반 감쇠
단계 감쇠
지수 감쇠
다항식 감쇠
고정 학습률 또는 일정한 학습률은 훈련 중에 변경되지 않습니다. 고정 학습률을 사용하면 학습 중에 모멘텀과 감소가 고정된 상태로 유지됩니다. 고정 학습률은 다른 학습률 전략을 테스트할 수 있는 벤치마크 또는 기준점을 제공합니다.
시간 기반 학습 일정은 미리 정해진 학습 에포크 횟수 또는 지정된 에포크가 지나면 학습률 감소를 트리거합니다. 학습률이 감소하는 정도는 이전 주기의 학습률을 기준으로 합니다. 일반적인 시간 기반 학습 일정은 에포크 수에 반비례하는 계수를 기반으로 감소를 진행합니다.
단계 감소는 설정된 횟수의 에포크가 지나면 학습 속도가 절반으로 줄어드는 등 미리 정해진 비율만큼 감소합니다.
지수 감소 학습률은 설정된 Epoch 횟수가 지나면 기하급수적으로 감소합니다. 그렇지 않으면 지수 감소 학습 일정은 단계 감소 일정과 유사합니다.
다항식 학습 일정에서 감소는 현재 에포크의 다항식 함수에 의해 결정됩니다. 에포크에 높은 지수를 곱하면 감소 속도가 빨라지고, 낮은 지수를 곱하면 감소 속도가 안정적으로 유지됩니다.
주기적 학습 일정은 최소 학습률과 최대 학습률을 정의한 다음 두 학습률 사이에서 학습률을 반등시킵니다. 삼각형 스케줄은 최솟값에서 최댓값으로 선형적으로 증가하다가 설정된 상수만큼 다시 감소합니다. 다른 일정은 코사인, 사인 곡선 또는 포물선 함수를 사용합니다.
적응형 학습 알고리즘은 현재 상태 또는 이전 반복에 따라 동적으로 조정됩니다. 반면, 예약 학습률은 모두 사전 정의된 하이퍼매개변수에 따라 달라집니다.
많은 적응형 학습 방법은 SGD 변형입니다. 주목할 만한 적응형 학습 알고리즘은 다음과 같습니다.
Adagrad: 2011년에 도입된 AdaGrad(적응형 그라데이션) 알고리즘 제품군은 각 매개변수에 대해 개별적으로 학습률을 업데이트합니다. 일반적으로 학습 속도와 기능 빈도를 반비례 관계로 설정합니다. 이 접근 방식은 데이터 세트에서 더 관련성이 높은 기능에 초점을 유지합니다.
RMSProp: RMSProp(제곱 평균 제곱 전파)은 각 경사 제곱의 이동 평균에 따라 각 매개변수에 대한 학습 가중치를 조정합니다. 먼 과거의 기울기를 무시하여 AdaGrad를 개선하여 안정성을 높이고 더 빠른 수렴으로 이어집니다.
Adam: 2014년에 도입된 Adam(적응형 모멘트 추정)은 모멘텀과 RMSProp을 결합하여 이전 기울기를 기반으로 각 매개변수의 학습률을 조정합니다. 이후 버전의 Adam에는 웜 스타트가 추가되어 학습을 시작할 때 학습률이 점차 높아졌습니다.
하이퍼파라미터 최적화 또는 하이퍼파라미터 튜닝은 학습률을 포함한 모든 하이퍼파라미터에 대한 최적의 구성을 식별하는 방법입니다. 하이퍼파라미터 튜닝 알고리즘은 최적의 하이퍼파라미터를 구성하는 프로세스를 자동화하며, 각 알고리즘은 특정 하이퍼파라미터를 다른 하이퍼파라미터보다 선호합니다.
전체적으로 최적의 하이퍼매개변수 구성을 검색하면 각 하이퍼매개변수가 다른 하이퍼매개변수에 미치는 영향을 고려할 수 있습니다. 하지만 이 접근 방식은 특히 하이퍼매개변수의 양이 많은 경우 계산 비용이 많이 들 수 있습니다.
AI 빌더를 위한 차세대 엔터프라이즈 스튜디오인 IBM watsonx.ai로 생성형 AI, 파운데이션 모델 및 머신 러닝 기능을 학습, 검증, 조정 및 배포하세요. 적은 데이터로 짧은 시간 내에 AI 애플리케이션을 구축하세요.
업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.
AI 추가를 통해 중요한 워크플로와 운영을 혁신함으로써 경험, 실시간 의사 결정 및 비즈니스 가치를 극대화합니다.