Seung-MinJi
[밑시딥] Chapter3 신경망 본문
신경망을 그림으로 나타내면 아래와 같이 나타납니다.
왼쪽 줄을 입력층, 맨오른쪽 줄을 출력층, 중간 줄을 은닉층이라고 합니다. 은닉층의 뉴런은 사람 눈에는 보이지 않습니다.

입력 신호의 총합을 출력 신호로 변환하는 함수를 일반적으로 활성화 함수라 합니다.
활성화라는 이름이 말해주듯 활성화 함수는 입력 신호의 총합이 활성화을 일으키는지를 정하는 역할을 합니다.


가중치가 달린 입력 신호와 편향의 총합을 계산하고 이를 A라 합니다. 그리고 a를 함수 h()에 넣어 y를 출력하는 흐름입니다. 즉 가중치 신호를 조합한 결과가 A라는 노드가 되고 활성화 함수 H를 통과하여 Y라는 노드로 변환되는 과정입니다.
활성화 함수는 임계값을 경계로 출력이 바뀌는데 이런 함수를 계단 함수라 합니다.
"퍼셉트론에서는 활성화 함수로 계단 함수를 이용한다."라 할수 있습니다.
즉, 활성화 함수로 쓸 수 있는 여러 후보 중에서 퍼셉트론은 계단 함수를 채용하고 있습니다.
시그모이드 함수
신경망에서 자주 이용하는 활성화 함수인 시그모이드 함수를 나타낸 식입니다.



즉, 계단 함수와 시그모이드 함수는 입력이 중요하면 큰 값을 출력하고 입력이 중요하지 않으면 작은 값을 출력합니다.
그리고 입력이 아무리 작거나 커도 출력은 0에서 1사이라는 것도 둘의 공통점 입니다.
또 시그모이드 함수는 곡선, 계단 함수는 계단처럼 구부러진 직선으로 나타며 동시에 비선형 함수로 분류됩니다.
신경망에서는 활성화 함수로 비선형 함수를 사용해야 합니다. 달리 말하면 선형 함수를 사용하면 안됩니다.
선형 함수를 이용하면 신경망의 층을 깊게 하는 의미가 없어 은닉층이 없는 네트워크로 표현할 수 있습니다.
그래서 층을 쌓는 혜택을 얻고 싶다면 활성화 함수로는 반드시 선형 함수를 사용해야 합니다.
ReLU 함수
Relu는 입력이 0을 넘으면 그 입력을 그대로 출력하고 0이하이면 0을 출력하는 함수입니다.

신경망은 분류와 회귀 모두 이용가능 합니다. 다만 둘 중 어떤 문제냐에 따라 출력층에서 사용하는 활성화 함수가 달라집니다. 일반적으로 회귀에는 항등 함수를 분류에는 소프트맥스 함수를 사용합니다.
분류 : 데이터가 어느 클래스에 속하느냐
회귀 : 입력데이터에서 연속적인 수치를 예측
항등함수는 입력 그래도 출력합니다. 입력과 출력이 항상 같다는 뜻의 항등입니다.

한편, 분류에서 사용하는 소프트맥스 함수의 식은 다음과 같습니다.

소프트맥스 함수를 사용하면 신경망의 출력은 다음과 같이 계산할 수 있습니다.

보는 바와 같이 소프트맥스 함수의 출력은 0에서 1.0 사이의 실수입니다. 또 소프트맥스 함수 출력의 총합은 1입니다.
이 성질 덕분에 소프트맥스 함수의 출력을 확률로 해석 가능합니다.
위의 예에서 y[0]의 확률은 0.018(1.8%), y[1]의 확률은 0.245(24.5%), y[2]의 확률은 0.737(73.7%)로 해석할 수 있습니다.
이 결과 확률들로부터 “74%의 확률로 2번째 클래스, 25%의 확률로 1번째 클래스, 1%의 확률로 0번째 클래스다.
즉, 소프트맥스 함수를 이용함으로써 문제를 확률적으로 대응할 수 있게 되는 것입니다.
normalize는 입력 이미지의 픽셀 값을 0.0~1.0 사이의 값으로 정규화할지를 정함
flatten은 입력 이미지를 평탄하게, 즉 1차원 배열로 만들지를 정함
one_hot_label은 레이블을 원-핫 인코딩one-hot encoding 형태로 저장할지를 정함
정리
● 신경망에서는 활성화 함수로 시그모이드 함수와 ReLU 함수 같은 매끄럽게 변화하는 함수를 이용한다.
● 넘파이의 다차원 배열을 잘 사용하면 신경망을 효율적으로 구현할 수 있다.
● 기계학습 문제는 크게 회귀와 분류로 나눌 수 있다.
● 출력층의 활성화 함수로는 회귀에서는 주로 항등 함수를, 분류에서는 주로 소프트맥스 함수를 이용한다.
● 분류에서는 출력층의 뉴런 수를 분류하려는 클래스 수와 같게 설정한다.
● 입력 데이터를 묶은 것을 배치라 하며, 추론 처리를 이 배치 단위로 진행하면 결과를 훨씬 빠르게 얻을 수
있다.
'AI' 카테고리의 다른 글
| [밑시딥] chapter 4 신경망 학습 (1) | 2023.09.25 |
|---|---|
| [밑시딥] Chapter2 퍼셉트론 (0) | 2023.09.22 |
| Machine Learning and Deep Learning (0) | 2023.07.09 |