동까의 코딩

Easy! 딥러닝 chapter 2-1 본문

ML, DL

Easy! 딥러닝 chapter 2-1

동까의 코딩 2024. 12. 15. 01:34
반응형

인공 신경망 및 경사 하강법의 이해

인공 신경망(Artificial Neural Network, ANN)은 인간 뇌의 신경망 구조에서 영감을 받아 만들어진 모델로, 수많은 인공 뉴런(노드)엣지(연결선)를 통해 서로 연결되어 정보를 처리합니다. 이 글에서는 인공 신경망의 기본 구조와 작동 원리, 그리고 최적화를 위한 경사 하강법에 대해 설명합니다.


1. 인공 신경망의 기본 구성

인공 뉴런 (Artificial Neuron)

  • 노드(Node):
    인공 뉴런은 원(circle)으로 표현되며, 각 노드는 입력 신호를 받아 처리합니다.

  • 엣지(Edge):
    노드들을 연결하는 선(line)으로, 신경망 내에서 신호가 전달되는 경로를 나타냅니다.

인공 뉴런의 작동 과정

  1. 입력 수신:
    여러 입력 노드로부터 신호(자극)를 받습니다.

  2. 가중합 계산:
    각 입력에 대해 웨이트(Weight)를 곱하고, 이를 모두 더해 가중합을 구합니다.

    • 웨이트(Weight): 각 입력의 중요도를 결정하는 파라미터입니다.
  3. 바이어스(Bias) 추가:
    계산된 가중합에 바이어스를 더하여, 뉴런이 너무 민감하게 반응하지 않도록 조절합니다.

  4. 활성화 함수(Activation Function) 적용:
    최종 합산값을 활성화 함수에 통과시켜, 다음 층으로 전달할 출력값을 결정합니다.

    • 활성화 함수: 입력 신호를 처리하여 출력값을 결정하는 함수로, 대표적으로 sigmoid, ReLU, tanh 등이 있습니다.

2. 인공 신경망의 구조

인공 신경망은 여러 층으로 구성되며, 대표적으로 다층 퍼셉트론(Multi-Layer Perceptron, MLP) 형태를 취합니다.

  • 입력 레이어(Input Layer):
    외부 데이터를 입력받는 층.

  • 은닉 레이어(Hidden Layer):
    입력 데이터를 처리하여 특징을 추출하는 중간 단계. 은닉 레이어가 많을수록 신경망은 "깊어집니다."

  • 출력 레이어(Output Layer):
    최종 결과를 출력하는 층.

Fully-Connected (FC) 레이어:
각 레이어의 모든 노드가 다음 레이어의 모든 노드와 연결되어 있는 형태를 의미합니다. MLP는 하나 이상의 은닉 레이어를 가지며, 일반적으로 모든 레이어가 FC 구조로 이루어집니다.


3. 학습 및 최적화

인공 신경망의 목표는 입력 데이터와 원하는 출력 사이의 관계를 학습하여 최적의 함수를 찾는 것입니다. 이 과정에서 손실 함수(Loss Function)경사 하강법(Gradient Descent)이 핵심적인 역할을 합니다.

선형 회귀와 손실 함수

  • 선형 회귀(Linear Regression):
    입력과 출력 간의 선형 관계를 모델링하는 기법으로, 머신러닝의 기본이 되는 방법입니다.

  • 손실 함수(Loss Function):
    모델의 예측값과 실제 값 사이의 차이를 수치화하여, 파라미터의 성능을 평가하는 함수입니다.

    • 손실 값이 작을수록 모델의 성능이 좋음을 의미합니다.

경사 하강법 (Gradient Descent)

경사 하강법은 손실 함수를 최소화하기 위해 파라미터를 업데이트하는 최적화 알고리즘입니다.

  1. 파라미터 초기화:
    가중치와 바이어스와 같은 파라미터를 임의의 값으로 설정합니다.

  2. 그래디언트 계산:
    현재 파라미터에서 손실 함수의 기울기(gradient)를 계산합니다.

    • 그래디언트(Gradient):
      함수 값이 가장 빠르게 증가하는 방향을 나타내며, 이를 반대 방향으로 이동함으로써 최소값을 찾아갑니다.
  3. 파라미터 업데이트:
    그래디언트의 반대 방향으로 파라미터를 조정합니다.

    • 학습률(Learning Rate):
      업데이트할 때 이동하는 보폭을 결정하는 하이퍼파라미터입니다.
      • 값이 너무 작으면 학습 속도가 느리고, 너무 크면 최소점을 지나쳐 발산할 위험이 있습니다.
      • 일반적으로 0.1, 0.01, 0.001 등의 값이 사용됩니다.
  4. 반복:
    새로운 파라미터에서 2~3 단계를 반복하며, 손실 함수의 값이 충분히 낮아지거나 더 이상 변화가 없을 때까지 학습합니다.

경사 하강법의 한계

  • 속도:
    파라미터 업데이트마다 계산이 필요하여, 특히 파라미터의 수가 많거나 값이 클 경우 학습 속도가 느려질 수 있습니다.

  • 로컬 최소점(Local Minimum):
    전체 최적점이 아닌 국소 최적점에 머무를 가능성이 있습니다.


4. 결론

인공 신경망은 인간 뇌의 신경망 구조를 모방하여 여러 인공 뉴런이 연결된 형태로 정보를 처리합니다.
각 뉴런은 입력 신호에 웨이트와 바이어스를 적용한 후 활성화 함수를 거쳐 다음 층으로 전달되며, 이 과정을 통해 복잡한 함수를 근사합니다.
모델 학습 시 손실 함수를 최소화하기 위해 경사 하강법을 사용하며, 학습률 조절과 같은 최적화 기법들이 모델의 성능에 큰 영향을 미칩니다.

이와 같은 기본 개념들을 이해하는 것은 딥러닝 모델 개발 및 최적화에 있어 매우 중요합니다.

반응형

'ML, DL' 카테고리의 다른 글

Easy! 딥러닝 chapter 3  (0) 2024.12.27
Easy! 딥러닝 chapter 2-2  (0) 2024.12.26
Easy! 딥러닝 chapter 1  (1) 2024.12.11