개발자의시작

[머신러닝][딥러닝] 기본 머신러닝 개념 및 용어 1.0 본문

머신러닝(machine learning)

[머신러닝][딥러닝] 기본 머신러닝 개념 및 용어 1.0

LNLP 2020. 4. 7. 20:41

이 글은 홍콩과기대 김성훈 교수님의 강의를 개인적으로 정리한 글입니다.

 

강의 영상 및 강의자료는 아래의 링크에서 확인하실 수 있습니다.

링크 : http://hunkim.github.io/ml/

 

모두를 위한 머신러닝/딥러닝 강의

 

hunkim.github.io

 

지도 학습 vs 비지도 학습

머신러닝은 크게 지도 학습과 비지도 학습 두 가지로 나뉜다

 

지도 학습(supervised learning)

지도 학습은 정해져 있는 데이터를 학습하는 것(learning with labeled example)

즉, 이미 답(label)이 정해져 있는 것을 학습하는 것을 지도 학습이라 한다.

여기서 답(label)이 붙여진 데이터들이 학습에 사용되는 학습 데이터(training data)가 된다.

예) 동물 그림들을 보고 각각의 그림이 어떤 동물인지 학습 - 각 그림에는 어떤 동물인지 답(label)이 있음.

 

비지도 학습(unsupervised learning)

어떤 학습의 경우 일일이 답(label)을 줄 수 없는 경우가 있다. 이와 같은 데이터들을 학습하는 것을 비지도 학습이라고 한다.

예) 구글 뉴스 - 자동적으로 유사한 뉴스들을 그룹핑한다.

예) word clustering - 비슷한 의미를 단어들이 서로 모이게 하는 것.

 

강의에서는 주로 지도 학습(supervised learning)에 대해 다룬다고 교수님께서 설명하심.

 

지도 학습으로 처리하는 문제의 유형은 크게 다음과 같은 것들이 있다.

- 이미지 라벨링(Image labeling)

- 이메일 스팸 필터링( Email spam filtering)

- 시험 점수 예측(Prediction exam score)

 

학습 데이터셋 (Training data set)

머신 러닝 모델이 있고 데이터가 있다. 여기서 데이터는 보통 아래와 같은 형식으로 주어진다. 

X Y (Label)
3, 6, 9 3
2, 5, 7 2
2, 3, 5 1

 

위의 표에서 보면 데이터는 보통 X와 Y로 나누어서 주어진다. X는 데이터의 특징 또는 feature라고도 한다. Y는 데이터 X에 대한 답, 즉 label이 된다. 이와 같은 label을 가진 데이터들이 모여 학습 데이터가 된다. 이러한 학습데이터 데이터를 학습을 하게 되면 하나의 모델이 완성된다. 여기서 새로운 X : [ 9, 3, 6 ] 이 주어 졌을 때 학습된 모델이 어떤 label을 예측하는지 찾는 과정이 일반적인 지도 학습 과정이다.

 

 

 - Type of supervised learning

지도 학습의 종류 종류는 아래와 같이 크게 3가지로 나뉜다.

 

1) Predicting final exam score based on time spent

- regression 

X(hours) Y(score)
10 90
9 80
3 50
2 30

위와 같은 데이터가 주어질 때 새로운 X(공부한 시간)가 입력으로 들어가면 모델의 결과 Y(성적)이 어느정도 나올까 예측하는 모델. 이러한 모델을 regression(회귀) 모델이라고 하며 다음 강의에서 자세하게 설명한다.

 

2) Pass/non-pass based on time spent

- binary classification

X(hours) Y(pass/fail)
10 P
9 P
3 F
2 F

위와 같은 데이터가 주어질 때 새로운 X(공부한 시간)가 입력으로 들어가면 모델의 결과 Y(성적)이 pass와 fail 두 가지 중 어느것이 나올지 예측하는 모델. pass/fail 두가지로만 분류하기 때문에 이와 같은 문제를 이진 분류, 즉 binary classification이라고 한다.

 

 

3) Letter grade (A, B, C E and F) based on time spent

- multi-label classification

X(hours) Y(grade)
10 A
9 B
3 D
2 F

위와 같은 데이터가 주어질때 새로운 X(공부한 시간)가 입력으로 들어가면 모델의 결과 Y(성적)이 A~F 중 어떤 것이 나올지 예측하는 모델.  2) binary classification과의 차이점으로 출력 결과(여기서는 label)가 여러 개가 나올 수 있다. 따라서 multi-label classificaion이라고 한다.

 

 

오류 또는 이상한 점 있다면 댓글로 남겨주시기 바랍니다.

감사합니다.

Comments