KR102299660B1 - 이상 탐지 방법 및 이상 탐지 장치 - Google Patents

이상 탐지 방법 및 이상 탐지 장치 Download PDF

Info

Publication number
KR102299660B1
KR102299660B1 KR1020210024189A KR20210024189A KR102299660B1 KR 102299660 B1 KR102299660 B1 KR 102299660B1 KR 1020210024189 A KR1020210024189 A KR 1020210024189A KR 20210024189 A KR20210024189 A KR 20210024189A KR 102299660 B1 KR102299660 B1 KR 102299660B1
Authority
KR
South Korea
Prior art keywords
data
score
monitoring target
anomaly
anomaly detection
Prior art date
Application number
KR1020210024189A
Other languages
English (en)
Other versions
KR102299660B9 (ko
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 KR1020210024189A priority Critical patent/KR102299660B1/ko
Application granted granted Critical
Publication of KR102299660B1 publication Critical patent/KR102299660B1/ko
Publication of KR102299660B9 publication Critical patent/KR102299660B9/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3079Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by reporting only the changes of the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

본 발명은 모니터링 대상 데이터에 대한 이상(anomaly) 여부를 탐지하는 이상 탐지 방법으로서, 수집한 모니터링 대상 데이터 세트로부터 이상 여부를 탐지할 제1 데이터를 선별하는 단계, 선별된 상기 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출하는 단계, 상기 데이터 세트 중 선별된 상기 제1 데이터 이외의 데이터인 제2 데이터에 디폴트 스코어를 설정하는 단계, 상기 제1 데이터에 대한 이상 스코어 및 상기 제2 데이터에 대한 디폴트 스코어를 이용하여 상기 데이터 세트의 전체 이상 스코어를 결정하는 단계, 및 상기 전체 이상 스코어에 따라 상기 데이터 세트의 이상 여부를 판단하는 단계를 포함할 수 있다.

Description

이상 탐지 방법 및 이상 탐지 장치{ANOMALY DETECTING METHOD AND ANOMALY DETECTING APPARATUS}
본 발명은 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트(isolation forest) 알고리즘을 적용하여 이상 탐지를 수행하는 이상 탐지 방법 및 이상 탐지 장치에 관한 것이다.
이상 탐지(anomaly detection)란, 대다수의 데이터와 크게 다른 데이터 또는 특이한 데이터를 탐지하는 것을 말한다. 여기서 이상(Anomaly)은 은행 사기, 구조적 결함, 텍스트의 오류일 수 있고, 잡음, 편차, 또는 예외라고 표현될 수도 있다.
이와 같이 예외적인 경우에 획득되는 데이터를 이상 데이터(anomalous data)라고 정의하고, 일상적인 상황에서 획득되는 데이터를 정상 데이터(normal data)라고 정의할 수 있다. 정상 데이터는 항상 발생하고 획득하기 쉬운 데이터지만, 이상 데이터는 그것이 예외적인 경우에 해당하므로 획득하기가 매우 어렵다. 즉, 이상 데이터를 한번 획득하려면 매우 오랜 시간을 기다려야 하거나, 일부러 이상 상태(anomalous condition)를 조성해야 한다.
한편, 종래에 데이터 분석에 기반하여 이상 징후를 탐지하려는 시도들이 있었으나, 단순히 사전 결정된 기준을 정의하고 그 기준에 벗어난 것인지 아닌지를 판단하는 수준이었다. 이러한 종래의 데이터 분석에 의한 이상 탐지는 유용해 보일 수 있으나, 사용자가 미리 데이터를 학습 및 분석해야 하고 이를 기반으로 기준을 세우는 것이므로 사전 준비에 시간이 많이 소요된다. 또한, 인간에 의한 분석이므로 정확성이 떨어질 가능성도 내포한다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
국내 공개특허공보 제10-2018-0097895호(2018.09.03)
본 발명의 일 과제는, 전체 모니터링 대상 데이터 중 평균값(mean value) 이상으로 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트 알고리즘을 적용하여 이상 데이터 탐지 정확도를 향상시키는데 있다.
본 발명의 일 과제는, 전체 모니터링 대상 데이터 중 평균값 이상으로 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트 알고리즘을 적용하여 이상 탐지에 소요되는 시간을 줄이는데 있다.
본 발명의 일 과제는, 전체 모니터링 대상 데이터 중 평균값 이상으로 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트 알고리즘을 적용하여 기계의 고장 원인, 누설 전류에 의한 화재 발생 원인 등을 분석하는데 있다.
본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 발명의 다른 과제 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시 예에 의해보다 분명하게 이해될 것이다. 또한, 본 발명이 해결하고자 하는 과제 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.
본 개시의 일 실시 예에 따른 이상 탐지 방법은, 모니터링 대상 데이터에 대한 이상(anomaly) 여부를 탐지하는 이상 탐지 방법으로서, 수집한 모니터링 대상 데이터 세트로부터 이상 여부를 탐지할 제1 데이터를 선별하는 단계, 선별된 상기 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출하는 단계, 상기 데이터 세트 중 선별된 상기 제1 데이터 이외의 데이터인 제2 데이터에 디폴트 스코어를 설정하는 단계, 상기 제1 데이터에 대한 이상 스코어 및 상기 제2 데이터에 대한 디폴트 스코어를 이용하여 상기 데이터 세트의 전체 이상 스코어를 결정하는 단계, 및 상기 전체 이상 스코어에 따라 상기 데이터 세트의 이상 여부를 판단하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따른 이상 탐지 장치는, 모니터링 대상 데이터에 대한 이상(anomaly) 여부를 탐지하는 이상 탐지 장치로서, 프로세서 및 상기 프로세서와 동작 가능하게 연결되고 상기 프로세서에서 수행되는 적어도 하나의 코드를 저장하는 메모리를 포함하고, 상기 메모리는 상기 프로세서를 통해 실행될 때, 상기 프로세서가 수집한 모니터링 대상 데이터 세트로부터 이상 여부를 탐지할 제1 데이터를 선별하고, 선별된 상기 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출하고, 상기 데이터 세트 중 선별된 상기 제1 데이터 이외의 데이터인 제2 데이터에 디폴트 스코어를 설정하고, 상기 제1 데이터에 대한 이상 스코어 및 상기 제2 데이터에 대한 디폴트 스코어를 이용하여 상기 데이터 세트의 전체 이상 스코어를 결정하고, 상기 전체 이상 스코어에 따라 상기 데이터 세트의 이상 여부를 판단하도록 야기하는 코드를 저장할 수 있다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 판독 가능한 기록매체가 더 제공될 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명에 의하면, 전체 모니터링 대상 데이터 중 평균값 이상으로 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트 알고리즘을 적용하여 이상 데이터 탐지 정확도를 향상시킬 수 있다.
또한, 전체 모니터링 대상 데이터 중 평균값 이상으로 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트 알고리즘을 적용하여 이상 탐지에 소요되는 시간을 줄일 수 있다.
또한, 연산 리소스를 효율적으로 활용하면서도 보다 신속하고 정확하게 이상 데이터를 탐지할 수 있는 방법 및 장치를 제공할 수 있다.
또한, 전체 모니터링 대상 데이터 중 평균값 이상으로 선별된 모니터링 대상 데이터에 아이솔레이션 포레스트 알고리즘을 적용하여 빠르고 정확하게 기계의 고장 원인, 누설 전류에 의한 화재 발생 원인 등을 분석할 수 있다.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 일 실시 예에 따른 이상 탐지 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다.
도 2는 본 개시의 일 실시 예에 따른 이상 탐지를 위해 수집되는 데이터를 개략적으로 설명하기 위한 도면이다.
도 3은 본 개시의 일 실시 예에 따른 이상 여부를 탐지하는 아이솔레이션 포레스트 알고리즘을 개략적으로 설명하기 위한 도면이다.
도 4는 본 개시의 다른 실시 예에 따른 이상 탐지 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다.
도 5 내지 도 7은 본 개시의 일 실시 예에 따른 이상 탐지와 다른 이상 탐지를 비교한 도면이다.
도 8은 본 개시의 일 실시 예에 따른 이상 탐지 방법을 설명하기 위한 흐름도이다.
도 9는 본 개시의 다른 실시 예에 따른 이상 탐지 방법을 설명하기 위한 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
이하, 본 발명에 따른 실시 예들을 첨부된 도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 개시의 일 실시 예에 따른 이상 탐지 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이고, 도 2는 본 개시의 일 실시 예에 따른 이상 탐지를 위해 수집되는 데이터를 개략적으로 설명하기 위한 도면이고, 도 3은 본 개시의 일 실시 예에 따른 이상 여부를 탐지하는 아이솔레이션 포레스트 알고리즘을 개략적으로 설명하기 위한 도면이다. 도 1 내지 도 3을 참조하면, 이상 탐지 장치(1)는 데이터 수집부(100), 이상 탐지부(200) 및 데이터 처리부(300)를 포함할 수 있다. 본 실시 예서에서, "부"는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.
데이터 수집부(100)는 이상 탐지를 수행하는 모니터링 대상 기기(미도시)로부터 모니터링 대상 데이터 세트를 수집할 수 있다. 데이터 수집부(100)는 모니터링 대상 기기로부터 모니터링 대상 데이터 세트를 실시간으로 수집할 수 있다. 선택적 실시 예로, 이상 탐지 장치(1)는 모니터링 대상 기기의 내부에 구비될 수 있다.
예를 들어, 모니터링 대상 기기는 배터리 공장에서 미세먼지를 감지하는 미세먼지 감지 센서가 구비된 디바이스일 수 있고, 대상 변수는 도 2에 도시된 바와 같이 미세먼지 감지 센서가 출력하는 진동 데이터일 수 있다. 또한, 모니터링 대상 기기는 전류 감지 센서가 구비된 전력 시스템일 수 있고, 대상 변수는 전류 감지 센서가 출력하는 누설 전류 데이터일 수 있다. 더 나아가 모니터링 대상기기 및 대상 변수는 엔진의 온도, 챔버 내부의 압력, 엔진의 rpm 등 기계의 결함 여부를 판단할 수 있는 기계 및 이들로부터 취득되는 데이터 세트를 포함할 수 있다.
본 개시의 실시예에서 이상 탐지 장치는 전력 시스템이나 가정 또는 기타 조직에서 화재의 실제 원인을 찾는 것과 같은 결함 분석을 위해 설계된 것일 수 있다. 화재 확산의 원인 중 하나는 누설 전류이며, 누설 전류가 너무 높으면 화재 사고가 발생할 수 있다. 그러나, 일반적인 아이솔레이션 포레스트 방식으로 이상 데이터 분석을 한다면 매우 높은 누설 전류뿐만 아니라 매우 낮은 누설 전류도 이상으로 간주 할 것이며, 이는 분석의 정확성을 낮추게 될 것이다.
본 개시의 실시예에 따른 이상 탐지장치에서는 모니터링 대상이 되는 데이터들의 평균 이상인 데이터만 분류하여 아이솔레이션 포레스트를 수행함으로써, 이상 데이터 판단의 정확도를 높일 뿐 아니라 연산 리소스를 절약할 수 있는 유리한 효과를 제공할 수 있다.
이하에서 설명되는 본 개시의 실시예에서 모니터링 대상 데이터는 누설 전류값일 수 있으며, 이외에도 정상적인 값보다 높은 값을 가지는 경우에 문제를 발생시키는 모든 데이터 종류에 대해 본 개시의 이상 탐지 장치가 효과적으로 적용될 수 있다.
이상 탐지부(200)는 데이터 수집부(100)가 수집한 모니터링 대상 변수에 대하여 이상 여부를 탐지하고, 그 결과를 데이터 처리부(300)로 출력할 수 있다. 본 실시 예에서 이상 탐지부(200)는 클리핑부(210), 선택부(220), 이상 스코어 산출부(230), 저장부(240) 및 분류부(250)를 포함할 수 있다.
본 실시 예에서, 클리핑부(210) 및 선택부(220)는 데이터 수집부(100)가 수집한 모니터링 대상 변수로부터 이상 여부를 탐지할 모니터링 대상 데이터들을 선별하는 선별부로서 동작할 수 있다.
선별부는, 모니터링 대상 기기로부터 감지되는 모니터링 대상 데이터 세트들을 수신하고, 수신되는 모니터링 대상 데이터 세트 중 일부만을 샘플링할 수 있다. 샘플링에 적용되는 샘플링 레이트는 모니터링하는 기기 및 모니터링 환경에 따라 다르게 결정될 수 있다.
클리핑부(210)는 샘플링한 모니터링 대상 데이터들에 대한 평균(mean)을 산출할 수 있다. 하기 수학식 1을 통하여 샘플링한 모니터링 대상 데이터들에 대한 평균을 산출할 수 있다.
Figure 112021021846334-pat00001
여기서,
Figure 112021021846334-pat00002
는 평균을 나타내고,
Figure 112021021846334-pat00003
는 샘플링한 모니터링 대상 변수의 데이터 값을 나타낼 수 있다.
선택부(220)는 샘플링한 모니터링 대상 변수의 데이터들로부터 평균 이상에 해당하는 모니터링 대상 데이터를 선택할 수 있다. 본 실시 예에서, 평균 미만에 해당하는 샘플링한 모니터링 대상 데이터는 이상 탐지에서 제외되며, 디폴트 값으로 예를 들어 1을 할당할 수 있다. 여기서, 평균 이상에 해당하는 데이터들은 제1 데이터로 지칭될 수 있고, 평균 미만에 해당하는 데이터들은 제2 데이터로 지칭될 수 있다.
이상 스코어 산출부(230)는 평균 이상의 모니터링 대상 데이터들인 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출할 수 있다.
이상 탐지란 수집되는 데이터에서 다른 패턴을 보이는 데이터인 이상 값을 찾는 것이며, 아이솔레이션 포레스트 기법은 도 3에 도시된 바와 같이, 모니터링 대상이 되도록 선별된 재1 데이터의 세트를 의사결정나무(Decision Tree) 형태로 표현하여, 정상 값을 분리하는 경우에는 의사결정나무를 깊이 방향으로 타고 내려가며, 반대로 이상 값을 분리하는 경우에는 의사결정나무의 상단부에서 분리하게 되는 특성을 이용한다. 이러한 특성을 이용해 아이솔레이션 포레스트는 의사결정나무를 몇 회 타고 내려가서 분리되는가를 기준으로 정상 값과 이상 값을 분리할 수 있게 한다.
이상 값은 특성상 고립에 취약하기 대문에 의사결정나무의 뿌리에 가깝게 고립될 가능성이 높아 상단부에 위치하고, 정상 값은 의사결정나무의 하단부까지 깊게 위치하며, 이러한 경로길이(depth)를 기준으로 이상 값과 정상 값을 분리할 수 있다. 이상 탐지를 위한 공간 분할은 무작위로 생성되며 예상 경로길이(expected depth)를 계산하기 위해 의사결정나무 트리를 반복 생성하여 평균 경로길이(average depth)를 계산하며, 이상 개체의 평균 경로길이는 정상 개체의 평균 경로길이보다 짧게 나타낼 수 있다.
그리고, n 회(예를 들어 100회)의 반복학습을 통해 계산된 개체들의 평균 경로길이들로부터 이상 여부를 판단하기 위해 수학식 2에 나타난 바와 같이 개체 x의 이상 스코어를 산출할 수 있다. 본 실시 예에서 하기의 이상 스코어 산출을 위해 랜덤 이진 트리를 구성하고, 랜덤하게 이진 분할(binary split) 횟수 m을 선택할 수 있다.
Figure 112021021846334-pat00004
수학식 2에서,
Figure 112021021846334-pat00005
Figure 112021021846334-pat00006
의 평균 경로길이를 나타내고,
Figure 112021021846334-pat00007
는 예상 경로길이를 나타낼 수 있다.
예상 경로길이는 다시, 수학식 3과 같이 산출될 수 있다.
Figure 112021021846334-pat00008
Figure 112021021846334-pat00009
수학식 3에서,
Figure 112021021846334-pat00010
은 이진 분할(binary split) 횟수를 나타내고,
Figure 112021021846334-pat00011
은 모니터링 대상인 데이터의 개수를 나타내고,
Figure 112021021846334-pat00012
는 조화수(harmonic number) 추정식이며,
Figure 112021021846334-pat00013
는 Euler-Mascheroni Constant를 나타낼 수 있다.
수학식 2 및 수학식 3으로부터 평균 경로길이
Figure 112021021846334-pat00014
→0이면, 이상 스코어→-1인 조건이 성립하고, 평균 경로길이
Figure 112021021846334-pat00015
Figure 112021021846334-pat00016
이면, 이상 스코어→0인 조건이 성립하고, 평균 경로길이
Figure 112021021846334-pat00017
→예상 경로길이
Figure 112021021846334-pat00018
이면, 이상 스코어→0.5인 조건이 성립할 수 있다. 여기서, 이상 스코어가 -1에 가까우면 해당 개체는 완전한 이상 값으로 평가할 수 있고, 이상 스코어가 0.5 미만인 경우 해당 개체는 정상 값으로 평가할 수 있으며, 이상 스코어가 0.5에 유시하면 해당 개체는 뚜렷한 이상이 없다고 평가할 수 있다.
즉, 이상 스코어 산출부(230)는 의사결정나무 상에서 선별된 모니터링 대상 변수들에 대한 루트 노드로부터 외부 노드까지의 평균 경로길이
Figure 112021021846334-pat00019
를 산출하고, 평균 경로길이를 정규화 하기 위해 의사결정나무 상에서 포함된 노드의 이진 분할(binary split) 횟수를 기반으로 예상 경로길이
Figure 112021021846334-pat00020
를 산출한 후, 평균 경로길이
Figure 112021021846334-pat00021
와 예상경로 길이
Figure 112021021846334-pat00022
를 수학식 2 및 3을 이용하여 이상 스코어를 산출할 수 있다.
또한, 이상 스코어 산출부(230)는 데이터 세트 중 아이솔레이션 포레스트를 적용할 제1 데이터 이외의 데이터인 제2 데이터에 디폴트 스코어, 예를 들어 1을 설정할 수 있다.
저장부(240)는 샘플링한 모니터링 대상 데이터 중 제2 데이터, 즉 디폴트 스코어 1이 할당된 데이터와, 샘플링한 모니터링 대상 데이터 중 제1 데이터, 즉 수학식 2에 의해 각각 이상 스코어가 산출된 데이터들을 저장할 수 있다.
분류부(250)는 저장부(240)에 저장된 이상 스코어를 기반으로 모니터링 대상 데이터들 각각에 대하여 이상으로 탐지된 모니터링 대상 데이터와 정상으로 탐지된 모니터링 대상 데이터를 분류하여 전체 이상 검출 맵을 형성할 수 있다.
즉, 분류부(250)는 제1 데이터에 대하여 산출된 이상 스코어 및 제2 데이터에 대해 설정된 디폴트 스코어를 이용하여 전체 데이터 세트의 전체 이상 스코어를 결정할 수 있다.
분류부(250)는 이상 스코어가 0 미만인 모니터링 대상 데이터를 이상으로 탐지된 모니터링 대상 변수로 분류하고, 이상 스코어가 0 이상인 모니터링 대상 데이터를 정상으로 탐지된 모니터링 대상 데이터로 분류할 수 있다.
데이터 처리부(300)는 분류부(250)로부터 이상으로 탐지된 모니터링 대상 데이터와 정상으로 탐지된 모니터링 대상 데이터를 분류한 결과를 수신하여, 이상으로 탐지된 모니터링 대상 데이터의 인덱스 정보와, 모니터링 대상 변수의 수집 대상인 모니터링 대상 기기의 식별 정보를 포함하는 이상 탐지 결과 정보를 생성할 수 있다. 선택적 실시 예로 이상 탐지 결과 정보는 모니터링 대상 기기로부터 데이터 수집부(100)가 대상 데이터를 수집한 시간 정보를 더 포함할 수 있다. 본 실시 예에서 데이터 수집부(100) 및 데이터 처리부(300)는 이상 탐지부(200) 내부에 구비될 수도 있다.
도 4는 본 개시의 다른 실시 예에 따른 이상 탐지 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다. 이하의 설명에서 도 1 내지 도 3에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 도 4를 참조하면, 이상 탐지 장치(2)는 프로세서(400) 및 메모리(500)를 포함할 수 있다. 이러한 이상 탐지 장치(2)는 독립적인 장치로 구비되어 모니터링 대상 기기와 데이터를 송수신하거나, 모니터링 대상 기기 내부에 구비될 수 있다.
프로세서(400)는 수집한 모니터링 대상 데이터로부터 이상 여부를 탐지할 모니터링 대상 데이터들을 선별할 수 있다.
프로세서(400)는 모니터링 대상 제1 데이터를 선별 시에, 모니터링 대상 기기로부터 감지되는 모니터링 대상 데이터 세트를 수신하고, 수신되는 모니터링 대상 데이터 세트를 샘플링하여 수집하고, 샘플링한 모니터링 대상 데이터들에 대한 평균(mean)을 산출하며, 샘플링한 모니터링 대상 데이터들로부터 평균 이상인 제1 데이터를 선별할 수 있다.
프로세서(400)는 샘플링한 모니터링 대상 데이터들로부터 평균 미만의 데이터인 제2 데이터에 디폴트 스코어 예를 들어, 1을 할당할 수 있다.
프로세서(400)는 선별된 평균 이상의 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출할 수 있다.
프로세서(400)는 이상 탐지 알고리즘으로, 의사결정나무를 기반으로 하여 이상 데이터를 고립시켜 이상 여부를 탐지하는 아이솔레이션 포레스트(isolation forest) 알고리즘을 이용할 수 있다.
프로세서(400)는 이상 스코어를 산출 시에, 의사결정나무 상에서 선별된 제1 데이터에 대한 루트 노드로부터 외부 노드까지의 평균 경로길이(average depth)를 산출할 수 있다. 프로세서(400)는 평균 경로길이를 정규화 하기 위해 의사결정나무 상에서 포함된 노드의 이진 분할(binary split) 횟수를 기반으로 예상 경로길이(expected depth)를 산출할 수 있다. 프로세서(400)는 평균 경로길이와 예상경로 길이를 이용하여 수학식 2 및 수학식 3으로부터 선별된 제1 데이터 각각에 대한 이상 스코어를 산출할 수 있다.
프로세서(400)는 평균 미만의 제2 데이터에 디폴트 스코어를 할당한 결과와, 평균 이상의 제1 데이터에 대한 이상 스코어 산출 결과를 저장할 수 있다.
프로세서(400)는 이상 스코어를 기반으로 모니터링 대상 데이터들 각각에 대하여 이상으로 탐지된 모니터링 대상 데이터와 정상으로 탐지된 모니터링 대상 데이터를 분류하여 전체 이상 검출 맵을 형성할 수 있다.
즉, 프로세서(400)는 제1 데이터에 대하여 산출된 이상 스코어 및 제2 데이터에 대해 설정된 디폴트 스코어를 이용하여 전체 데이터 세트의 전체 이상 스코어를 결정할 수 있다.
프로세서(400)는 이상 스코어가 0 미만인 모니터링 대상 변수를 이상으로 탐지된 모니터링 대상 데이터로 분류하고, 이상 스코어가 0 이상인 모니터링 대상 데이터를 정상으로 탐지된 모니터링 대상 데이터로 분류할 수 있다.
프로세서(400)는 이상으로 탐지된 모니터링 대상 데이터와 정상으로 탐지된 모니터링 대상 데이터를 분류한 결과를 수신하여, 이상으로 탐지된 모니터링 대상 데이터의 인덱스 정보와, 모니터링 대상 데이터의 수집 대상인 모니터링 대상 기기의 식별 정보를 포함하는 이상 탐지 결과 정보를 생성할 수 있다.
본 실시 예에서, 프로세서(400)는 이상 탐지 장치(2) 전체의 동작을 제어할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령어로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
메모리(500)는 프로세서(400)와 동작 가능하게 연결되고, 프로세서(400)에서 수행되는 동작과 연관하여 적어도 하나의 코드를 저장할 수 있다.
또한, 메모리(500)는 프로세서(400)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 여기서, 메모리(500)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 이러한 메모리(500)는 내장 메모리 및/또는 외장 메모리를 포함할 수 있으며, DRAM, SRAM, 또는 SDRAM 등과 같은 휘발성 메모리, OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND 플래시 메모리, 또는 NOR 플래시 메모리 등과 같은 비휘발성 메모리, SSD, CF(compact flash) 카드, SD 카드, Micro-SD 카드, Mini-SD 카드, Xd 카드, 또는 메모리 스틱(memory stick) 등과 같은 플래시 드라이브, 또는 HDD와 같은 저장 장치를 포함할 수 있다.
도 5는 본 개시의 일 실시 예에 따른 이상 탐지와 다른 이상 탐지를 비교한 도면이다. 도 5를 참조하면, 도 5a는 오리지널(original) 아이솔레이션 포레스트 알고리즘에, 모니터링 대상 데이터들을 입력하여 이상 탐지를 수행한 결과를 도시하고 있다.
도 5b는 본 실시 예에 평균(mean) 아이솔레이션 포레스트 알고리즘에, 모니터링 대상 데이터들에 대한 평균(mean)을 산출하고, 평균 이상의 모니터링 대상 데이터들을 입력하여 이상 탐지를 수행한 결과를 도시하고 있다.
도 5c는 미디언(median) 아이솔레이션 포레스트 알고리즘에, 모니터링 대상 데이터들에 대한 미디언 값을 산출하고, 미디언 값 이상의 모니터링 대상 데이터들을 입력하여 이상 탐지를 수행한 결과를 도시하고 있다. 통계 및 확률 이론에서 미디언 값은 데이터 샘플, 모집단 또는 확률 분포의 하위 절반에서 상위 절반을 분리한 값을 나타낼 수 있다.
도 5d는 모드(mode) 아이솔레이션 포레스트 알고리즘에, 모니터링 대상 데이터들 중 가장 자주 나타나는 값(mode 값)들을 입력하여 이상 탐지를 수행한 결과를 도시하고 있다. 도 5c의 미디언 아이솔레이션 포레스트 알고리즘의 경우, mode 값보다 더 큰 값을 갖는 모니터링 대상 데이터가 아이솔레이션 포레스트 알고리즘에 입력될 수 있다.
도 5를 통하여 본 실시 예에 따른 평균(mean) 아이솔레이션 포레스트 알고리즘을 이용한 이상 탐지 결과의 정확도가 가장 높은 것을 알 수 있다.
도 6은 본 개시의 다른 실시 예에 따른 이상 탐지와 다른 이상 탐지를 비교한 테이블이다. 도 6을 참조하면, 오리지널(original) 아이솔레이션 포레스트 알고리즘을 적용하여, 모니터링 대상 데이터 29114개를 입력으로 이상 탐지 결과의 정확도를 산출한 결과, 정확도가 58%임을 도시하고 있다.
또한 평균(mean) 아이솔레이션 포레스트 알고리즘을 적용하여, 모니터링 대상 데이터 29114개의 평균을 산출하고 평균 이상의 모니터링 대상 데이터 4356개를 입력으로 이상 탐지 결과의 정확도를 산출한 결과, 정확도가 100%임을 도시하고 있다.
또한, 미디언(median) 아이솔레이션 포레스트 알고리즘에, 모니터링 대상 데이터 29114개 중 미디언 값 이상의 모니터링 대상 데이터 14548개를 입력으로 이상 탐지 결과의 정확도를 산출한 결과, 정확도가 63%임을 도시하고 있다.
또한, 모드(mode) 아이솔레이션 포레스트 알고리즘에, 모니터링 대상 데이터 29114개 중 가장 자주 나타나는 모니터링 대상 데이터 18095개를 입력으로 이상 탐지 결과의 정확도를 산출한 결과, 정확도가 48%임을 도시하고 있다.
도 6으로부터 정확도(precision)는 참 포지티브(true positive)를 참 포지티브(true positive) 및 거짓 포지티브(false positive)의 합으로 나눈 결과를 나타낼 수 있다.
도 6을 통하여 실시 예에 따른 평균(mean) 아이솔레이션 포레스트 알고리즘을 이용한 이상 탐지 결과의 정확도가 가장 높은 것을 알 수 있다.
도 7은 본 개시의 또 다른 실시 예에 따른 이상 탐지와 다른 이상 탐지를 비교한 그래프이다. 도 7a는 도 6에 도시된 이상 탐지 결과의 정확도를 그래프화 한 것으로, 본 실시 예에 따른 평균(mean) 아이솔레이션 포레스트 알고리즘을 이용한 이상 탐지 결과의 정확도가 가장 높은 것을 알 수 있다.
도 7b은 도 6에 도시된 시간-복잡도를 그래프화 한 것으로, 입력 개수가 가장 많은 오리지널(original) 아이솔레이션 포레스트 알고리즘이 시간-복잡도가 가장 크고, 입력 개수가 가장 작은 평균(mean) 아이솔레이션 포레스트 알고리즘의 시간-복잡도가 가장 낮음을 알 수 있다.
도 8은 본 실시 예에 따른 이상 탐지 방법을 설명하기 위한 흐름도이다. 이하의 설명에서 도 1 내지 도 7에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 본 실시 예에서, 이상 탐지 방법은 도 1의 이상 탐지 장치(1) 또는 도 4의 프로세서(400)에 의해 수행될 수 있으며, 설명의 편의상 이상 탐지 장치(1)에서 수행한다고 가정하고 설명하기로 한다.
도 8을 참조하면, S810단계에서, 이상 탐지 장치(1)는 수집한 모니터링 대상 데이터 세트로부터 이상 여부를 탐지할 모니터링 대상 데이터들을 선별할 수 있다.
이상 탐지 장치(1)는 모니터링 대상 변수를 선별 시에, 모니터링 대상 기기로부터 감지되는 모니터링 대상 데이터 세트들을 수신하고, 수신되는 모니터링 대상 데이터들을 샘플링하여 수집하고, 샘플링한 모니터링 대상 변수들에 대한 평균(mean)을 산출하며, 샘플링한 모니터링 대상 데이터들로부터 평균 이상의 제1 데이터를 선별할 수 있다. 이상 탐지 장치(1)는 샘플링한 모니터링 대상 데이터들로부터 평균 미만의 제2 데이터에 디폴트 스코어 예를 들어, 1를 할당할 수 있다.
S820단계에서, 이상 탐지 장치(1)는 선별된 평균 이상의 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출할 수 있다.
이상 탐지 장치(1)는 이상 탐지 알고리즘으로, 의사결정나무를 기반으로 하여 이상 데이터를 고립시켜 이상 여부를 탐지하는 아이솔레이션 포레스트(isolation forest) 알고리즘을 이용할 수 있다. 이상 탐지 장치(1)는 이상 스코어를 산출 시에, 의사결정나무 상에서 선별된 모니터링 대상 데이터들에 대한 루트 노드로부터 외부 노드까지의 평균 경로길이(average depth)를 산출할 수 있다. 이상 탐지 장치(1)는 평균 경로길이를 정규화 하기 위해 의사결정나무 상에서 포함된 노드의 이진 분할(binary split) 횟수를 기반으로 예상 경로길이(expected depth)를 산출할 수 있다. 이상 탐지 장치(1)는 평균 경로길이와 예상경로 길이를 이용하여 수학식 2 및 수학식 3으로부터 선별된 모니터링 대상 데이터들 각각에 대한 이상 스코어를 산출할 수 있다. 선택적 실시 예로, 이상 탐지 장치(1)는 평균 미만의 모니터링 대상 데이터에 디폴트 이상 스코어를 할당한 결과와, 평균 이상의 모니터링 대상 데이터에 대한 이상 스코어 산출 결과를 저장할 수 있다.
S830단계에서, 이상 탐지 장치(1)는 이상 스코어를 기반으로 선별된 모니터링 대상 데이터들 각각에 대하여 이상으로 탐지된 모니터링 대상 데이터와 정상으로 탐지된 모니터링 대상 데이터를 분류할 수 있다.
이상 탐지 장치(1)는 이상 스코어가 0 미만인 모니터링 대상 데이터를 이상으로 탐지된 모니터링 대상 데이터로 분류하고, 이상 스코어가 0 이상인 모니터링 대상 데이터를 정상으로 탐지된 모니터링 대상 데이터로 분류할 수 있다.
선택적 실시 예로, 이상 탐지 장치(1)는 이상으로 탐지된 모니터링 대상 데이터와 정상으로 탐지된 모니터링 대상 데이터를 분류한 결과를 수신하여, 이상으로 탐지된 모니터링 대상 변수의 인덱스 정보와, 모니터링 대상 변수의 수집 대상인 모니터링 대상 기기의 식별 정보를 포함하는 이상 탐지 결과 정보를 생성할 수 있다.
도 9는 본 개시의 다른 실시 예에 따른 이상 탐지 방법을 설명하기 위한 흐름도이다.
본 개시의 일 실시예에 따른 이상 탐지 장치는 모니터링 대상 기기(예를 들어, 전력 시스템)로부터 모니터링 대상 데이터(예를 들어, 누설 전류값)의 세트를 수집할 수 있다(S910).
이상 탐지 장치는 수집된 데이터 세트 내의 데이터 전체를 대상으로 이하의 단계를 수행할 수도 있지만, 현실적으로는 모니터링 대상 데이터 세트 내의 데이터를 샘플링하여 이상 여부를 탐지할 데이터들을 선별할 수 있다(S920).
샘플링된 데이터들에 대해서 평균 값을 구할 수 있고, 샘플링된 데이터들 중 평균 값 이상의 데이터들은 제1 데이터로 분류하고, 샘플링된 데이터들 중 평균 미만의 데이터들은 제2 데이터로 분류될 수 있다(S930).
제1 데이터에 대해서는 상술된 아이솔레이션 포레스트가 수행될 수 있고, 제2 데이터에 대해서는 아이솔레이션 포레스트와 같은 이상 데이터 탐지 알고리즘이 수행되지 않고 단순하게 디폴트 스코어가 설정될 수 있다(S940, S950).
이러한 방식에 따라 전체 데이터에 대해 아이솔레이션 포레스트를 수행하는 경우에 비해 연산 리소스를 절감할 수 있으며, 누설 전류값과 같이 높은 값이 문제가 되는 경우에는 보다 정확하게 이상 데이터 값을 판별할 수 있다.
제1 데이터에 대해 아이솔레이션 포레스트가 실행되면 제1 데이터에 대해 이상 스코어를 산출할 수 있다(S960). 이상 스코어를 산출하는 방식은 위의 수학식 2 및 3 등에서 보다 상세하게 설명되었다.
이상 스코어가 각각 산출된 제1 데이터와 단순하게 디폴트 스코어가 설정된 제2 데이터가 모두 저장부에 저장될 수 있다(S970).
분류부에서는 제1 데이터에 대한 이상 스코어 및 제2 데이터에 대한 디폴트 스코어를 이용하여 샘플링된 데이터들 또는 전체 데이터 세트의 이상 스코어를 결정할 수 있다(S980).
전체 이상 스코어 결정단계에서 이상 스코어가 0 미만인 경우에는 모니터링 대상 기기가 이상 컨디션인 것으로 판단하고, 이상 스코어가 0 이상인 경우에는 모니터링 대상 기기가 정상 컨디션인 것으로 판단할 수 있다(S991, S993).
이상 설명된 본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다.
본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
1,2: 이상 탐지 장치
100: 데이터 수집부
200: 이상 탐지부
300: 데이터 처리부
400: 프로세서
500: 메모리

Claims (17)

  1. 모니터링 대상 데이터에 대한 이상(anomaly) 여부를 탐지하는 이상 탐지 방법으로서,
    수집한 모니터링 대상 데이터 세트로부터 이상 여부를 탐지할 제1 데이터를 선별하는 단계;
    선별된 상기 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출하는 단계;
    상기 데이터 세트 중 선별된 상기 제1 데이터 이외의 데이터인 제2 데이터에 디폴트 스코어를 설정하는 단계;
    상기 제1 데이터에 대한 이상 스코어 및 상기 제2 데이터에 대한 디폴트 스코어를 이용하여 상기 데이터 세트의 전체 이상 스코어를 결정하는 단계; 및
    상기 전체 이상 스코어에 따라 상기 데이터 세트의 이상 여부를 판단하는 단계를 포함하는,
    이상 탐지 방법.
  2. 제 1 항에 있어서,
    상기 제1 데이터를 선별하는 단계는,
    모니터링 대상 기기로부터 감지되는 모니터링 대상 데이터 세트를 수신하는 단계;
    수신되는 상기 모니터링 대상 데이터 세트를 샘플링하여 모니터링 대상 데이터들을 수집하는 단계;
    샘플링한 상기 모니터링 대상 데이터들의 값에 대한 평균(mean)을 산출하는 단계; 및
    상기 샘플링한 모니터링 대상 데이터들로부터 상기 평균의 이상에 해당하는 상기 제1 데이터를 선별하는 단계를 포함하는,
    이상 탐지 방법.
  3. 제 2 항에 있어서,
    상기 디폴트 스코어를 설정하는 단계는,
    상기 샘플링한 모니터링 대상 데이터들로부터 상기 평균의 미만에 해당하는 데이터를 상기 제2 데이터로 선별하는 단계; 및
    상기 제2 데이터에 디폴트 스코어로 1을 할당하는 단계를 포함하는,
    이상 탐지 방법.
  4. 제 1 항에 있어서,
    상기 이상 스코어를 산출하는 단계에서,
    상기 이상 탐지 알고리즘은,
    의사결정나무를 기반으로 하여 이상 데이터를 고립시켜 이상 여부를 탐지하는 아이솔레이션 포레스트(isolation forest) 알고리즘을 포함하는,
    이상 탐지 방법.
  5. 제 4 항에 있어서,
    상기 이상 스코어를 산출하는 단계는,
    상기 의사결정나무 상에서 선별된 상기 제1 데이터에 대한 루트 노드로부터 외부 노드까지의 평균 경로길이(average depth)를 산출하는 단계;
    상기 평균 경로길이를 정규화 하기 위해 상기 의사결정나무 상에서 포함된 노드의 이진 분할(binary split) 횟수를 기반으로 예상 경로길이(expected depth)를 산출하는 단계; 및
    상기 평균 경로길이와 상기 예상 경로길이를 이용하여 상기 제1 데이터 각각에 대한 이상 스코어를 산출하는 단계를 포함하는,
    이상 탐지 방법.
  6. 제 3 항에 있어서,
    상기 전체 이상 스코어를 결정하는 단계는,
    상기 제2 데이터에 디폴트 스코어를 할당한 결과와, 상기 제1 데이터에 대한 이상 스코어 산출 결과를 저장하는 단계를 포함하는,
    이상 탐지 방법.
  7. 제 1 항에 있어서,
    상기 전체 이상 스코어를 결정하는 단계는,
    상기 제1 데이터 중 이상으로 탐지된 데이터와 정상으로 탐지된 데이터를 분류한 결과를 수신하여, 상기 이상으로 탐지된 데이터의 인덱스 정보와, 상기 모니터링 대상 데이터 세트의 수집 대상인 모니터링 대상 기기의 식별 정보를 포함하는 이상 탐지 결과 정보를 생성하는 단계를 포함하는,
    이상 탐지 방법.
  8. 제 2 항에 있어서,
    상기 모니터링 대상 기기는 전력 시스템이고,
    상기 모니터링 대상 데이터의 종류는 누설 전류값인,
    이상 탐지 방법.
  9. 컴퓨터를 이용하여 제 1 항 내지 제 8 항의 방법 중 어느 한 항의 방법을 실행시키기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 판독 가능한 기록매체.
  10. 모니터링 대상 데이터에 대한 이상(anomaly) 여부를 탐지하는 이상 탐지 장치로서,
    프로세서; 및
    상기 프로세서와 동작 가능하게 연결되고 상기 프로세서에서 수행되는 적어도 하나의 코드를 저장하는 메모리를 포함하고,
    상기 메모리는 상기 프로세서를 통해 실행될 때, 상기 프로세서가 수집한 모니터링 대상 데이터 세트로부터 이상 여부를 탐지할 제1 데이터를 선별하고,
    선별된 상기 제1 데이터를 입력으로 이상 탐지 알고리즘을 수행하여, 이상 스코어(anomaly score)를 산출하고,
    상기 데이터 세트 중 선별된 상기 제1 데이터 이외의 데이터인 제2 데이터에 디폴트 스코어를 설정하고,
    상기 제1 데이터에 대한 이상 스코어 및 상기 제2 데이터에 대한 디폴트 스코어를 이용하여 상기 데이터 세트의 전체 이상 스코어를 결정하고,
    상기 전체 이상 스코어에 따라 상기 데이터 세트의 이상 여부를 판단하도록 야기하는 코드를 저장하는,
    이상 탐지 장치.
  11. 제 10 항에 있어서,
    상기 메모리는 상기 프로세서로 하여금,
    상기 제1 데이터를 선별 시에, 모니터링 대상 기기로부터 감지되는 모니터링 대상 데이터 세트를 수신하고, 수신되는 상기 모니터링 대상 데이터 세트를 샘플링하여 모니터링 대상 데이터들을 수집하고, 샘플링한 상기 모니터링 대상 데이터들의 값에 대한 평균(mean)을 산출하며, 상기 샘플링한 모니터링 대상 데이터들로부터 상기 평균의 이상에 해당하는 상기 제1 데이터를 선별하도록 야기하는 코드를 저장하는,
    이상 탐지 장치.
  12. 제 11 항에 있어서,
    상기 메모리는 상기 프로세서로 하여금,
    상기 디폴트 스코어를 설정 시에, 상기 샘플링한 모니터링 대상 데이터들로부터 상기 평균의 미만에 해당하는 데이터를 상기 제2 데이터로 선별하고, 상기 제2 데이터에 디폴트 스코어로 1을 할당하도록 야기하는 코드를 더 저장하는,
    이상 탐지 장치.
  13. 제 10 항에 있어서,
    상기 이상 탐지 알고리즘은, 의사결정나무를 기반으로 하여 이상 데이터를 고립시켜 이상 여부를 탐지하는 아이솔레이션 포레스트(isolation forest) 알고리즘을 포함하는,
    이상 탐지 장치.
  14. 제 13 항에 있어서,
    상기 메모리는 상기 프로세서로 하여금,
    상기 이상 스코어를 산출 시에, 상기 의사결정나무 상에서 선별된 상기 제1 데이터에 대한 루트 노드로부터 외부 노드까지의 평균 경로길이(average depth)를 산출하고,
    상기 평균 경로길이를 정규화 하기 위해 상기 의사결정나무 상에서 포함된 노드의 이진 분할(binary split) 횟수를 기반으로 예상 경로길이(expected depth)를 산출하며,
    상기 평균 경로길이와 상기 예상 경로길이를 이용하여 상기 제1 데이터 각각에 대한 이상 스코어를 산출하도록 야기하는 코드를 저장하는,
    이상 탐지 장치.
  15. 제 12 항에 있어서,
    상기 메모리는 상기 프로세서로 하여금,
    상기 전체 이상 스코어를 결정 시에, 상기 제2 데이터에 디폴트 이상 스코어를 할당한 결과와, 상기 제1 데이터에 대한 이상 스코어 산출 결과를 저장하도록 야기하는 코드를 더 저장하는,
    이상 탐지 장치.
  16. 제 10 항에 있어서,
    상기 메모리는 상기 프로세서로 하여금,
    상기 이상 스코어를 산출 시에, 상기 제1 데이터 중 상기 이상으로 탐지된 데이터와 정상으로 탐지된 데이터를 분류한 결과를 수신하여, 상기 이상으로 탐지된 데이터의 인덱스 정보와, 상기 모니터링 대상 데이터 세트의 수집 대상인 모니터링 대상 기기의 식별 정보를 포함하는 이상 탐지 결과 정보를 생성하도록 야기하는 코드를 더 저장하는,
    이상 탐지 장치.
  17. 제 11 항에 있어서,
    상기 모니터링 대상 기기는 전력 시스템이고,
    상기 모니터링 대상 데이터의 종류는 누설 전류값인,
    이상 탐지 장치.
KR1020210024189A 2021-02-23 2021-02-23 이상 탐지 방법 및 이상 탐지 장치 KR102299660B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210024189A KR102299660B1 (ko) 2021-02-23 2021-02-23 이상 탐지 방법 및 이상 탐지 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210024189A KR102299660B1 (ko) 2021-02-23 2021-02-23 이상 탐지 방법 및 이상 탐지 장치

Publications (2)

Publication Number Publication Date
KR102299660B1 true KR102299660B1 (ko) 2021-09-08
KR102299660B9 KR102299660B9 (ko) 2021-10-27

Family

ID=77787766

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210024189A KR102299660B1 (ko) 2021-02-23 2021-02-23 이상 탐지 방법 및 이상 탐지 장치

Country Status (1)

Country Link
KR (1) KR102299660B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115098287A (zh) * 2022-06-22 2022-09-23 国网智能电网研究院有限公司 传感数据的异常检测方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014529778A (ja) * 2011-07-29 2014-11-13 パナソニック株式会社 異常検出による現場業務を向上させるためのシステム及び方法
KR20150029483A (ko) * 2013-09-10 2015-03-18 이화여자대학교 산학협력단 데이터 마이닝을 이용한 공격 탐지 장치 및 방법
KR20180097895A (ko) 2017-02-24 2018-09-03 (주)위세아이텍 이상탐지시스템 내의 데이터에 대한 이상을 탐지하는 장치 및 그 방법
CN110942137A (zh) * 2019-10-18 2020-03-31 云南电网有限责任公司信息中心 一种基于深度学习的电网信息运维监控方法
KR20200071646A (ko) * 2019-05-28 2020-06-19 넷마블 주식회사 이상 로그 탐지를 위한 탐지 장치 및 이의 동작 방법과 트레이닝 장치 및 이의 동작 방법
JP2020098373A (ja) * 2018-12-17 2020-06-25 富士通株式会社 異常検出装置、異常検出プログラム、及び、異常検出方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014529778A (ja) * 2011-07-29 2014-11-13 パナソニック株式会社 異常検出による現場業務を向上させるためのシステム及び方法
KR20150029483A (ko) * 2013-09-10 2015-03-18 이화여자대학교 산학협력단 데이터 마이닝을 이용한 공격 탐지 장치 및 방법
KR20180097895A (ko) 2017-02-24 2018-09-03 (주)위세아이텍 이상탐지시스템 내의 데이터에 대한 이상을 탐지하는 장치 및 그 방법
JP2020098373A (ja) * 2018-12-17 2020-06-25 富士通株式会社 異常検出装置、異常検出プログラム、及び、異常検出方法
KR20200071646A (ko) * 2019-05-28 2020-06-19 넷마블 주식회사 이상 로그 탐지를 위한 탐지 장치 및 이의 동작 방법과 트레이닝 장치 및 이의 동작 방법
CN110942137A (zh) * 2019-10-18 2020-03-31 云南电网有限责任公司信息中心 一种基于深度学习的电网信息运维监控方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115098287A (zh) * 2022-06-22 2022-09-23 国网智能电网研究院有限公司 传感数据的异常检测方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
KR102299660B9 (ko) 2021-10-27

Similar Documents

Publication Publication Date Title
KR102471871B1 (ko) 시계열 데이터 세그먼테이션 방법 및 그 장치
JP6106340B2 (ja) ログ分析装置、攻撃検知装置、攻撃検知方法およびプログラム
JP6285640B2 (ja) 自動及び手動欠陥分類の統合
JP2018128468A (ja) 自動欠陥分類のための未知欠陥除去の最適化
JP6183450B2 (ja) システム分析装置、及び、システム分析方法
KR102472637B1 (ko) 시계열 데이터 분석 방법, 주영향 변수 결정 방법 및 그 방법들을 지원하는 장치
CN108647106B (zh) 应用异常处理方法、存储介质及计算机设备
JP2019020124A (ja) 異常検出プログラム、異常検出方法、及び情報処理装置
KR102299660B1 (ko) 이상 탐지 방법 및 이상 탐지 장치
US9557698B2 (en) Information processing apparatus, information processing method, and computer-readable storage medium for detecting an abnormity from sound data
KR102247179B1 (ko) 이상행위탐지모델의 비지도 학습을 위한 xai 기반 정상학습데이터 생성방법 및 장치
KR102192196B1 (ko) Ai 기반 머신러닝 교차 검증 기법을 활용한 악성코드 탐지 장치 및 방법
EP3905084A1 (en) Method and device for detecting malware
Megantara et al. Feature importance ranking for increasing performance of intrusion detection system
KR102106307B1 (ko) 에너지 데이터 처리 방법 및 그 장치
CN109286622B (zh) 一种基于学习规则集的网络入侵检测方法
KR20160120361A (ko) 먼지의 종류를 판별하는 방법 및 장치
CN111259869A (zh) 一种非侵入式电气集群负载故障识别方法
CN111368864A (zh) 识别方法、可用性评估方法及装置、电子设备、存储介质
JP7494917B2 (ja) プログラム解析装置、プログラム解析方法、及びプログラム
US20170303014A1 (en) System for providing functionality based on sensor data
KR20230014247A (ko) 로그 분석을 통한 비정상 행위 탐지 방법 및 그 장치
CN111127814A (zh) 火警识别方法以及相关装置
JP2018022305A (ja) 境界値特定プログラム、境界値特定方法および境界値特定装置
Kumar et al. Analysis of machine learning techniques used in malware classification in cloud computing environment

Legal Events

Date Code Title Description
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]