머신러닝, 딥러닝 그리고 인공지능

최솔·2024년 1월 19일
0

스터디

목록 보기
2/2

머신러닝


규칙을 일일이 프로그래밍하지 않아도 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야

일반적인 프로그래밍은 특정한 프로그램을 만들어 데이터를 처리하고 내보내 결과를 만들어 낸다.

ex) 기존의 이미지 처리
: 물체의 이미지 정보를 읽어 사람이 직접 함수를 거는 것

이와 반대로 머신러닝은 전통적인 프로그래밍으로는 접근하기 어려운 여러 다양한 유형의 데이터들(ex. 글, 이미지, 동영상 등의 비정형데이터)을 이용하여 기계에 학습시켜 특정한 결과물(규칙, 아이디어 등)을 만들어낸다.

ex) 이미지 처리 with 머신러닝
: 사람이 하던 함수 설정을 컴퓨터가 학습(training)을 통해 러닝 함수 f(x)를 찾아가고 새로운 데이터를 러닝 함수 f(x)에 입력하면 예측(predict)을 통해 output을 도출하는 것

기계 학습을 위한 방법

  • 지도 학습 (Supervised Learning)
  • 비지도 학습 (Unsupervised Learning)
  • 강화 학습 (Reinforcement Learning)

딥러닝


머신러닝 알고리즘 중에 인공 신경망(artificial neural network)을 기반으로 한 방법들을 통칭

머신러닝 기법 중 하나로 말 그대로 기계를 "심화학습"시키는 것을 의미하며,

머신러닝 모델은 학습을 통해 점차적으로 향상되지만, 이러한 AI 알고리즘이 부정확한 예측을 반환하면 엔지니어가 개입하여 조정해야한다.
그러나 딥러닝 모델을 사용하면 알고리즘이 머신러닝으로 쌓아올린 자체 신경망을 통해 예측의 정확성 여부를 스스로 판단할 수 있습니다.

인간의 신경망 원리를 모방한 인공신경망을 통해 사람의 도움없이 기계가 스스로 학습하고 판단을 내린다는 것이 가장 큰 특징이다.

딥러닝 모델 종류

인간의 논리 구조인 인공 신경망에 얼마나 근접한 알고리즘 구조를 갖췄는가 ?

  • CNN
    - Convolutional Neural Network, 합성곱 신경망

    • 인간의 시신경 구조(퍼셉트론)를 모방한 기술
    • 노드 간 연결 갯수가 기하급수적으로 증가하여 크기가 작은 필터를 사용함
    • 이로 인해 가중치의 개수를 줄여주며 국부 영역에 대한 특징에 집중할 수 있는 특성이 있음
    • 위의 특징으로 학습이 가능해 비전 분야에서 성능이 우수함
    • 이미지를 인식하기 위해 패턴을 찾는데 특히 유용함
    • 데이터를 직접 학습하고 패턴을 사용해 이미지를 분류함
    • 자율주행자동차, 얼굴인식과 같은 객체인식에 사용되고 있음
    • 사람이 여러 데이터를 보고 기억한 후에 무엇인지 맞추는 것과 유사함
  • RNN
    - Recurrent Neural Network, 순환 신경망

    • 순차적 정보가 담긴 데이터에서 규칙적인 패턴을 인식하고 추상화된 정보를 추출함
    • 텍스트, 음성, 음악, 영상 등 순차적 데이터를 다루는데 적합함
    • 마치 우리가 적성검사의 추론 영역을 푸는 것과 유사함
  • GAN
    - Generative Adversarial Network, 생성 대립 신경망

    • 비지도 학습 방법으로 학습된 패턴을 이용해 이미지나 음성을 생성함
    • 이미지 및 음성 복원에 주로 적용됨
    • 누군가를 성대 묘사, 얼굴 묘사하는 것과 유사함
  • RL
    - Reinforcement Learning, 강화학습

    • 구글의 딥마인드에서 개발한 것으로 관계형 추론을 지원함
    • 지금까지 딥러닝은 분류, 이미지 인식, 음성 인식, 번역, 이미지 생성에만 국한된 한계가 있었음
    • RL은 딥러닝 기술을 인간의 사고에 근사한 논리적 추론이 가능한 분야까지 확대시킴
    • 정해진 규칙이 없는 관계를 추론 하는 것과 유사함

딥러닝과 머신러닝의 차이


머신러닝

: 사람이 동물의 특징을 분류하여 어떤 동물인지 알 수 있도록 학습시켜야 함

딥러닝

: 단순 사진만을 보고 기계가 인공신경망을 통해 스스로 학습하여 어떤 동물인지 분류하게 됨

딥러닝이 필요한 이유

  • 데이터에 너무나 많은 기능이 있을 경우
  • 데이터가 방대할 경우
  • 높은 수준의 정확도가 필요한 경우

0개의 댓글