[밑바닥부터 시작하는 딥러닝] ch2. 퍼셉트론

2026. 5. 24. 14:55·AI
728x90

퍼셉트론이란?

퍼셉트론은 여러 개의 입력값을 받아 하나의 결과를 출력하는 가장 기본적인 인공지능 모델이다.

이 모델은 인간의 신경세포(뉴런)의 동작 방식을 단순하게 모방한 구조로, 입력된 정보를 바탕으로 특정 기준을 만족하는지 판단하여 결과를 출력한다.

즉, 퍼셉트론은 여러 조건을 종합하여 YES(1) 또는 NO(0)를 판단하는 모델이다.

퍼셉트론은 다음과 같은 요소로 구성된다.

  • 입력값: x₁, x₂
  • 가중치: w₁, w₂
  • 출력값: y
  • 임계값(Threshold): θ

입력값에는 각각 가중치가 곱해지고, 그 결과를 모두 더한 후 임계값과 비교하여 출력이 결정된다.

y = w1*x1 + w2*x2

이 값이 임계값 θ보다 크면 1을 출력하고, 작거나 같으면 0을 출력한다.

따라서 퍼셉트론은 가중합을 계산한 뒤 기준값을 기준으로 결과를 결정하는 구조라고 할 수 있다.

  • 가중치(w)는 각 입력값의 중요도를 나타낸다.
  • 임계값(θ)은 결과를 결정하는 기준선이다.

입력값이 크더라도 가중치가 작으면 영향이 적고, 가중합이 임계값을 넘지 못하면 결과는 0이 된다.

 

AND 게이트

x1 x2 출력
0 0 0
1 0 0
0 1 0
1 1 1

 

AND 게이트에서는 두 입력값이 모두 1일 때만 출력이 1이 된다.

그럼 퍼셉트론으로 AND 게이트를 어떻게 구현할 수 있을까?

만약 w1(가중치) = 0.5, w2(가중치) = 0.5, theta(임계값) = 0.7 로 가중치와 임계값을 설정했다고 가정

x1 x2 결과
0 0 0 → 0 출력
1 0 0.5 → 임계값 미만 → 0 출력
0 1 0.5 → 0 출력
1 1 0.5 + 0.5 = 1 → 임계값 초과 → 1 출력

 

NAND와 OR 게이트

퍼셉트론은 가중치와 임계값을 변경하는 것만으로 다양한 논리 게이트를 구현할 수 있다.

AND 게이트 말고도 NAND와 OR 게이트도 구현할 수 있음!

 

NAND 게이트

x1 x2 출력
0 0 1
1 0 1
0 1 1
1 1 0

 

NAND 게이트는 AND의 결과를 반대로 출력하는 구조이다.

 

w1 = -0.5, w2 = -0.5, theta = -0.7 로 가정했을 때 구현할 수 있다.

AND 게이트와 동일한 구조이지만 가중치의 부호를 반대로 설정해 결과를 뒤집는다.

 

OR 게이트

x1 x2 출력
0 0 0
1 0 1
0 1 1
1 1 1

 

OR 게이트는 입력 중 하나라도 1이면 출력이 1이 된다.

퍼셉트론으로 쉽게 구현 가능하며, 임계값을 낮추면 하나의 입력만으로도 기준을 넘도록 설정할 수 있다.

 

퍼셉트론의 구조는 항상 동일하다.
즉, 입력값에 가중치를 곱해 더하고, 임계값과 비교하는 방식은 변하지 않는다.
가중치&임계값 어떻게 설정하느냐에 따라 AND, NAND, OR과 같은 다양한 논리 연산을 구현할 수 있다.

 

퍼셉트론의 한계: XOR 게이트

퍼셉트론의 가장 중요한 한계는 XOR 문제에서 드러난다.

x1 x2 출력
0 0 0
1 0 1
0 1 1
1 1 0

 

XOR게이트 에서는 입력값이 서로 다를 때만 1을 출력한다.

왜 퍼셉트론으론 XOR 게이트를 구현할 수 없을까?

퍼셉트론은 데이터를 하나의 직선으로 구분하는 모델이다.

왼: OR게이트 / 오: XOR게이트

하지만 XOR 문제는 OR 게이트와 달리 하나의 직선으로 0과 1을 나눌 수 없는 구조이다.

즉, XOR은 선형적으로 분리할 수 없는 문제이고 이 때문에 단층 퍼셉트론으로는 해결할 수 없다.

다층 퍼셉트론

이 문제를 해결하기 위해 퍼셉트론을 여러 층으로 쌓은 구조를 사용한다.

  • 0층: 입력층 (x₁, x₂)
  • 1층: 은닉층 (s₁, s₂)
  • 2층: 출력층 (y)

입력층 → 은닉층 → 출력층

