Rule based learning 은 error 가 많기 때문에 현실에서 잘 적용되지 못한다.
그래서 대안으로 쓸수 있는것이 Decision Tree 이다.
Rule based learning 에서 보았던 아래의 Hypothesis가 있다고 생각해보자.
<Sunny, ?,?,?,?,?>
Sunny 만 되면 Enjoy sport 가 Yes 일 경우는 현실에서 거의 없다.
이것을 Decision Tree 로 표현 하면 아래와 같다.
"Sky 가 Sunny 이면 Enjoy Sport 가 Yes이고 Rainy 면 Enjoy Sport 가 No 이다." 와같은 Tree 형태로 표현할수 있다.
이형태의 Tree를 하나의 Hypothesis 로 간주한다.
이것을 Decision Tree 라 한다.
아래의 Hypothesis 도 Decision Tree 로 표현해 보자.
아래와 같이 표현할수 있을것이다.
1. Rainy 이면 Enjoy Sport 가 No
2. Cold 이면 Enjoy Sport 가 No
3. Wind 가 light 이면 Enjoy Sport 가 No
4. Wind 가 Strong 이면 Enjoy Sport 가 Yes
또다른 예제를 살펴보자.
신용평가 데이터셋을 통해 고객의 신용등급을평가하는 예제이다. (Credit Approval Dataset)
아래는 Attribute라는것이 있다. 개별 고객에 대해 신용평가했던 기반자료를 15가지 (A1~A15) 기준으로 나눈 Code book 이라한다.
예를 들면 한 은행직원이 Code book 의 여러 기준중에 A1 하나만 이용해서 판별한다고 생각해보자.
a 는 예를 들면 항상 negative 결과를 준다고 생각을했을때 , A1의 a일 경우에 112 의 Case는 맞고 98 case는 틀리다.
b 도 예를 들면 항상 negative 결과를 준다고 생각을했을때 , A1의 b일 경우에 262 의 Case는 맞고 206 case는 틀리다.
(?는 데이터가 없다는 의미다.)
또다른 은행직원은 A9를 이용해서 신용등급을 판별한다고 생각해보자.
A9은 307개의 positive case, 383개의 negative case를 들고 있다.
A9이 t(True) 일 경우 항상 positive로 결론을 내린다고 하면 284 case는 맞고 77 case는 틀리다.
A9이 f(false)라고 판정된 경우 negative로 결론을 내린다고 하면 306 case는 맞고 23 case 는 틀리다.
위의 예제 처럼 어떤 특성을 기준으로 판별하냐에 따라 성능이 많이 달라진다.
하나의 특성만 활용하면 에러가 있는 케이스가 많이 생길수 있다.
'머신러닝 > 문일철 교수님 강의 정리 (인공지능및기계학습개론)' 카테고리의 다른 글
Week 2.5. How to create a decision tree given a training dataset (0) | 2019.06.16 |
---|---|
Week 2.4. Entropy and Information Gain (0) | 2019.06.15 |
Week 2.2 Introduction to Rule Based Algorithm (0) | 2019.06.12 |
Week2.1. Rule Based Machine Learning Overview (0) | 2019.06.11 |
Week 1.4 Probability and Distribution (0) | 2019.05.29 |