모두를 위한 딥러닝 시즌 1 #08

김은비·2022년 9월 2일
0
post-thumbnail

Deep learning History

인류의 궁극적인 목표
= 우리를 대신해 골치아픈 문제를 대신 생각해주는 기계를 만드는 것

이를 위한 시작점
-> 생각 = 뇌로 함
-> 사람의 뇌를 연구하기 시작

  • 연구결과 :
    우리의 뇌는 굉장히 복잡하게 연결 되어있으며
    연결된 부분들을 자세하게 살펴보면 뉴런이라고 불리는 하나의 단위, 즉 unit들이 너무나 단순하게 동작하고 있음

  • 뉴런(neuron)이 동작하는 방식 :

    1. 어떠한 input signal이 존재, 이를 전달해주는 것의 길이에 따라 전달되는 신호의 양이 달라짐.
    2. (X * W) 이후 세포 핵에 모여, 이 신호 물질들이 하나로 합쳐짐.
      (sum, 즉 sigma)
    3. 내부에서 말단으로 통과하는 과정에서, 어떠한 항목(bias)이 더해지면서 전달됨.
      이 과정에서, 앞에서 합쳐진 물질들이 어떠한 정해진 일정 값을 넘어야 활성화(activation)가 됨(생물학에서 역치라함.)

Activation Functions

원리 : 뉴런의 동작과 같음
1. x라는 입력이 다른 뉴런으로부터 들어옴
2. synapse의 길이에 따라 가중치 w와 곱해짐
3. 여러 synapse에서 들어오는 값들을 모두 본체에서 더함
4. bias 값을 더한 값이 Activation Function을 통해 일정 수준을 넘으면 출력 (ex. 일정 수준을 넘으면 1, 아니면 0 )

Logistic regression

Activation function과 비슷
여러 입력들을 다음 단계의 여러 unit으로 보내주어 학습하면 우측의 그림처럼 나타날 것으로 예상


Hardware implementations

과거에는 동일한 형태의 갖는 기계를 직접 하드웨어만 가지고 만들었음

왼쪽 기계의 사진에서 보이는 수많은 선들
= 아마 각 unit들을 이전 계층과 서로 연결해주는 간선의 역할

3년 후 각 unit에 입력되는 가중치, 즉 w의 값을 조절하기 위한 다이얼이 추가

-> 이 기계를 인공지능이라 생각했었음

XOR Problem

  • 과거에는 AND/OR 로직을 풀 수 있다면, 이들을 조합해 생각할 수 있는 기계를 만들 수 있을 것이라고 생각함.
    이 로직은 Linear한 개념이기 때문에 적당하게 선을 그어 구분할 수 있음.
    -> Binary Classification
  • 하지만, XOR 로직이 존재.
    XOR이란 Exclusive OR의 줄임말로, 0과 1에 대해서는 참이지만 0과 0, 1과 1에 대해서는 거짓 뜻함.
    이 로직은 Linear한 방식으로 분리되지 않기 때문에 정확도가 매우 떨어짐.

Perceptrons

Minsky 교수가 저서 Perceptrons에서 XOR은 현재 기술로는 해결할 수 없다는 사실을 수학적으로 증명함.

그러면서 하나의 unit으로는 할 수 없고, 여러 개의 unit, 즉 MultiLayer Perceptrons에서는 가능할수도 있다 주장.

하지만 동시에, 이 각각의 unit에 들어가는 W(weight)과 b(bias)를 지구상 그 누구도 학습시킬 수가 없다고 주장.

많은 사람들이 이 책에 영향을 받아, neural network분야는 이후 약 20년간 후퇴&침체기에 빠짐.

Backpropagation

  • Paul이 위에서 언급한 문제를 해결

    • 위에서 언급한 문제점 : 어떠한 network가 각 unit마다 존재하는 W와 b를 통해 학습을 진행하여 출력을 만들어나갈 때, 잘못된 출력이 나오면 W와 b를 조절 할 수 없음
    • 해결 : Backpropagation(역전파)
      -> network의 전반부에서는 W와 b를 조절하기 어려움, 따라서 마지막에 결과를 보고 발생한 에러를 그대로 뒤로 전달하여 값을 조정
  • 그러나, 그 당시에는 이러한 연구가 아예 불가능한 것이라고 낙인이 찍혀버린 상태였기 때문에 아무도 관심을 갖지 않다가
    시간이 흘러 86년도에 Hinton이라는 사람이 이 연구를 발표하면서, 많은 주목을 받았고, XOR과 그 이상의 더 복잡한 문제들을 예측할 수 있는 해결책이 됨.

CNN

  • LeCun이 다른 방법으로 위에서 언급한 문제를 해결
    • 고양이에게 여러 도형을 보여주고 고양이의 시신경에 있는 뉴런들이 어떻게 동작하는지를 관찰 -> 수많은 시신경들 중에서 특정 도형마다 일부의 다른 뉴런들만 활성화됨. -> CNN 도출
    • CNN(Convolutional Neural Networks)
      -> 어떠한 이미지를 Network에 한 번에 입력시키게 되면 동작이 복잡해지고 많은 학습이 일어나야 하기 때문에, 이 이미지를 조각으로 잘라 다음 레이어로 보내는 과정을 반복하여 나중에 합침.

But, 95년도에 다시 한번 큰 문제에 봉착

  • Backpropagation 문제
    1. 층을 거듭할수록 에러의 의미가 퇴색됨.
    2. W와 b값이 변경되어야 하는 부분은 입력 부분인데 입력 부분까지 값을 조절하면서 학습이 이루어지기 힘듦.
    -> SVM이나 RandomForest와 같은 대체 알고리즘 등장

Deep Learning EX

  • AlphaGo
  • 유튜브 자동 생성 자막
  • 페이스북 뉴스피드 : 사용자 개인화 추천 알고리즘
  • 구글 검색 엔진
  • 넷플릭스 비디오 추천 시스템
  • 아마존 상품 추천 시스템
profile
레벨업중...

0개의 댓글