KR20210031094A - 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램 - Google Patents

트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20210031094A
KR20210031094A KR1020190112603A KR20190112603A KR20210031094A KR 20210031094 A KR20210031094 A KR 20210031094A KR 1020190112603 A KR1020190112603 A KR 1020190112603A KR 20190112603 A KR20190112603 A KR 20190112603A KR 20210031094 A KR20210031094 A KR 20210031094A
Authority
KR
South Korea
Prior art keywords
region
tree
outlier
node
data sample
Prior art date
Application number
KR1020190112603A
Other languages
English (en)
Inventor
박정희
김지일
Original Assignee
한국전력공사
충남대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전력공사, 충남대학교산학협력단 filed Critical 한국전력공사
Priority to KR1020190112603A priority Critical patent/KR20210031094A/ko
Publication of KR20210031094A publication Critical patent/KR20210031094A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램에 관한 것으로서, 미리 수집된 정상 데이터를 이용하여, 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 영역 분할 테이블 생성부, 현재 입력된 정상 데이터 샘플을 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 영역 분할 트리를 생성하는 과정을 복수 개의 영역 분할 테이블 별로 수행함으로써, 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 영역 분할 트리 구성부, 및 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 대상 데이터 샘플이 이상치인지 여부를 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 이상치 예측부를 포함하는 것을 특징으로 한다.

Description

