KR20230114354A - 오토인코더에 기반한 이상 탐지를 위한 방법 및 장치 - Google Patents

오토인코더에 기반한 이상 탐지를 위한 방법 및 장치 Download PDF

Info

Publication number
KR20230114354A
KR20230114354A KR1020220010384A KR20220010384A KR20230114354A KR 20230114354 A KR20230114354 A KR 20230114354A KR 1020220010384 A KR1020220010384 A KR 1020220010384A KR 20220010384 A KR20220010384 A KR 20220010384A KR 20230114354 A KR20230114354 A KR 20230114354A
Authority
KR
South Korea
Prior art keywords
data
abnormal state
score
threshold
autoencoder
Prior art date
Application number
KR1020220010384A
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 KR1020220010384A priority Critical patent/KR20230114354A/ko
Publication of KR20230114354A publication Critical patent/KR20230114354A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 이상 탐지(anomaly detection)를 위한 방법 및 장치를 제공할 수 있다. 이상 상태를 탐지하기 위한 방법은, 오토인코더에 기반한 인공지능 모델을 이용하여 이상 상태에 관련된 점수를 결정하는 단계, 상기 점수 및 과거의 점수들 기반하여 상기 이상 상태 여부를 판단하는 단계, 상기 점수 및 과거의 점수들 기반하여 상기 이상 상태의 판단에 관련된 임계치를 조절하는 단계를 포함할 수 있다.

Description

