배워서 남 주자

AI/인공지능 및 기계학습 개론

[인공지능 및 기계학습 개론] 2.3. Introduction to Decision Tree

신라면순한맛 2022. 8. 16. 06:00

이번 포스팅에서는 결정나무(Decision Tree)에 대해서 간략히 알아보도록 하겠습니다.

 

http://www.edwith.org/machinelearning1_17/lecture/10581

 

[LECTURE] 2.3. Introduction to Decision Tree : edwith

- 신승재

www.edwith.org

 

지난 포스팅까지는 Rule based 형태로 접근해보았는데, general case와 specific case를 두었음에도 그 range내에 들어가지 못하는 case가 더러 발생하거나, 하나의 hypothesis로 특정이 되지 않아서 결정에 혼선이 생기는 경우까지 있었습니다. 이번에는 decision tree가 어떻게 작동하는 것인지 간략히 알아보고자 합니다. Decision tree는 이 개념을 시작으로 Random Forest, Gradient boost algorithm 등 많은 응용이 생기게 되기에 잘 알아둘 필요가 있습니다.

 


 

우리가 가지고 있는 instance를 decision tree 형태로 표현하는 작업을 해보겠습니다. 만약에 $\text{<Sunny, ?, ?, ?, ? ,?>}$가 주어졌다면 이에 대한 decision tree는 아래와 같이 주어질 것입니다.: 

 

$\text{<Sunny, ?, ?, ?, ? ,?>}$에 대한 decision tree

 

Sky column을 제외한 나머지는 don't care인 상황이기 때문에 tree 형태로 표현되지 않았습니다.

 

조금 더 복잡한 case인 $\text{<Sunny, Warm, ?, Strong, ?, ?>}$이라면 어떨까요? 그러면 아래와 같이 주어질 것입니다.:

 

$\text{<Sunny, Warm, ?, Strong, ?, ?>}$에 대한 decision tree

 

매우 직관적으로 그려지기 때문에 따로 더 설명할 것이 없네요.

 


 

강의의 마지막에서는 Credit Approval Dataset이라는 예를 소개하며 마치는데, 신용평가를 위한 feature를 A1부터 A15, 그리고 C라는 항목까지 총 16개로 두고, 이를 기준으로 평가를 진행한다고 합니다.

 

 

이 경우에도 각 feature에 대해서 brach를 두면 decision tree가 완성이 될 것입니다. 예에서는 A1과 A9을 각각 기준으로 하여 simple한 tree를 구성하였는데, 이 경우 어떤 tree가 더 평가하는데 적절할지 판단하는게 난감합니다.

 


 

이에 대해서는 다음 포스팅에서 다뤄보도록 하겠습니다.