[ML] 머신 러닝 기본기 - 1. 머신러닝이란?
01. 머신러닝이란?
정의 : 기계학습. 기계가 학습을 통해 발전하는 것
일반적인 프로그램 : 정해진대로 업무를 수행
머신러닝 프로그램 : 경험을 통해 스스로 업무능력을 키움
ex) 스팸 메일 분류 프로그램
일반적 - if문이랑 문자열 처리 방법 적용
머신러닝 - 인간이 파악한 규칙 외 수많은 규칙을 발견해서 적용(컴퓨터가 직접 규칙을 찾아내도록 함)
구체적 정의
기계가 학습한다는 건, 프로그램이 특정 작업(T)을 하는 데 있어서 경험(E)을 통해 작업의 성능(P)를 향상시키는 것
- 톰 미첼(Tom Mitchell) (카네기 대학 교수)
T : 스팸을 분류하는 작업
E : 새로운 메일을 보고 스팸 분류하는 것
P : 정확하게 분류해내는 확률
03. 머신 러닝이 핫해진 이유
머신러닝은 수십 년 전부터 연구해온 학문이다.
WHY SO HOT?
1. 사용할 수 있는 데이터가 많아졌다.
2. 컴퓨터 성능이 좋아졌다.
3. 활용성이 증명되었다 (사용자 - 유튜브 - 광고주, 시청데이터 -> AI -> 맞춤 영상/광고, 맞춤광고 추천받음, 돈을 더 범, 더 맞는 광고가 제공됨, win-win-win)
04. 인공 지능? 빅 데이터? 머신 러닝? 딥 러닝?
대부분의 동일한 의미로 사용해도 괜찮겠다.
인공지능 : 프로그램이 인간처럼 생각/행동하게 하는 학문
머신 러닝 : 기계학습
딥 러닝 : 머신러닝 기법 중 하나 -> 층을 여러개 쌓아서 학습하는 방법
05. 학습의 유형
머신러닝 학습 유형
1. 지도 학습(Supervised Learning) : 답이 있고, 답을 맞추는게 학습의 목적
- 지도 학습을 할 때는 학습 데이터에 대한 답을 꼭 알려줘야 한다.
1) 분류 (Classification) : 몇 가지 옵션 중 답을 고르는 것
ex) 스팸 메일 분류 프로그램 : 답이 있는 문제(스팸/비스팸)
2) 회귀 (Regression) : 옵션X, 결괏값이 무수히 많고 연속적 ex) 아파트 가격 예측
ex) 아파트 가격 예측 프로그램 : 아파트 정보들을 통해서 다른 아파트 가격 예측(아파트 가격이라는 정답)
2. 비지도 학습(Unsupervised Learning) : 답이라는 개념이 없고, 답을 맞추는게 학습의 목적
- 프로그램이 알아서 그 기준을 만들도록 하는 것이 비지도 학습
3. 강화 학습 (알파고)
06. k-NN 알고리즘
k-최근접 이웃 알고리즘 / k-Nearest Neighbors Algorithm
ex) 나이와 티켓값에 따른 사망여부 예측 프로그램
x축 : 나이, y축: 티켓값
가장 가까운 이웃 데이터 k개를 찾음(직선 거리) => 가까운 점들의 대다수가 파란색이므로 => 파란색으로 예측
kNN도 머신러닝(더 많은 경험을 할 수록 성능이 좋아지면 머신러닝이라고 할 수 있다)
데이터가 많다면 kNN알고리즘의 성능이 좋아지기 때문에 머신러닝이라고 할 수 있음
07. 머신 러닝의 수학
머신러닝은 컴퓨터과학 분야 + 수학 분야 (선형대수, 미분, 통계, 확률)
머신러닝의 이론을 몰라도 AI 모델 개발이 가능하다.
그러나 상황에 맞게 알고리즘 선택, 코드 최적화를 위해서는 이론 학습을 권장
딱 필요한 만큼의 수학 !
1) 선형대수 : 행렬
2) 미분 : 성능 최적화
3) 통게 : 데이터의 특징을 파악하기 위함
4) 확률 : 가능성