입력층(0층)에서 들어온 값은 은닉층(1층)을 거쳐 최종적으로 출력층(2층)에서 결과가 결정된다.

 

은닉층(1층)

입력값 x₁, x₂는 각각 s₁과 s₂로 전달된다. 이때 두 노드는 서로 다른 기준으로 입력을 판단한다.

  • s₁: 특정 조건을 기준으로 입력을 구분한다
  • s₂: 다른 기준으로 입력을 구분한다

여기서 말하는 조건은? 기준 = 가중치(w) + 편향(b) w1*x1 + w2*x2 + b

출력층(2층)

s₁, s₂의 결과가 y로 전달된다. y는 이 두 결과를 합쳐서 최종 XOR 결과를 만들어낸다.

근데 왜? 퍼셉트론으로 논리 게이트를 구현하는걸까요? WHY?

  1. 둘 다 “판단 구조”이기 때문이다.
    • 논리 게이트나 퍼셉트론 둘 다 조건에 따라 0 혹은 1을 출력한다.
  2. 논리 게이트를 수학적으로 표현할 수 있기 때문이다.
    • 논리게이트는 그냥 규칙!
    • AND 게이트는 둘 다 1일 때만 1을 출력하고, OR 게이트는 하나만 1이어도 1을 출력한다.
    • 퍼셉트론은 가중치 + 임계값을 이용해서 그 규칙을 수학적으로 만들어낸다.
  3. 이걸 확장하면 학습 가능한 AI가 되기 때문이다.
엥? 그럼 왜 수학적으로 만들어낼까요?
컴퓨터가 학습할 수 있게 하려고! 논리게이트는 사람이 직접 규칙을 정의해줘야하지만, 퍼셉트론은 데이터를 보고 모델이 규칙을 찾아내 가중치를 자동으로 학습할 수 있다!
복잡한 문제로 확장할 수 있다. 논리게이트에서는 입력 2개를 통해 결과 1개를 출력해내지만, 현실 세계의 문제는 입력은 수십 개이고 패턴은 복잡하기 때문에 논리게이트로 만들어내기 힘들다.
728x90

'AI' 카테고리의 다른 글

[밑바닥부터 시작하는 딥러닝] ch.4 신경망 학습  (0) 2026.05.24
[밑바닥부터 시작하는 딥러닝] ch.3 신경망  (0) 2026.05.24
완벽한 스미싱 분류 모델을 향해서 (2)  (1) 2025.05.28
완벽한 스미싱 분류 모델을 향해서 (1)  (4) 2025.05.27
[LLM] RAG와 Vector Database  (0) 2025.05.26
'AI' 카테고리의 다른 글
  • [밑바닥부터 시작하는 딥러닝] ch.4 신경망 학습
  • [밑바닥부터 시작하는 딥러닝] ch.3 신경망
  • 완벽한 스미싱 분류 모델을 향해서 (2)
  • 완벽한 스미싱 분류 모델을 향해서 (1)
DROPDEW
DROPDEW
💻 Developer | 기록하지 않으면 존재하지 않는다
  • DROPDEW
    제 2장 1막
    DROPDEW
  • 전체
    오늘
    어제
    • Dev (444)
      • App·Android (1)
      • AI (10)
      • BE (50)
        • HTTP 웹 기본 지식 (8)
        • SpringBoot (23)
        • 스프링부트와 JPA 활용 (0)
        • JAVA (1)
        • PHP (11)
      • FE·Client (23)
        • HTML (1)
        • React (19)
        • Unity (1)
      • Data (28)
        • Bigdata (6)
        • Database (1)
        • Python (0)
        • 빅데이터분석기사 (13)
      • Infra (1)
      • Activity (7)
        • Intern (0)
        • SK AI Dream Camp (0)
        • 구름톤 유니브 4기 (1)
        • 리모트 인턴십 6기 (3)
        • 봉사활동 (0)
        • 부스트캠프 AI Tech 8기 (3)
      • CS (8)
      • 취준 (12)
        • 자격증 (4)
        • 인적성·NCS (6)
        • 코테·필기·면접 후기 (2)
      • 코테 (270)
        • Algorithm (222)
        • SQL (35)
        • 정리 (13)
      • 인사이트 (27)
        • 금융경제뉴스 (7)
        • 금융용어·지식 (2)
        • 북마크 (7)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    시뮬레이션
    최단경로
    다이나믹프로그래밍
    오블완
    그래프이론
    너비우선탐색
    백준
    투포인터
    티스토리챌린지
    누적합
    문자열
    브루트포스 알고리즘
    매개변수탐색
    자료구조
    수학
    구현
    이분탐색
    정렬
    그리디알고리즘
    그래프탐색
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
DROPDEW
[밑바닥부터 시작하는 딥러닝] ch2. 퍼셉트론
상단으로

티스토리툴바