https://www.boostcourse.org/ai216/lecture/401762?isDesc=false
7. 다중 클래스 분류
Softmax Regression
- 지금까지 보았던 문제들은 이진 분류였다.
- multilabel classification의 경우 softmax regression을 사용한다.
- 결과값은 각 label에 대한 0에서 1사이의 확률값으로 나오게 된다.
- softmax 층에서는 해당 클래스(label)에 속할 확률을 구하게 된다. 마지막 선형 출력값 z들을 각각 지수화시켜 임시변수 t = e^2를 만든다. 그 후 모든 값들의 합이 1이 될 수 있도록 모든 임시 변수값들의 합을 나눠서 정규화시킨다.
Softmax 분류기 훈련시키기
- 소프트맥스 함수를 써서 분류기를 훈련시키는 방법.
- 손실함수
- L값을 최소화하여 그 클래스가 될 확률을 최대화 시킨다.
- L값을 최소화할 때 경사 하강 기법을 쓴다.
- softmax와 손실함수를 결합한 역전파의 값은
8. 프로그래밍 프레임워크 소개
지역 최적값 문제
- 고차원 비용함수에서 경사가 0인 경우는 대부분 지역 최적값이 아니라 대개 '안장점'이다.
- 안장점으로 향하는 구간인 안정지대는 미분값이 아주 오랫동안 0에 가깝게 유지되는 지역을 말한다.
- 대개 충분히 큰 Network 학습시 지역 최적값에 갇히는 일은 거의 없다.
- 안정지대의 문제점은 경사가 거의 0에 가깝기 때문에 학습속도가 느려진다는 것이다. 또한, 다른 쪽으로 방향변환이 없다면 안정지대에서 벗어나기 어렵다. 이는 Adam, RMSprop 등의 최적화 알고리즘이 해결해 준다.
Tensorflow
- 딥러닝 프레임워크 중 하나.
- 비용 함수를 최소화하는 w와 b의 값을 자동으로 찾을 수 있다.
- session을 정의하고 run함수로 w와 b의 값을 찾는다.
- add, multiply, square 함수로 정방향 전파만 구현하면 경사 구현법으로 역방향 전파를 잘 계산해 낸다.
'머신러닝' 카테고리의 다른 글
[NLP] 자연어 처리의 모든 것 - 자연어 처리의 시작 (0) | 2024.06.24 |
---|---|
[딥러닝] 딥러닝 2단계: 심층 신경망 성능 향상시키기 - 5. 하이퍼파라미터 , 6. 배치 정규화 (0) | 2024.05.20 |
[딥러닝] 딥러닝 2단계: 심층 신경망 성능 향상시키기 - 4. 최적화 알고리즘 (0) | 2024.05.13 |
[딥러닝] 딥러닝 2단계: 심층 신경망 성능 향상시키기 - 3. 최적화 문제 설정 (0) | 2024.05.06 |
[딥러닝] 딥러닝 2단계: 심층 신경망 성능 향상시키기 - 2. 신경망 네트워크의 정규화 (0) | 2024.04.15 |