always_here

지식을 공유하고 함께 성장하는 엔지니어 as_always 입니다

AS_ALWAYS

AI/기계학습

인공신경망

nauung_always 2021. 2. 2. 12:38
728x90

인공신경망

인간의 뇌는 1000억개의 뉴런으로 구성

뇌신경세포 작동원리 모델

가지돌기->신경세포체->축색

  • 가지돌기(다른 뉴런으로부터 여러 개의 입력을 받는 역할)
  • 신경세포체(가지돌기로부터 입력 받은 값을 통합)
  • 축색(앞에서 만들어진 신호를 다른 뉴런으로 전달하는 역할)

인공신경망

인간의 신경망 구조를 모방해 만든 알고리즘

입력층 하나 또는 다수의 노드로 구성

  1. 각 노드에 데이터 입력 (입력된 데이터에는 각 입력층의 노드, 출력층의 노드사이에 존재하는 가중치가 있다.)
  2. 이 가중치를 곱해서 합산을 한 다음 출력층의 노드에 전달
  3. 출력층에 도착한 데이터는 활성함수의 연산을 거쳐 출력값으로 배출

활성화 함수

출력값을 내보낼 때 사용하는 함수 (f로 표기)

선형,계단,임계논리,시그모이드함수 등이 사용됨

 

인공신경망

단일신경망 / 다중신경망

 

단일신경망

입력층(Input Layer) 출력층(Output Layer)

 

다중신경망

(순방향신경망)

입력층(Input Layer) 은닉층(Hidden Layer) 출력층(Output Layer)

 

AND연산, OR연산, NOT연산

01로만 이루어짐

 

단일신경망

XOR연산은 불가능

단일계층계층신경망의 연산

입력노드 + 편차 노드 = 신경망 구성

 

AND연산 (모든 입력이 1인 경우에만 1이 되는 연산)

OR연산 (모든 입력이 0이 아닌 경우에 1이 되는 연산)

NOT연산 (모든 입력과 반대값이 나오는 연산)

 

다층신경망

입력층과 은닉층, 하나이상의 은닉층으로 구성

입력층에서 입력신호 받아들여 은닉층의 모든 뉴런으로 재분배

은닉층 하나를 추가할 때마다 계산량 지수적으로 늘어날 수 있음

 

은닉층이 두 개 있는 다층신경망의 구조

  • 순방향 신경망

입력층에 들어온 데이터 값에 가중치를 곱하고 더해서 은닉층 1

은닉층1에서 나오는 값에 가중치 곱하고 더해서 은닉층2

 

  • 역전파 알고리즘

오차값들을 조절해 가중치의 오차가 최소가 되게 하는 방법

역방향으로 가중치 오차를 전파, 최적의 학습결과 찾아간다

 

역전파 다층신경망을 이용한 XOR문제

구간별 조정할 가중치 값을 구함

Learning Rate

 

 

728x90

'AI > 기계학습' 카테고리의 다른 글

KNN  (0) 2021.02.11
K-means  (0) 2021.02.08
텍스트 데이터 분석  (0) 2021.02.05
Naive Bayes  (0) 2021.02.04
SVM(1)  (0) 2021.02.03