퍼셉트론

퍼셉트론이란?

  • 다수의 신호를 입력으로 받아 하나의 신호를 출력

  • 입력이 두개인 퍼셉트론
    (x1, x2는 입력신호, y는 출력신호, w1,w2는 가중치)
  • 그림의 원을 뉴런혹은 노드라고 부른다.
  • 입력신호가 뉴런에 보내질 때는 가중치 w1,w2가 곱해진다. ( w1x1 + w2x2 )
  • 뉴런에서 보내온 신호의 총합이 정해진 한계를 넘어설 때 1을 출력.

퍼셉트론은 복수의 입력 신호 각각에 고유한 가중치를 부여한다.

가중치는 각 신호가 결과에 주는 영향력을 조절하는 요소로 작용하며, 가중치가 클수록 해당 신호가 그만큼 더 중요함을 뜻한다.

단순한 논리회로

1. AND 게이트

  • 이 AND 게이트를 퍼셉트론으로 표현하고자 한다.

  • AND게이트의 진리표대로 작동하고자 하는 w1,w2, θ값을 생각해보면


(w1,w2,θ) = (0.5, 0.5, 0.7), (0.4, 0.5, 0.6), (1.0, 1.0, 1.0) 등 조합은 무수히 많음.

2. NAND 게이트, OR 게이트

  • NAND 게이트는 Not AND를 의미하며 AND 게이트의 출력을 반대로 함과 같다.

  • 따라서 AND 게이트의 w1,w2,θ 값에 -부호를 붙혀 주기만 하면 된다.
    ex) (w1, w2, θ) = (-0.5, -0.5, -0.7)


  • OR 게이트

  • OR게이트의 진리표대로 작동하고자 하는 w1,w2, θ값을 생각해보면
    (w1, w2, θ) = (0.5,0.5,0.3) , (1.0, 1.0, 0.5)

퍼셉트론의 한계

3. XOR 게이트

  • 단층 퍼셉트론 ( 신경망이 1층 ) 으로는 XOR게이트를 구현할 수 없음.


  • 선형으로 영역을 나눌 수 있으면 단층 퍼셉트론으로 표현이 가능하지만 나눌 수 없다면 단층 퍼셉트론으로 표현이 불가능하다.
  • 선형이라는 제약을 없앤 비선형이라면 영역을 나눌수 있다.

  • 다층 퍼셉트론으로 XOR 게이트를 구현할 수 있다.

NAND(x1,x2)결과와 OR(x1,x2) 결과를 AND게이트 연산하면 XOR 게이트를 구현할 수 있음.

def XOR(x1, x2):
    s1 = NAND(x1, x2)
    s2 = OR(x1, x2)
    y = AND(s1, s2)
    return y

정리

  1. 퍼셉트론은 입출력을 갖춘 알고리즘이다. 입력을 주면 정해진 규칙에 따른 값을 출력한다.

  2. 퍼셉트론에서는 ‘가중치’와 ‘편향’을 매개변수로 설정한다.

  3. 퍼셉트론으로 AND, OR 게이트 등의 논리 회로를 표현할 수 있다.

  4. XOR 게이트는 단층 퍼셉트론으로는 표현할 수 없다.

  5. 2층 퍼셉트론을 이용하면 XOR 게이트를 표현할 수 있다.

  6. 단층 퍼셉트론은 직선형 영역만 표현할 수 있고, 다층 퍼셉트론은 비선형 영역도 표현할 수 있다.

  7. 다층 퍼셉트론은 (이론상) 컴퓨터를 표현할 수 있다.

좋은 웹페이지 즐겨찾기