새벽의 블로그
< 딥러닝 > Neural Network, 신경망 본문
신경망이란
인간의 뇌를 모방하여 만들어진 기계 학습 모델입니다.
인간의 뇌의 뉴런들이 서로 연결되어 정보를 주고받으며 학습하는 것처럼, 컴퓨터가 데이터를 학습하도록 처리한 알고리즘을 설계한 것입니다.
신경망의 구조
1. Input Layer 입력층
학습할 데이터를 신경망에 전달합니다.
2. Hidden Layer 은닉층
입력 데이터를 처리하는 중간 층으로, 신경망의 계산을 실제로 수행합니다.
은닉층은 1개일 수도, 여러 개일 수도 있으며 이 층의 개수에 따라서 n층 구조의 신경망이라고 칭합니다.
각 은닉층은 뉴런으로 구성되어 수학적인 연산으로 데이터를 처리합니다.
3. Output Layer 출력층
처리한 데이터를 출력하는 층입니다.
신경망의 동작 방식
신경망에서 각 뉴런(노드)는 입력값에 특정 가중치(Weight)과 편향(Bias)를 적용한 후, 활성화 함수(Activation Function)을 통해 출력값을 계산합니다.
편향은 신경망에서 각 뉴런에 더해지는 상수로, 데이터 독립적인 스케일링 오프셋을 제공합니다. 이를 통해 모델은 입력 데이터와 관계없이 일정한 상수 값을 더함으로써 가중치만으로 설명할 수 없는 특성을 학습할 수 있게 됩니다.
1. 데이터 독립적: 편향은 입력 데이터의 값에 상관없이 각 뉴런에 항상 더해지는 값입니다. 즉, 입력 데이터에 따라 변하지 않기 때문에 데이터 독립적입니다.
2. 스케일링 오프셋: 가중치만으로는 각 뉴런의 출력 값이 원점(0)을 기준으로 대칭적일 가능성이 큽니다. 하지만 편향이 있으면, 뉴런의 출력이 특정 방향으로 이동하거나 스케일이 조정될 수 있습니다. 이는 학습된 모델이 더욱 다양한 패턴을 학습할 수 있게 도와줍니다.
활성화 함수는 데이터를 비선형적으로 변환하여, 선형 뿐만 아니라 다양한 패턴을 학습할 수 있게 조정합니다.
대표적인 활성화 함수는 시그모이드(sigmoid), 렐루(ReLU), 소프트맥스(softmax) 등이 있습니다.

1. ReLU (Rectified Linear Unit) : 간단하고 계산 효율이 높아 은닉층에서 주로 사용됩니다.

2. Sigmoid : 출력이 0과 1 사이의 값을 가지며 이진 분류에서 자주 사용됩니다.

3. Softmax : 다중 클래스 분류에서 사용되며, 각 클래스의 확률을 계산해 출력합니다.
학습과정
신경망은 오차를 최소화하는 방향으로 최적의 가중치를 위해 가중치 값을 조정하며 학습합니다.
이 과정에서 순전파(Forward Propagation), 손실 함수(Loss Function), 역전파(Back Propagation), 경사 하강법(Gradient Descent)가 사용됩니다.
1. Forward Propagation (forward pass) - 순전파
입력 데이터가 신경망을 통과하며 정해진 가중치 편향, 활성화 함수에 따라 출력값을 계산합니다.
2. Loss Function - 손실함수 계산
출력 결과(예측값)과 실제값의 차이(=오차)를 계산합니다.
손실함수는 예측한 값이 실제값에서 얼마나 벗어났는지를 나타내므로, 이를 최소화하는 것이 목표입니다.
손실함수는 다음과 같이 여러 종류가 있습니다.
- 평균 제곱 오차(MSE, Mean Squared Error): 회귀 문제에서 많이 사용됩니다.
- 크로스 엔트로피 손실(Cross Entropy Loss): 분류 문제에서 많이 사용됩니다.
3. Back Propagation - 역전파
계산된 오차를 기반으로 가중치를 조절하기 위해, 역방향으로 돌아가며 신호를 전달합니다.
4. Gradient Descent - 경사 하강법
가중치를 조정하여 오차를 줄여나가는 알고리즘입니다.
1. 변화율 계산 : 조정할 가중치를 손실함수를 조정할 대상인 가중치로 편미분하여 변화율을 구합니다.
이 결과는 해당 가중치가 손실함수에 얼마나 기여했는지를 판단할 수 있는 지표입니다.
2. 가중치 조정 : 손실에 기여한 정도에 따라 가중치를 적절히 조정합니다.
손실에 크게 기여했을 수록 가중치는 더 많이 조정되어야 합니다.
기울기가 양수이면 손실을 크게 만든 것으로, 해당 가중치는 감소되어야합니다.
기울기가 음수라면 손실을 작게 만든 것으로, 해당 가중치는 증가되어야합니다.
가중치는 학습률과 변화율을 곱하여 수정합니다.

'Artificial Intelligence' 카테고리의 다른 글
< AI > 인공지능, 머신러닝, 딥러닝의 구분과 딥러닝 모델 종류 (3) | 2024.10.15 |
---|