대규모 데이터용 분산 연관 분류기 DAC
초록
본 논문은 Apache Spark 기반의 분산 연관 분류기 DAC를 제안한다. 데이터셋을 여러 파티션으로 나누어 각 파티션에서 Gini 임퓨리티 기반의 사전 가지치기를 적용한 CAP‑growth 알고리즘으로 규칙을 추출하고, 추출된 규칙들을 앙상블 방식으로 결합한다. 실험 결과 4 십억 건·8 억 개 카테고리를 가진 실제 데이터에서 기존 최첨단 방법보다 예측 정확도와 실행 시간이 모두 개선되었으며, 생성된 모델은 사람이 읽을 수 있는 규칙 형태이므로 해석 가능성도 확보한다.
상세 분석
본 연구는 대규모 고차원 범주형 데이터를 처리하기 위해 연관 규칙 기반 분류기의 구조적 한계를 극복하고자 한다. 첫 번째 핵심 기법은 CAP‑growth 라는 변형 FP‑tree 알고리즘이다. 전통적인 FP‑tree는 모든 빈발 아이템셋을 저장하고 이후 규칙을 추출하는 과정에서 과도한 메모리 사용과 불필요한 규칙이 생성되는 문제가 있다. 저자들은 이를 해결하기 위해 각 아이템에 대해 Gini Information Gain (IG) 을 사전 계산하고, IG가 양수인 아이템만을 정렬하여 트리에 삽입한다. 이는 트리의 깊이를 최소화하고, 높은 분류 효과를 가진 아이템이 상위에 위치하도록 함으로써 규칙 추출 단계에서 불필요한 중복을 사전에 차단한다.
두 번째 설계 원칙은 사전 가지치기이다. 최소 지원(minsup), 최소 신뢰도(minconf), 최소 χ² 값을 적용하는 전통적인 필터링에 더해, Gini 임퓨리티를 이용해 아이템 자체가 데이터 전체에 비해 얼마나 순수한지를 평가한다. IG = wᵢ·(Gini_D − Gini_i) 로 정의된 이 값이 0 이하인 경우 해당 아이템은 트리 구축 단계에서 제외된다. 결과적으로 추출되는 CAR(Class Association Rule)의 수가 크게 감소하고, 메모리 사용량과 연산 비용이 크게 절감된다.
세 번째 기법은 앙상블 모델링이다. 전체 데이터셋을 N개의 파티션으로 샘플링(r > 0)한 뒤, 각 파티션에서 독립적으로 CAP‑growth를 수행해 N개의 규칙 집합을 만든다. 이 규칙 집합들은 단순 다수결이 아니라, 각 규칙의 신뢰도와 Gini 임퓨리티를 가중치로 활용한 가중 다수결 방식으로 결합된다. 또한, 모델 통합 단계에서 중복 규칙을 병합하고, 동일 antecedent에 대해 여러 consequent가 존재할 경우 가장 높은 신뢰도를 가진 규칙만을 남겨 최종 모델의 크기를 경량화한다.
실험에서는 1 TB 규모, 4 십억 레코드, 8 억 개 고유 카테고리를 가진 실제 로그 데이터를 사용하였다. 비교 대상은 기존 Spark 기반 연관 분류기와 최신 결정 트리 기반 분류기이며, DAC는 정확도(Precision, Recall)와 F1‑score 모두에서 평균 35%p 상승을 보였다. 실행 시간 측면에서도 전체 파이프라인이 기존 방법 대비 3045% 빠르게 완료되었다. 특히, 규칙 수가 수십만 개 수준으로 제한되어 모델 해석이 용이했으며, 도메인 전문가가 규칙을 검토하고 비즈니스 로직에 직접 반영할 수 있었다.
이와 같이 DAC는 (1) Gini 기반 사전 가지치기, (2) CAP‑growth를 통한 메모리 효율적 규칙 추출, (3) 앙상블 기반 모델 통합 및 가중 투표라는 세 가지 혁신적 요소를 결합함으로써, 대규모 고차원 범주형 데이터에 대한 연관 분류의 스케일러빌리티와 해석 가능성을 동시에 달성한다.
댓글 및 학술 토론
Loading comments...
의견 남기기