본문 바로가기
공부/POSCO AI-Big Data 아카데미 14기

[POSCO 교육 사전학습] 머신러닝기법과 R프로그래밍 4

by 로디네로 2021. 4. 4.
반응형

포스코 포스텍에서 제공하는 청년 AI-BigData 아카데미 과정의 온라인 예습 과정 중 하나인 데이터 과학에 대한 강의를 듣고 정리한 포스팅이다.

 

pabi.smartlearn.io/

 

청년 AI·Big Data 아카데미 온라인 기초과정 (MOOC)

취업 준비생 누구나 POSTECH과 POSCO가 제공하는 무료 온라인 교육 과정에 참여할 수 있습니다.

pabi.smartlearn.io

 

 


 

이전 강의 SVM에 이어 이번 강의에서는 의사결정나무와 랜덤포레스트에 대해 배웠다.

 

이또한 머신러닝 기법중 하나로 이를 배우게 된다면 KNN, 판별분석, SVM, 의사결정나무, 랜덤포레스트 총 다섯가지의 기법을 배우게 된다.

 


의사결정나무 1

 

기계학습 중 하나로 의사결정 규칙을 나무형태로 분류해나가는 분석기법

 

특징

  • 분석과과정이 직관적, 이해하기 쉬움
  • 연속형/범주형 변수를 모두 사용 가능
  • 분지규칙은 불순도(범주들이 섞여있는 정도)를 최소화시킴

 

과정

  1. tree형성 (너무 많으면 과적합)
  2. tree 가지치기
  3. 최적 tree로 분류

의사겨정나무 예시. 정해진 기준에 따라 분류 성능이 나뉜다.

의사결정나무 실행 패키지 : tree 를 사용할 수 있다.

 

가지를 쳐 가면서 각 class 별로 분류가 다 되게 되면 더이상을 가지를 칠 필요가 없게 된다.

 

Tree를 형성할 때 복잡도 계수의 값이 최소가 되는 노드를 선택

 

 

 


 

 

의사결정나무 2

 

R에서 rpart, party 패키지를 이용할 수 있다.

 

이는 분지를 하면서 분류분석을 하는 모델이다.

 

rpart패키지에서 rpart 함수는 tree패키지에서 pruning 한 결과와 동일하다.

 

party 패키지에서 ctree 함수를 쓸 수도 있는데 분지되는 포인터를 p value를 통해 잡는다.

 

 

tree / rpart / party는 동일하게 의사결정 나무를 사용할 수 있는 패키지이다. 데이터에 따라서 선택사여 사용하면 될 것이다.

 

 

 


 

 

 

랜덤 포레스트 (Random Forest)

 

의사결정나무의 단점(과적합)을 개선한 알고리즘이다.

 

Ensemble (앙상블:결합) 기법을 사용한 모델로서 주어진 데이터로 리샘플링을 통해 다수의 의사결정나무를 만든 다음, 여러 모델의 예측결과들을 종합해 정확도를 높이는 방법이다.

 

 

과정

  1. training data로부터 표본크기가 n인 bootstrap sample 을 추출한다
  2. tree모형을 구성한다
  3. 각 모델 tree들의 앙상블 결과를 출력한다.

Bagging (Bootstrap Aggregating)

  • 전체 데이터에서 학습데이터를 복원추출 트리를 구성
  • Training Data에서 Random Sampling

R에서 randomForest 패키지를 사용하여 랜덤포레스트를 구현할 수있다.

 

 

 

 

 

반응형

댓글