Machine Learning/Deep Learning

[Machine Learning] Perceptron

데이터 세상 2021. 2. 27. 02:14
728x90
반응형

Perceptron (퍼셉트론)

  • 프랑크 로젠블라트(Frank Rosenblatt)가 1957년에 제안한 초기 형태의 인공 신경망
  • 인간의 신경망(neural network)을 모방하여 만들어짐
  • 신경망을 이루는 가장 중요한 기본 단위
  • 입력 값과 가중치를 곱하여 가중치합을 만들고, 만들어진 가중치값은 활성화 함수에 보내 출력 값을 만든다.

 

 

x: 입력 값

w: 가중치(Weight)

b: 편향(bias)

 

 

 

 

 

  • 인간의 신경망은 수 많은 뉴런(neuron)으로 구성
  • 뉴런과 뉴런 사이에 시냅스(synapse)라는 연결 부위가 있는데 신경 말단에서 자극을 받으면 시냅스에서 화학 물질이 나와 전위 변화를 일으켜 다른 뉴런으로 정보 전달
  • 전위가 임계 값을 넘으면 다음 뉴런으로 신호를 전달하고 인계 값에 미치지 못하면 아무것도 하지 않음

Perceptron Node

  • 입력으로 들어오는 입력 값에 각각의 가중치를 곱한 합산 값을 활성화 함수를 통화시켜 출력 값을 출력하는 구조
  • 퍼셉트론은 들어오는 여러 개의 입력 값을 노드에 전달하여 사용
  • 각 노드의 역할은 데이터 분석
  • 퍼셉트론 노드에서 출력되는 값은 활성화 함수를 거쳐 0 ~1 사이의 값이 출력
  • 노드의 출력되는 값은 노드의 정보를 전달할 확률 값으로 사용됨

Single Layer Perceptron

  • 값을 보내는 단계와 값을 받아서 출력하는 두 단계로만 이루어짐
  • AND와 OR 모델이 대표적
  • 문제를 해결한다는 것은 들어오는 입력 값에 맞는 각 W와 b를 구했다와 같다.

 

Gradient Descent (경사하강법)

  • 여러 종류의 문제에서 최적 해법을 찾을 수 있는 매우 일반적인 최적화 알고리즘
  • 비용 함수를 최소화하기 위해 반복해서 파라미터를 조정해가는 것

Learning Rate(학습률)

  • hyper parameter의 일종
  • 기울기 값을 모두 적용하는 것이 아니라 기울기 값의 일부분을 반영하여 정답을 찾아가는 방법

오차 그래프를 통해 정답을 찾아갈 때 오차 그래프의 폭이 좁은 경우 수정되는 오차값이 발산하게 됨

이를 수정하기 위해 Learning Rate를 적용

 

 

 

경사하강법 알고리즘은 기울기에 학습률(Learning Rate) 또는 보폭(Step site)라 불리는 스칼라를 곱해 다음 지점을 결정

Local minimum에 효율적으로 도달할 수 있도록, 너무 크지도 작지도 않은 적절한 학습률을 세팅해야 함

  • 학습률이 큰 경우: 데이터가 무질서하게 이탈하며, 최저점에 수렴하지 못함
  • 학습률이 적은 경우: 학습시간이 매우 오래 걸리며, 최저점에 도달하지 못함

 

Perceptron 과정

  • Data 생성 또는 읽기
  • Data의 변수에 따른 차원 확인
  • Perceptron의 입력 차원 맞추기
  • Perceptron 생성
  • Perceptron Loss 함수 지정
  • 경사하강법(Loss 함수의 Min을 찾기 위한 최적화 방법 선택)
  • 학습완료에 따른 결과 확인

References

728x90
반응형

'Machine Learning > Deep Learning' 카테고리의 다른 글

epoch, batch size, iteration  (0) 2022.12.08
[Machine Learning] Neural Network의 한계  (0) 2021.03.03
[Machine Learning] Neural Network  (0) 2021.03.03