Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- codeup
- 출력
- 8진수
- 기초 100제
- 불 연산
- 코드업
- input()
- 10진수
- 비교연산
- face recognition
- 2차원배열
- 기초100제
- 반복실행구조
- bitwise
- OpenCV
- 딥러닝
- 논리연산
- 16진수
- 입출력
- Docker
- 2진수
- 불 자료형
- 종합
- 아스키코드
- 문자열
- 파이썬
- 산술연산
- 선택실행구조
- 진수
- 비트단위논리연산
Archives
- Today
- Total
DeepFlowest
Gradient Descent_경사 하강법 본문
728x90
반응형
SMALL
※ 경사 하강법 : learning rate와 cost 함수의 순간 기울기(gradient)를 이용하여 가중치(weight)를 업데이트하는 방법
[선형 회귀] 의 경사 하강법

≫≫ cost 함수가 최소가 되는 w와 b를 찾는 알고리즘
[인공신경망] 의 경사 하강법
기존의 경사 하강법은 전체 데이터를 모두 사용해서 에러를 계산하기 때문에, 학습하는 데 시간이 오래 걸린다.
==> 확률적 경사 하강법(Stochastic Gradient Descent) 으로 해결 가능하다.
확률적 경사하강법(Stochastic Gradient Descent) 이란 전체 데이터를 한 번에 업데이트하는 것이 아니라, 일부분의 데이터를 업데이트하고 다음 일부 데이터를 업데이트하는 방법이다.
이 방법의 문제점은 Local minima(지역 최솟값)에 빠질 수 있다는 것이다. 이를 해결하기 위해 나온 것이 모멘텀(Momentum)이다.
이런 식으로 기존의 경사 하강법의 문제를 보완한 고급 경사 하강법들이 나왔다. 다음 표는 고급 경사 하강법의 종류와 간단한 설명에 관한 표이다.
| 고급 경사 하강법 | 개요 | 효과 | 케라스 사용법 |
| SGD (확률적 경사 하강법) |
랜덤하게 추출한 일부 데이터를 사용해 더 빨리, 자주 업데이트를 하게 하는 것 | 속도 개선 | keras.optimizers.SGD(lr=0.1) |
| Momentum (모멘텀) |
관성의 방향을 고려해 진동과 폭을 줄이는 효과 | 정확도 개선 |
keras.optimizers.SGD(lr=0.1,momentum=0.9) |
| NAG (네스테로프 모멘텀) |
Momentum이 이동시킬 방향으로 미리 이동해서 gradient를 계산, 불필요한 이동을 줄이는 효과 | 정확도 개선 |
keras.optimizers.SGD(lr=0.1,momentum=0.9, nesterov = True) |
| Adagrad (아다그라드) |
변수의 업데이트가 잦으면 학습률을 적게하여 이동 보폭을 조절하는 방법 | 보폭 크기 개선 | keras.optimizers.Adagrad(lr=0.01, epsilon = 1e-6 |
| RMSProp (알엠에스프롭) |
Adagrad의 보폭 민감도를 보완한 방법 | 보폭 크기 개선 | keras.optimizers.RMSProp(lr=0.001, rho=0.9, epsilon = 1e-08, decay=0.0) |
| Adam (아담) |
Momentum과 RMSProp 방법을 합친 방법 | 정확도와 보폭 크기 개선 | keras.optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon = 1e-08, decay=0.0) |
※ 표 출처 : 모두의 딥러닝
728x90
반응형
LIST
'딥러닝' 카테고리의 다른 글
| [딥러닝] 신경망이란 (0) | 2021.04.05 |
|---|---|
| 앙상블 기법 ( 배깅, 부스팅 ) 개념 정리 (0) | 2020.09.25 |
| [모두를 위한 딥 러닝 시즌2] 04_Logistic_Regression_Binary_Classification (0) | 2020.07.16 |
| [모두를 위한 딥 러닝 시즌2] 03_Multi_variable_linear_regression (0) | 2020.07.16 |
| [모두를 위한 딥 러닝 시즌2] 02_How_to_minimize_cost (0) | 2020.07.16 |
Comments