인공지능/인공지능 기초 개념

기초 개념편 (1) Machine Learning이란?

BangPro 2024. 4. 13. 22:56
728x90

Machine Learning(ML)이란?

  • Input과 output이 주어졌을때 y = f(x)를 학습하는 것 or 함수 근사
  • 여기서 input은 입력값, output은 정답 혹은 label이다.
  • 따라서, 학습 시에 input은 학습 데이터가 되고 검증시에는 input은 우리가 답을 찾기를 원하는 데이터가 된다
    → 여기서 답은 우리가 원하는 Task에 따라 조금씩 달라진다.

Machine Learning Tasks

Object Detection

말그대로 객체 탐지이다. 사진에서 객체를 탐지해서 bounding box로 감싼다. 이때 image를 ML 모델에 넣어주면 ML 모델은 object label과 Bounding box를 계산한다.

Sementic segmentation

Sementic segmentation은 단위별로 색칠을 하는 것으로 사진에서 물체의 테두리를 기준으로 표시를 하는 Task이다. Input으로 image를 주면 ML 모델은 픽셀 단위로 구분해서 label을 달아준다.

Image to Caption

Input으로 image를 주면 우선 CNN(convolutional neural network)로 feature를 추출하고 해당 feature를 바탕으로 LM(언어 모델) 여기서는 RNN이 caption 혹은 설명을 생성한다.

Caption to Image

Image to Caption과는 반대로 Input으로 caption을 주면 이미지를 생성해낸다.

Machine Translation

기계번역은 한 언어를 다른 언어로 번역하는 Task로 NLP(자연어 처리) 분야에서 main task중 하나입니다.

Autonomous Driving

자율주행은 카메라 정보, 속도, 라이다 정보등이 입력되면 ML 모델이 자율적으로 주행을 하는 것이다.

기타 Task

3D pose for Furniture, Human pose, Visual Question Answering(VQA),

Machine Learning의 목표

ML의 목표는 f(x)를 최대한 현실에 가깝게 근사하는 것이다. 즉, 정확도가 높은 함수 f(x)를 만드는 것이다. 사실 웬만한 경우 x, y값은 존재한다. 예를 들어, 암진단하는 ML 모델을 훈련할때 암 영상과 label(정답)은 이미 존재한다. 하지만 진짜 어려운 부분은 f(x)를 만드는 것이다.

그렇다면 두가지를 해결해야한다. (1) 이 함수를 어떻게 구할지 (2) 현실의 문제를 어떻게 공식화 또는 함수화 할지

이 내용은 추후 다루도록 한다.

Machine Learning / Deep Learning의 종류

Supervised Learning

학습시에 y 즉, 정답이 제공되는 학습 방법.

https://databasetown.com/supervised-learning-algorithms/#google_vignette

Unsupervised Learning

학습시에 y 즉, 정답이 제공되지 않는 학습 방법. 이상태에서도 의미있는 함수를 만드는게 목적이다.

https://databasetown.com/unsupervised-learning-types-applications/

Weakly / Semi-supervised Learning

일부 y or 정답이 제공된다.

https://medium.com/@gayatri_sharma/a-gentle-introduction-to-semi-supervised-learning-7afa5539beea

Reinforcement Learning

환경이 존재하고 상호작용이 있어서 agent가 잘하면 +, 못하면 -의 feedback을 제공해서 학습한다.

https://techvidvan.com/tutorials/reinforcement-learning/