섹션 1: 인공지능, 머신러닝, 딥러닝 소개

이도현·2023년 9월 11일
0
post-thumbnail
  1. 인공지능(Artifical Intelligence): 컴퓨터가 인간과 같이 생각할 수 있도록 만드는 기업을 연구하는 학문

  2. 머신러닝(Machine Learning): 데이터에 기반한 학습을 통해 인공지능을 구현하는 기법들을 지칭합니다.

  • 머신러닝의 정의 : 명시적인 프로그래밍 없이 데이터를 이용해서 컴퓨터가 어떤 지식이나 패턴을 학습하는 것
    • 어떤 문제 Task에 관련된 경험 Experience 로부터 성과 측정 지표 Performance Measure 를 가지고 학습 Learn을 진행하는 컴퓨터 프로그램
  • 머신러닝 알고리즘의 3가지 분류
    • Supervided Learning(지도학습): 인풋 데이터와 그에 대한 정답 쌍(x, y)를 이용해서 학습하는 방법론
      • 분류 Classification 문제: 예측하는 결과 값이 이산값인 문제

        (e.g: 이 이미지에 해당하는 숫자는 1인가 2인가?)

      • 회귀 Regression 문제: 예측하는 결과 값이 이산 값인 문제

        (e.g. 3개월 뒤 이 아파트 가격 2억 1천만 원일 것인가? 2억2천만 원일 것인가?

      • 딥러닝에서 지도학습으로 방법론으로 주로 사용되는 구조는

      • CNN(Convolutional Neural Networks)

      • RNN(Recuurent Neural Networks)

    • Unsupervised Learning(비지도학습):인풋 데이터 (x)만을 이용해서 데이터의 숨겨진 특징을 학습하는 방법론
      • 단독으로 사용하기 보다는 비지도 학습으로 파악한 데이터의 숨겨진 특징을 원본 데이터 대신 지도 학습의 인풋 데이터로 활용해서 지도학습의 성능을 더욱 끌어올리는 용도로 많이 활용
      • 대표적인 비지도 학습의 방법론
      • 주성분 분석Pricipal Component Analysis(PCA)
      • 딥러닝에서 비지도 학습을 위해 많이 사용되는 구조는 Autoencoder
    • Reinfocement Learning(강화학습): Reward를 제공하는 Environment와 Environment내에서 수행하는 Agent의 상호작용을 통해 학습하는 방법론
      • 보상을 최대화 하도록 학습
      • 대표적인 알고리즘 Q-Learning
      • 최근에는 Q-Learning과 딥러닝을 결합한 DQN(Deep-Q-Network)기법 많이 활용
  1. 딥러닝(Deep Learning): 머신러닝 기법 중 하나인 인공신경망(Artificial NEural Netwroks)기법의 은닉층(Hidden Layer)을 깊게 쌓은 구조를 이용해 학습하는 기법
  • 딥러닝의 장점: 데이터의 특징을 단계별로 추상화를 높여가면서 학습할 수 있습니다. 얕은 은닉층은 점, 선, 면과 같은 추상화 단계가 낮은 특징을 학습하고, 깊은 은닉층은 얼굴의 눈, 코, 입 등 추상화 단계가 높은 특징을 학습합니다. 사람의 경우, 추상화 단계가 높은 특징을 사용하여 판단하기 때문에 딥러닝을 사요할 경우 사람과 같은 고차원적 인지 활동을 수행할 수 있습니다.
  • 딥러닝 = 특징학습(Feature Learnig): 단계별로 학습하기 때문에 표현학습이라고도 한다.
  • 특징
    • 다른 전통적인 기법들의 특징 은 Hand-Crafred Feature: 연구자들의 손으로 추출했다고 하여
    • 머신러닝 알고리즘으로 추출한 특징은 학습과정에서 자동으로 특징이 추줄되기 때문 Learned Feature이라한다.
  • 딥러닝 알고리즘이 잘 동작하는 문제영역: 딥러닝 알고리즘의 경우, 이미지나 자연어, 음성 등의 비정형화 된 대량의 데이터로부터 인식(Recognition)을 수행하는 문제 영역에 잘 동작합니다.
  • 딥러닝 알고리즘이 잘 동작하지 않는 문제영역: 딥러닝 알고리즘의 경우, 반대로 데이터가 부족하거나, 정형화된 데이터에 대해서는 상대적으로 잘 동작하지 않습니다. 이런 상황에서는 딥러닝 알고리즘 외에 다른 알고리즘을 사용하는 것이 좋습니다.
  • 딥러닝 알고리즘을 가능하게 만든 3가지 환경적 요인
    • 빅데이터(Big Data): 딥러닝 알고리즘을 학습시키기 위한 빅데이터를 구할 수 있는 환경이 조성
    • GPU: 큰 규모의 모델을 학습히킬 수 있는 GPU의 발전에 힘입은 컴퓨팅 환경의 개선이 이루어졌습니다.
    • 새로운 알고리즘의 등증(Better Alogrithm): 딥러닝 모델을 더 잘 학습시킬 수 있는 새로운 알고리즘들일 제안
  1. 딥러닝, 텐스플로 응용분야

1) Computer Vision: 컴퓨터가 인간의 시각 기능을 수행할 수 있도록 하는 방법을 연구하는 분야

  • 이미지 분류 Image Classification, Semantic Image Segmentation, 물체 검출 Object Detection 등이 컴퓨터 비전의 대표적인 문제들
  • CNN을 가장 많이 사용
  • 주요 응용사례: 테슬라 자동차

