딥러닝 4

공부/딥러닝 2020. 10. 29. 01:34
반응형

#Artificial Neural Network

History

  • 1943년 Warren McCulloch, Walter Pitts가 제안
  • 1950년대 Perceptron 나옴(응용 가능할만해짐 하지만 선형분리만 가능
  • 1990년대 Multi-layered Perceptron(선형 분리문제 해결했지만 층을 많이 쌓으면 잘 안되는 문제점)
  • 요즘 Deep Neural Network
  • 거의 산업 전 분야에 적용됨.

개념

입력층, 은닉층, 출력층으로 구분됨

 

은닉층의 개수에 따라 분류 가능

 

층을 많이 쌓을수록 복잡한 문제들을 학습가능하지만 시간이 오래걸림

 

 

에러 : 예측값(0~1사이 값)과 정답의 차이

에러가 발생한 부분만큼을 feedback함

노드의 선들에 weight가 있음

 

모델은 구조 + weight값으로 정의가능

 

 

Perceptron

 

가장 단순한 형태의 신경망

다수의 신호를 입력으로 받아들여 하나의 신호(원하는)를 출력하는 알고리즘

 

 

Machine learning by perceptron

 

다음의 데이터로 가중치, 편항, 활성함수를 구해야함.

 

 

- weight value

 

전기회로의 저항과 유사하지만 인공신경망에서는 weight value가 크면 입력값이 출력에 많이 전달되고, 작으면 입력값이 출력에 적게 전달된다.

만약 x1은 큰값이고, x2는 작은 값일 경우, x1w1 + x2w2할 경우 x2가 잘 반영이 되지 않는다.

 

- 편향

 

b값에 따라 y값이 0또는1에 치우친 값이 나오므로 편향이라고 함.

만약 환자 = 0, 정상인 = 1로 진단하는 인공 신경망이 있을 때, 환자를 정상인으로 오인하는 것을 막기위해 |b|값을 크게 함 => 정상인이라는 증거가 충분히 클때만 정상인으로 판단

 

* weight = 각각의 입력신호가 출력에 영향을 주는 정도 조절

* bias(편향) = 뉴런이 얼마나 쉽게 활성화 되는지를 조절

 

예를 들어 and 연산을 구하는 인공신경망을 어떻게 만드는가?

머신러닝으로 weight, bias, 임계점 구함

 

 

Design of neural network

input node의 수는 feature의 수이다.

output node의 수는 class의 수이다.

 

 

4개의 클래스를 구분하기 위해선

|0|0|1|1|                                    |1|0|0|0| =>1

|0|1|0|1|                                    |0|1|0|0| => 2

 |  |  | |                                     |0|0|0|1| => 3

 |  |  | |                                    |0|0|0|1|  => 4

 v v v v                                   

1, 2, 3, 4

 

처음의 경우가 아닌 뒤의 경우로 4가지 클래스를 구분한다.

 

인공신경망을 설계할때

1. 히든 레이어의 수

2. 히든 레이어 별 노드수

3. 활성함수(모든 레이어마다)

4. bias 값

을 구해야 할 것이다.

 

곱셈연산을 하므로 값이 1 이상이 나오지않게 각 노드들의 값은 0~1사이이다.

 

선형분리 문제만 해결가능한 것을 극복하기 위해 다층 perception을 사용한다.

728x90
반응형

'공부 > 딥러닝' 카테고리의 다른 글

CIFAR-10 의 레이블중 하나를 예측  (0) 2021.05.09
classification 경진대회  (0) 2021.05.03
딥러닝 3  (0) 2020.10.09
딥러닝 2  (0) 2020.09.29
딥러닝 1  (0) 2020.09.25
블로그 이미지

아상관없어

,