반응형
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
- 웹개발
- 쿠킹덤공략
- 프로그래머스
- Eclipse
- 프로그래밍
- SQL
- 스프링
- 쿠키런킹덤크리스마스
- 이클립스
- 크리스마스
- 쿠키런킹덤
- 개발자
- MySQL
- CSS
- 스프링퀵스타트
- edwith
- GIT
- 쿠킹덤
- 자바
- Spring
- Java
- 티스토리챌린지
- dart
- 홀리데이익스프레스
- oracle
- 딥러닝
- programmers
- 오블완
- HTML
- 쿠키런킹덤공략
Archives
- Today
- Total
Dev study and notes
[딥러닝] 4-6 활성화 함수 본문
반응형
이전 포스팅: https://devlunch4.tistory.com/102
4-6 활성화 함수
학습목표; 활성화 함수의 종류에 대해 알 수 있다.
학습내용;
* Sigmoid
a=1/(1+e^−z)
Tanh
a=(e^z+e^−z)/(e^z−e^−z )
ReLU
a=max(0,z)
leaky ReLU
a=max(0.01z,z)
Tanh 장점:
Tanh 의 값이 [-1, 1] 사이에 있고 평균이 0이기 때문에, 데이터를 원점으로 이동하는 효과가 있습니다. 이는 평균이 0.5인 Sigmoid 보다 더 효율 적입니다. 자세한 내용은 다음에 이야기 할 것입니다.
ReLU 의 장점:
0보다 큰 활성화 함수의 미분값이 다른 함수에 비해 많아서 빠르게 학습 할 수 있습니다.
왜 비선형 활성화 함수가 필요한지는 다음 시간에 이야기 할 것입니다.
- 영상 시작
- 신경망을 만들때 선택해야하는 것중 하나는 은닉층과 출력층에서 어떤 활성화 함수를 쓸지.
- 시그모이드 함수를 쓰는 두단계
- sigmoid a=1/(1+e^−z)
- g는 시그모이드 함수가 아닌 비선형 함수
- 시그모이드 함수는 0부터 1까지 나타냄
- 시그모이드 함수보다 대부분 경우 좋은 것은 쌍곡 탄젠트 함수인 tanh 함수입니다.
- tanh 함수 > -1 과 1 함수
- tanh 함수의 공식은 (e^z -e^z) . (e^z +e^z)
- tanh 함수는 수학적으로 sigmod 함수를 살짝 옮긴것, rkqtdl +1 과 -1 사이이기 떄문에 평균 값이 0에 더 가깝다.
- 학습시 평균값의 중심을 0으로 할때가 있다. tanh 함수를 사용시 0.5 대신 0 으로 만드는 효과가 있다.
- 시그모이드 활성화 함수를 쓰는 한가지 예외는 이진 분류를 할때.
- 출력층에 시그모이드 함수를 쓰고 g(z^[2]=델타(z^[2])
- 시그모이드 함수와 tanh함수의 단점은 z가 굉장히 크거나 작으면 함수의 도함수가 굉장히 작아진다는 것.
- z가 크거나 작으면 함수의 기울기가 0에 가까워지고 경사 하강법이 느려질 수 있다
- ReLU함수의 생김새 >>> 공식은 max(0, z).
- z가 양수일 때는 도함수가 1이고 z가 음수이면 도함수가 0이 된다
- 엄밀하게는 z가 0일 때의 도함수는 정의되지 않았지만 컴퓨터에서 구현하면 z가 정확히 0이 될 확률은 굉장히 낮기 때문에 걱정하지 말것.
- 이진 분류의 출력층에는 자연스럽게 시그모이드 함수를 사용
- 은닉층에 어떤 함수를 써야 할지 모르겠다면 그냥 ReLU를 쓰는 게 좋다.
- ReLU의 단점 중 하나는 z가 음수일 때 도함수가 0이라는 것
- 실제로는 잘 되긴 하지만 다른 버전인 leaky ReLU도 있다.(z가 음수일 때 도함수가 0인 대신 약간의 기울기를 준다)
- >
- ReLU와 leaky ReLU의 장점은 대부분의 z에 대해 기울기가 0과 매우 다르다는 것입니다
- 시그모이드나 tanh 대신 ReLU 함수를 쓴다면 신경망은 훨씬 더 빠르게 학습 할 수 있습니다
항상 ReLU를 쓴다고 이야기 했지만 중에 풀어야 하는 문제에 적용되지 않을 수도 있습니다. 활성화 함수를 고르는 법과 자주 쓰이는 활성화 함수들을 살펴봤습니다 .
반응형
'studyLog' 카테고리의 다른 글
[딥러닝] 4-8 활성화 함수의 미분 (0) | 2021.08.15 |
---|---|
[딥러닝] 4-7 왜 비선형 활성화 함수를 써야할까요? (0) | 2021.08.15 |
[JAVA] 람다, 스트림(1) (0) | 2021.08.13 |
[딥러닝] 4-5 벡터화 구현에 대한 설명 (0) | 2021.08.08 |
[딥러닝] 4-4 많은 샘플에 대한 벡터화 (0) | 2021.08.08 |
Comments