본문 바로가기
Computer Science/Data Science

[Classification] Rule-based Classification

by Gofo 2022. 4. 18.

IF-THEN Rules

모델이 if-then과 같은 rule의 형태로 나타난다.

"IF age = youth AND student = yes THEN buys_computer = yes"와 같은 형태이다.

 

  • rule antecedent
    • = rule precondition
    • IF 문 안에 있는 조건
    • 예시 : "age = youth AND student = yes"
  • rule consequent
    • IF의 결과
    • THEN절
    • 예시 : "buys_computer = yes"

 

Coverage, Accuracy

  • coverage
    • attribute의 값이 antecedent와 일치하는 샘플의 수 
    • training sample 중에서 몇개가 cover 되는가
    • $coverage(R) = n_{covers} / |D|$
  • accuracy
    • cover되는 샘플들 중 실제로 올바르게 classifiy 되는 샘플의 수
    • cover되는 샘플들 중 몇개가 올바르게 분류되었는가
    • $accuracy(R) = n_{corrects} / n_{covers}$

 

생성 방법 : using Decision Tree

Decision tree를 이용해서 쉽게 rule을 생성할 수 있다.

 

각 path 마다 하나의 rule로 변환하면 된다.

즉, 하나의 rule은 root부터 leaf까지의 하나의 path이다.

 

attribute-value의 pair들이 결합을 형성해서 class prediction을 수행하고, leaf가 class prediction이 수행된 결과이다.

 

Rule은 mutually exclusive하고 exhaustive하다.

  • mutually exclusive
    • 하나의 샘플이 여러 path에 중복되지 않는다.
  • exhaustive
    • 어떤 샘플도 적어도 하나의 rule에는 걸린다.
    • 즉, 무조건 classification이 수행된다.
    • 다만, 이는 class가 확실하지 않음에도 분류될 수 있다는 단점을 야기한다.

 

Conflict Resolution

하나의 샘플이 2개 이상의 rule에 cover 될 수 있다.

이를 conflict가 발생한다고 하고, 이를 해결하는 것을 conflict resolution이라 한다.

 

항상 필요한 과정은 아니고 conflict가 발생했을 때만 수행하면 된다.

 

ordering을 통해 conflict resolution을 할 수 있다.

  • Size ordering
    • rule의 수가 큰 것을 따른다.
    • antecedent의 조건 수가 많은 것을 따른다.
    • 즉, 심각하게 따지는 것의 편을 들어주는 것이다.
  • Class-based ordering
    • class의 특징을 보고 결정한다.
    • frequency(prevalence)가 높은 class의 편을 들어준다.
  • Rule-based ordering
    • = decision list 
    • rule 간 우선순위를 expert가 결정한다.
    • 우선 순위에 따라 앞쪽 rule(높은 우선순위)로 판단한다.

 

 

 

댓글