[딥러닝] 딥러닝 기초(1) 신경망이란

업데이트:

딥러닝 기초(1) 신경망이란

참고링크

머신러닝 딥러닝 선형대수 기초통계 최적화
k-means 신경망이란 고유값,고유벡터 확률변수 컨벡스 셋
k-최근접이웃 성능함수 행렬식 확률분포 컨벡스 함수
선형회귀 신경망 학습 내적 모집단과 표본 라그랑주 듀얼
로지스틱회귀 교차연결 기저 평균과 분산 KKT 조건
릿지,라쏘회귀 합성곱 신경망 랭크, 차원 공분산, 상관계수 ROC 커브
의사결정나무 배치, 에포크 차이 선형변환 최대가능도추정 크로스 밸리데이션
서포트벡터머신 텐서플로기초(1) 직교행렬 베르누이,이항분포 실루엣 스코어
원클래스 SVM 텐서플로기초(2) 고유값분해 기하,음이항분포  
LDA seq2seq 특이값분해 초기하분포  
GMM opencv기초   포아송분포  
부스팅 resnet   정규분포  
사이킷런 실습 다각형내부판별   감마분포  
  엣지판별   지수분포  
      카이제곱분포  
      베타분포  
      균일분포  



딥러닝이란

본 포스팅은 MIT 6.034 Artificial Intelligence 수업을 참고하여 작성하였습니다.

딥러닝(deep learning)은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화를 시도하는 머신러닝 알고리즘의 집합으로 정의되며, 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야라고 이야기 할 수 있다.

딥러닝의 목적

딥러닝에서는 다루는 변수 및 결과 카테고리가 아주 많습니다. 많게는 수천만개의 변수를 이용해 수천개의 카테고리 중 어느쪽에 속하는지 판별합니다. 가장 흔하게 쓰는 예제가 개와 고양이를 식별하는 것이죠.

뉴런?

딥러닝을 다루기 앞서 뉴런(neuron)에 대해 이야기 해야할 것 같은데요. 왜냐하면 딥러닝을 이루고 있는 기초 단위가 뉴런이기 때문입니다. 뉴런은 실제로 신경계를 구성하는 세포인데요. 아래 그림 처럼 생겼습니다.

위 그림에서처럼 뉴런은 다른 뉴런의 축색돌기에서 자신의 수상돌기로 자극을 받아 자신의 축색돌기로 다른 뉴런에게 자극을 전달하는 과정을 거칩니다. 딥러닝 또한 마찬가지 입니다. 수많은 뉴런들이 자극을 전달 하듯, 수많은 노드들이 가중치와 함께 서로의 연산결과를 주고 받습니다.

신경망

신경망은 하나 이상의 뉴런의 집합니다. 실제 딥러닝에서 쓰이는 신경망은 아래 그림처럼 생겼는데요. $x_1, \dots ,x_n$는 실제로는 저희가 학습시킬 학습데이터 변수이죠. 이미지라고 하면 이미지의 픽셀 rgb값이라고 할 수있습니다. 이는 위 뉴런 그림에서 자극에 해당한다고 할 수 있죠.

위 그림에서 입력값을 전달받은 시그마 박스(?)는 지금까지 입력값의 영향럭을 다 더한다는 것입니다. 그리고 그 산출값이 임계치를 넘기기에 충분한지 테스트합니다. 결국 임계치 t를 넘기면 1이됩니다.

그래서 뭘 해야 하나

  • ALL or NONE
  • 누적된 영향(cumulative influence)
  • 시냅틱 가중치(synaptic weight)

위 그림에서 임계치 박스를 보시면 계단함수라는 것을 알 수 있습니다. 이는 곧 0 또는 1임을 의미하고 이는 ALL or NONE 이라는 뜻입니다. 한편 임계치 박스 이전의 시그마 박스에는 모든 영향력을 더하는 단계가 있는데요. 이것은 누적된 영향을 의미합니다. 그리고 그 이전에는 원본데이터에 가중치를 주는 단계가 있는데요. 그 때는 가중치를 정하는 것이 매우 중요한 일이 됩니다.

2편으로 이동