전자공학/머신러닝개론

[머신러닝개론] 1.Introduction

문어인형 2023. 1. 9. 15:38

 

1. 머신러닝(ML)

- 기계에게 컴퓨터와 고양이를 어떻게 구분시킬까? Generalization

- ML approach? ① Data Collection ② Feature design ③ Model training ④ Model validation

 
Data Collection
Feature Design
Model training
Model Validation
여러 강아지, 고양이 사진을 모은다.
다양하고 많은 training set = 다양하고 많은 배움의 기회
Feature: 각각을 구분지을 수 있는 특징
(ex) 개 vs. 고양이 : 귀의 크기, 코의 크기


Feature space
y축: 귀의 뾰족함 정도
x축: 코의 크기

the training of model: ML problem이 기하학 적인 문제가 됨. parameter들을 mathematical optimization해야 한다.
model parameter:
(ex) feature space가 2D라면,
model) y=w0+w1x
model parameter) w0, w1
validation set: previously unseen images

 

- Model 향상시키기 ① 더 많은 데이터 ② 더 많은 특징 ③ 비선형모델로 시도

- ML은 크게 두 카테고리로 나뉜다.

 
이름
역할
예시
지도학습
(Supervised learning)
input&output 관계
Regression(prediction)
Classification(개vs고양이)
비지도학습
(Unsupervised learning)
input data only
입력 데이터의 특징 얻기
(데이터셋을 간단화하기 위해, 지도학습 전에 비지도학습을 시행할 때가 많다)
Dimension reduction(model의 차원 줄이기, to squash or project)
Clustering(유사한 데이터 그룹화)

 

2. Mathematical Optimization

- to minimize cost functions

- loss function (=cost function)

 
정답
yi
내 model
y = h(x;w) = w0+w1x
loss function
g(w) = Sum(h(xi;w) - yi)^2

 

- 즉, loss fucntion은 내가 만든 모델이 예측한 결과 y와 실제 정답 yi가 얼마나 차이가 나는지를 나타냄.

따라서 ML의 목표는 loss function을 최소화하는 것

 

 

 

 

① w={w0, w1}를 갖는 model을 이용해 x0~x100의 input을 넣어 y0~y100의 output(예측 결과)를 얻는다

② 이 예측 결과 y0~y100을 실제 정답과 비교한다

③ 이 예측 결과 간의 차이가 가장 작은 걸 찾아내야 한다. 이는 즉, loss function을 최소화함을 의미한다.

 

+ Non-ML v.s. ML