티스토리 뷰
텐서플로우/케라스에서 제공하는 최적화 함수인 SGD(Stocastic Gradient Descent, 확률적 경사 하강법)의 입력 파라미터와 출력 파라미터의 종류 및 특징에 대해 알아보고자 한다.
[입력 파라미터]
- learning_rate (기본값: 0.01)
- 학습률
- 모델이 얼마나 빠르게 또는 느리게 최적화할지를 결정함.
- 일반적으로 0.001 ~ 0.1 범위의 값을 사용하며, 학습 속도와 정확도에 중요한 영향을 미침.
- momentum (기본값: 0.0)
- 모멘텀 값으로, 이전 단계의 그래디언트를 일정 비율로 누적하여 최적화 방향을 부드럽게 만듦.
- 학습의 진동을 줄이고 더 빠른 수렴에 기여함.
- 0 ~ 1 범위의 값을 설정하며, 일반적으로 0.9가 자주 사용됨.
- nesterov (기본값: False)
- Nesterov 모멘텀을 활성화할지 결정함.
- Nesterov 모멘텀은 일반 모멘텀보다 더 빠르게 최적화 방향을 예측하여 학습을 가속화함.
- weight_decay (기본값: None)
- L2 정규화를 적용하여 가중치의 크기를 감소시키는 데 사용됨.
- 과적합(overfitting)을 방지하는 데 기여함.
- clipnorm (기본값: None)
- 그래디언트 벡터의 크기를 지정된 값으로 클리핑
- 그래디언트 폭발 문제를 방지하는 데 사용됨.
- clipvalue (기본값: None)
- 그래디언트 값의 절대값을 특정 범위 내로 제한함.
- name (기본값: "SGD")
- 최적화 함수의 이름을 사용자 정의 이름으로 설정할 수 있음.
[출력 파마미터]
- Optimizer 객체
- tf.keras.optimizers.SGD는 Optimizer 클래스의 객체를 반환합니다.
- 이 객체는 모델 학습 과정에서 손실 함수의 그래디언트를 계산하고, 가중치와 편향 값을 업데이트하는 데 사용됩니다.
[예시 코드]
from tensorflow.keras.optimizers import SGD
# SGD Optimizer 설정
optimizer = SGD(
learning_rate=0.01, # 학습률
momentum=0.9, # 모멘텀
nesterov=True # Nesterov 모멘텀 사용
)
print(optimizer)
반응형
'SWDesk > ArtificialIntelligence' 카테고리의 다른 글
신경망에서 이용되는 활성화 함수 종류 및 특징 (0) | 2024.11.27 |
---|---|
파이썬에서 CNN 모델 정의 방법 예시 (0) | 2024.11.26 |
*합성곱 신경망(Convolutional Neural Netwrok) 기본 이론 (0) | 2024.11.23 |
인공지능 구현에 사용되는 최적화 알고리즘 - Adam, 확률적 경사 하강법 등 (2) | 2024.11.22 |
Perceptron과 Neural Network의 등장 순서별 의미와 특징 (0) | 2024.11.21 |
반응형
250x250
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 혁신과허들
- 전류
- Video
- arduino
- 오블완
- 심심풀이치매방지기
- 절연형
- image
- Decorator
- 빌리언트
- 심심풀이
- badp
- 혁신
- 둎
- Hurdles
- bilient
- 전압
- DYOV
- 치매방지
- Innovations
- ServantClock
- Innovation&Hurdles
- 전압전류모니터링
- 티스토리챌린지
- 치매
- Innovations&Hurdles
- BSC
- 허들
- 배프
- 아두이노
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함