본문 바로가기
Python/MachineLearning

머신 러닝이란? - 기초 개념

by 하니__ 2024. 4. 12.

 

 

이제와선 별 것 아닌거라 생각 되는 것들이지만

 

 

데이터들을 모아 학습시켜 행동하게끔 알아서 만들어 놓아진것들은 대부분 머신러닝

 

 

 

 

 

머신러닝은 크게 supervised , unsupervised 로 나뉘게 되며

 

이중 supervised는

 

 

 

Regression(회귀) 과 Classification(분류)

 

로 나뉘게 되는데

 

 

Regression 은 각종 데이터들을 준뒤 일단 학습  시킨후

이러 이러 이러한 데이터들을 줬을때 다른 데이터를 예측하는 기능

 

예를 들면 어떤 사람의 교육수준, 나이, 주거지 등등의 다양한 데이터들을 모아

연간 소득을 예측한다든지

 

 

그리고

 

Classification 은 어떠한 데이터를 보고 분류하는 기능

 

예를 들면 사진을 보고 개인지 고양인지

사람을 보고 웃는지 화난건지 슬픈건지 등

0과 1로 나타낼수 있는 것이다

 

 

 

그렇게 해서 

 

Training( 훈련, 학습 ) 과 Test ( 결과 예측 )

 

을 하게 되는데

 

훈련, 즉 학습은 무수한 데이터들을 입력하여

 

어떤 결과값이 나올수 있는지 예측하는 시스템을 만들어내고

 

Test 즉, 학습을 통해 만들어진 시스템을 확인 해보는 것이다

 

 

그렇게 해서 처음 본 데이터를 보고 정확하게 예측 할 수 있었다면

 

훈련세트에서 테스트 세트로 일반화 됐다고 본다

 

 

 

 

 

이 그림에서 가운데가 정상적인 상황이며

 

 

우측 오버핏팅의 경우 너무 딱 들어맞아

새로운 데이터가 왔을때 예측하지 못할 가능성이 크다

 

반면 좌측의 언더핏팅은 새로운 데이터는 커녕

기존의 데이터마저도 예측을 하지 못하는 경우라고 볼 수 있겠다