동적 데이터 스트림을 위한 k‑median 기반 클러스터링 이상치 탐지 기법

본 논문은 데이터 스트림을 청크 단위로 나누어 k‑median 알고리즘으로 가중치가 부여된 중앙값(시설)들을 생성하고, 가중치가 변하지 않은 시설을 임시 이상치 후보로 간주한다. 이러한 후보를 여러 청크에 걸쳐 추적하여 지정된 횟수(O)만큼 이상치 점수가 누적되면 최종 이상치로 확정한다. k‑median을 사용함으로써 k‑means 대비 클러스터 수를 고정하지 않아 안정성을 높이고, 메모리 사용을 O(k·polylog n)으로 제한한다.

저자: Parneeta Dhaliwal, M.P.S. Bhatia, Priti Bansal

본 논문은 급증하는 사기 탐지·네트워크 모니터링 등 실시간 데이터 스트림 환경에서 효율적인 이상치 탐지 방법의 필요성을 제기한다. 기존 연구는 크게 통계 기반, 거리 기반, 밀도 기반, 편차 기반으로 구분되며, 특히 거리 기반 방법은 R과 k라는 사용자 정의 파라미터에 크게 의존하고, 전체 데이터에 대한 다중 최근접 이웃 탐색이 필요해 계산 비용이 prohibitive 하다. 이러한 한계를 극복하기 위해 저자들은 클러스터링 기반 접근법을 채택한다. 먼저 데이터 스트림 X = {x₁, x₂, …} 를 일정한 청크 크기 Num 로 나누어 청크 X_j 를 순차적으로 읽는다. 각 청크에 대해 k‑median 클러스터링을 수행하는데, 여기서는 Meyerson이 제안한 ONLINE‑FL 알고리즘을 변형하여 사용한다. ONLINE‑FL 은 현재까지 열린 시설(중앙값) 중 가장 가까운 시설까지의 거리 θ와 해당 포인트의 가중치 w 를 이용해 새로운 시설을 열 확률 p = min(θ·w / f, 1)을 계산한다. 여기서 f는 현재 단계의 시설 비용 F_j 로 정의된다. 클러스터링 과정에서 각 포인트는 기존 시설에 할당되거나 새로운 시설을 열게 되며, 할당된 포인트 수만큼 시설의 가중치가 증가한다. 한 단계가 종료되면, 할당이 전혀 일어나지 않은 시설, 즉 가중치가 변하지 않은 시설을 ‘임시 후보 이상치(Temporal Candidate Outlier, TCO)’ 로 표시한다. 이러한 TCO는 다음 청크와 함께 전달되며, 매 단계마다 가중치가 변하지 않으면 그 TCO의 이상치 점수(outlier score)를 1씩 증가시킨다. 지정된 횟수 O(예: 3~5 청크) 동안 점수가 누적되어 O에 도달하면 해당 시설을 최종 이상치(real outlier) 로 확정하고, 이후 클러스터링 과정에서 완전히 제외한다. 반대로 O에 도달하지 못하고 가중치가 증가하면 해당 시설은 정상(inlier) 으로 간주하고, 다음 단계에서 일반 시설로 재활용한다. 알고리즘 파라미터는 다음과 같다. k는 최소 시설 수이며, 실제 사용되는 시설 수는 k와 k·log n 사이의 범위로 동적으로 변한다. γ와 β는 비용 제한을 정의하는 상수이며, 실험에서는 γ = β = 34 로 설정하였다. 각 단계의 하한값 L_j 는 L_{j+1}=β·L_j 로 증가하고, 시설 비용 F_j = L_j / (k·(1+log n)) 로 계산한다. 이러한 설계는 각 단계가 최소 한 개 이상의 새로운 포인트를 읽도록 보장하고, 전체 메모리 사용량을 O(k·polylog n) 로 제한한다. 복잡도 분석에 따르면, 각 청크당 2·log n 번의 병렬 ONLINE‑FL 실행을 수행하고, 비용 한계(4·L_j·(1+4(γ+β))) 또는 시설 수 한계(4·k·(1+log n)·(1+4(γ+β))) 에 도달하면 즉시 중단한다. 따라서 전체 스트림에 대해 한 번의 패스만 필요하며, 시간 복잡도는 O(n·polylog n) 수준이다. 실험은 Windows Vista, Intel Core Duo T2450, 1 GB RAM 환경에서 MATLAB으로 구현되었으며, 다양한 데이터 세트(합성 및 실제 스트림) 에 대해 기존 k‑means 기반 KORM

원본 논문

고화질 논문을 불러오는 중입니다...

댓글 및 학술 토론

Loading comments...

의견 남기기