본문 바로가기
국비 교육/머신러닝, 딥러닝

[딥러닝] DNN 심층신경망

by 육츠 2024. 8. 1.

DNN 심층 신경망 (Deep Neural Network)

인공 신경망을 기반으로 은닉층이 2개 이상인 신경망 학습 알고리즘

복잡하고 표현력 높은 모델을 구축하기 위해 입력계층과 출력 계층 사이에 복수개의 은닉계층으로 이뤄져 있는 것이다.
- 입력 계층 : 신경망에서 데이터를 입력받는 계층
- 은닉 계층 : 입력 계층과 출력 계층 사이에서 하나 이상 존재하는 계층
- 출력 계층 : 결과 값을 만들어내는 계층

 

신경망 모형 학습 절차

활성화 함수

- 가중합에 대해 다음 층으로 데이터 전달 시 활성화 할지 말지를 결정한다.
- 종류에 따라 다르지만, 가중합의 값이 충분하지 않으면 활성화 함수는 다음 층에 0에 가까운 값 또는 그 이하의 값을 전달한다.
- 비선형 함수를 사용하는데 이는 심층 신경망을 통해 선형 분류로는 풀기 어려운 문제 (= 비선형 문제) 를 해결하기 위해서이다.
- 다층 신경망이 선형적으로만 연결되면 결과가 선형 함수로만 나오기 때문에 반드시 비선형 함수를 사용해야 한다.

출력 함수 손실 함수
- 출력 층에서는 히든 레이어에서의 사용한 함수와는 다른 활성화 함수를 사용한다.

linear      : Regression (회귀문제)
sigmoid  : Binary-classification (이진 분류)
softmax  : Multi-classification (다진 분류)
Mean squared error (MSE) : 선형 회귀 문제를 풀고자 하는 경우
Cross-entropy error            : 분류 문제를 풀고자 하는 경우

 

 

역전파 알고리즘

 

출력 계산 과정

[사용 변수]

- Xn : 뉴런의 입력 값
- Wn : 가중치.
신경망에서 가중치는 곧 지능이다. 가중치는 학습을 통해 최적의 값을 찾아 나간다.

신경망의 각 입력을 연결된 가중치와 곱한다.
 - 중요한 입력은 높은 가중치로 강조하고, 중요하지 않은 입력은 낮은 가중치로 크기를 줄인다.
모든 신경망의 입력과 가중치의 곱을 더한다.
그 합을 활성화 함수를 통해 변환한다.