본문 바로가기 주메뉴 바로가기

Community


[ML] 지도 학습 ( Supervised learning)

관리자 2021-07-30 조회수 42
Machine Learning의 지도학습

“정답을 알려주며 학습시키는 것”

예를 들어, 
호랑이 사진을 주고 ‘이건 호랑이야!’, 사과 사진을 주고 ‘이건 사과야!’ 라고 알려주는 학습방식

훈련데이터는 일반적으로 입력 객체에 대한 속성을 벡터형태로 포함되고 있으며, 각각의 백터에 원하는 결과가 무엇인지 표시되어 있음. (훈련데이터에 레이블 또는 타깃이라는 정답지가 포함되어 있음)

지도학습에는 크게 두가지 분류로 나눠지는데,
1. 회귀(regression)
유추된 함수 중 연속적인 값을 출력하는 것
쉽게 말해 어떤 데이터들의 특징(feature)을 토대로 값을 예측하는 것
ex) Q: 삼성동 집 값은 얼마인가? => A: 24평은 얼마, 32평은 얼마, 45평은 얼마.. 등

2. 분류(classification)
주어진 입력 벡터가 어떤 종류의 값인지 표시하는 것, 
쉽게 말해 어떤 데이터에 대해 두가지 또는 여러 값 중 하나로 분류할 수 있는 것 
ex) 이진 분류일 경우 Q: ‘이 메일은 스팸메일인가?’ => A: 예/아니오
    다중 분류일 경우 Q: ‘이 동물은 무엇인가?’ => A: 강아지 또는 사자 또는 고양이 ..등 

지도학습 알고리즘의 대표적인 예 )
- 선형 회귀
- 의사 결정 트리
- 신경망
- SVM

1. 선형 회귀분석 (Linear Regression)
임의로 분포한 데이터들을 하나의 직선으로 일반화시키는 것으로 각 데이터 별 값과 직선까지의 거리 분산을 최소화하도록 직선의 모양을 결정.
 
          

‘독립변수와 종속변수가 선형적인 관계가 있다’ 라는 가정하에 분석
  직선을 통해 종속변수를 예측하기 때문에 독립변수의 중요도와 영향력을 파악하기 쉬움
  [조건]
  독립변수(x)값에 해당하는 종속변수(y)값들은 정규분포를 이뤄야 하고 모든 정규 분포의 분산은 동일해야 한다.
  종속변수(y) 값들은 통계적으로 서로 독립적 이어야 한다.


2. 의사 결정나무 (Decision Tree)
주어진 입력 값에 대해서 스무고개 하 듯 질문을 이어가며 학습, 특정 기준(질문)에 데이터를 구분하는 모델.

       
  
분류 (classification) 와 회귀(regression), 모두 가능한 지도학습 모델 중 하나.
  지나치게 분류할 경우 overfitting(과대적합)이 일어남 (알고리즘 성능 저하)  , 이를 극복하기 위해 트리의 크기를 사전에 제한하는 튜닝(Pruning:가지치기) 필요 

3. SVM (Support Vector Machine)
하나의 분류 그룹을 다른 그룹과 분리하는 최적의 경계를 찾아내는 알고리즘
출력 값들을 구분할 수 있는 가장 넓은 margin을 가지는 초평면(선,결정경계)를 찾는 것이 목표 
(최적의 분류선 = 최대 margine)

   
 
데이터가 어떻게 분포해 있어도 직선이나 곡선을 그어 분류할 수 있기 때문에 회귀모델이나 의사결정나무 모델이 학습하기 어려운 복잡한 데이터도 학습할 수 있음.
 
    


  • 등록된 댓글이 없습니다.
댓글입력