[NLP] 딥러닝 - (1) 퍼셉트론 (Perceptron)

김규리·2023년 3월 5일
0

NLP

목록 보기
33/33

1. 딥러닝(Deep Learning) 개요

  • 딥러닝은 머신러닝의 특정한 한 분야로서, 인공신경망의 층을 연속적으로 깊게 쌓아올려 데이터를 학습하는 방식

(1) 퍼셉트론 (Perceptron)

  • 초기 형태의 인공신경망
  • 다수의 입력으로부터 하나의 결과를 내보내는 알고리즘
  • 실제 뇌를 구성하는 신경 세포 뉴런의 동작과 유사
a. 가지돌기에서 신호 입력
b. 신호가 일정치 이상의 크기를 가지면
c. 축삭돌기를 통해 신호 전달

- x: 입력값
- w: 가중치(Weight) (축삭돌기의 역할, 가중치 값이 크면 중요하다는 의미)
- y: 출력값 (뉴런)

계단 함수(Step function)

입력값(x)가중치(w)와 곱해져서 인공 뉴런에 보내지고, 각 입력값과 그에 해당되는 가중치의 곱의 전체 합이 임계치(threshold)를 넘으면 종착지에 있는 인공 뉴런은 출력 신호로서 1을 출력하고, 그렇지 않을 경우에는 0을 출력함

편향(bias): 딥러닝이 최적의 값을 찾아야 할 변수 중 하나

활성화 함수(Activation function)

  • 뉴런에서 출력값을 변경시키는 함수
  • 퍼셉트론: 계단 함수 사용

(2) 단층 퍼셉트론(Single-Layer Perceptron)

  • 값을 보내는 단계와 값을 받아서 출력하는 두 단계로만 이루어진 퍼셉트론
  • 각 단계를 보통 층(layer)이라고 부르며, 이 두 개의 층을 입력층(input layer)출력층(output layer)이라고 함

게이트(gate)

  • 컴퓨터가 두 개의 값 0과 1을 입력해 하나의 값을 출력하는 회로
  • 단층 퍼셉트론을 이용하면 AND, NAND, OR 게이트 구현 가능
  • AND 게이트: 두 개의 입력값이 각각 0 또는 1의 값을 가질 수 있으면서 모두 1인 경우에만 출력값 y가 1이 나오는 구조

  • NAND 게이트: 두 개의 입력값이 1인 경우에만 출력값이 0, 나머지 입력값의 쌍(pair)에 대해서는 모두 출력값이 1이 나오는 구조

  • OR 게이트: 두 개의 입력이 모두 0인 경우에 출력값이 0이고 나머지 경우에는 모두 출력값이 1인 구조

  • XOR 게이트: 입력값 두 개가 서로 다른 값을 갖고 있을 때에만 출력값이 1이 되고, 입력값 두 개가 서로 같은 값을 가지면 출력값이 0이 되는 게이트 (단측 퍼셉트론은 직선 하나로 두 영역을 나눌 수 있는 문제에 대해서만 구현이 가능하기 때문에 XOR 게이트 구현 불가능)

(3) 다층 퍼셉트론(MultiLayer Perceptron, MLP)

  • XOR 게이트: 기존의 AND, NAND, OR 게이트를 조합하면 만들 수 있음
  • 단층 퍼셉트론: 입력층과 출력층만 존재
  • 다층 퍼셉트론: 입력층과 출력층 사이에 층을 더 추가함 (은닉층: hidden layer)


▲ AND, NAND, OR 게이트를 조합하여 XOR 게이트를 구현한 다층 퍼셉트론의 예

심층신경망(Deep Neural Network, DNN): 은닉층이 2개 이상인 신경망


출처: https://wikidocs.net/24958

profile
connecting the dots

0개의 댓글