규칙을 일일이 프로그래밍하지 않아도 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야
일반적인 프로그래밍은 특정한 프로그램을 만들어 데이터를 처리하고 내보내 결과를 만들어 낸다.
ex) 기존의 이미지 처리
: 물체의 이미지 정보를 읽어 사람이 직접 함수를 거는 것
이와 반대로 머신러닝은 전통적인 프로그래밍으로는 접근하기 어려운 여러 다양한 유형의 데이터들(ex. 글, 이미지, 동영상 등의 비정형데이터)을 이용하여 기계에 학습시켜 특정한 결과물(규칙, 아이디어 등)을 만들어낸다.
ex) 이미지 처리 with 머신러닝
: 사람이 하던 함수 설정을 컴퓨터가 학습(training)을 통해 러닝 함수 f(x)를 찾아가고 새로운 데이터를 러닝 함수 f(x)에 입력하면 예측(predict)을 통해 output을 도출하는 것
머신러닝 알고리즘 중에 인공 신경망(artificial neural network)을 기반으로 한 방법들을 통칭
머신러닝 기법 중 하나로 말 그대로 기계를 "심화학습"시키는 것을 의미하며,
머신러닝 모델은 학습을 통해 점차적으로 향상되지만, 이러한 AI 알고리즘이 부정확한 예측을 반환하면 엔지니어가 개입하여 조정해야한다.
그러나 딥러닝 모델을 사용하면 알고리즘이 머신러닝으로 쌓아올린 자체 신경망을 통해 예측의 정확성 여부를 스스로 판단할 수 있습니다.
인간의 신경망 원리를 모방한 인공신경망을 통해 사람의 도움없이 기계가 스스로 학습하고 판단을 내린다는 것이 가장 큰 특징이다.
인간의 논리 구조인 인공 신경망에 얼마나 근접한 알고리즘 구조를 갖췄는가 ?
CNN
- Convolutional Neural Network, 합성곱 신경망
RNN
- Recurrent Neural Network, 순환 신경망
GAN
- Generative Adversarial Network, 생성 대립 신경망
RL
- Reinforcement Learning, 강화학습
: 사람이 동물의 특징을 분류하여 어떤 동물인지 알 수 있도록 학습시켜야 함
: 단순 사진만을 보고 기계가 인공신경망을 통해 스스로 학습하여 어떤 동물인지 분류하게 됨
딥러닝이 필요한 이유
- 데이터에 너무나 많은 기능이 있을 경우
- 데이터가 방대할 경우
- 높은 수준의 정확도가 필요한 경우