트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램{TREE-BASED OUTLIER DETECTION APPARUTUS AND METHOD, COMPUTER PROGRAM}
본 발명은 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램에 관한 것이다.
이상치 탐지(Outlier Detection)는 정상 데이터 분포로부터 크게 벗어나 있는 데이터 샘플들을 탐지하는 것을 의미한다. 이상치 탐지는 실제 운용 설비에서 이상 상태를 감지하거나, 네트워크 침입, 카드 소유자의 소비 행태를 벗어나는 이상 사용 등을 실시간으로 탐지하는 것에 응용될 수 있다.
이상치 탐지를 위해 거리 기반, 밀도 기반, 클러스터링 기반 및 트리 기반의 방법 등 다양한 탐지 방법이 개발되어 왔다. 이상치 탐지 방법 중의 하나인 클러스터 기반 이상치 탐지 방법은 정상 학습 데이터에 대해 K-means clustering 방법으로 k개의 클러스터를 생성하고, 일정 수 미만의 원소를 가진 클러스터를 제거하여 남은 클러스터들 내부 영역이 정상 영역을 나타내도록 한 후, 테스트 데이터가 클러스터 영역에 포함되면 정상으로, 벗어나면 이상치로 판단한다. 상기의 클러스터 기반 이상치 탐지 방법은 이진 분류 방법이라는 장점을 가지고 있는 반면 결과의 원인 해석이 어려운 문제점이 존재한다.
Isolation Forest는 이상치가 정상 데이터로부터 벗어나 있기 때문에 주위로부터 고립되기 쉽다는 특성을 이용한 이상치 탐지 방법이다. 주어진 학습 데이터의 모든 데이터 샘플들이 서로 분리될 때까지 특징값과 분할점을 랜덤하게 선택하여 영역을 분할하면서 Isolation Tree를 구성해 나간다. 학습 데이터의 랜덤 서브 샘플링에 의해 Isolation Tree를 여러개 구성하여 Isolation Forest를 구성한다. 데이터 샘플이 루트 노드로부터 리프 노드에 도달하는 경로 길이를 이용하여 이상치 지수를 계산한다.
RS Forest는 정상 데이터로만 구성된 학습 데이터를 트리 구성에 직접 사용하지 않고 속성값들의 범위를 추정하는 데에만 사용한다. 트리의 노드를 생성할 때 랜덤하게 속성이 선택되고 속성값 구간을 랜덤하게 이분하는 분할점을 반복적으로 생성하여 데이터 영역을 분할하는 완전 이진 트리인 RS Tree(Random-Split Tree)를 구성한다. 구성된 RS Tree에 정상 학습 데이터를 내려 보내주어 각 노드에 몇 개의 데이터가 들어갔는지 기록하고, 이를 통해 노드의 밀도를 계산하여 이상치 지수를 산출한다.
전술한 것과 같이 Isolation Forest 및 RS Forest는 이상치 탐지를 위해 이상치 지수를 계산하는 방법을 채택하고 있으나, 실제 데이터의 경우 이상치는 정상 데이터에 비해 작은 비율로 존재하기 때문에 이상치 지수에 대한 임계값을 결정하기는 매우 어렵다. 또한, Isolation Forest는 모델 구성 시 정상 영역에 대하여 불필요한 세분화된 분할을 많이 하게 되고, RS Rorest는 완전 이진 트리를 구성하는데 추정된 속성값 범위의 이진 분할 영역 각각에 대한 모든 노드를 생성하게 되어, 트리 구성이 복잡하고 트리의 크기가 증대되는 한계를 갖는다.
본 발명의 배경기술은 대한민국 공개특허공보 제10-2019-0048004호(2019.05.09. 공개)에 개시되어 있다.
본 발명은 전술한 종래의 이상치 탐지 방법의 문제점을 해소하기 위한 것으로서, 본 발명의 일 측면에 따른 목적은 이상치 탐지를 위한 트리의 데이터 영역 분할 정밀도는 유지하면서 트리 구성의 복잡성을 제거하고 트리의 크기를 감소시킬 수 있으며, 이상치로 예측된 데이터 샘플에 대한 이상 원인을 분석하여 제공할 수 있는 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램을 제공하는 것이다.
본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치는 미리 수집된 정상 데이터를 이용하여, 상기 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 영역 분할 테이블 생성부, 현재 입력된 정상 데이터 샘플을 상기 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 상기 영역 분할 트리를 생성하는 과정을 상기 복수 개의 영역 분할 테이블 별로 수행함으로써, 상기 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 영역 분할 트리 구성부, 및 상기 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 상기 대상 데이터 샘플이 이상치인지 여부를 상기 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 상기 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 이상치 예측부를 포함하는 것을 특징으로 한다.
본 발명에 있어 상기 영역 분할 테이블 생성부는, 상기 정상 데이터로부터 랜덤하게 선택된 속성과, 선택된 속성에 대하여 복수의 단위 구간을 형성하기 위한 하나 이상의 분할점을 상기 영역 분할 트리의 각 레벨 별로 규정하여 상기 영역 분할 테이블을 생성하는 것을 특징으로 한다.
본 발명에 있어 상기 영역 분할 테이블 생성부는, 상기 랜덤하게 선택된 속성에서의 상기 정상 데이터의 최소값 및 최대값을 결정하고, 상기 결정된 최소값 및 최대값을 포함하여 상기 최소값 및 최대값 사이에서 상기 하나 이상의 분할점을 결정하며, 상기 각 분할점을 기준으로 상기 복수의 단위 구간을 형성하는 과정을 상기 영역 분할 트리의 각 레벨 별로 반복 수행하여 상기 영역 분할 테이블을 생성하는 것을 특징으로 한다.
본 발명에 있어 상기 영역 분할 트리 구성부는, 루트 노드를 초기 생성하고, 상기 영역 분할 테이블에 규정된 상기 복수의 단위 구간 중 현재 입력된 정상 데이터 샘플이 속하는 단위 구간에서 자식 노드를 생성하는 방식을 통해 상기 루트 노드로부터 말단 노드까지 노드를 확장시켜 상기 영역 분할 트리를 구성하는 것을 특징으로 한다.
본 발명에 있어 상기 영역 분할 트리 구성부는, 제1 노드에 입력된 제1 정상 데이터 샘플이 속하는 단위 구간에 자식 노드로서 제2 노드가 생성되어 있는 경우, 상기 제2 노드에 대하여 형성되어 있는 복수의 단위 구간 중 상기 제1 정상 데이터 샘플이 속하는 단위 구간에서 상기 제2 노드의 자식 노드를 생성하는 과정을 상기 말단 노드가 생성될 때까지 반복하여 수행함으로써 상기 영역 분할 트리를 구성하는 것을 특징으로 한다.
본 발명에 있어 상기 영역 분할 트리 구성부는, 상기 영역 분할 트리를 구성하는 최하위 레벨의 리프 노드 중, 각 리프 노드에 도달한 상기 정상 데이터 샘플의 수가 미리 정의된 임계치 이하에 해당하는 리프 노드는 제거하는 것을 특징으로 한다.
본 발명에 있어 상기 이상치 예측부는, 상기 영역 분할 트리를 토대로 대상 데이터 샘플의 이상치 여부를 판단할 때, 제1 노드에 입력된 대상 데이터 샘플이 속하는 단위 구간에 자식 노드가 존재하지 않는 경우, 상기 대상 데이터 샘플이 이상치인 것으로 판단하되, 상기 제1 노드는 상기 영역 분할 트리의 최하위 레벨에 해당하는 노드가 아닌 것을 특징으로 한다.
본 발명에 있어 상기 이상치 예측부는, 상기 복수의 영역 분할 트리 모두에 대하여 상기 대상 데이터 샘플이 이상치인 것으로 판단되면, 상기 대상 데이터 샘플이 이상치인 것으로 최종 예측하는 것을 특징으로 한다.
본 발명은 상기 대상 데이터 샘플이 이상치인 것으로 최종 예측된 경우, 상기 최종 예측된 결과에 기초하여, 상기 복수의 영역 분할 트리에서의 이상 원인 영역 및 이상 원인 속성을 분석하는 이상치 예측 결과 분석부를 더 포함하는 것을 특징으로 한다.
본 발명에 있어 상기 이상치 예측 결과 분석부는, 상기 대상 데이터 샘플이 상기 영역 분할 트리를 구성하는 각 노드를 이동한 경로인 이상 영역을 상기 각 영역 분할 트리 별로 획득하고, 상기 각 영역 분할 트리 별로 구성된 각각의 이상 영역의 공통 영역인 하이퍼큐브(hypercube)를 상기 이상 원인 영역으로 구성하는 것을 특징으로 한다.
본 발명에 있어 상기 이상치 예측 결과 분석부는, 상기 대상 데이터 샘플이 최종적으로 도달한 노드의 속성을 상기 이상 원인 속성으로 결정하고, 결정된 이상 원인 속성의 수를 상기 영역 분할 트리의 수로 나누어 상기 대상 데이터 샘플이 상기 이상치로 최종 예측된 것에 대한 상기 이상 원인 속성의 기여도를 산출하는 것을 특징으로 한다.
본 발명의 일 측면에 따른 트리 기반 이상치 탐지 방법은 영역 분할 테이블 생성부가, 미리 수집된 정상 데이터를 이용하여, 상기 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 단계, 영역 분할 트리 구성부가, 현재 입력된 정상 데이터 샘플을 상기 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 상기 영역 분할 트리를 생성하는 과정을 상기 복수 개의 영역 분할 테이블 별로 수행함으로써, 상기 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 단계, 및 이상치 예측부가, 상기 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 상기 대상 데이터 샘플이 이상치인지 여부를 상기 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 상기 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일 측면에 따른 컴퓨터 프로그램은 하드웨어와 결합되어, 미리 수집된 정상 데이터를 이용하여, 상기 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 단계, 현재 입력된 정상 데이터 샘플을 상기 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 상기 영역 분할 트리를 생성하는 과정을 상기 복수 개의 영역 분할 테이블 별로 수행함으로써, 상기 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 단계, 및 상기 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 상기 대상 데이터 샘플이 이상치인지 여부를 상기 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 상기 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 단계를 실행시키기 위하여 컴퓨터로 판독 가능한 기록매체에 저장된 것을 특징으로 한다.
본 발명의 일 측면에 따르면, 본 발명은 우선적으로 생성된 영역 분할 테이블을 이용하여 영역 분할 트리를 구성하는 방식을 통해 트리 구성의 복잡성을 제거함과 동시에 불필요한 노드를 줄여 트리의 크기를 감소시킬 수 있고, 이상치 지수를 계산하여 이상치를 탐지하는 종래의 방법 대신 정상 또는 이상의 이진 여부를 직접 예측함으로써 이상치 지수에 대한 임계값 결정이 요구되지 않으며, 이상치로 예측된 데이터 샘플에 대한 이상 원인 영역 및 이상 원인 속성을 분석하여 시각적으로 제공할 수 있어 실제 산업 현장에서의 높은 활용성 측면에서 강점을 갖는다.
도 1은 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치를 설명하기 위한 블록구성도이다.
도 2는 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치에서 영역 분할 테이블을 보인 예시도이다.
도 3은 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치에서 영역 분할 트리를 보인 예시도이다.
도 4는 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치에서 이상 원인 영역 및 이상 원인 속성 비율을 보인 예시도이다.
도 5는 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 방법을 설명하기 위한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램을 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로, 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치를 설명하기 위한 블록구성도이고, 도 2는 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치에서 영역 분할 테이블을 보인 예시도이며, 도 3은 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치에서 영역 분할 트리를 보인 예시도이며, 도 4는 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 장치에서 이상 원인 영역 및 이상 원인 속성 비율을 보인 예시도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 트리 기반 이상치 탐지 장치는 영역 분할 테이블 생성부(100), 영역 분할 트리 구성부(200), 이상치 예측부(300), 이상치 예측 결과 분석부(400) 및 출력부(500)를 포함할 수 있다.
영역 분할 테이블 생성부(100)는 미리 수집된 정상 데이터(즉, 정상 데이터의 세트(set))를 이용하여, 정상 데이터의 정상 영역 분할을 묘사하는(즉, 정상 데이터의 정상 영역이 노드를 통해 분할되어 있는) 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 생성할 수 있다. 즉, 본 실시예에서는 데이터 영역을 세밀하게 분할하면서도 크기가 작은 영역 분할 트리를 구성하기 위해, 우선적으로 영역 분할 트리의 각 레벨에서 노드 분할에 사용되는 속성과 속성값의 분할점을 저장하는 영역 분할 테이블을 생성하는 구성을 채용한다.
구체적으로, 영역 분할 테이블 생성부(100)는 수집된 정상 데이터로부터 랜덤하게 선택된 속성(attribute)과, 선택된 속성에 대하여 복수의 단위 구간을 형성하기 위한 하나 이상의 분할점(partition points)을 영역 분할 트리의 각 레벨(level) 별로 규정하여 영역 분할 테이블을 생성할 수 있다. 도 2는 정상 데이터가 세 개의 속성(A1, A2, A3)를 가지고, 각 속성에서 분할점이 K+1(K는 1 이상의 자연수)개이며, 영역 분할 트리의 높이가 H(H는 2 이상의 자연수)인 경우 영역 분할 테이블의 예시를 도시하고 있다.
이때, 영역 분할 테이블 생성부(100)는 랜덤하게 선택된 속성에서의 정상 데이터의 최소값 및 최대값을 결정하고, 결정된 최소값 및 최대값을 포함하여 그 사이에서 하나 이상의 분할점을 결정하며, 각 분할점을 기준으로 복수의 단위 구간을 형성하는 과정을 영역 분할 트리의 각 레벨 별로 반복 수행하여 영역 분할 테이블을 생성할 수 있다.
도 2를 참조하여 예시로서 설명하면, 최상위 레벨(level 0)에서 속성 A1이 선택되고, 선택된 속성 A1에서의 정상 데이터의 최소값 및 최대값이 각각 a0,0 및 a0,K로 결정되었으며, a0,0 및 a0,K 사이에서 K-1개의 분할점이 랜덤하게 선택되어 a0,0 및 a0,K를 포함하여 총 K+1개의 분할점이 결정된다. 이에 따라, 각 분할점을 기준으로 복수의 단위 구간(즉, ~ a0,0 / a0,0 ~ a0,1 / a0,1 ~ a0, 2 / .... / a0,K -1 ~ a0,K / a0,K ~)이 형성된다. 상기의 과정이 각 레벨(level 0 ~ level H-1) 별로 반복됨으로써 도 2의 예시와 같은 영역 분할 테이블이 생성될 수 있다.
정상 데이터 샘플들은 대체로 어떤 영역에 밀집되어 있는 경우가 많으며, 전술한 종래의 Isolation Forest나 RS Forest와 같이 미리 트리 노드를 모두 생성할 경우 정상 데이터 영역에 해당하는 소수의 노드만 활용되고 나머지 노드들은 모두 비어 있는 트리가 된다. 이러한 메모리 낭비 및 비효율성을 막기 위해 본 실시예에서는 영역 분할 테이블을 우선적으로 생성한 후 데이터 샘플을 영역 분할 테이블에 적용하여 루트로부터 내려 보내면서 트리 노드를 구성함으로써 정상 영역에 해당하는 노드만이 생성되어 트리 구성의 복잡성이 제거되고 메모리를 효율적으로 사용할 수 있게 된다.
한편, 영역 분할 테이블 생성부(100)는 상기와 같은 영역 분할 테이블의 생성 과정을 반복 수행하여 영역 분할 테이블을 복수 개 생성할 수 있다.
영역 분할 테이블 생성부(100)에 의해 영역 분할 테이블이 생성되면, 영역 분할 트리 구성부(200)는 현재 입력된 정상 데이터 샘플을 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 영역 분할 트리를 생성할 수 있다. 용어의 명확한 구분을 위해, 루트 노드는 최상위 레벨(level 0)에 해당하는 노드, 리프 노드는 최하위 레벨(level H-1)에 해당하는 노드, 말단 노드는 상기의 리프 노드를 포함하여 자식 노드가 없는 노드를 의미하는 것으로 정의한다. 본 실시예에서 리프 노드에는 루트 노드로부터 각 노드를 거쳐 내려온 정상 데이터 샘플의 수가 저장된다.
영역 분할 트리의 구성 과정을 보다 구체적으로 설명하면, 영역 분할 트리 구성부(200)는 루트 노드를 초기 생성하고, 영역 분할 테이블에 규정된 복수의 단위 구간 중 현재 입력된 정상 데이터 샘플이 속하는 단위 구간에 자식 노드가 없는 경우 자식 노드를 생성하는 방식을 통해 루트 노드로부터 말단 노드까지 노드를 확장시켜 영역 분할 트리를 구성할 수 있다.
즉, 정상 데이터 샘플이 최초 입력되면 영역 분할 테이블에 규정된 level 0에 해당하는 속성과 해당 속성의 단위 구간을 갖는 루트 노드를 초기 생성한다. 그리고, 현재 입력된 정상 데이터 샘플이 속하는 단위 구간에서 자식 노드를 생성한다. 상기의 과정이 각 노드 별로 반복되어 루트 노드로부터 말단 노드까지 노드가 확정되어 영역 분할 트리가 완성될 수 있다.
노드가 확장되는 과정에 대하여 보다 구체적으로 설명하면, 영역 분할 트리 구성부(200)는 제1 노드에 입력된 제1 정상 데이터 샘플이 속하는 단위 구간에 자식 노드로서 제2 노드가 생성되어 있는 경우, 제2 노드에 대하여 형성되어 있는 복수의 단위 구간 중 제1 정상 데이터 샘플이 속하는 단위 구간에서 제2 노드의 자식 노드를 생성하는 과정을 말단 노드가 생성될 때까지 반복하여 수행함으로써 영역 분할 트리를 구성할 수 있다. 여기서, 제1 노드는 리프 노드를 제외한 각 노드를 의미하며, 제1 정상 데이터 샘플은 현재 제1 노드에 입력된 정상 데이터 샘플을 의미한다.
즉, 제1 노드에 제1 정상 데이터 샘플이 입력되고, 제1 정상 데이터 샘플이 자식 노드로서 제2 노드가 이미 생성되어 있는 단위 구간에 속하는 경우, 제2 노드로 내려가서 제2 노드에 형성되어 있는 복수의 단위 구간 중 제1 정상 데이터 샘플이 속하는 단위 구간에서 자식 노드가 생성되는 과정이 말단 노드가 생성될 때까지 반복 수행된다.
도 3은 전술한 과정을 통해 구성되는 영역 분할 트리(높이(H): 3)의 예시를 도시하고 있으며, 트리 구성에 활용되는 데이터는 정상 데이터 샘플로만 이루어지기 때문에 전체 정상 데이터 샘플을 이용하여 영역 분할 트리를 구성하면 정상 영역에 대해서만 노드가 생성되게 된다.
한편, 영역 분할 트리 구성부(200)는 영역 분할 트리를 구성하는 최하위 레벨의 리프 노드 중, 각 리프 노드에 도달한 정상 데이터 샘플의 수가 미리 정의된 임계치 이하에 해당하는 리프 노드는 제거할 수 있다. 임계치는 설계자의 의도에 따라 다양하게 선택되어 영역 분할 트리 구성부(200)에 미리 정의되어 있을 수 있다(예: 1).
구체적으로, 영역 분할 트리가 생성될 때 노이즈가 존재하는 영역은 정상 영역으로 분류되기 때문에 이상치 탐지 성능에 영향을 미칠 수 있다. 즉, 이상치가 이 경로를 통해 흘러들어와 정상 데이터인 것으로 예측될 수 있어 후술하는 FN(False Negative: 이상치를 정상 데이터로 판정한 횟수)이 증가하기 때문에, 영역 분할 트리의 리프 노드 중 임계치 이하의 정상 데이터 샘플이 도달한 리프 노드는 제거될 수 있다.
영역 분할 트리 구성부(200)는 상기와 같은 영역 분할 트리의 생성 과정을 영역 분할 테이블 생성부(100)에 의해 생성된 복수 개의 영역 분할 테이블 별로 수행함으로써, 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성할 수 있다.
이상치 예측부(300)는 영역 분할 트리 구성부(200)에 의해 구성된 복수 개의 영역 분할 트리를 포함하는 앙상블을 구성하고, 앙상블에 포함되는 각 영역 분할 트리 각각에 대상 데이터 샘플(즉, 이상치인지 여부를 예측하고자 하는 대상이 되는 데이터 샘플)을 적용하여 대상 데이터 샘플이 이상치인지 여부를 영역 분할 트리 별로 판단하며, 그 판단 결과를 종합하여 대상 데이터 샘플이 이상치인지 여부를 최종 예측할 수 있다.
구체적으로, 이상치 예측부(300)는 영역 분할 트리를 토대로 대상 데이터 샘플의 이상치 여부를 판단할 때, 제1 노드에 입력된 대상 데이터 샘플이 속하는 단위 구간에 자식 노드가 존재하지 않는 경우, 대상 데이터 샘플이 이상치인 것으로 판단할 수 있다. 여기서, 제1 노드는 영역 분할 트리의 최하위 레벨에 해당하는 노드(즉, 리프 노드)가 아닌 노드를 의미하며, 영역 분할 트리가 구성되는 과정을 설명할 때 표기한 제1 노드와는 그 의미가 구분된다.
즉, 전술한 것과 같이 트리 구성에 활용되는 데이터는 정상 데이터 샘플로만 이루어지기 때문에, 전체 정상 데이터 샘플을 이용하여 영역 분할 트리를 구성하면 정상 영역에 대해서만 노드가 생성되며, 따라서 루트 노드와 리프 노드를 제외한 각 노드 중 자식 노드가 존재하는지 않는 노드는 자연스럽게 이상치 영역이 된다. 이에 따라, 예측하고자 하는 대상 데이터 샘플을 루트 노드로부터 내려 보낼 경우, 대상 데이터 샘플이 정상 데이터라면 루트 노드로부터 리프 노드까지 도달하게 되고, 대상 데이터 샘플이 이상치라면 자식 노드가 Null인 노드에서 멈추게 되기 때문에, 상기와 같은 방식에 따라 각 영역 분할 트리를 토대로 이상치를 탐지할 수 있다. 이상치 예측부(300)는 상기와 같은 방식을 통해 복수의 영역 분할 트리 모두에 대하여 대상 데이터 샘플이 이상치인 것으로 판단되면, 대상 데이터 샘플이 이상치인 것으로 최종 예측할 수 있다.
이상치 예측 결과 분석부(400)는 이상치 예측부(300)에 의해 대상 데이터 샘플이 이상치인 것으로 최종 예측된 경우, 최종 예측된 결과에 기초하여, 복수의 영역 분할 트리에서의 이상 원인 영역 및 이상 원인 속성을 분석할 수 있다.
이상 원인 영역의 분석과 관련하여, 이상치 예측 결과 분석부(400)는 대상 데이터 샘플이 영역 분할 트리를 구성하는 각 노드를 이동한 경로인 이상 영역을 각 영역 분할 트리 별로 획득하고, 각 영역 분할 트리 별로 구성된 각각의 이상 영역의 공통 영역인 하이퍼큐브(hypercube)를 이상 원인 영역으로 구성할 수 있다. 즉, 이상치인 것으로 최종 예측된 대상 데이터 샘플은 영역 분할 트리의 루트 노드로부터 말단 노드까지 도달하는 과정에서 각 레벨의 노드를 거쳐 내려오며, 대상 데이터 샘플이 이동한 경로인 이상 영역을 각 영역 분할 트리 별로 획득한 후 그 공통 영역을 구하여 대상 데이터 샘플이 속하는 이상 원인 영역인 하이퍼큐브를 구성할 수 있다.
이상 원인 속성의 분석과 관련하여, 이상치 예측 결과 분석부(400)는 대상 데이터 샘플이 최종적으로 도달한 노드의 속성을 이상 원인 속성으로 결정하고, 결정된 이상 원인 속성의 수를 영역 분할 트리의 수로 나누어 대상 데이터 샘플이 이상치로 최종 예측된 것에 대한 이상 원인 속성의 기여도를 산출할 수 있다. 즉, 전체 앙상블에서, 이상치인 것으로 최종 예측된 대상 데이터 샘플이 도달한 말단 노드의 속성이 이상 원인 속성인 것으로 파악된 비율을 계산하여 해당 속성이 이상치 예측에서 어떠한 역할을 하였는지 추정할 수 있다.
이상치 예측 결과 분석부(400)에 의해 획득된 하이퍼큐브 및 기여도는 도 4의 예시와 같이 출력부(500)를 통해 사용자에게 시각적으로 제공될 수 있다.
이하에서는 위에서 설명한 본 실시예의 이상치 탐지 성능을 검증한 실험예를 제시한다.
1. 실험 데이터
[표 1]
Figure pat00001
전체 데이터에서 30%의 정상 데이터를 이용하여 영역 분할 테이블 및 영역 분할 트리를 구성하고, 나머지 70%의 데이터를 이용하여 이상치 탐지 성능을 평가하였다. 본 실시예에 따른 이상치 탐지 기법(RP-Forest)에서 앙상블의 멤버 수는 20, 분할점의 개수는 10으로 하였다.
2. 실험 평가 척도
이상치 탐지를 Positive 판정이라 할 때, 이상치 탐지 성능은 정확도(precision), 재현률(recall) 및 F1값으로 평가할 수 있다.
[수학식 1]
Figure pat00002
수학식 1의 파라미터는 다음과 같다.
TP: 이상치를 이상치로 판정한 횟수
FP: 정상 데이터를 이상치로 판정한 횟수
FN: 이상치를 정상 데이터로 판정한 횟수
3. 실험 결과
위 수학식 1에 따라 구한 F1을 종래의 이상치 탐지 기법과 본 실시예의 RP-Forest로 구분하여 하기 표 2에 나타내었다. 본 실시예에 따를 때 종래의 이상치 탐지 기법 대비 이상치 탐지 성능이 향상됨을 확인할 수 있다.
[표 2]
Figure pat00003
4. 이상 원인 영역 및 이상 원인 속성에 대한 결과
도 4는 KDD-http 데이터 세트에서 얻은 하이퍼큐브를 보여준다. 모든 테스트 데이터 샘플들에서 총 51개의 이상 영역들이 검출되었다. 일부 하이퍼큐브의 경우 이상치 예측 원인으로 파악된 속성의 비율을 표시했다. 대부분의 테스트 데이터 샘플들에서 소스에서 목적지로 전송된 소스 바이트를 나타내는 “src-byte”속성이 주된 이상치 원인으로 추정되었다.
도 5는 본 발명의 일 측면에 따른 트리 기반 이상치 탐지 방법을 설명하기 위한 흐름도이다.
도 5를 참조하여 본 발명의 일 실시예에 따른 트리 기반 이상치 탐지 방법을 설명하면, 먼저 영역 분할 테이블 생성부(100)는 미리 수집된 정상 데이터를 이용하여, 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성한다(S100).
S100 단계에서, 영역 분할 테이블 생성부(100)는 정상 데이터로부터 랜덤하게 선택된 속성과, 선택된 속성에 대하여 복수의 단위 구간을 형성하기 위한 하나 이상의 분할점을 영역 분할 트리의 각 레벨 별로 규정하여 영역 분할 테이블을 생성한다. 구체적으로, 영역 분할 테이블 생성부(100)는 랜덤하게 선택된 속성에서의 정상 데이터의 최소값 및 최대값을 결정하고, 결정된 최소값 및 최대값을 포함하여 최소값 및 최대값 사이에서 하나 이상의 분할점을 결정하며, 각 분할점을 기준으로 복수의 단위 구간을 형성하는 과정을 영역 분할 트리의 각 레벨 별로 반복 수행하여 영역 분할 테이블을 생성한다.
이어서, 영역 분할 트리 구성부(200)는 현재 입력된 정상 데이터 샘플을 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 영역 분할 트리를 생성하는 과정을 복수 개의 영역 분할 테이블 별로 수행함으로써, 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성한다(S200).
S200 단계에서, 영역 분할 트리 구성부(200)는 루트 노드를 초기 생성하고, 영역 분할 테이블에 규정된 복수의 단위 구간 중 현재 입력된 정상 데이터 샘플이 속하는 단위 구간에서 자식 노드를 생성하는 방식을 통해 루트 노드로부터 말단 노드까지 노드를 확장시켜 영역 분할 트리를 구성한다. 또한, 영역 분할 트리 구성부(200)는 제1 노드에 입력된 제1 정상 데이터 샘플이 속하는 단위 구간에 자식 노드로서 제2 노드가 생성되어 있는 경우, 제2 노드에 대하여 형성되어 있는 복수의 단위 구간 중 제1 정상 데이터 샘플이 속하는 단위 구간에서 제2 노드의 자식 노드를 생성하는 과정을 말단 노드가 생성될 때까지 반복하여 수행함으로써 영역 분할 트리를 구성한다. 그리고, 영역 분할 트리 구성부(200)는 영역 분할 트리를 구성하는 최하위 레벨의 리프 노드 중, 각 리프 노드에 도달한 정상 데이터 샘플의 수가 미리 정의된 임계치 이하에 해당하는 리프 노드는 제거한다.
S200 단계 이후, 이상치 예측부(300)는 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 대상 데이터 샘플이 이상치인지 여부를 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 대상 데이터 샘플이 이상치인지 여부를 최종 예측한다(S300).
S300 단계에서, 이상치 예측부(300)는 영역 분할 트리를 토대로 대상 데이터 샘플의 이상치 여부를 판단할 때, 제1 노드에 입력된 대상 데이터 샘플이 속하는 단위 구간에 자식 노드가 존재하지 않는 경우, 대상 데이터 샘플이 이상치인 것으로 판단한다. 여기서, 제1 노드는 영역 분할 트리의 최하위 레벨에 해당하는 노드가 아닌 노드를 의미한다. 이에 따라, 이상치 예측부(300)는 복수의 영역 분할 트리 모두에 대하여 대상 데이터 샘플이 이상치인 것으로 판단되면, 대상 데이터 샘플이 이상치인 것으로 최종 예측한다.
S300 단계 이후, 이상치 예측 결과 분석부(400)는 대상 데이터 샘플이 이상치인 것으로 최종 예측된 경우, 최종 예측된 결과에 기초하여, 복수의 영역 분할 트리에서의 이상 원인 영역 및 이상 원인 속성을 분석한다(S400).
S400 단계에서, 이상치 예측 결과 분석부(400)는 대상 데이터 샘플이 영역 분할 트리를 구성하는 각 노드를 이동한 경로인 이상 영역을 각 영역 분할 트리 별로 획득하고, 각 영역 분할 트리 별로 구성된 각각의 이상 영역의 공통 영역인 하이퍼큐브(hypercube)를 이상 원인 영역으로 구성한다. 또한, 이상치 예측 결과 분석부(400)는 대상 데이터 샘플이 최종적으로 도달한 노드의 속성을 이상 원인 속성으로 결정하고, 결정된 이상 원인 속성의 수를 영역 분할 트리의 수로 나누어 대상 데이터 샘플이 이상치로 최종 예측된 것에 대한 이상 원인 속성의 기여도를 산출한다.
한편, 본 실시예에 따른 트리 기반 이상치 탐지 방법은 하드웨어와 결합되어 S100 단계 내지 S400 단계를 실행시키기 위한 컴퓨터 프로그램으로 작성될 수 있으며, 컴퓨터로 판독 가능한 기록매체에 저장되어 상기 컴퓨터 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 컴퓨터로 읽을 수 있는 기록매체에는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크 및 광 데이터 저장장치 등이 있다. 또한, 컴퓨터로 판독 가능한 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다.
이와 같이 본 실시예는 우선적으로 생성된 영역 분할 테이블을 이용하여 영역 분할 트리를 구성하는 방식을 통해 트리 구성의 복잡성을 제거함과 동시에 불필요한 노드를 줄여 트리의 크기를 감소시킬 수 있고, 이상치 지수를 계산하여 이상치를 탐지하는 종래의 방법 대신 정상 또는 이상의 이진 여부를 직접 예측함으로써 이상치 지수에 대한 임계값 결정이 요구되지 않으며, 이상치로 예측된 데이터 샘플에 대한 이상 원인 영역 및 이상 원인 속성을 분석하여 시각적으로 제공할 수 있어 실제 산업 현장에서의 높은 활용성 측면에서 강점을 갖는다.
본 명세서에서 설명된 구현은, 예컨대, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림 또는 신호로 구현될 수 있다. 단일 형태의 구현의 맥락에서만 논의(예컨대, 방법으로서만 논의)되었더라도, 논의된 특징의 구현은 또한 다른 형태(예컨대, 장치 또는 프로그램)로도 구현될 수 있다. 장치는 적절한 하드웨어, 소프트웨어 및 펌웨어 등으로 구현될 수 있다. 방법은, 예컨대, 컴퓨터, 마이크로프로세서, 집적 회로 또는 프로그래밍가능한 로직 디바이스 등을 포함하는 프로세싱 디바이스를 일반적으로 지칭하는 프로세서 등과 같은 장치에서 구현될 수 있다. 프로세서는 또한 최종-사용자 사이에 정보의 통신을 용이하게 하는 컴퓨터, 셀 폰, 휴대용/개인용 정보 단말기(personal digital assistant: "PDA") 및 다른 디바이스 등과 같은 통신 디바이스를 포함한다.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며 당해 기술이 속하는 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.
100: 영역 분할 테이블 생성부
200: 영역 분할 트리 구성부
300: 이상치 예측부
400: 이상치 예측 결과 분석부
500: 출력부

