학습 : 훈련 데이터로부터 가중치 매개변수의 최적값을 자동으로 획득하는것
손실함수에 대해서 학습!!
손실함수의 결과값을 가장 작게 만드는 것이 목표
→ 손실함수의 값을 가장 작게 만드는 기법 : 기울기를 이용한 경사법 학습
- 데이터를 학습
- 신경망의 특징 : 데이터를 보고 학습할수 있음
- 실제 신경망에서 매개변수를 수작업으로 정하는 것은 불가능!!
- 기계학습 : 데이터 중심, 데이터에서 패턴을 발견하고 진행 (사람중심 → 데이터 중심)
- 사람이 인위적으로 판단하는 안좋은 패턴
- 이미지 데이터를 벡터로 변환하고 → SVM, KNN등으로 학습
- 데이터로 부터 규칙 → 기계가 담당
- 사람 → 데이터를 잘 분리하여서 잘 학습하도록 구성하는것이 매우 중요
- 데이터
- 훈련 데이터, 시험 데이터로 구분
- 오버피팅 : 한 데이터 셋에만 지나치게 최적화된 상태
- 손실함수
- 개념
- 신경망도 '하나의 지표'를 기준으로 최적의 매개변수 값을 찾는다.
- 손실 함수 : 신경망에서 사용되는 지표
- 오차제곱합, 교체 엔트로피 오차 를 사용함
- 신경망도 '하나의 지표'를 기준으로 최적의 매개변수 값을 찾는다.
- 오차제곱합 (평균 제곱 오차)
- 수식
- Yk : 신경망의 출력 (신경망이 추정한 값)
- Tk : 정답 레이블
- k : 데이터의 차원수
- 수식
- 교체 엔트로피 오차
- 수식
- Yk : 신경망의 출력 (신경망이 추정한 값)
- Tk : 정답 레이블
- 수식
- 개념
- 수치 미분
경사법에서는 기울기(경사) 값을 기주능로 나아갈 방향을 정합니다.
정의 : 아주 작은 차분으로 미분하는 것
- 미분 : 평균값이 아닌, '특정 순간'의 변화량
- 오차를 줄이기 위한 방법 : x를 중심으로 그 전후의 차분을 계산 수행 (중심 차분, 중앙 차분 이라고 함)
- 편미분 : 변수가 여러개인 함수에 대한 미분
- 기울기
- 모든 변수의 편미분을 벡터로 정의한 것
- 기울기가 가르키는 쪽 : 각 장소에서 함수의 출력 값을 가장 크게 줄이는 방향
- 경사법(경사 하강법)
- 최적 : 손실함수가 최솟값이 될때의 매개변수 값
- 기울기를 잘 이용해 함수의 최솟값(또는 가능한 한 작은 값)을 찾으려는 경사법
- 기울어진 방향이 꼭 최솟값을 가리키는 것은 아니다. (그 방향으로 가야 함수의 값을 줄일수 있다.)
- 신경망에서는 경사법을 많이 사용한다.
- 경사 하강법 : 최솟값을 찾아 가는것 (일반적으로 신경망(딥러닝)분야야서 일반적으로 통용)
- 경사 상승법 : 최대값을 찾아 가는것
- 학습률 : 한번에 학습으로 얼마만큼 학습을 해야 하는지 (매개변수 값을 얼마나 갱신하는냐 정하는 것)
- 하이퍼파라미터 라고 합니다.
- 가중치와 편향 같은 신경망의 매개변수와는 성질이 다른 매개변수 입니다.
- 사람이 직접 설정 해야 하는 매개변수
'book' 카테고리의 다른 글
밑바닥부터 시작하는 딥러닝.2 (0) | 2021.10.06 |
---|---|
밑바닥부터 시작하는 딥러닝.1 (chap6 : 학습관련 기술들) (0) | 2021.09.13 |
밑바닥부터 시작하는 딥러닝.1 (chap5 : 오차역전파법) (0) | 2021.09.13 |
밑바닥부터 시작하는 딥러닝.1 (chap2 : 퍼셉트론) (0) | 2021.09.08 |
밑바닥부터 시작하는 딥러닝.1 (intro) (0) | 2021.09.07 |