2) Natural Language Processing(NLP, 자연어처리): 컴퓨터가 인간의 언어처리 기능을 수행할 수 있도록 하는 방법을 연구하는 분야

  • 문장분류 Text Classification, 이미지캡셔닝 Image Captioning, 기계 번역 Machine Translation, 챗봇 Chatbot 등이 자연어 처러의 문제들
  • RNN 구조가 많이 사용
  • 주요 응용사례: Google Duplex

3) Speech Recognition(음성인식): 컴퓨터가 인간의 음성인식 능력을 수행할 수 있도록 하는 방법을 연구하는 분야

  • STT라고도 불림( Speach-To-Text)
  • 주요 응용기술: 애플 Siri, 구글 Now, 마이크로소프트 Cortana, 인공지능 스피커

4) Game: 게임 환경을 이용해서 인공지능 기술 발전을 연구하는 분야

  • DQN을 주로 사용
  • 주요 응용 사례: 바둑 알파고, 체스 딥블루, OpenAI Five

5) Generative Model: 학습 데이터의 분포를 학습해서 학습한 분포로부터 새로운 데이터를 생성하는 방법을 연구하는 분야

  • GAN구조가 발표된 이후 급속도 성장
  • 학습 데이터의 양을 늘려서 분류기의 성능을 높이는 데이터 증대,
  • 주요 응용사례: BEGAN, DeepFake
  1. 딥러닝의 역사
  • 1943 McCulloch, Warren S,, and Pitts가 인공 신경망 아이디어를 제안

  • 1958년 Franck Osenblatt이 퍼셉트론 모형을 제안

  • 1969년 Perceptron의 한계를 지적(선형 분리 불가능)
  • 1986년 Multi-Layer Perceptron(MLP)과 Backpropagation Algorithm이 제안되고 이를 통해 XOR 문제를 해결할 수 있게 됨(선형 분리가능)
  • 1998년 Yann Lecun에 의해 제안된 Convolutional Neural Networks(CNNs) 구조 인 LeNet은 수표 인식 문제 등에 실용적으로 사용됨
    • 하지만 Layer를 깊게 쌓을 수록 Gradient가 사라져서 학습이 잘 되 지않은 Vanishing Gradient Problem이 발생
    • 이로 인해 Deep Learning 은 불가능했고 인공지능 연구자들은 SVM과 같은 다른 기법들을 탐구하니 시작함
  • 2006~ , Pre-Training을 이용해 학습한 Deep Autoencoders에 관한 논문
    • 논문을 시발점으로 RBM, Pre-training, Dropout, ReLU 등 Overfitting을 방지하기 위한 새로운 새로운 알고리즘들의 등장
  • 2012~: 딥러닝 기법이 ILSVRC-2012 대회에서 다른 기법들을 압도적 격차로 이기고 우승, 대규모 투자를 받기 시작
    • DQN, GAN,
profile
좋은 지식 나누어요

0개의 댓글