딥러닝 심화_01_개념집
01_고급 경사 하강법 정리
- 딥러닝 구동에 사용되는 고급 경사 하강법 개요 및 케라스 활용법


아담(Adam) : 현재 가장 많이 사용되는 고급 경사 하강법
02_Loss function(오차 함수) 종류
교차 엔트로피는 주로 분류 문제에서 많이 사용되는데(폐암 환자의 생존/사망 분류 같은)
특별히 예측 값이 참과 거짓 둘 중 하나인 형식일 때는 binary_crossentropy(이항 교차 엔트로피)를 씀
binary_crossentropy를 적용하려면 앞 식의 mean_squared_error 자리에 binary_crossentropy를 입력
이를 실행하면 예측 정확도(Accuracy)가 약간 향상되는 것을 알 수 있음
교차 엔트로피는 주로 분류 문제에서 많이 사용되는데(폐암 환자의 생존/사망 분류 같은)
특별히 예측 값이 참과 거짓 둘 중 하나인 형식일 때는 binary_crossentropy(이항 교차 엔트로피)를 씀
binary_crossentropy를 적용하려면 앞 식의 mean_squared_error 자리에 binary_crossentropy를 입력
이를 실행하면 예측 정확도(Accuracy)가 약간 향상되는 것을 알 수 있음
03_모델 실행하기

주어진 폐암 수술 환자의 생존 여부 데이터는 총 470명의 환자의 17개의 정보를 정리한 것
속성(또는 feature, 독립변수) : 17개의 환자 정보
샘플 : 가로 한 줄에 해당하는 각 환자의 정보
클래스(종속변수) : 생존 여부
주어진 데이터에는 총 470개의 샘플이 각각 17개씩의 속성을 가지고 있는 것
epoch vs batch
1 epoch : 학습 프로세스가 모든 샘플에 대해 한 번 실행되는 것
위 코드에서 100 epoch이므로 각 샘플이 처음부터 끝까지 100번 재사용될 때까지 학습하라는 것
batch_size : 샘플을 한 번에 몇 개씩 처리할지 정하는 부분
batch_size=10은 전체 470개 샘플을 10개씩 끊어서 집어넣으라는 뜻
batch_size가 너무 작으면 학습 속도가 느려지고, 너무 크면 결과값이 불안정해진다.
(자신의 컴퓨터 메모리가 감당할 만큼의 batch_size를 설정해 주는 것이 좋다.
04_미니배치
• 확률적 경사 하강법(Stochastic Gradient Descent: SGD) :
하나의 샘플이 주어지면 오차를 계산하여서 바로 가중
치를 변경하는 방법이다.
• 배치 학습(batch learning): 모든 샘플을 모두 보여준 후
에 개별 샘플의 그래디언트를 전부 더해서 이것을 바탕
으로 모델의 가중치를 변경하는 방법이다.

• 온라인 학습과 배치 학습의 중간에 있는 방법이 미니 배치(mini
barch)이다.
• 이 방법에서는 훈련 데이터를 작은 배치들로 분리시켜서 하나의 배
치가 끝날 때마다 학습을 수행하는 방법이다.
• 1 < size(매니 배치) < size(훈련 데이터)

05_데이터 정규화
• 입력값은 [0, 1] 사이의 값이어야 한다.


06_학습률(Learning Rate)

07_모멘텀
• 모멘텀(momentum)은 학습 속도를 가속시킬 목적으로 사용한다.

08_과잉적합

09_드롭아웃

09-1_드롭아웃의 효과

10_앙상블
