간단하게는 입력층(0층) 은닉층(1층) 출력층(2층)으로 이루어져있다.
기존 함수에 Bias(편향)을 명시한 퍼셉트론을 포함
> 활성화함수
활성화함수는 편향값을 포함한 입력신호의 총합을 출력신호로 변환하는 함수
- 계단함수
단순 활성화함수는 주로 계단함수로 표현된다.
0의 값을 기준으로 봤을때 0보다크면 1, 0보다 작으면 0으로 정의되어있는 계단모양의 함수
- 시그모이드 함수
신경망에서 자주 이용하는 활성화함수
0과 1의 값이 아니라 연속적인 실수값을 반환해주는 함수
- 계단함수와 시그모이드 함수 비교
공통점 : 두 함수 모두 비선형함수 (신경망에서는 활성화함수로 비선형함수를 사용해야함)
차이점 : 계단함수는 0 or 1만 출력 / 시그모이드는 연속적인 실수값 출력
- ReLU함수 (Rectified Linear Unit Function)
최근 신경망 분야에서 이용
입력이 0이하면 0을 출력하고 0을 넘으면 해당 값을 그대로 출력
> 3층 신경망
은닉층이 늘어나면 3층 신경망이라고 부르기도 하는데 보통은 어떻게 신경망이 구현되고 있는지를 같이 설명해준다.
신경망에서의 계산을 행렬 계산(넘파이 배열)으로 정리할 수 있다. = 신경망 각 층의 계산은 행렬의 내적으로 처리 가능
> 출력층 설계
- 항등함수 : 회귀
입력을 그대로 출력
- 소프트맥스 함수 : 분류
지수함수를 이용 y = e^x
지수함수는 어떤 범위를 넘어서면 무한대로 발산되는 특성을 가지고 있기때문에 오버플로 문제가 발생할 수 있다.
오버플로를 막을 목적으로 입력 신호 중 최댓값을 이용하는 것이 일반적이다.
소프트맥스 함수의 출력은 0~1 사이의 실수
출력의 총합은 1
출력을 확률로 해석할 수 있음
신경망을 학습시킬 때는 출력층에서 소프트맥스 함수를 사용
추론 단계에서는 출력층의 소프트맥스 함수를 생략하는 것이 일반적인데, 각 원소의 대소관계가 변하지 않고 지수함수가 단조 증가 함수이기 때문이다.
> MNIST 데이터셋
손으로 직접 쓴 숫자(필기체숫자)들로 이루어진 데이터 셋
0~9까지 숫자 이미지로 구성되어 6만개의 트레이닝 데이터와 1만개의 테스트 데이터로 이루어짐
28 x 28 사이즈의 흑백 이미지 데이터
'ML&DL > study' 카테고리의 다른 글
머신러닝 알고리즘 8. 합성곱 신경망 (CNN) (0) | 2021.06.18 |
---|---|
머신러닝 알고리즘 7-2. 신경망(딥러닝) 학습 (0) | 2021.06.18 |
머신러닝 알고리즘 6. 퍼셉트론 (0) | 2021.06.16 |
머신러닝 알고리즘 5. 선형 회귀 분석 (0) | 2021.06.15 |
머신러닝 알고리즘 4. 나이브 베이즈 (0) | 2021.06.15 |