오토인코더에 기반한 이상 탐지를 위한 방법 및 장치{METHOD AND APPARATUS FOR DETECTING ANOMALY BAESED ON AUTOENCODER}
본 발명은 이상 탐지(anomaly detection)를 위한 방법 및 장치를 제공할 수 있다.
구체적으로, 본 발명은 오토인코더(autoencoder)를 이용하여 이상 상태를 탐지하기 위한 방법 및 장치를 제공할 수 있다.
다양한 기술들의 발전에 의해, 인류는 기계 장치, 전자 장치 등 수 많은 장치들의 도움을 받으며 생활을 영위하고 있다. 인간에 의해 개발된 시스템들은 일정한 규칙 내지 알고리즘에 따라 동작하며, 설계에 따른 가치를 제공한다. 하지만, 여러가지 요인에 따라, 시스템들은 설계 의도와 다른 결과를 도출하기도 하며, 이러한 상황은 이상 상태(abnormal status)이라 지칭된다.
시스템의 용도나 목적에 따라 그 정도는 다를 수 있으나, 이상 상태의 발생은 일반적으로 사용자에게 불이익을 제공한다. 따라서, 시스템의 동작 중 이상 상태의 발생을 조기에 인지하고, 이상 상태에 대처하는 것이 요구된다. 이상 상태를 탐지하는 동작은 다양한 시점, 다양한 지점에서, 다양한 방식으로 수행될 수 있다. 따라서, 적용되는 시스템이나 시나리오에 맞게 효율적으로 이상 상태를 탐지하는 기법이 설계 및 적용되는 것이 필요하다.
본 발명은 기계 학습 모델인 오토인코더(autoencoder)를 기반으로 이상 상태를 탐지하기 위한 방법 및 장치를 제공하는데 목적이 있다.
본 발명은 이상 상태 데이터가 없는 환경에서 적절하게 설정된 임계치를 이용하여 이상 상태를 판단하기 위한 방법 및 장치를 제공하는데 목적이 있다.
본 발명의 일 실시예에 따르면, 이상 상태를 탐지하기 위한 방법은, 오토인코더에 기반한 인공지능 모델을 이용하여 이상 상태에 관련된 점수를 결정하는 단계, 상기 점수 및 과거의 점수들 기반하여 상기 이상 상태 여부를 판단하는 단계, 상기 점수 및 과거의 점수들 기반하여 상기 이상 상태의 판단에 관련된 임계치를 조절하는 단계를 포함할 수 있다.
본 발명에 따르면, 기계 학습 모델인 오토인코더(autoencoder)를 기반으로 이상 상태를 효과적으로 탐지하기 위한 방법 및 장치를 제공할 수 있다.
본 발명에 따르면, 이상 상태 데이터가 없는 환경에서 적절하게 설정된 임계치를 이용하여 이상 상태를 판단하기 위한 방법 및 장치를 제공할 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 이상 탐지를 지원하는 시스템을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 장치의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 오토인코더(autoencoder)의 예를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따라 이상 상태를 탐지 및 파라미터를 조절하기 위한 방법을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따라 이상 상태를 탐지하기 위한 방법을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 데이터 셋들의 예를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따라 파라미터를 조절하기 위한 방법을 나타낸 도면이다.
도 8는 본 발명의 일 실시예에 따라 이상 상태를 탐지하기 위한 보다 상세한 방법을 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 이상 탐지 기술의 적용 예를 나타낸 도면이다.
이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 개시의 실시예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시예에서의 제1 구성요소는 다른 실시예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시예에서의 제2 구성요소를 다른 실시예에서 제1 구성요소라고 칭할 수도 있다.
본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시예도 본 개시의 범위에 포함된다.
본 개시에 있어서, 다양한 실시예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들을 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시예도 본 개시의 범위에 포함된다. 또한, 다양한 실시예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시예도 본 개시의 범위에 포함된다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 제시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
본 발명은 이상 탐지(anomaly detection)를 위한 것으로, 구체적으로, 오토인코더(autoencoder)를 이용하여 이상 상태를 탐지하는 기술에 관한 것이다. 특히, 본 발명은 이상 상태를 탐지함에 있어서 사용되는 파라미터를 적응적으로 조절하기 위한 기술을 제안한다.
도 1은 본 발명의 일 실시예에 따른 이상 탐지를 지원하는 시스템을 나타낸 도면이다.
도 1을 참고하면, 이상 탐지를 지원하는 시스템은 대상 시스템(110), 데이터 수집 장치(120), 이상 탐지 장치(130)를 포함한다.
대상 시스템(110)은 주어진 목적을 달성하기 위해 운용되는 엔티티(entity)들의 집합이다. 경우에 따라, 대상 시스템(110)은 하나의 장치이거나, 복수의 장치들의 집합일 수 있다. 대상 시스템(110)의 운용 및 동작 중 다양한 상태들이 관찰될 수 있으며, 상태들은 정상 상태 및 이상 상태로 분류될 수 있다.
데이터 수집 장치(120)는 대상 시스템(110)에서 발생할 수 있는 이상 상태를 탐지하기 위해 필요한 데이터를 수집한다. 데이터 수집 장치(120)는 대상 시스템(110)의 운용 목적을 위해 사용되는 데이터를 수집하거나, 또는 이상 상태 탐지를 위한 관측에 의해 생성되는 데이터를 수집할 수 있다. 다른 실시 예에 따라, 데이터 수집 장치(120)는 대상 시스템(110)의 일부일 수 있다.
이상 탐지 장치(130)는 대상 시스템(110)에서 이상 상태가 발생하는지 여부를 판단한다. 이를 위해, 이상 탐지 장치(130)는 데이터 수집 장치(120)로부터 제공되는 데이터를 이용한다. 추가적으로, 이상 상태를 탐지한 경우, 이상 탐지 장치(130)는 대상 시스템(110) 또는 제3의 엔티티에게 이상 상태의 발생을 통지할 수 있다.
도 2는 본 발명의 일 실시예에 따른 장치의 구성을 나타낸 도면이다. 도 2의 장치는 도 2의 구성은 도 1의 데이터 수집 장치(120) 또는 이상 탐지 장치(130)에 대한 구성일 수 있다.
도 2를 참고하면, 장치는 메모리(210), 프로세서(220) 및 송수신부(230) 중 적어도 어느 하나를 더 포함할 수 있다. 이때, 일 예로, 메모리(210)는 상술한 유저 정책 정보나 제한 조건 정보 등을 저장할 수 있다. 또한, 메모리(210)는 그 밖에 관련 정보들을 저장할 수 있으며, 상술한 실시예로 한정되지 않는다. 송수신부(230)는 데이터나 정보를 송수신하기 위한 구성일 수 있으며, 상술한 실시예로 한정되지 않는다. 또한, 프로세서(220)는 상술한 바에 기초하여 메모리(210)에 포함된 정보들을 제어할 수 있다. 또한, 프로세서(220)는 송수신부(1530)를 통해 다른 장치로부터 데이터를 수신할 수 있으며, 상술한 실시예로 한정되지 않는다.
본 발명의 실시예에 따른 이상 탐지는 오토인코더(autoencoder)에 기반할 수 있다. 오토인코더 기반의 이상 상태 탐지 기술은, 정상 상황 데이터는 풍부하지만 이상상 황 데이터가 상대적으로 매우 적은 환경에서 사용하기 유용한 기계 학습 방법이다. 오토인코더는 입력을 그대로 복원하여 출력하는 것을 목적으로 하는 모델로서, 입력 샘플과 출력 샘플의 복원 오차(reconstruction error)를 최소화하도록 학습된다.
도 3은 본 발명의 일 실시예에 따른 오토인코더(autoencoder)의 예를 나타낸 도면이다. 도 3을 참고하면, 오토인코더는 인코더(encoder)(310), 코드층(code layer)(320), 디코더(decoder)(330)을 포함한다. 인코더(310)로 입력된 입력 샘플은 코드로 변환하고, 디코더(330)에 의해 다시 출력 샘플로 복원된다. 코드층(320)의 차원은 인코더(310) 및 디코더(330) 보다 상대적으로 작게 설계될 수 있다. 따라서, 인코더(310)는 고차원의 입력 샘플이 코드층(320)을 통과할 수 있도록 저차원으로 압축하고, 입력 샘플의 주요 특성을 학습한다. 디코더(330)는 압축된 저차원의 데이터를 다시 고차원의 데이터로 복원할 수 있도록 학습된다.
오토 인코더를 활용하여 이상 상태를 탐지하는 동작은 다음과 같다. 정상 상황의 데이터로 학습된 오토인코더 모델에 입력 데이터를 제공하면, 입력 데이터는 인코더를 통해 저차원으로 압축된 후, 디코더를 통과하면서 원래의 차원으로 복원될 것이다. 여기서, 입력 데이터 및 복원 데이터 간의 차이인 복원 오차가 계산될 수 있다. 이하, 복원 오차는 '점수(score)' 또는 '이상 점수(anomaly score)'로 지칭된다. 이상 점수는 미리 정의된 임계치와 비교되며, 비교 결과에 따라 이상 상태 여부가 결정된다. 예를 들어, 이상 점수가 임계치보다 큰 경우, 현 상태는 이상 상황이 발생한 것으로 판단될 수 있다. 반대로, 이상 점수가 임계치보다 작은 경우, 현 상태는 정상 상황으로 판단될 수 있다. 따라서, 임계치이 적절하지 아니하면, 정상 상황을 이상 상황으로 탐지하는 오탐 확률이 높아질 수 있다.
오토인코더에서 이상 상태를 판단하기 위한 임계치는 다음과 같이 설정될 수 있다. 일 예로, 이상 상태 데이터가 있는 경우, 이상 상태 데이터를 활용하여 모델을 테스트하면서, 이상 상태 탐지율을 최대화되도록 임계치가 설정될 수 있다. 다른 예로, 이상 상태 데이터가 없는 경우, 이상 점수가 정규 분포를 따른다는 가정하에, 표준 편차와 백분위 수와 같은 통계 값에 기반하여 임계치가 설정될 수 있다. 예를 들어, 이상 점수가 평균 μ와 표준편차 σ를 갖는 정규분포를 따른다고 가정하면, 임계치는 μ+3σ로 설정될 수 있다.
통계학에서 변화 감지(change detection)는 확률 분포가 변화하는 시점을 식별하는 것을 의미하며, 변화 감지는 오프라인(offline) 변화 감지 및 온라인(online) 변화 감지로 구분될 수 있다. 오프라인 변화 감지는 시계열 데이터가 모두 주어진 상황에서 변경점이 있는지 판단하는 것이고, 온라인 변화 감지는 실시간으로 발생하는 시계열 데이터에서 변경점을 찾는 것이다. 일반적으로, 오프라인 변화 감지가 더 높은 정확도로 변경 상황을 감지하는 것으로 알려져 있다.
본 발명은 오토인코더 모델 기반 이상 상태 탐지에 관한 것으로, 모델 테스트를 위한 이상 상태 데이터가 부재한 상황에서 이상 상태 판단에 사용할 적절한 임계치를 탐색하는 이상 상태 탐지 모델을 제안한다. 오토인코더 모델 기반의 이상 상태 탐지에 있어서, 임계치가 적절하지 못하면 오탐 확률이 높아지고, 이로 인한 시스템의 불필요한 부하가 발생할 수 있다. 따라서, 본 발명은 임계치 설정을 위한 이상 상태 데이터가 없는 환경에서 적절한 임계치를 탐색하는 오토인코더 기반의 이상 상태 탐지 기술을 제안하고자 한다.
도 4는 본 발명의 일 실시예에 따라 이상 상태를 탐지하기 위한 방법을 나타낸 도면이다.
도 4를 참고하면, 장치는 훈련된 모델을 이용하여 이상 상태에 관련된 점수를 결정한다(S401 단계). 훈련된 모델은 오토인코더 기반의 모델로서, 인코더, 코드 층, 디코더를 포함할 수 있다. 모델은 별도의 절차에 의해 훈련된 상태이며, 훈련은 다양하게 수행될 수 있고, 특정 훈련 방법이 본 발명을 제한하지는 아니한다.
장치는 현재의 점수 및 과거의 점수들 기반하여 이상 상태 여부를 판단한다(S403 단계). 즉, 장치는 새롭게 발생된 데이터를 입력 데이터로서 훈련된 모델에 입력함으로써 출력 데이터를 생성하고, 입력 데이터 및 출력 데이터 간 비교 결과에 대응하는 점수를 획득할 수 있다. 여기서, 새롭게 발생된 데이터로부터 획득된 점수는 현재의 점수로 이해될 수 있다. 그리고, 장치는 현재의 점수는 물론 과거의 점수들을 기반하여 대상 시스템의 이상 상태 여부를 판단할 수 있다. 즉, 본 발명의 실시예에 따른 이상 상태 탐지 기술에 따르면, 장치는 현재의 점수 뿐만 아니라 과거의 점수들을 더 고려한다.
장치는 이상 상태 판단에 관련된 임계치의 조절이 필요한지 판단한다(S405 단계). 다양한 실시 예들에서, 이상 상태는 점수 및 임계치의 비교에 기반하여 판단될 수 있다. 즉, 임계치는 이상 상태 판단에 관련되는 파라미터이며, 본 발명에서 제안하는 기술에 의해 적응적으로 조절될 수 있다. 임계치의 조절이 필요한지 여부는 현재 및 과거의 점수들에 기반하여 판단될 수 있다.
만일 임계치의 조절이 필요하다 판단되면, 장치는 임계치를 조절한다(S407 단계). 장치는 미리 정의된 규칙에 따라 임계치를 조절할 수 있다. 예를 들어, 미리 정의된 규칙은 고정된 스탭 크기만큼 조절하는 것, 동적인 스탭 크기만큼 조절하는 것, 점수들에 기반하여 결정되는 크기 만큼 조절하는 것 중 적어도 하나를 포함할 수 있다. 일 실시 예에 따라, 임계치는 증가의 형식으로만 조절될 수 있다. 다른 실시 예에 따라, 임계치는 증가 또는 감소 중 하나의 형식으로 조절될 수 있다. 만일 임계치의 조절이 필요하지 아니하다 판단되면, 장치는 임계치를 조절함 없이 본 절차를 종료할 수 있다.
도 5는 본 발명의 일 실시예에 따라 이상 상태를 탐지하기 위한 방법을 나타낸 도면이다. 도 5는 도 4의 S403 단계의 상세한 방법일 수 있다.
도 5를 참고하면, 장치는 현재의 점수가 임계치보다 큰지 판단한다(S501단계). 장치는 훈련된 모델을 통해 입력 데이터에 대응하는 출력 데이터를 획득한 후, 입력 데이터 및 출력 데이터에 기반하여 점수를 결정한다. 그리고, 결정된 점수 및 설정된 임계치를 비교할 수 있다.
만일, 현재의 점수가 임계치보다 작거나 같으면, 장치는 정상 상태로 판단한다(S503단계). 즉, 장치는 대상 시스템이 이상 없이 정상 운용되고 있음을 판단한다. 다시 말해, 입력 데이터 및 출력 데이터 간 차이, 즉, 복원 오차가 기준보다 낮으면, 장치는 정상 상태로 판단한다.
반면, 현재의 점수가 임계치보다 크면, 장치는 기록된 점수들에서 데이터 셋들을 결정한다(S505단계). 즉, 현재의 점수가 임계치보다 큼은 이상 상태일 가능성이 있음을 의미한다. 따라서, 이상 상태 여부의 판단을 진행하기 위해, 장치는 현재의 점수 및 과거의 점수들을 포함하는 점수들에서 복수의 데이터 셋들을 결정한다. 일 실시 예에 따라, 복수의 데이터 셋들은 생성 시점을 기준으로 서로 배타적인 범위의 점수들을 포함할 수 있다. 구체적으로, 제1 데이터 셋은 제1 시각 및 제2 시각 사이에서 생성된 점수들 중 적어도 하나를 포함하고, 제2 데이터 셋에 포함되는 점수들은 제2 시각 및 제3 시각 사이에서 생성된 점수들 중 적어도 하나를 포함할 수 있다. 여기서, 제1 시각이 가장 최근, 제3 시각이 가장 과거의 시점을 의미한다.
장치는 데이터 셋들 간 통계적 차이가 존재하는지 판단한다(S507단계). 구체적으로, 장치는 결정된 데이터 셋들 간 통계적 분석을 통해 데이터 셋들의 유사성을 결정할 수 있다. 예를 들어, 장치는 분산 분석(Analysis of variance, ANOVA)을 통해 제1 데이터 셋의 평균과 제2 데이터 셋의 평균이 서로 다른지 아닌지를 확인한다. 평균이 서로 다르다고 확인되면, 장치는 두 데이터 셋들 간에 통계적 차이가 존재한다고 판단한다. 그렇지 아니하면, 장치는 두 데이터 셋들 간에 통계적 차이가 없다고 판단한다. 분산 분석 이외의 통계적 기법들이 구체적인 구현에 따라 다르게 선택될 수 있다.
만일, 통계적 차이가 존재하지 않으면, 장치는 정상 상태로 판단한다(S503단계). 반면, 통계적 차이가 존재하면, 장치는 이상 상태로 판단한다(S509단계). 즉, 장치는 대상 시스템에 이상 상태가 발생함을 판단한다.
도 6은 본 발명의 일 실시예에 따른 데이터 셋들의 예를 나타낸 도면이다. 도 6은 도 5에서 결정되는 데이터 셋들의 일 예일 수 있다.
도 6을 참고하면, 현재 시점으로부터 과거의 2N개의 점수들이 나열되며, 2개의 데이터 셋들, 데이터 셋 X 및 데이터 셋 Y가 결정될 수 있다. 데이터 셋 X는 현재까지 기록된 이상 점수 데이터로부터 최근 2N 번째까지의 2N개의 점수들 중 최근의 과거의 N개에 해당하는 데이터 셋이고, 데이터 셋 Y는 상대적으로 더 최근의 점수들을 포함하는 나머지 N개에 해당하는 데이터 셋이다. 오토인코더 모델에 입력 데이터가 계속 주어지면, 이상 점수들 역시 계속 누적된다. 이에 따라, 최근 2N개의 이상 점수들로 구성되는 데이터 셋 X 및 데이터 셋 Y는 시간이 경과함에 계속 바뀌게 된다. 여기서, N은 고정된 값이거나, 적응적으로 제어되는 변수일 수 있다.
도 6은 데이터 셋들을 결정하는 일 예이며, 다른 방식으로 데이터 셋들이 결정될 수 있다. 예를 들어, 2개의 데이터 셋들이 생성 순서가 연속되지 아니하는 점수들(예: 1번째 점수, 1+k번째 점수, 1+2k번째 점수 등)을 포함할 수 있다. 또한, 시간 축에서, 2개의 데이터 셋들 사이에 어느 데이터 셋에도 포함되지 아니한 적어도 하나의 점수가 존재할 수 있다.
도 7은 본 발명의 일 실시예에 따라 파라미터를 조절하기 위한 방법을 나타낸 도면이다.
도 7을 참고하면, 장치는 현재 점수가 임계치보다 큰지 판단한다(S701단계). 장치는 훈련된 모델을 통해 입력 데이터에 대응하는 출력 데이터를 획득한 후, 입력 데이터 및 출력 데이터에 기반하여 점수를 결정한다. 그리고, 결정된 점수 및 설정된 임계치를 비교할 수 있다.
만일, 현재의 점수가 임계치보다 크면, 장치는 기록된 점수들에서 데이터 셋들을 결정한다(S703단계). 임계치의 증가 또는 감소의 필요성을 판단하기 위해, 장치는 현재의 점수 및 과거의 점수들을 포함하는 점수들에서 복수의 데이터 셋들을 결정한다. 일 실시 예에 따라, 복수의 데이터 셋들은 생성 시점을 기준으로 서로 배타적인 범위의 점수들을 포함할 수 있다. 반면, 현재의 점수가 임계치보다 작거나 같으면, 장치는 임계치의 조절 없이 본 절차를 종료한다.
장치는 데이터 셋들 간 통계적 차이가 존재하는지 판단한다(S705단계). 구체적으로, 장치는 결정된 데이터 셋들 간 통계적 분석을 통해 데이터 셋들의 유사성을 결정할 수 있다. 예를 들어, 장치는 분산 분석(Analysis of variance, ANOVA)을 통해 제1 데이터 셋의 평균과 제2 데이터 셋의 평균이 서로 다른지 아닌지를 확인한다. 평균이 서로 다르다고 확인되면, 장치는 두 데이터 셋들 간에 통계적 차이가 존재한다고 판단한다. 그렇지 아니하면, 장치는 두 데이터 셋들 간에 통계적 차이가 없다고 판단한다. 분산 분석 이외의 통계적 기법들이 구체적인 구현에 따라 다르게 선택될 수 있다.
데이터 셋들 간 통계적 차이가 존재하면, 장치는 임계치를 감소시킨다(S707단계). 일 실시 예에 따라, 장치는 미리 정의된 스탭 크기만큼 임계치를 감소시킬 수 있다. 다른 실시 예에 따라, 장치는 미리 정의된 규칙에 따라 변화량을 결정하고, 결정된 변화량만큼 임계치를 감소시킬 수 있다. 예를 들어, 미리 정의된 규칙은 통계적 차이, 임계치의 조절 이력, 이상 상태 탐지의 이력 중 적어도 하나에 기반하여 정의될 수 있다.
데이터 셋들 간 통계적 차이가 존재하지 아니하면, 장치는 임계치를 증가시킨다(S709단계). 일 실시 예에 따라, 장치는 미리 정의된 스탭 크기만큼 임계치를 증가시킬 수 있다. 다른 실시 예에 따라, 장치는 미리 정의된 규칙에 따라 변화량을 결정하고, 결정된 변화량만큼 임계치를 증가시킬 수 있다. 예를 들어, 미리 정의된 규칙은 통계적 차이, 임계치의 조절 이력, 이상 상태 탐지의 이력 중 적어도 하나에 기반하여 정의될 수 있다.
도 8는 본 발명의 일 실시예에 따라 이상 상태를 탐지하기 위한 보다 상세한 방법을 나타낸 도면이다.
도 8을 참고하면, 장치는 이상상황 탐지를 위해 학습된 오토인코더 모델에 데이터를 입력하고(S801단계), 모델에서 출력된 데이터를 이용하여 이상 점수를 계산한다(S803단계). 이후, 장치는 계산된 이상 점수와 임계치 값(T)을 비교한다(S805단계). 여기서, 초기 임계치 값으로서 기 설정된 값(T0)이 사용될 수 있다.
만일, 이상 점수가 임계치 값보다 작거나 같으면, 장치는 정상 상황이라 판단하고, 계산된 이상 점수를 저장 장치(D)에 기록하고(S807단계), 계속해서 모델에 데이터를 입력한다. 반면, 이상 점수가 임계치 값보다 크면, 장치는 변수 K를 1 증가시키고(S809단계), 이상 상황 판단을 위한 데이터 셋 구성 작업을 진행한다(S811단계). 여기서, 데이터 셋은 데이터 셋 X 및 데이터 셋 Y를 포함할 수 있다. 일 예로, 데이터 셋 X는 현재까지 기록된 이상 점수들 중 최근 2N에서 N개에 해당하는 점수들을 포함하고, 데이터 셋 Y는 현재까지 기록된 이상 점수들 중 최근 N개에 해당하는 점수들을 포함할 수 있다.
이어서, 장치는 데이터 셋 X 및 데이터 셋 Y 간에 차이가 있는지 통계적인 분석 작업을 수행한다(S813단계). 통계적인 분석 작업을 통해, 장치는 스튜던트(student)의 t-검정 또는 웰치(Welch)의 검정, 분산 분석 등을 수행할 수 있다. 통계적 분석 결과에 기반하여, 장치는 데이터 셋 X 및 데이터 셋 Y 간 차이가 있는지 여부를 판단한다(S815단계).
만일, 데이터 셋 X 및 데이터 셋 Y 간 차이가 없다고 판단되면, 장치는 임계치 값 올림 수정 작업(S817단계) 및 N 값 수정 작업(S819단계)을 수행하고, 계속해서 모델에 데이터를 입력한다. 여기서, 임계치 값 올림 작업은 기존 임계치 값에 일정 값을 더하는 형식(예, T0=T0+α, α>0)으로 임계치 값을 높이는 동작을 포함한다. N 값 수정 작업은 임계치 값을 올림에 따라 좀더 자세한 통계 분석을 위해 분석해야 할 데이터의 양을 늘리는 동작으로서, 2가지 유형의 수정 작업들 중 하나를 포함할 수 있다. 첫번째 유형은 임계치 값을 올릴 때 마다 N 값을 올리는 방법이다 (예: N=(1+K)N). 두번째 유형은 임계치 값을 올리는 경우에 주기적으로 N 값을 올린 후 초기화하는 방법이다(예: N=(1+K%2)N). 여기서, 2N 값의 최대 크기는 이상 점수 저장 장치 용량을 넘을 수 없다(예: 2N≤|D|).
반면, 데이터 셋 X 및 데이터 셋 Y 간 차이가 유의미하게 있다고 판단되면, 장치는 임계치 값 내림 작업(S821단계) 및 N 값 초기화 작업(S823단계)을 수행하고, 이상 상황 알림을 발생시킨다(S825단계). 여기서, 임계치 값 내림 작업은 기존 임계치 값에 일정 값을 빼는 형식(예, T0=T0-α, α>0)으로 임계치 값을 낮추는 동작을 포함한다.
전술한 다양한 실시예들에 따라, 장치는 오토인코더 모델에 기반하여 이상 탐지를 효과적으로 수행할 수 있다. 즉, 본 발명은 이상 상황 데이터가 없는 환경에서 오토인코더 모델을 사용하면서 통계적 방법을 사용하여 기준 오차를 동적으로 변경함으로써 오탐률을 줄이는데 효과를 제공할 수 있다.
도 9는 본 발명의 일 실시예에 따른 이상 탐지 기술의 적용 예를 나타낸 도면이다. 도 9는 본 발명의 일 실시에 따른 이상 탐지 기술이 데이터 네트워크에 적용된 예일 수 있다. 즉, 도 9는 오토인코더 모델을 기반으로 비정상 네트워크 트래픽을 탐지하는 시스템을 예시한다. 도 9의 시스템은 데이터 네트워크(910)에서 네트워크 데이터를 수집하는 수집 노드(920a 또는 920b), 수집된 네트워크 데이터를 분석하는 분석 노드(930)를 포함한다. 수집 노드(920a 또는 920b)는 패킷 캡쳐 장비(922)를 이용하여 네트워크 장비 간 물리적인 회선에 전송되는 패킷들을 수집하거나, 네트워크 장비의 지원을 통해 수집한다. 수집 노드(920a 또는 920b)에 의해 수집된 패킷 데이터들은 분석 노드(930)에 전달되고, 분석 노드(930)는 해당 네트워크 트래픽이 정상인지 비정상인지를 여부를 판단한다. 분석 노드(930)는 정상 네트워크 트래픽으로 학습된 오토인코더 모델을 보유하고 있으며, 해당 모델을 기반으로 본 발명에서 제안하는 오토인코더 기반 이상 상황 탐지 기술을 사용하여 수신한 네트워크 트래픽이 정상인지 비정상인지를 판단할 수 있다.
본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.
본 개시의 다양한 실시예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.
또한, 본 개시의 다양한 실시예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
본 개시의 범위는 다양한 실시예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.

