CN2 알고리즘
CN2 algorithmCN2 유도 알고리즘은 규칙 [1]유도를 위한 학습 알고리즘입니다.트레이닝 데이터가 불완전해도 동작하도록 설계되어 있습니다.AQ 알고리즘과 ID3 알고리즘의 아이디어를 기반으로 합니다.그 결과 AQ에 의해 작성된 것과 같은 규칙 집합이 생성되지만 ID3와 같은 노이즈가 많은 데이터를 처리할 수 있습니다.
알고리즘 설명
알고리즘에는 분류 규칙 목록을 생성하기 위해 이미 분류된 일련의 예(TrainingSet)를 제공해야 합니다.조건 세트 SimpleConditionSet은 단독 또는 조합으로 임의의 예제에 적용할 수 있으며 분류에 사용할 수 있도록 미리 정의되어 있습니다.
루틴 CN2(TrainingSet)는 ClassificationRuleList를 빈 반복으로 합니다.BestConditionExpression이 0이 아닌 경우 BestConditionExpression(TrainingSet)을 Find_BestConditionExpression(TrainingSet)으로 하고 TrainingSubset을 Training에서 제거합니다.Training Subset의 예를 들어 Training Subset의 가장 일반적인 클래스 예시로 합니다.ClassificationRuleList 규칙 'if ' the BestConditionExpression'은 TrainingSet이 비어 있거나 BestConditionExpression이 비어 있을 때까지 클래스는 MostCommonClass가 됩니다.null은 ClassificationRuleList를 반환합니다.
루틴 Find_BestConditionExpression(TrainingSet)에 의해 ConditionalExpression이비어 있음으로 설정하면 BestConditionExpression이 0이 되므로 TrialConditionalExpression이 반복됩니다.조건식 집합 {x 및 y로 설정합니다. 여기서 x는 ConditionalExpressionSet에 속하고 y는 SimpleConditionSet에 속합니다. TrialConditionExpression의 모든 공식을 제거합니다.TrialConditionalExpression의 모든 식 F에 대해 ConditionalExpressionSet(즉, 전문화되지 않은 것) 또는 null(예: big = y 및 big = n)에 있는 세트TrainingSet에서 테스트했을 때 F가 통계적으로 유의하고 F가 사용자 정의 기준에서 BestConditionExpression보다 나은 경우 설정한 후 TrialConditionE의 표현 수가 F로 대체됩니다.xpression(압축)Set > 사용자 정의 최대값에서 TrialConditionalExpressionSet에서 최악의 식을 삭제합니다.ConditionalExpression이 표시될 때까지 TrialConditionExpressionSet으로 설정합니다.집합이 비어 있음 BestConditionExpression을 반환합니다. 레퍼런스
- ^ Clark, P. and Niblett, T(1989) CN2 유도 알고리즘.머신 러닝 3(4): 261-283.
외부 링크
