딥러닝1

2020. 10. 3. 20:33

딥러닝, 기계학습(머신러닝), 인공지능이란

 - 통합하여 사용하지만, 서로 구분되어야 함

 - 인공지능⊃기계학습⊃딥러닝 순으로 상위개념이다.

 - 인공지능: 기계가 사람의 행동을 모방하게 하는 기술

 - 기계학습: 사람이 코드로 명시하지 않은 동작을 기계가 데이터로부터 학습하여 실행하는 기술

 - 딥러닝: 기계가 기계학습의 한분야인 인공 신경망 기술을 기반으로 많은 양의 데이터를 학습하(는 기술)여 뛰어난 성능을 이끌어내는 연구분야



머신러닝과 딥러닝 차이

 - 머신러닝은 데이터가 주어졌을 때, 사람이 만들어둔 특징추출기(feature extractor)를 사용하여 특징벡터(feature vector)를 구하고 이를 기반으로 기계가 학습하여, 데이터를 구분하는 분류기(classifier)를 만든다.(최종적으로 데이터가 특징에 맞추어 분류된다.)

 - 딥러닝은 인공신경망을 기반으로 하여 데이터 입력부터 최종인 데이터 분류까지 전체를 다 학습한다.

 - 즉 머신러닝은 분류기만 학습, 딥러닝은 특징 추출기부터 분류기까지 다 학습한다.



딥러닝의 용도

 - 분류(classification): 데이터를 특정 그룹으로 분류 

 - 회귀(regression): 데이터의 추세선 긋기

 - 물체검출(object detection): 특정 대상에 해당하는 데이터를 검출함. 초기에는 단일 대상만 찾는 것에서 딥러닝이 나옴에 따라 한번에 다중대상을 검출하는 기능으로 발전함

 - 영상분할(image segmentation): 영상에서 데이터가 어떤 그룹에 해당하는지 구분하는 기능(자율주행, 의료(ex: mri, 초음파등의 사진에서 종양을 검출) 등에서 사용됨)

 - 영상초해상도(image super resolution): 저해상도 이미지를 기반으로 고해상도로 영상을 복원

 - 예술적 창조물(aritstic creation with GAN): 아직까지 사람이 그리는 수준까지는 안되지만, 사람이 그리는 정도의 화질은 못만듬(응용예: 어떤 물체를 그림-> GAN이 그림을 대상으로 창의적인 디자인을 그림->그 그림을 기반으로 사람이 상업적인 디자인으로 그림을 그림)

 - 강화학습(reinforcement learning): ex: 알파고


딥러닝 구성요소

 - 학습단계(training phase)+테스트 단계(test phase)

 - 학습단계(지도학습을 통해 알맞은 네트워크를 설계한다)

    - 입력: 학습입력(이미지), 학습정답(이미지가 어디에 해당하는가)

    - 학습입력을 기반으로 설계한 네트워크 구조를 동작시키고, 손실함수를 사용해 해당 결과와 학습 정답과 비교한다.

      이후 (비교결과를 반영하기위해)알고리즘 최적화 기법을 통해 보다 향상된 네트워크 구조를 설계한다.-> 피드백(반복학습)

    요소: 학습입력, 학습정답, 네트워크 구조(network architecture), 손실함수, 알고리즘 최적화 기법(algorithm optimizer)


 - 테스트단계: 테스트용 입력을 기반으로 학습된 네트워크를 동작시켜 그 결과를 평가함

    요소: 테스트입력, 학습된 네크워크(trained network), 평가지표(evaluation metric)



딥러닝 역사

 - 요약: Electronic brain -> perceptron -> adaline -(황금기)-> xor problem -(암흑기, AI Winter)-> multi-layered perception(backpropagation) -> svm -> deep neural network(pretraining)

 - 1943, 최초의 인공신경망 개념

 - 1958, Rosenblatt의 퍼셉트론 구조(입력, 가중치, 합, 활성함수)

 - perceptron과 adaline의 비교: perceptron은 활성함수의 결과를 가지고 에러를 검사하지만, adaline는 선형함수를 통해 나온 결과를 가지고 에러를 검사한다.

    (perceptron은 데이터의 분류만 하지만, adaline은 데이터 분류와 데이터가 분류기준에서 얼마나 벗어나는지도 확인한다는 개념으로 생각하면 될 것 같다.)

 - 1969, perceptrons라는 책에서 minsky라는 교수가 XOR problem를 제기 함(and와 or는 선1개(기준선)로 구분할 수 있지만, XOR의 경우 선1개로 구분할 수 없다.)

 - 이후 1970~1990년도까지 암흑기가 옴(투자 및 연구x)

 - 1986, 다층 퍼셉트론(MLP, multi-layered perception): 입력계층과 출력계층 사이에 또하나의 계층(은닉계층)을 통해 XOR문제를 해결할 수 있다는 이론(즉 기준성을 2개 그어 XOR를 구분함)

      사실 다층 퍼셉트론은 예정부터 있었던 개념이었지만 1986에 오류 역전파 알고리즘(BP, backpropagation algorithm)과 함께 제안되어 많이 알려지게됨

      활용예: 1989, MLP와 BP알고리즘으로 해결한 필기숫자 인식(MNIST)문제(LeCun의 논문)

 - 기울기 소실(Vanishing Gradient)문제: 2차 암흑기, 은닉 계층이 많아지면 학습이 어려워진다.

 - 2006, 심층 믿음 신경망(DBN, Deep Belief Network): RBM(Restricted Boltzmann Machine) 비지도 학습법(출력없이 입력만으로 학습)을 기반으로 DBN을 구축하여 기울기 소실문제를 해결함

 - 최근: Fei-Fei Li 교수가 만든 대규모 영상 분류데이터 셋(ImageNet)을 기반으로 최적의 성능을 만드는 대회(ILSVRC)를 매년 개최 함

         2012, AlexNet 모델의 우승을 통해 딥뉴론네트워크가 부상함(당시 10%이상 성능을 향상시킴, 그이전에는 svm(support vector machine) 등이 대세였음)

         이후 구글이 참여하면서 산업에서도 많이 사용되게 됨


'Study > Deep_Machine learning' 카테고리의 다른 글

딥러닝2  (0) 2020.10.20
불균형 데이터  (0) 2020.09.20
클러스터링  (0) 2020.09.06
앙상블기법  (0) 2020.09.06
기본적인 머신러닝 모형  (0) 2020.08.22

+ Recent posts