Claims (1)

  1. 이상 상태를 탐지하기 위한 방법에 있어서,
    오토인코더에 기반한 인공지능 모델을 이용하여 이상 상태에 관련된 점수를 결정하는 단계;
    상기 점수 및 과거의 점수들 기반하여 상기 이상 상태 여부를 판단하는 단계; 및
    상기 점수 및 과거의 점수들 기반하여 상기 이상 상태의 판단에 관련된 임계치를 조절하는 단계를 포함하는, 이상 상태를 탐지하기 위한 방법.
KR1020220010384A 2022-01-25 2022-01-25 오토인코더에 기반한 이상 탐지를 위한 방법 및 장치 KR20230114354A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220010384A KR20230114354A (ko) 2022-01-25 2022-01-25 오토인코더에 기반한 이상 탐지를 위한 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220010384A KR20230114354A (ko) 2022-01-25 2022-01-25 오토인코더에 기반한 이상 탐지를 위한 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20230114354A true KR20230114354A (ko) 2023-08-01

Family

ID=87561861

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220010384A KR20230114354A (ko) 2022-01-25 2022-01-25 오토인코더에 기반한 이상 탐지를 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20230114354A (ko)

Similar Documents

Publication Publication Date Title
US11120127B2 (en) Reconstruction-based anomaly detection
US9652354B2 (en) Unsupervised anomaly detection for arbitrary time series
WO2018059402A1 (zh) 确定故障类型的方法和装置
CN111095149A (zh) 具有自修复能力的自主驾驶车辆的多模态感测
US10606919B2 (en) Bivariate optimization technique for tuning SPRT parameters to facilitate prognostic surveillance of sensor data from power plants
JP6564799B2 (ja) 閾値決定装置、閾値決定方法及びプログラム
US20150241853A1 (en) Initated test health management system and method
US20190268786A1 (en) Supplemental voltage controller for radio frequency (rf) antennas
JP2018147172A (ja) 異常検知装置、異常検知方法及びプログラム
KR102119056B1 (ko) 생성적 적대 신경망 기반의 의료영상 학습 방법 및 장치
CN111666187B (zh) 用于检测异常响应时间的方法和装置
WO2018142703A1 (ja) 異常要因推定装置、異常要因推定方法及びプログラム
US20180174072A1 (en) Method and system for predicting future states of a datacenter
US20160321147A1 (en) Dynamic Service Fault Detection and Recovery Using Peer Services
JP2021135679A (ja) 加工機状態推定システム、および加工機状態推定プログラム
CN114666210B (zh) 基于大数据日志分析的告警方法及装置
WO2019244902A1 (ja) 評価装置及び評価方法
CN108362957B (zh) 设备故障诊断方法、装置、储存介质和电子设备
JP2022132078A (ja) 機械学習モデル更新方法、コンピュータプログラムおよび管理装置
KR20230114354A (ko) 오토인코더에 기반한 이상 탐지를 위한 방법 및 장치
Xu et al. Crying wolf and meaning it: Reducing false alarms in monitoring of sporadic operations through pod-monitor
US10268375B2 (en) Methods for proactive prediction of disk failure in the disk maintenance pipeline and devices thereof
KR101869490B1 (ko) 스트리밍 데이터 처리시스템의 이상동작 분석 장치 및 그 방법
Wu et al. ONLAD-IDS: ONLAD-Based Intrusion Detection System Using SmartNIC
US20230084342A1 (en) Monitoring apparatus, method, and program