Claims (23)

  1. 미리 수집된 정상 데이터를 이용하여, 상기 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 영역 분할 테이블 생성부;
    현재 입력된 정상 데이터 샘플을 상기 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 상기 영역 분할 트리를 생성하는 과정을 상기 복수 개의 영역 분할 테이블 별로 수행함으로써, 상기 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 영역 분할 트리 구성부; 및
    상기 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 상기 대상 데이터 샘플이 이상치인지 여부를 상기 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 상기 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 이상치 예측부;
    를 포함하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  2. 제1항에 있어서,
    상기 영역 분할 테이블 생성부는, 상기 정상 데이터로부터 랜덤하게 선택된 속성과, 선택된 속성에 대하여 복수의 단위 구간을 형성하기 위한 하나 이상의 분할점을 상기 영역 분할 트리의 각 레벨 별로 규정하여 상기 영역 분할 테이블을 생성하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  3. 제2항에 있어서,
    상기 영역 분할 테이블 생성부는, 상기 랜덤하게 선택된 속성에서의 상기 정상 데이터의 최소값 및 최대값을 결정하고, 상기 결정된 최소값 및 최대값을 포함하여 상기 최소값 및 최대값 사이에서 상기 하나 이상의 분할점을 결정하며, 상기 각 분할점을 기준으로 상기 복수의 단위 구간을 형성하는 과정을 상기 영역 분할 트리의 각 레벨 별로 반복 수행하여 상기 영역 분할 테이블을 생성하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  4. 제2항에 있어서,
    상기 영역 분할 트리 구성부는, 루트 노드를 초기 생성하고, 상기 영역 분할 테이블에 규정된 상기 복수의 단위 구간 중 현재 입력된 정상 데이터 샘플이 속하는 단위 구간에서 자식 노드를 생성하는 방식을 통해 상기 루트 노드로부터 말단 노드까지 노드를 확장시켜 상기 영역 분할 트리를 구성하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  5. 제4항에 있어서,
    상기 영역 분할 트리 구성부는, 제1 노드에 입력된 제1 정상 데이터 샘플이 속하는 단위 구간에 자식 노드로서 제2 노드가 생성되어 있는 경우, 상기 제2 노드에 대하여 형성되어 있는 복수의 단위 구간 중 상기 제1 정상 데이터 샘플이 속하는 단위 구간에서 상기 제2 노드의 자식 노드를 생성하는 과정을 상기 말단 노드가 생성될 때까지 반복하여 수행함으로써 상기 영역 분할 트리를 구성하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  6. 제4항에 있어서,
    상기 영역 분할 트리 구성부는, 상기 영역 분할 트리를 구성하는 최하위 레벨의 리프 노드 중, 각 리프 노드에 도달한 상기 정상 데이터 샘플의 수가 미리 정의된 임계치 이하에 해당하는 리프 노드는 제거하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  7. 제1항에 있어서,
    상기 이상치 예측부는, 상기 영역 분할 트리를 토대로 대상 데이터 샘플의 이상치 여부를 판단할 때, 제1 노드에 입력된 대상 데이터 샘플이 속하는 단위 구간에 자식 노드가 존재하지 않는 경우, 상기 대상 데이터 샘플이 이상치인 것으로 판단하되, 상기 제1 노드는 상기 영역 분할 트리의 최하위 레벨에 해당하는 노드가 아닌 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  8. 제7항에 있어서,
    상기 이상치 예측부는, 상기 복수의 영역 분할 트리 모두에 대하여 상기 대상 데이터 샘플이 이상치인 것으로 판단되면, 상기 대상 데이터 샘플이 이상치인 것으로 최종 예측하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  9. 제1항에 있어서,
    상기 대상 데이터 샘플이 이상치인 것으로 최종 예측된 경우, 상기 최종 예측된 결과에 기초하여, 상기 복수의 영역 분할 트리에서의 이상 원인 영역 및 이상 원인 속성을 분석하는 이상치 예측 결과 분석부;를 더 포함하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  10. 제9항에 있어서,
    상기 이상치 예측 결과 분석부는, 상기 대상 데이터 샘플이 상기 영역 분할 트리를 구성하는 각 노드를 이동한 경로인 이상 영역을 상기 각 영역 분할 트리 별로 획득하고, 상기 각 영역 분할 트리 별로 구성된 각각의 이상 영역의 공통 영역인 하이퍼큐브(hypercube)를 상기 이상 원인 영역으로 구성하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  11. 제9항에 있어서,
    상기 이상치 예측 결과 분석부는, 상기 대상 데이터 샘플이 최종적으로 도달한 노드의 속성을 상기 이상 원인 속성으로 결정하고, 결정된 이상 원인 속성의 수를 상기 영역 분할 트리의 수로 나누어 상기 대상 데이터 샘플이 상기 이상치로 최종 예측된 것에 대한 상기 이상 원인 속성의 기여도를 산출하는 것을 특징으로 하는 트리 기반 이상치 탐지 장치.
  12. 영역 분할 테이블 생성부가, 미리 수집된 정상 데이터를 이용하여, 상기 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 단계;
    영역 분할 트리 구성부가, 현재 입력된 정상 데이터 샘플을 상기 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 상기 영역 분할 트리를 생성하는 과정을 상기 복수 개의 영역 분할 테이블 별로 수행함으로써, 상기 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 단계; 및
    이상치 예측부가, 상기 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 상기 대상 데이터 샘플이 이상치인지 여부를 상기 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 상기 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 단계;
    를 포함하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  13. 제12항에 있어서,
    상기 생성하는 단계에서, 상기 영역 분할 테이블 생성부는,
    상기 정상 데이터로부터 랜덤하게 선택된 속성과, 선택된 속성에 대하여 복수의 단위 구간을 형성하기 위한 하나 이상의 분할점을 상기 영역 분할 트리의 각 레벨 별로 규정하여 상기 영역 분할 테이블을 생성하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  14. 제13항에 있어서,
    상기 생성하는 단계에서, 상기 영역 분할 테이블 생성부는,
    상기 랜덤하게 선택된 속성에서의 상기 정상 데이터의 최소값 및 최대값을 결정하고, 상기 결정된 최소값 및 최대값을 포함하여 상기 최소값 및 최대값 사이에서 상기 하나 이상의 분할점을 결정하며, 상기 각 분할점을 기준으로 상기 복수의 단위 구간을 형성하는 과정을 상기 영역 분할 트리의 각 레벨 별로 반복 수행하여 상기 영역 분할 테이블을 생성하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  15. 제13항에 있어서,
    상기 구성하는 단계에서, 상기 영역 분할 트리 구성부는,
    루트 노드를 초기 생성하고, 상기 영역 분할 테이블에 규정된 상기 복수의 단위 구간 중 현재 입력된 정상 데이터 샘플이 속하는 단위 구간에서 자식 노드를 생성하는 방식을 통해 상기 루트 노드로부터 말단 노드까지 노드를 확장시켜 상기 영역 분할 트리를 구성하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  16. 제15항에 있어서,
    상기 구성하는 단계에서, 상기 영역 분할 트리 구성부는,
    제1 노드에 입력된 제1 정상 데이터 샘플이 속하는 단위 구간에 자식 노드로서 제2 노드가 생성되어 있는 경우, 상기 제2 노드에 대하여 형성되어 있는 복수의 단위 구간 중 상기 제1 정상 데이터 샘플이 속하는 단위 구간에서 상기 제2 노드의 자식 노드를 생성하는 과정을 상기 말단 노드가 생성될 때까지 반복하여 수행함으로써 상기 영역 분할 트리를 구성하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  17. 제15항에 있어서,
    상기 구성하는 단계에서, 상기 영역 분할 트리 구성부는,
    상기 영역 분할 트리를 구성하는 최하위 레벨의 리프 노드 중, 각 리프 노드에 도달한 상기 정상 데이터 샘플의 수가 미리 정의된 임계치 이하에 해당하는 리프 노드는 제거하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  18. 제12항에 있어서,
    상기 예측하는 단계에서, 상기 이상치 예측부는,
    상기 영역 분할 트리를 토대로 대상 데이터 샘플의 이상치 여부를 판단할 때, 제1 노드에 입력된 대상 데이터 샘플이 속하는 단위 구간에 자식 노드가 존재하지 않는 경우, 상기 대상 데이터 샘플이 이상치인 것으로 판단하되, 상기 제1 노드는 상기 영역 분할 트리의 최하위 레벨에 해당하는 노드가 아닌 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  19. 제18항에 있어서,
    상기 예측하는 단계에서, 상기 이상치 예측부는,
    상기 복수의 영역 분할 트리 모두에 대하여 상기 대상 데이터 샘플이 이상치인 것으로 판단되면, 상기 대상 데이터 샘플이 이상치인 것으로 최종 예측하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  20. 제12항에 있어서,
    이상치 예측 결과 분석부가, 상기 대상 데이터 샘플이 이상치인 것으로 최종 예측된 경우, 상기 최종 예측된 결과에 기초하여, 상기 복수의 영역 분할 트리에서의 이상 원인 영역 및 이상 원인 속성을 분석하는 단계;를 더 포함하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  21. 제20항에 있어서,
    상기 분석하는 단계에서, 상기 이상치 예측 결과 분석부는,
    상기 대상 데이터 샘플이 상기 영역 분할 트리를 구성하는 각 노드를 이동한 경로인 이상 영역을 상기 각 영역 분할 트리 별로 획득하고, 상기 각 영역 분할 트리 별로 구성된 각각의 이상 영역의 공통 영역인 하이퍼큐브(hypercube)를 상기 이상 원인 영역으로 구성하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  22. 제20항에 있어서,
    상기 분석하는 단계에서, 상기 이상치 예측 결과 분석부는,
    상기 대상 데이터 샘플이 최종적으로 도달한 노드의 속성을 상기 이상 원인 속성으로 결정하고, 결정된 이상 원인 속성의 수를 상기 영역 분할 트리의 수로 나누어 상기 대상 데이터 샘플이 상기 이상치로 최종 예측된 것에 대한 상기 이상 원인 속성의 기여도를 산출하는 것을 특징으로 하는 트리 기반 이상치 탐지 방법.
  23. 하드웨어와 결합되어,
    미리 수집된 정상 데이터를 이용하여, 상기 정상 데이터의 정상 영역 분할을 묘사하는 영역 분할 트리를 구성하기 위한 영역 분할 테이블을 복수 개 생성하는 단계;
    현재 입력된 정상 데이터 샘플을 상기 영역 분할 테이블에 매칭한 결과를 기반으로 노드를 확장시키는 방식을 통해 상기 영역 분할 트리를 생성하는 과정을 상기 복수 개의 영역 분할 테이블 별로 수행함으로써, 상기 복수 개의 영역 분할 테이블 각각에 대한 영역 분할 트리를 복수 개 구성하는 단계; 및
    상기 복수 개의 영역 분할 트리 각각에 대상 데이터 샘플을 적용하여 상기 대상 데이터 샘플이 이상치인지 여부를 상기 영역 분할 트리 별로 판단하고, 그 판단 결과를 종합하여 상기 대상 데이터 샘플이 이상치인지 여부를 최종 예측하는 단계;
    를 실행시키기 위하여 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020190112603A 2019-09-11 2019-09-11 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램 KR20210031094A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190112603A KR20210031094A (ko) 2019-09-11 2019-09-11 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190112603A KR20210031094A (ko) 2019-09-11 2019-09-11 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20210031094A true KR20210031094A (ko) 2021-03-19

