1 - Neural Networks

Jimin·2026년 3월 7일

딥러닝

목록 보기
2/2

Neural Network

Simple Mathematical Model (1)

인공 세포의 구조

입력 X → 연결 강도 W → Cell Body F → 출력 Y

  • Cell body에서는 두가지 일이 발생한다.
    1. Summation (Signal 저장)
    2. Threshold 기준으로 output 결정
      1. Summation > 0 → 1
      2. Summation ≤ 0 → 0

Simple Mathematical Model (2)

1. Summation

  • Weighted summation of inputs - 입력과 Weight를 곱해서 모두 더한다.

2. Non-linear threshold

  • Summation을 하다가 threshold을 넘으면 output을 내게 된다.
    • 보통 threshold를 0으로 설정한다.
    • 그래프에서 S는 Summation이다. ⇒ 즉 S가 0을 넘게되면 1을 output으로 내게된다.
  • 입력 (X)
  • Connection Weignt (W)
    • scale factor
    • connection weight가 높으면 signal이 잘 전달됨.
    • connection weight가 작으면 signal이 잘 전달 안됨.
  • Cellbody
    • Summation
    • Activation Function (F)
      • 판단함수 - S값의 결과를 기준으로 출력을 낼지 말지를 결정한다.

Simple Mathematical Model (3)

만들어진 뇌세포들을 모두 연결 하면 뇌가 만들어진다!

  • Input X
  • Connection Weight W
  • 각 노드에서: Summation → Activate

Neural Network 구조

  • 뇌세포 존재
  • 뇌세포들이 Connection으로 이어져 있음
  • 각 연결에 Connection Weight가 존재
  • 각세포들의 입력 * Weight Summation → Activate
  • 출력

Neural Network가 할 수 있는 것?

Pentinum(Digital Computer)가 할 수 있는 모든 것!


What a Perceptron Can Do?

  • Neural Network를 바로 분석하는 것은 복잡하니, 뇌세포 하나에 먼저 집중

  • Perceptron

    • Perception: 인지
    • Electron: 전자
  • 입력1: X1

  • 입력2: X2

  • 입력3: 1

    • Bias 라고 함.
    • 입력3은 1로 고정임.
    • Bias는 경계에 큰 자유도를 부여한다.
    • Bias가 사라지면? → Neural Network의 성능이 안좋아진다.
      • 원점을 지나는 경계가 된다.
      • X1W1 + X2W2 = 0
      • 경계가 원점을 지나게 되면 Neural Network의 성능이 비효율적이게 된다.
  • W1, W2, W3

    • 상수
    • 경계를 의미한다.

X1과 X2로 이루어진 input space 에서

경계의 위쪽 값은 1을 출력하고, 경계의 아래쪽은 0을 출력하게 된다.

즉, Perceptron은 Linearly Separable Problems를 해결한다!

AND Operation

  • Perceptron이 W 값을 결정하니까 AND 연산이 가능함.
  • 1: True
  • 0: False
  • 빨간 점과 파란점을 구분하는 선을 찾아야 함. (이 선은 무한이 많이 존재)

OR Operation

NOT Operation

결론

Neural Network는 Digital Circuit, 즉 CPU까지 만들 수 있음
→ 디지털 컴퓨터가 할 수 있는 모든 일은, Neural Network도 그 이상으로 가능하다.

  • AND와 OR의 차이는 Connection Weight만 바뀌고 있다는 점이다.
    • Neuron 은 고정 (하드웨어, 껍데기)
    • Connection Weight (프로그램, 기능)만 바꿔주면 연산이 변경된다. ⇒ Neuron의 기능이 바뀐다.
> 즉, W를 어떻게 설정하느냐가 가장 중요하다!
W를 설정하는 과정을 “학습” 이라고 한다. 
자동 설정, 내가 계산하는 것이 아닌, Neural Network이 알아서 계산하는 것이 Neural Network의 장점.
> 

What a Neural Network Can Do?

Neural Network 는 non-linearly separable problems 을 해결할 수 있다.

XOR Operation

  • 직선으로는 빨강색, 파란색 구분이 안된다.
    ⇒ non-linearly separable problem
  • 즉, Neuron이 아니라, Neuron Network를 활용해야한다.
  • Neuron은 직선문제만 해결 가능.
  • 1번 연산: AND Gate
  • 2번 연산: OR Gate
  • 최종 연산: XOR GATE

Multilayer Perceptron

  • Signal은 앞 → 뒤 의 방향으로만 진행해야한다.
  • 단, 빨간색 방향은 가능
  • 현재 그림은 2Layer Structure 이다.
  • 보통 2~3 Layer는 Shallow Nerwork이라고 한다.
  • 보통 4 Layer부터 Deep Neural Network이라고 한다.

Multilayer Perceptron의 구조

  • Input Layer ↔ Hidden Layer ↔ Output Layer

노드 개수

  • Input Layer ↔ Hidden Layer 노드 개수
    • input과 output의 노드 개수를 설정하는 것은 내가 해결하고자 하는 “문제” 이다.
  • Hidden Layer 노드 개수
    • 내가 결정하는 것이다.
    • 10, 100, 10000, …
    • 간단할 수록 노드 수가 적어도 되고, 복잡할 수록 노드 수가 많이 필요하다.
      • 이에 대한 기준은 존재하지 않은다.
      • 단, 그렇다면 노드 수가 많을 수록 좋은 것이 아닌가에 대한 질문에는 아니라고 답할 수 있다.
        → 왜냐하면 노드수가 너무 많아 똑똑한 Neuron Network에 단순한 문제를 주면 너무 과하게 생각해서 오류를 내뱉게 되기 때문이다.

레이어 개수

  • Layer 수는 내 마음대로 설정할 수 있다.
  • 간단할 수록 Layer 수가 적어도 되고, 복잡할 수록 Layer 수가 많이 필요하다.
  • Layer를 많이 까는게 Node를 많이 까는 것보다 낫다.
  • 단, 이것도 마찬가지로 무조건 많이 까는게 좋은 건 아니다.
  • Q. 내가 어떤 문제를 풀 때 Layer를 몇개를 깔아야하는가?
    A. 답과 기준 모두 없다.
    - 단, 이론상 2Layer Structure면 Any Continuous function을 만들 수 있다.
    - 3 Layer Structure면 Any function을 만들 수 있다.
profile
https://github.com/Dingadung

0개의 댓글