Family

ID=75261897

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190112603A KR20210031094A (ko) 2019-09-11 2019-09-11 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR20210031094A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114925731A (zh) * 2022-06-06 2022-08-19 华电金沙江上游水电开发有限公司叶巴滩分公司 检测柔性测斜仪监测数据异常值的方法
CN117938725A (zh) * 2024-03-22 2024-04-26 江西省通信产业服务有限公司 用于hvac的物联网设备通信异常检测方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114925731A (zh) * 2022-06-06 2022-08-19 华电金沙江上游水电开发有限公司叶巴滩分公司 检测柔性测斜仪监测数据异常值的方法
CN114925731B (zh) * 2022-06-06 2024-05-31 华电金沙江上游水电开发有限公司叶巴滩分公司 检测柔性测斜仪监测数据异常值的方法
CN117938725A (zh) * 2024-03-22 2024-04-26 江西省通信产业服务有限公司 用于hvac的物联网设备通信异常检测方法及系统

Similar Documents

Publication Publication Date Title
KR102128926B1 (ko) 오디오 정보 처리 방법 및 디바이스
JP7008096B2 (ja) 関連付け関心点に基づく文推奨方法及び装置
EP3635540A1 (en) Intent-based organisation of apis
CN111538766B (zh) 一种文本分类方法、装置、处理设备和票据分类系统
CN105321518A (zh) 一种低资源嵌入式语音识别的拒识方法
JP7058574B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US9984184B2 (en) Biological network analysis device and method therefor
CN106843523B (zh) 基于人工智能的文字输入方法和装置
KR20210031094A (ko) 트리 기반 이상치 탐지 장치 및 방법, 컴퓨터 프로그램
CN110674290B (zh) 一种用于重叠社区发现的关系预测方法、装置和存储介质
KR101931624B1 (ko) 패션 분야의 트렌드 분석방법 및 이를 포함하는 저장매체
Porreca et al. Structural identification of piecewise-linear models of genetic regulatory networks
JP6563350B2 (ja) データ分類装置、データ分類方法、及びプログラム
KR20190125840A (ko) 질병 관련 유전자 순위정보 제공 방법
JP5766152B2 (ja) 言語モデル生成装置、その方法及びプログラム
JP2013045363A (ja) 文脈依存性推定装置、発話クラスタリング装置、方法、及びプログラム
JP5734118B2 (ja) ソーシャルネットワークから小集団を抽出し、名前付け、並びに可視化する方法およびプログラム
JP6927409B2 (ja) 情報処理装置、制御方法、及びプログラム
CN110390085A (zh) 文本相似度的分析方法、分析装置、存储介质和电子设备
Joodaki et al. Protein complex detection from PPI networks on Apache Spark
JPWO2011070979A1 (ja) 辞書作成装置、単語収集方法、及び、プログラム
JP5063639B2 (ja) データ分類方法及び装置及びプログラム
JP2007026115A (ja) ラベル付与システムおよびラベル付与方法
CN114861004A (zh) 一种社交事件检测方法、装置及系统
WO2009107412A1 (ja) グラフ構造推定装置、グラフ構造推定方法およびプログラム