KR20210153785A - 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치 - Google Patents

복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR20210153785A
KR20210153785A KR1020200070140A KR20200070140A KR20210153785A KR 20210153785 A KR20210153785 A KR 20210153785A KR 1020200070140 A KR1020200070140 A KR 1020200070140A KR 20200070140 A KR20200070140 A KR 20200070140A KR 20210153785 A KR20210153785 A KR 20210153785A
Authority
KR
South Korea
Prior art keywords
prediction error
learning
prediction
features
difference
Prior art date
Application number
KR1020200070140A
Other languages
English (en)
Other versions
KR102407730B1 (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 KR1020200070140A priority Critical patent/KR102407730B1/ko
Publication of KR20210153785A publication Critical patent/KR20210153785A/ko
Application granted granted Critical
Publication of KR102407730B1 publication Critical patent/KR102407730B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble 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)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

기재된 실시예는 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의 개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리하는 단계; 상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성하는 단계; 상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차(Cost)를 생성하는 단계; 상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차로 재분배하는 단계; 상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스에 저장하는 단계; 및 입력 데이터에 상응하는 예측오차 패턴을 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하여 이상 또는 정상 상황인지 여부를 판단하는 단계를 포함하고, 상기 N과 M은 각각 적어도 2 이상의 자연수 값이고, 서로 독립적으로 설정되는 것인, 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법에 관한 것이다.

Description

복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치{METHOD FOR ANOMALY BEHAVIOR DETECTION SYSTEM USING MULTIPLE MACHINE LEARNING MODELS, AND APPARATUS FOR THE SAME}
본 발명은 머신러닝을 이용하여 시간흐름에 따라 변하는 정보를 학습하고 그 예측결과를 이용하여 이상상태를 판단하는 기술에 관한 것이다.
머신러닝을 이용하여 시계열 정보를 학습하고 학습된 결과인 학습모델을 이용하여 새로 입력되는 정보의 정상/비정상 유무를 판단하는 기술들이 많이 존재한다. 이 때 종래 기술은 학습모델을 이용하여 정상/비정상 유무 판단 대상에 대해 예측치를 출력한 후 예측치와 실측치의 차이인 비용(cost)을 미리 정한 임계값과 비교하여 정상/비정상을 판단하고 있다.
상기 종래 기술에서 정상과 비정상을 구분 짓는 threshold를 어떻게 정하느냐에 따라 이상 판단의 정확성이 결정된다. 그러나 정상과 비정상의 범주가 확연히 구분되는 경우 threshold를 쉽게 결정할 수도 있지만, 특정 정상 상황에서는 다른 비정상 상황에서보다 cost가 크게 나타나고, 특정 비정상 상황에서는 타 정상 상황보다 cost가 작게 나타나서 오탐지(정상을 비정상으로 판단)과 미탐지(비정상을 정상으로 판단)를 유발할 수 있다는 문제점이 있다.
따라서 위와 같은 문제를 해결하고자 상기 예측치와 실측치의 차이의 패턴, 즉 예측오차 패턴을 이용하여 임계값을 결정하는 방식을 사용하는 방법을 사용할 수 있다.
이 때, 정상데이터를 학습하여 이상을 판단하는 기술은 정상데이터 전처리, 전처리된 데이터를 학습하여 예측모델 개발, 예측모델의 예측치와 실측치의 차이(cost trend)를 이용해 이상여부 판단의 3단계의 구성으로 이루어진다. 그러나, 학습해야 할 데이터가 너무 많은 feature를 가지고 있을 경우 머신러닝 기법이 학습모델을 잘 생성해 내지 못 하는 경우가 많다. 이런 문제를 해결하여 학습/예측 성능을 향상시키기 위해 많은 경우 데이터의 feature의 개수를 줄이거나 나누어 복수 개의 학습모델을 이용해 데이터를 학습하고 이들의 예측오차를 이용해 이상발생 여부를 판단하기도 한다.
그러나 이상과 같이 복수개의 학습모델을 이용해 이상판단을 할 경우 다음과 같은 문제가 발생할 수 있다. 첫째, 배경기술에서 데이터 전처리기가 학습모델마다 서로 다른 개수의 입력들을 분배해 주면 예측오차 패턴을 확인하기 위한 최적의 데이터 수집 시간(cost trend의 패턴분석을 위한 cost 수집기간)이 학습모델마다 서로 다를 수 있다. 이 경우 이상징후 판단 시점 및 판단 근거 데이터가 학습모델마다 서로 다를 수 있어 통합 판단이 어려워진다. 둘째, 하나의 학습모델에 적용된 입력의 개수가 너무 적거나 많은 경우 배경기술에서 사용되는 nearest-neighbor distance는 예측오차 패턴의 유사성을 정확하기 판단해 내기가 어렵다. 입력 개수가 너무 많으면 정상 상황에서도 너무 많은 변형이 발생할 수 있어 정상 상황을 모두 확보하기 어렵기 때문에 오탐이 많아지고, 입력 개수가 너무 적으면 표현 가능한 형태가 너무 적어 정상과 비정상을 구분하기 어려워져서 미탐이 많아진다. 셋째, 학습 단계에서 학습데이터를 분리하여 학습할 경우, 각 이상판단기는 자신의 입력인 예측오차를 이용해 이상여부를 판단한다. 이 경우 분리된 feature들 간의 패턴을 이용해 이상판단을 수행하기 어렵다. 예를 들어, 학습기1에 들어간 feature A, B와 학습기2의 feature C, 학습기n의 feature D 사이의 관계에서 이상판단이 필요하거나 이상 발생시 해당 feature A, B, C, D 간의 관계를 분석하고자 할 경우 그렇게 분류된 학습모델이 없으면 해당 이상판단 분석을 수행하기 어렵다. 이를 위해서는 feature A, B, C, D를 포함한 학습모델을 새로이 구성/학습해야하나 학습시간이 오래 걸리며, 해당 feature들로 구성한 학습모델의 학습이 잘 이루어지지 않을 가능성도 존재하기 때문이다.
따라서 복수개의 학습모델을 이용하고, 예측오차 패턴을 이용하여 이상 상황을 판단하는 방법에 있어, 상기 문제들을 해결하기 위한 방법의 필요성이 대두된다.
한국등록특허 제 10-1888683호 (2018.08.14)
본 발명의 목적은 개별 학습모델(예측모델)이 생성하는 예측오차들의 패턴을 이용한 이상 판단 과정에서 이상 판단 성능을 향상하기 위해 예측오차들을 재분배하는 방법 및 이를 위한 장치를 제공함에 있다.
또한, 본 발명의 목적은 정상데이터만으로 데이터 전처리기를 이용해 학습모델의 학습/예측 능력을 최대한으로 향상시키면서 예측오차 분배기를 통해 예측오차들을 재분배 해주어 전체 이상탐지시스템의 이상판단 능력을 극대화하는 방법을 제공함에 있다.
또한, 본 발명의 목적은 공격 패턴에 따라 학습모델을 수정/추가하지 않고도 해당 공격 패턴 탐지에 필요한 예측오차 그룹을 생성하고 이를 위한 예측오차분석기를 추가하여 새로운 공격 패턴 및 사고조사 등에 효율적으로 대응할 수 있는 방법을 제공함에 있다.
실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 은 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리하는 단계; 상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성하는 단계; 상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차(Cost)를 생성하는 단계; 상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차로 재분배하는 단계; 상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스에 저장하는 단계; 및 입력 데이터에 상응하는 예측오차 패턴을 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하여 이상 또는 정상 상황인지 여부를 판단하는 단계를 포함하고, 상기 N과 M은 각각 적어도 2 이상의 자연수 값이고, 서로 독립적으로 설정되는 것이다.
이 때, 상기 M개의 재분배 예측오차로 재분배하는 단계는 상기 예측오차 분석기에서 예측오차 분석에 필요한 최소 피처(Feature)의 개수를 정하는 단계; 및 상기 N개의 예측오차에 포함된 피처들의 개수의 총합을 상기 최소 피처의 개수로 나눈 값을 기반으로 상기 재분배 예측오차에 포함되는 입력 피처의 개수가 동일하게 되도록 M을 정하는 단계를 포함할 수 있다.
이 때, 상기 M개의 재분배 예측오차로 재분배하는 단계는 상기 N개의 예측오차들을 랜덤(Random)하게 섞어 예측오차의 집합을 생성하는 단계; 및 상기 예측오차의 집합을 M개의 재분배 예측오차로 재분배하는 단계를 더 포함하는 것일 수 있다.
이 때, 상기 M개의 재분배 예측오차로 재분배하는 단계는 상기 예측오차의 집합 중 상기 예측오차에 상응하는 피처들을 분석하는 단계; 상기 예측오차 피처들 중 이상여부 결정에 유리한 연관 피처들끼리 묶는 단계; 및 상기 연관 피처들을 포함하는 재분배 예측오차를 추가로 생성하는 단계를 더 포함할 수 있다.
이 때, 상기 이상 또는 정상 상황인지 여부를 판단하는 단계는 상기 입력 데이터에 상응하는 예측오차 패턴을 상기 패턴 수집 시간동안추출하여 타겟 예측오차 패턴을 생성하는 단계; 상기 타겟 예측오차 패턴과 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하는 단계; 상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하는 단계; 및 상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단하는 단계를 포함할 수 있다.
이 때, 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하는 단계는 상기 예측오차 패턴들 중 상기 타겟 예측오차 패턴과 가장 유사한 이웃 예측오차 패턴을 생성하는 단계; 상기 타겟 예측오차 패턴과 이웃 예측오차 패턴을 상기 차이를 계산하는 함수를 이용하여 차이값을 계산하는 단계; 상기 차이값이 차이 임계값보다 같거나 작으면 유사하다고 판단하는 단계; 및 상기 차이값이 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 단계를 포함할 수 있다.
이 때, 상기 차이를 계산하는 함수는 유클리디언(Euclidean) 거리 함수로 하는 것일 수 있다.
이 때, 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하는 단계는 상기 타겟 예측오차 패턴과 상기 예측오차 패턴들을 차이를 계산하는 함수를 이용하여 차이값들을 계산하는 단계; 상기 차이값들 중 적어도 하나 이상이 차이 임계값보다 같거나 작으면 유사하다고 판단하는 단계; 및 상기 차이값들 모두가 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 단계를 포함할 수 있다.
이 때, 상기 이상 또는 정상 상황인지 여부를 판단하는 단계는 상기 M개의 예측오차 분석기의 판단결과를 융합하여 최종으로 정상 또는이상을 판단하는 단계를 더 포함할 수 있다.
이 때, 상기 N개의 분배 학습 데이터로 나누어 전처리하는 단계는 상기 학습 데이터에 포함되어 있는 피처들을 분석하는 단계; 상기 피처들 중 학습에 최적화된 연관 피처들끼리 묶는 단계; 및 상기 연관 피처들을 포함하는 학습 데이터들끼리 하나의 분배 학습 데이터로 생성하는 단계를 포함할 수 있다.
실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치는 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리하고, 상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성하고, 상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차(Cost)를 생성하고, 상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차로 재분배하고, 상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스에 저장하고, 상기 N과 M은 각각 적어도 2개 이상의 값이고, 서로 독립적으로 설정되는 것인 프로세서; 및 상기 N개의 예측오차 또는 M개의 재분배 예측오차 중 적어도 하나 이상을 저장하는 메모리를 포함할 수 있다.
이 때, 상기 프로세서는 상기 예측오차 분석기에서 예측오차 분석에 필요한 최소 피처(Feature)의 개수를 정하고, 상기 N개의 예측오차에 포함된 피처들의 개수의 총합을 상기 최소 피처의 개수로 나눈 값을 기반으로 상기 재분배 예측오차에 포함되는 입력 피처의 개수가 동일하게 되도록 M을 정하는 것일 수 있다.
이 때, 상기 프로세서는 상기 N개의 예측오차들을 랜덤(Random)하게 섞어 예측오차의 집합을 생성하고, 상기 예측오차의 집합을 M개의 재분배 예측오차로 재분배하는 것일 수 있다.
이 때, 상기 프로세서는 상기 예측오차의 집합 중 상기 예측오차에 상응하는 피처들을 분석하고, 상기 예측오차 피처들 중 이상여부 결정에 유리한 연관 피처들끼리 묶고, 상기 연관 피처들을 포함하는 재분배 예측오차를 추가로 생성하는 것일 수 있다.
이 때, 상기 프로세서는 상기 학습 데이터에 포함되어 있는 피처들을 분석하고, 상기 피처들 중 학습에 최적화된 연관 피처들끼리 묶고, 상기 연관 피처들을 포함하는 학습 데이터들끼리 하나의 분배 학습 데이터로 생성하는 것일 수 있다.
실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치는 입력 데이터를 이상 탐지 학습 장치에 입력하고, 상기 입력 데이터에 상응하는 예측오차 패턴을 상기 패턴 수집 시간동안 추출한 타겟 예측오차 패턴을 생성하고, 상기 타겟 예측오차 패턴과 상기 이상 탐지 학습 장치의 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하고, 상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하고, 상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단하는 프로세서; 및 상기 타겟 예측오차 패턴을 저장하는 메모리를 포함할 수 있다.
이 때, 상기 프로세서는 상기 예측오차 패턴들 중 상기 타겟 예측오차 패턴과 가장 유사한 이웃 예측오차 패턴을 생성하고, 상기 타겟 예측오차 패턴과 이웃 예측오차 패턴을 상기 차이를 계산하는 함수를 이용하여 차이값을 계산하고, 상기 차이값이 차이 임계값보다 같거나 작으면 유사하다고 판단하고, 상기 차이값이 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 것일 수 있다.
이 때, 상기 차이를 계산하는 함수는 유클리디언(Euclidean) 거리 함수로 하는 것일 수 있다.
이 때, 상기 프로세서는 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하고, 상기 타겟 예측오차 패턴과 상기 예측오차 패턴들을 차이를 계산하는 함수를 이용하여 차이값들을 계산하고, 상기 차이값들 중 적어도 하나 이상이 차이 임계값보다 같거나 작으면 유사하다고 판단하고, 상기 차이값들 모두가 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 것일 수 있다.
이 때, 상기 프로세서는 상기 M개의 예측오차 분석기의 판단결과를 융합하여 최종으로 정상 또는 이상을 판단하는 것일 수 있다.
본 발명은 개별 학습모델(예측모델)이 생성하는 예측오차들의 패턴을 이용한 이상 판단 과정에서 이상 판단 성능을 향상하기 위해 예측오차들을 재분배하는 방법 및 이를 위한 장치를 제공할 수 있다.
또한, 본 발명은 정상데이터만으로 데이터 전처리기를 이용해 학습모델의 학습/예측 능력을 최대한으로 향상시키면서 예측오차 분배기를 통해 예측오차들을 재분배 해주어 전체 이상탐지시스템의 이상판단 능력을 극대화하는 방법을 제공할 수 있다.
또한, 본 발명의 목적은 공격 패턴에 따라 학습모델을 수정/추가하지 않고도 해당 공격 패턴 탐지에 필요한 예측오차 그룹을 생성하고 이를 위한 예측오차분석기를 추가하여 새로운 공격 패턴 및 사고조사 등에 효율적으로 대응할 수 있는 방법을 제공할 수 있다.
도 1은 실시예에 따른 이상 상황 탐지 시스템(100)의 일 예를 나타낸 블록도이다.
도 2의 (a)는 일반적으로 예측치를 이용한 이상 상황 탐지 방법의 개념을 보여주는 도면이다.
도 2의 (b)는 임계값(Threshold)을 이용한 이상 상황 탐지 방법의 개념을 보여주는 도면이다.
도 3은 도 1에 도시된 이상 판단기(160)의 동작의 일 예를 보여주는 도면이다.
도 4는 실시예에 따른 이상 상황 탐지 시스템(400)이 복수개의 학습 모델을 이용하여 이상을 판단하는 경우의 일 예를 보여주는 블록도이다.
도 5는 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치의 일 예의 블록도이다.
도 6은 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치의 일 예의 블록도이다.
도 7은 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치의 일 예의 동작의 흐름도를 나타낸 도면이다.
도 8은 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치의 일 예의 동작 흐름도를 나타낸 도면이다.
도 9는 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
비록 "제1" 또는 "제2" 등이 다양한 구성요소를 서술하기 위해서 사용되나, 이러한 구성요소는 상기와 같은 용어에 의해 제한되지 않는다. 상기와 같은 용어는 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용될 수 있다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.
본 명세서에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소 또는 단계가 하나 이상의 다른 구성요소 또는 단계의 존재 또는 추가를 배제하지 않는다는 의미를 내포한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 해석될 수 있다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하에서는, 도 1 내지 도 8을 참조하여 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치가 상세히 설명된다.
도 1은 실시예에 따른 이상 상황 탐지 시스템(100)의 일 예를 나타낸 블록도이다.
도 1을 참조하면, 상기 이상 상황 탐지 시스템(100)은 학습과 판단의 두 단계로 나누어지는데, 학습 단계에서는 학습 데이터(110)로 학습하여 학습 모델을 만들어낸다. 그리고 판단 단계에서는 입력 데이터(120)를 받아 학습 모델에 입력하고 그 결과를 가지고 이상 판단 결과(170)을 출력하게 된다. 그리고 상기 이상 상황 탐지 시스템(100)은 데이터 전처리기(130), 학습기(140), 학습모델(150), 이상 판단기(160)을 포함할 수 있다.
상기 이상 상황 탐지 시스템(100)의 학습 동작은 아래와 같이 크게 4단계로 구성될 수 있다.
제 1 학습 단계에서, 학습기(140)이 머신 러닝 기법을 이용해 학습 모델(150)을 생성할 수 있다. 여기서 학습 모델(150)은 머신 러닝을 이용하여 시계열 정보를 학습한 결과이다.
제 2 학습 단계에서, 테스트 데이터(정상/비정상에 대해 정답을 아는 데이터)를 기준으로 비용(혹은 누적 비용(cumulative cost), 이하 '비용'이라고 함)의 임계값(threshold)를 결정할 수 있다. 이 때, 상기 테스트 데이터에서 정상/비정상 예측 테스트를 함으로써, 학습 모델의 입장에서 예외적인 상황(정상인데 비용이 큰 경우, 비정상인데 비용이 작은 경우)을 무시하고 비용의 임계값(threshold) TH0이 결정될 수 있다.
제 3 학습 단계에서, 임계값-초과 비용 변화(Threshold-over cost trend) 저장 동작이 수행될 수 있다. 제 2 학습 단계의 결과로써 정상 상황을 나타내는 테스트 데이터에 상응하는 비용이 상기 임계값(threshold)보다 큰 경우, 사용자가 정한 제 1 시간 동안의 비용 변화(cost trend, pattern 정보)가 임계값-초과 비용 변화 데이터베이스(230)에 저장될 수 있다. 그리고 제 1 비용 변화 간의 차이를 계산하는 함수(diff function, 예: Euclidean distance)가 결정될 수 있다. 상기 차이를 계산하는 함수(diff function)을 이용하여 비용 변화 간의 차이(cost trend difference)에 대한 임계값(threshold, cost trend difference limit; 비용 변화 차이 제한값) TH1이 결정될 수 있다.
제 4 학습 단계에서, 임계값-이하 비용 변화(threshold-under cost trend) 저장 동작이 수행될 수 있다. 제 2 학습 단계의 결과로써 이상 상황을 나타내는 테스트 데이터에 상응하는 비용이 상기 임계값보다 작은 경우, 사용자가 정한 제 2 시간 동안의 비용 변화(cost trend, pattern 정보)가 임계값-이하 비용 변화 데이터베이스(240)에 저장될 수 있다. 여기서 제 2 시간은 제 3 학습 단계의 제 1 시간과 동일하거나 다를 수 있다. 그리고 제 2 비용 변화 간의 차이를 계산하는 함수(diff function, 예: Euclidean distance)가 결정될 수 있다. 상기 차이를 계산하는 함수(diff function)을 이용하여 비용 변화 간의 차이(cost trend difference)에 대한 임계값(threshold, cost trend difference limit) TH2가 결정될 수 있다. 이 때 제 2 비용 변화간의 차이를 계산하는 함수는 제 1 비용 변화간의 차이를 계산하는 함수와 다른 것으로 선택될 수 있다.
즉, 상기 학습기(140)의 4단계의 학습 동작을 통해 학습 모델(150), 임계값-초과 비용 변화 데이터베이스, 임계값-이하 비용 변화 데이터베이스가 생성되고, 이상 판단기(160)의 판단 기준이 되는 임계값 TH0, TH1, TH2가 결정되는 것이다.
이후 이상 판단기(160)에서 수행하는 판단 과정은 다음의 4단계로 구성될 수 있다.
제 1 판단 단계에서, 실시간으로 모니터링 하는 입력 데이터(120)를 데이터전처리기(130)을 거쳐 학습 모델(150)에 입력하여 예측치를 계산한다.
제 2 판단 단계에서, 상기 학습 2단계에서 결정한 비용의 임계값(threshold) TH0를 이용하여 정상과 비정상(또는 이상)을 구분한다.
제 3 판단 단계에서, 제 2 판단 단계의 결과로써 판단의 대상이 되는 입력 데이터(또는 타겟)가 비정상으로 판단될 경우 이상 상황 판단 과정은 다음과 같이 진행될 수 있다. 상기 타겟에 대한 해당 실측치에 대해 사용자가 정한 기간 동안(예를 들어, 제 1 시간)의 비용 변화(cost trend)인 제 1 타겟 비용 변화를 추출한다. 그리고 상기 제 1 타겟 비용 변화와 상기 학습 3단계에서 저장한 임계값-초과 비용 변화(threshold-over cost trend)들 중에서 제 1 비용 변화 차이 계산 함수(diff function)을 이용하여 가장 유사한 비용 변화를 갖는 nearest-neighbor(제 1 이웃 비용 변화)가 검색되는 것이다. 만약 상기 제 1 비용 변화 차이 계산 함수를 유클리안 거리 함수로 정한다면, 상기 제 1 타겟 비용 변화와 임계값-초과 비용 변화 데이터베이스(230)에 포함된 모든 비용 변화와의 유클리안 거리를 계산함으로써, 계산된 그 값이 최소인 비용 변화가 바로 제 1 이웃 비용 변화(nearest-neighbor)가 될 수 있다. 계산된 비용 변화와 검색된 nearest-neighbor와의 비용 변화 차이인, 두 cost trend간의 Euclidean distance를 계산한다. 그리고 계산된 값이 학습 단계에서 결정한 임계값 TH1보다 크면 비정상으로 최종 판단될 수 있다. 반대로, 계산된 값이 학습 단계에서 결정한 TH1보다 작으면 정상으로 최종 판단될 수 있다.
제 4 판단 단계에서, 제 2 판단 단계의 결과로써 판단의 대상이 되는 입력 데이터(또는 타겟)이 정상으로 판단될 경우 이상 상황 판단 과정은 다음과 같이 진행될 수 있다. 상기 타겟에 대한 해당 실측치에 대해 사용자가 정한 기간 동안(예를 들어, 제 2 시간)의 비용 변화인 제 2 타겟 비용 변화가 추출된다. 상기 제 2 타겟 비용 변화와 상기 학습 4단계에서 저장한 임계값-이하 비용 변화(threshold-under cost trend)들 중에서 제 2 비용 변화 차이 계산 함수(diff function)을 이용하여 가장 유사한 비용 변화를 갖는 nearest-neighbor(제 2 이웃 비용 변화)가 검색될 수 있다. 만약 상기 제 2 비용 변화 차이 계산 함수를 유클리안 거리 함수로 정한다면, 상기 제 2 타겟 비용 변화와 임계값-이하 비용 변화 데이터베이스에 포함된 모든 비용 변화와의 유클리안 거리를 계산하고, 계산된 값이 최소인 비용 변화가 nearest-neighbor가 될 수 있다. 계산된 비용 변화와 검색된 nearest-neighbor와의 비용 변화 차이(cost trend difference)인 두 비용 변화 간의 유클리안 거리를계산한다. 그리고 계산된 값이 학습 단계에서 결정한 TH2보다 크면 비정상으로 최종 판단될 수 있다. 반대로, 계산된 값이 상기 TH2보다 작으면 정상으로 최종 판단될 수 있다.
도 2는 머신러닝을 이용하여 이상 상황을 탐지하는 기존의 방법의 개념을 보여주는 도면이다.
도 2의 (a)는 일반적으로 예측치를 이용한 이상 상황 탐지 방법의 개념을 보여주는 도면이다. 머신 러닝을 이용하여 시계열 정보를 학습하고 학습된 결과(학습모델)를 이용하여 새로 입력되는 정보의 정상/비정상 유무를 판단하는 기술들이 많이 존재한다. 도 3에서 보는 바와 같이, 종래 기술은 학습모델을 이용하여 정상/비정상 유무 판단 대상에 대해 예측치를 출력한 후, 상기 예측치와 실제 측정치(실측치)를 비교하여, 상기 예측치와 실측치의 차이가 크면 이상행위로 탐지하는 방법으로 이상 상황을 탐지하고 있다. 그리고 상기 예측치와 실측치의 차이를 구하기 위하여 도 2의 (b)와 같이 상기 예측치와 실측치의 차이를 계산하는 함수(cost function)를 정의할 수 있다.
도 2의 (b)는 임계값(Threshold)을 이용한 이상 상황 탐지 방법의 개념을 보여주는 도면이다. 즉, 상기 차이를 계산하는 함수로부터 임계값(Threshold)을 이용하여 이상 상황 탐지 방법의 개념을 보여주는 도면이다. 도 2의 (b)를 참조하면, Cost function은 예측치와 실측치의 차이(Diff(실제 측정치, 예측치))를 하나의 실수(비용, cost)로 계산해 준다. 따라서, 여기서는 정상/비정상을 판단하는 기준으로 임계값(Threshold)를 정하고, 상기 비용이 상기 임계값보다 크면 비정상으로 판단하게 된다. 만약 한 번의 cost로 이상여부 판단이 어려울 경우 사용자가 정의한 일정 기간 동안 cost의 누적(cumulative cost)이 사용자가 정의한 threshold보다 클 때 비정상으로 판단하기도 한다.
도 3은 도 1에 도시된 이상 판단기(160)의 동작의 일 예를 보여주는 도면이다.
도 3을 참조하여, 상기 이상 판단기(160)가 이상을 판단하는 동작의 예를 보여주고 있다. 우선 정상 상황을 나타내는 학습 데이터를 학습기에 입력하여 학습 모델을 생성하고, 상기 학습 데이터를 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 예측오차(Cost)를 생성할 수 있다. 그리고 상기 정상 상황을 나타내는 학습 데이터에 상응하는 예측오차 예측오차 패턴 데이터베이스에 저장할 수 있다. 그리고 입력 데이터에 상응하는 예측오차 패턴(300)을 상기 예측오차 패턴 데이터베이스에 포함된 정상 상황의 예측오차 패턴들(310, 320, 330, 340)과 비교하여 이상 또는 정상 상황인지 여부를 판단하는 것이다.
즉, 상기 이상 판단기(160)는 상기 입력 데이터에 상응하는 예측오차 패턴을 상기 패턴 수집 시간동안 추출하여 타겟 예측오차 패턴(300)을 생성하고, 상기 타겟 예측오차 패턴과 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들(310, 320, 330, 340)과 비교하고, 상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하고, 상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단할 수 있다.
또한, 상기 이상 판단기(160)는 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하기 위하여, 상기 예측오차 패턴들 중 상기 타겟 예측오차 패턴과 가장 유사한 이웃 예측오차 패턴을 생성하고, 상기 타겟 예측오차 패턴과 이웃 예측오차 패턴을 상기 차이를 계산하는 함수를 이용하여 차이값을 계산하고, 상기 차이값이 차이 임계값보다 같거나 작으면 유사하다고 판단하고, 상기 차이값이 상기 차이 임계값보다 크면 유사하지 않다고 판단할 수 있다. 상기 차이를 계산하는 함수는 유클리디언(Euclidean) 거리 함수로 정할 수 있다.
따라서, 도 3에서는 타겟 예측오차 패턴(300)과 가장 유사한 이웃 예측오차 패턴을 그림에서 두번째 예측오차 패턴(320)으로 선택할 수 있다. 그리고 상기 타겟 예측오차 패턴(300)과 상기 이웃 예측오차 패턴(320)의 차이값을 유클리디어 거리함수로 계산하여 차이값을 얻을 수 있다. 만약 상기 차이값이 차이 임계값보다 크면 유사하지 않다고 판단하고 최종 비정상으로 판단하고, 상기 차이값이 상기 차이 임계값보다 작으면 유사하다고 판단하고 최종 정상으로 판단 할 수 있다. 그리고 상기 차이 임계값은 유사한 정도를 나타내는 정도를 나타내는 값으로, 사용자나 시스템에 의해서 결정될 수 있다.
도 4는 실시예에 따른 이상 상황 탐지 시스템(400)이 복수개의 학습 모델을 이용하여 이상을 판단하는 경우의 일 예를 보여주는 블록도이다.
정상상황을 나타내는 학습 데이터를 학습하여 이상을 판단하는 방법은, 정상데이터 전처리, 전처리된 데이터를 학습하여 예측모델 개발, 예측모델의 예측치와 실측치의 차이(cost trend)를 이용해 이상여부 판단의 세 단계로 구성된다.
이 때 학습해야 할 데이터가 너무 많은 feature를 가지고 있을 경우 머신러닝 기법이 학습모델을 잘 생성해 내지 못 하는 경우가 많다. 이런 문제를 해결하여 학습/예측 성능을 향상시키기 위해 많은 경우 데이터의 feature를 줄이거나 나누어 복수 개의 학습모델을 이용해 데이터를 학습하고 이들의 예측오차를 이용해 이상발생 여부를 판단한다.
도 4는 이와 같은 방식의 대표적인 구성을 보여준다. 우선 데이터 전처리기(440)는 학습모델들이 잘 학습하여 잘 예측할 수 있도록 하는 것이 목적이다
도 4를 참조하면, 정상 상황을 나타내는 학습 데이터(420)을 데이터 분석기(430)에 분석을 한다. 그리고 상기 데이터 분석기(430)의 분석 결과를 바탕으로 데이터 전처리기(440)에서 N개의 분배 학습 데이터로 분배할 수 있다. 상기 N개의 분배 학습 데이터는 N개의 학습기(450-1 내지 450-N)에 입력되어 학습되고, 상기 학습의 결과로 N개의 학습 모델(452-1 내지 452-N)이 만들어진다. 그리고 N개의 이상 판단기(460-1 내지 460-N)는 실시간 입력 데이터(410)에 대하여 상기 학습의 결과로 만들어진 N개의 학습 모델(452-1 내지 452-N)을 이용하여 N개의 예측 오차(465-1 내지 465-N)를 생성하고, 상기 N개의 예측 오차(465-1 내지 465-N)를 기반으로 이상을 판단하게 된다. 그리고 통합 판단기(470)가 상기 N개의 이상 판단 결과를 종합하여 최종 이상 판단 결과(480)을 생성하게 되는 것이다.
이 때, 각 학습기는 분배된 학습데이터와 동일/유사한 차원의 예측오차를 생성한다. 예를 들어 5개의 feature로 구성된 학습데이터로 학습한 모델은 5개의 feature를 예측하게 되어 각 feature마다 예측오차를 생성하기 때문에 예측오차도 5개의 feature로 구성된다.
학습모델을 위한 데이터 전처리기(440)는 학습을 잘 수행하게 하는 것이 목적이기 때문에 각 학습기(451-1 내지 451-N)마다 서로 다른 개수의 feature로 구성된 데이터로 학습데이터를 분배해 줄 수 있다. 예를 들어 학습기1은 5개 feature, 학습기2는 20개 feature로 구성된 데이터에 대해 학습/예측을 수행할 수 있다.
그러나, 도 4와 같은 구조에서 예측오차 패턴을 이용하여 이상판단을 할 경우 다음과 같은 문제가 발생할 수 있다.
우선, 데이터 전처리기가 학습모델마다 서로 다른 개수의 입력들을 분배해 주면 예측오차 패턴을 확인하기 위한 최적의 데이터 수집 시간(cost trend의 패턴분석을 위한 cost 수집기간)이 학습모델마다 서로 다를 수 있다. 이 경우 이상징후 판단 시점 및 판단 근거 데이터가 학습모델마다 서로 다를 수 있어 통합 판단이 어려워진다.
그리고 하나의 학습모델에 적용된 입력의 개수가 너무 적거나 많은 경우, 가장 유사한 예측오차 패턴(nearest-neighbor)과의 거리로 예측오차 패턴의 유사성을 정확하기 판단해 내기가 어려울 수 있다. 만약 입력 개수가 너무 많으면 정상 상황에서도 너무 많은 변형이 발생할 수 있어 정상 상황을 모두 확보하기 어렵기 때문에 오탐지(정상을 이상으로 판단)가 많아지고, 입력 개수가 너무 적으면 표현 가능한 형태가 너무 적어 정상과 비정상을 구분하기 어려워져서 미탐지(이상을 정상으로 판단)가 많아질 수 있다.
그리고 도 4와 같이 학습 단계에서 학습데이터를 분리하여 학습할 경우, 각 이상 판단기는 자신의 입력인 예측오차를 이용해 이상여부를 판단한다. 이 경우 분리된 feature들 간의 패턴을 이용해 이상판단을 수행하기 어려울 수 있다. 예를 들어, 학습기1에 들어간 feature A, B와 학습기2의 feature C, 학습기n의 feature D 사이의 관계에서 이상판단이 필요하거나 이상 발생시 해당 feature A, B, C, D 간의 관계를 분석하고자 할 경우 그렇게 분류된 학습모델이 없으면 해당 이상판단 분석을 수행하기 어렵다. 이를 위해서는 feature A, B, C, D를 포함한 학습모델을 새로이 구성/학습해야하나 학습시간이 오래 걸리며, 해당 feature들로 구성한 학습모델의 학습이 잘 이루어지지 않을 가능성도 존재하기 때문이다.
도 5는 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치의 일 예의 블록도이다.
도 5는 앞서 도 4의 구조에서의 문제점을 해결하기 위해 예측오차 분배기(540)를 추가한 구조이다. 도 5를 참조하면, 정상 상황을 나타내는 학습 데이터(500)을 데이터 분석기(510)에 분석을 한다. 그리고 상기 데이터 분석기(510)의 분석 결과를 바탕으로 데이터 전처리기(515)에서 N개의 분배 학습 데이터로 분배할 수 있다. 상기 N개의 분배 학습 데이터는 N개의 학습기(520-1 내지 520-N)에 입력되어 학습되고, 상기 학습의 결과로 N개의 학습 모델이 만들어진다. 이상과 같은 구조는 도 4와 동일하다.
도 5는 도 4와 달리 N개의 학습기(520-1 내지 520-N)이 생성한 N개의 예측오차들(530-1 내지 530-N)을 상기 예측오차 분배기(540)가 M개의 예측오차들(550-1 내지 550-M)로 재분배하고, 역시 M개의 예측오차 패턴 데이터베이스(560-1 내지 560-M)를 생성해낼 수 있다.
즉, 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치의 데이터 전처리기(515)가 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의 개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리한다. 그리고 N개의 학습기(520-1 내지 520-N)는 상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성하고, 상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차(530-1 내지 530-N)를 생성한다. 그리고 예측오차 분배기(540)는 상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차(550-1 내지 550-M)로 재분배한다. 그리고 상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스(560-1 내지 560-M)에 저장할 수 있다. 그리고 상기 N과 M은 각각 적어도 2개 이상의 값이고, 서로 독립적으로 설정되는 것일 수 있다.
상기 예측오차 분배기(540)는 예측오차 분석이 효과적으로 이루어질 수 있도록 예측오차들을 재분배하며, 다음과 같은 장점이 존재한다.
우선 각 예측오차의 feature 개수를 동일하게 하여 동일한 시간(w) 동안에 이상판단을 할 수 있게 해 준다. 예를 들어, 학습데이터가 60개 입력으로 이루어져 있는데, 5개 입력마다 1개씩 20개 학습모델을 만들어낼 경우(학습모델 간에 동일 입력을 중복으로 사용할 수도 있다), 5개(feature의 수)가 예측오차 분석에 부족하다면 예측오차 분배기는 예측오차 100개(5*20)를 모아 10개씩 묶어 재분배 해 주는 것이다. 이후 예측오차를 이용한 분석 및 이상징후 판단은 재분배된 예측오차를 이용해서 수행하게 된다.
그리고 예측오차 feature들을 random하게 섞어 분배하여 예측오차의 통계 분석을 유리하게 할 수 있다. 각 예측오차들이 서로 독립(independent)인 경우에 chi-square 분포를 활용하는 등 예측오차들의 패턴을 통계적으로 분석하는데 유리하다. 하나의 학습모델이 계산한 예측오차 feature들 간에는 서로 간의 연관성이 있을 수 있으므로, 이들을 random하게 섞어 feature 간의 연관성을 줄여 통계 분석 기반의 이상판단 성능을 향상시켜 줄 수 있다.
또한, 이상탐지시스템 운영 중 탐지된 특정 feature 간의 관계가 이상여부 결정에 유리하다고 판단될 경우, 학습기/학습모델을 새로 만들 필요 없이 해당 feature들을 새로운 하나의 예측오차 그룹으로 묶어 예측오차분석기에 추가하는 것만으로도 해당 feature들의 관계를 감시할 수 있다. 이는 학습모델은 각 feature들을 예측하는 기능에 최적화되도록 구성하고, 이상판단 단계에서 필요한 만큼의 예측오차분석기를 사용함으로써 개별 학습모델의 예측결과를 효과적으로 앙상블 하는데에도 활용할 수 있다.
도 6은 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치의 일 예의 블록도이다.
도 6 역시 앞서 도 4의 구조에서의 문제점을 해결하기 위해 예측오차 분배기(540)를 추가한 구조이다. 도 6은 도 4와 달리, 예측오차 분배기(630)에서 학습기가 생성한 N개의 예측오차가 아닌 M개의 예측오차들을 기반으로 M개의 예측오차 패턴 기준 판단기들(650-1 내지 650-M)을 이용하여 예측오차 패턴 기준으로 판단을 하게 된다. 그리고 통합 판단기(660)가 상기 M개의 예측오차 패턴 기준 판단 결과를 종합하여 최종 이상 판단 결과를 생성하게 되는 것이다.
즉, 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치로 실시간 입력 데이터(600)가 입력된다. 상기 입력 데이터가 N개의 학습기(610-1 내지 610-N)의 N개의 학습 모델에 입력되어 N개의 예측오차(620-1 내지 620-N)으로 생성된다. 그리고 상기 N개의 예측오차(620-1 내지 620-N)가 예측오차 분배기(630)을 거쳐 M개의 재분배 예측오차(640-1 내지 640-M)으로 재분배된다. 그리고 상기 M개의 재분배 예측오차(640-1 내지 640-M)들로부터 상기 입력 데이터에 상응하는 M개의 예측오차 패턴을 상기 패턴 수집 시간동안 추출한 M개의 타겟 예측오차 패턴을 생성하고, M개의 예측오차 패턴 기준 판단기(650-1 내지 650-M)에서 각각 타겟 예측오차 패턴과 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교한다. 그리고 상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하고, 상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단한다. 그리고 판단의 결과를 통합 판단기(660)에서 통합하여 최종 판단 결과를 생성하게 되는 것이다.
상기 예측오차 패턴 기준 판단기(650)는 상기 예측오차 패턴들 중 상기 타겟 예측오차 패턴과 가장 유사한 이웃 예측오차 패턴을 생성하고, 상기 타겟 예측오차 패턴과 이웃 예측오차 패턴을 상기 차이를 계산하는 함수를 이용하여 차이값을 계산하고, 상기 차이값이 차이 임계값보다 같거나 작으면 유사하다고 판단하고, 상기 차이값이 상기 차이 임계값보다 크면 유사하지 않다고 판단할 수 있다. 이 때, 상기 차이를 계산하는 함수는 유클리디언(Euclidean) 거리 함수로 하는 것일 수 있다.
또한, 상기 예측오차 패턴 기준 판단기(650)는 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하고, 상기 타겟 예측오차 패턴과 상기 예측오차 패턴들을 차이를 계산하는 함수를 이용하여 차이값들을 계산하고, 상기 차이값들 중 적어도 하나 이상이 차이 임계값보다 같거나 작으면 유사하다고 판단하고, 상기 차이값들 모두가 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 것일 수 있다.
도 7은 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치의 일 예의 동작의 흐름도를 나타낸 도면이다.
도 7을 참조하면, 정상 상황을 나타내는 학습 데이터가 상기 이상 탐지 학습 장치에 입력된다(S710).
데이터 전처리기가 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의 개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리한다(S720).
그리고 N개의 학습기는 상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성한다(S730).
또한 상기 N개의 학습기가 상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차를 생성한다(S740).
그리고 예측오차 분배기는 상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차로 재분배한다(S750).
그리고 상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스에 저장할 수 있다(S760). 그리고 상기 N과 M은 각각 적어도 2개 이상의 값이고, 서로 독립적으로 설정되는 것일 수 있다.
도 8은 실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치의 일 예의 동작 흐름도를 나타낸 도면이다.
도 8을 참조하면, 상기 이상 탐지 판단 장치에 실시간 입력 데이터가 입력된다(S810).
상기 입력 데이터에 상응하는 타겟 예측오차 패턴이 생성된다(S820). 즉, 상기 입력 데이터가 N개의 학습기의 N개의 학습 모델에 입력되어 N개의 예측오차로 생성된다. 그리고 상기 N개의 예측오차가 예측오차 분배기를 거쳐 M개의 재분배 예측오차로 재분배된다. 그리고 상기 M개의 재분배 예측오차들로부터 상기 입력 데이터에 상응하는 M개의 예측오차 패턴을 상기 패턴 수집 시간동안 추출한 M개의 타겟 예측오차 패턴을 생성하는 것이다.
그리고 M개의 예측오차 패턴 기준 판단기에서 각각 타겟 예측오차 패턴과 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하여 유사한지 판단한다(S830). 만약 상기 타겟 예측오차 패턴이 상기 예측오차 패턴들과 유사하다고 판단되면, 정상으로 판단한다(S840). 만약 상기 타겟 예측오차 패턴이 상기 예측오차 패턴들과 유사하지 않다고 판단되면 이상으로 판단한다(S850). 즉, 상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하고, 상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단한다. 여기서, 각 예측오차 패턴 기준 판단기의 판단의 결과를 통합 판단기에서 통합하여 최종 판단 결과를 생성할 수도 있다.
도 9는 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다.
실시예에 따른 복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치 또는 이상 탐지 판단 장치는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(900)에서 구현될 수 있다.
컴퓨터 시스템(900)은 버스(920)를 통하여 서로 통신하는 하나 이상의 프로세서(910), 메모리(930), 사용자 인터페이스 입력 장치(940), 사용자 인터페이스 출력 장치(950) 및 스토리지(960)를 포함할 수 있다. 또한, 컴퓨터 시스템(900)은 네트워크(980)에 연결되는 네트워크 인터페이스(970)를 더 포함할 수 있다. 프로세서(910)는 중앙 처리 장치 또는 메모리(930)나 스토리지(960)에 저장된 프로그램 또는 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(930) 및 스토리지(960)는 휘발성 매체, 비휘발성 매체, 분리형 매체, 비분리형 매체, 통신 매체, 또는 정보 전달 매체 중에서 적어도 하나 이상을 포함하는 저장 매체일 수 있다. 예를 들어, 메모리(930)는 ROM(931)이나 RAM(932)을 포함할 수 있다.
이상에서 설명된 실시예에 따르면, 본 발명은 개별 학습모델(예측모델)이 생성하는 예측오차들의 패턴을 이용한 이상 판단 과정에서 이상 판단 성능을 향상하기 위해 예측오차들을 재분배하는 방법 및 이를 위한 장치를 제공할 수 있다.
또한, 본 발명은 정상데이터만으로 데이터 전처리기를 이용해 학습모델의 학습/예측 능력을 최대한으로 향상시키면서 예측오차 분배기를 통해 예측오차들을 재분배 해주어 전체 이상탐지시스템의 이상판단 능력을 극대화하는 방법을 제공할 수 있다.
또한, 본 발명의 목적은 공격 패턴에 따라 학습모델을 수정/추가하지 않고도 해당 공격 패턴 탐지에 필요한 예측오차 그룹을 생성하고 이를 위한 예측오차분석기를 추가하여 새로운 공격 패턴 및 사고조사 등에 효율적으로 대응할 수 있는 방법을 제공할 수 있다.
이상에서 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 이상 상황 탐지 시스템
110: 학습 데이터
120: 입력 데이터
130: 데이터 전처리기
140: 학습기
150: 학습모델
160: 이상 판단기
170: 이상 판단 결과

Claims (20)

  1. 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리하는 단계;
    상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성하는 단계;
    상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차(Cost)를 생성하는 단계;
    상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차로 재분배하는 단계;
    상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스에 저장하는 단계; 및
    입력 데이터에 상응하는 예측오차 패턴을 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하여 이상 또는 정상 상황인지 여부를 판단하는 단계를 포함하고,
    상기 N과 M은 각각 적어도 2 이상의 자연수 값이고, 서로 독립적으로 설정되는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법.
  2. 제1 항에 있어서,
    상기 M개의 재분배 예측오차로 재분배하는 단계는
    상기 예측오차 분석기에서 예측오차 분석에 필요한 최소 피처(Feature)의 개수를 정하는 단계; 및
    상기 N개의 예측오차에 포함된 피처들의 개수의 총합을 상기 최소 피처의 개수로 나눈 값을 기반으로 상기 재분배 예측오차에 포함되는 입력 피처의 개수가 동일하게 되도록 M을 정하는 단계를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  3. 제2 항에 있어서,
    상기 M개의 재분배 예측오차로 재분배하는 단계는
    상기 N개의 예측오차들을 랜덤(Random)하게 섞어 예측오차의 집합을 생성하는 단계; 및
    상기 예측오차의 집합을 M개의 재분배 예측오차로 재분배하는 단계를 더 포함하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  4. 제2 항에 있어서,
    상기 M개의 재분배 예측오차로 재분배하는 단계는
    상기 예측오차의 집합 중 상기 예측오차에 상응하는 피처들을 분석하는 단계;
    상기 예측오차 피처들 중 이상여부 결정에 유리한 연관 피처들끼리 묶는 단계; 및
    상기 연관 피처들을 포함하는 재분배 예측오차를 추가로 생성하는 단계를 더 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  5. 제2 항에 있어서,
    상기 이상 또는 정상 상황인지 여부를 판단하는 단계는
    상기 입력 데이터에 상응하는 예측오차 패턴을 상기 패턴 수집 시간동안추출하여 타겟 예측오차 패턴을 생성하는 단계;
    상기 타겟 예측오차 패턴과 상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하는 단계;
    상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하는 단계; 및
    상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단하는 단계를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  6. 제5 항에 있어서,
    상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하는 단계는
    상기 예측오차 패턴들 중 상기 타겟 예측오차 패턴과 가장 유사한 이웃 예측오차 패턴을 생성하는 단계;
    상기 타겟 예측오차 패턴과 이웃 예측오차 패턴을 상기 차이를 계산하는 함수를 이용하여 차이값을 계산하는 단계;
    상기 차이값이 차이 임계값보다 같거나 작으면 유사하다고 판단하는 단계; 및
    상기 차이값이 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 단계를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  7. 제6 항에 있어서,
    상기 차이를 계산하는 함수는 유클리디언(Euclidean) 거리 함수로 하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  8. 제5 항에 있어서,
    상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하는 단계는
    상기 타겟 예측오차 패턴과 상기 예측오차 패턴들을 차이를 계산하는 함수를 이용하여 차이값들을 계산하는 단계;
    상기 차이값들 중 적어도 하나 이상이 차이 임계값보다 같거나 작으면 유사하다고 판단하는 단계; 및
    상기 차이값들 모두가 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 단계를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  9. 제5 항에 있어서,
    상기 이상 또는 정상 상황인지 여부를 판단하는 단계는
    상기 M개의 예측오차 분석기의 판단결과를 융합하여 최종으로 정상 또는이상을 판단하는 단계를 더 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  10. 제1 항에 있어서,
    상기 N개의 분배 학습 데이터로 나누어 전처리하는 단계는
    상기 학습 데이터에 포함되어 있는 피처들을 분석하는 단계;
    상기 피처들 중 학습에 최적화된 연관 피처들끼리 묶는 단계; 및
    상기 연관 피처들을 포함하는 학습 데이터들끼리 하나의 분배 학습 데이터로 생성하는 단계를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 방법.
  11. 정상상황을 나타내는 학습 데이터를 상기 학습 데이터의 피처(Feature)의개수를 기반으로 N개의 분배 학습 데이터로 나누어 전처리하고,
    상기 N개의 분배 학습 데이터를 각 N개의 학습기에 입력하여 N개의 학습 모델을 생성하고,
    상기 학습 데이터를 상기 N개의 학습 모델에 입력하여 생성한 예측치와 실측치의 차이에 상응하는 N개의 예측오차(Cost)를 생성하고,
    상기 N개의 예측오차를 M개의 예측오차 분석기에 입력하기 위하여 M개의 재분배 예측오차로 재분배하고,
    상기 M개의 재분배 예측오차를 각 M개의 예측오차 분석기에 입력하여 패턴 수집 시간 동안의 예측오차 패턴(Cost trend)들을 예측오차 패턴 데이터베이스에 저장하고,
    상기 N과 M은 각각 적어도 2개 이상의 값이고, 서로 독립적으로 설정되는 것인 프로세서; 및
    상기 N개의 예측오차 또는 M개의 재분배 예측오차 중 적어도 하나 이상을 저장하는 메모리를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치.
  12. 제11 항에 있어서,
    상기 프로세서는
    상기 예측오차 분석기에서 예측오차 분석에 필요한 최소 피처(Feature)의 개수를 정하고,
    상기 N개의 예측오차에 포함된 피처들의 개수의 총합을 상기 최소 피처의 개수로 나눈 값을 기반으로 상기 재분배 예측오차에 포함되는 입력 피처의 개수가 동일하게 되도록 M을 정하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치.
  13. 제12 항에 있어서,
    상기 프로세서는
    상기 N개의 예측오차들을 랜덤(Random)하게 섞어 예측오차의 집합을 생성하고,
    상기 예측오차의 집합을 M개의 재분배 예측오차로 재분배하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치.
  14. 제12 항에 있어서,
    상기 프로세서는
    상기 예측오차의 집합 중 상기 예측오차에 상응하는 피처들을 분석하고,
    상기 예측오차 피처들 중 이상여부 결정에 유리한 연관 피처들끼리 묶고,
    상기 연관 피처들을 포함하는 재분배 예측오차를 추가로 생성하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치.
  15. 제11 항에 있어서,
    상기 프로세서는
    상기 학습 데이터에 포함되어 있는 피처들을 분석하고,
    상기 피처들 중 학습에 최적화된 연관 피처들끼리 묶고,
    상기 연관 피처들을 포함하는 학습 데이터들끼리 하나의 분배 학습 데이터로 생성하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 학습 장치.
  16. 입력 데이터를 이상 탐지 학습 장치에 입력하고,
    상기 입력 데이터에 상응하는 예측오차 패턴을 상기 패턴 수집 시간동안 추출한 타겟 예측오차 패턴을 생성하고,
    상기 타겟 예측오차 패턴과 상기 이상 탐지 학습 장치의 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하고,
    상기 예측오차 패턴들 중 어느 하나 이상이 상기 타겟 예측오차 패턴과 유사하다고 판단되면, 정상이라고 판단하고,
    상기 예측오차 패턴들 모두가 상기 타겟 예측오차 패턴과 유사하지 않다고 판단되면, 이상이라고 판단하는 프로세서; 및
    상기 타겟 예측오차 패턴을 저장하는 메모리를 포함하는,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치.
  17. 제16 항에 있어서,
    상기 프로세서는
    상기 예측오차 패턴들 중 상기 타겟 예측오차 패턴과 가장 유사한 이웃 예측오차 패턴을 생성하고,
    상기 타겟 예측오차 패턴과 이웃 예측오차 패턴을 상기 차이를 계산하는 함수를 이용하여 차이값을 계산하고,
    상기 차이값이 차이 임계값보다 같거나 작으면 유사하다고 판단하고,
    상기 차이값이 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치.
  18. 제17 항에 있어서,
    상기 차이를 계산하는 함수는 유클리디언(Euclidean) 거리 함수로 하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치.
  19. 제16 항에 있어서,
    상기 프로세서는
    상기 예측오차 패턴 데이터베이스에 포함된 예측오차 패턴들과 비교하고,
    상기 타겟 예측오차 패턴과 상기 예측오차 패턴들을 차이를 계산하는 함수를 이용하여 차이값들을 계산하고,
    상기 차이값들 중 적어도 하나 이상이 차이 임계값보다 같거나 작으면 유사하다고 판단하고,
    상기 차이값들 모두가 상기 차이 임계값보다 크면 유사하지 않다고 판단하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치.
  20. 제16 항에 있어서,
    상기 프로세서는
    상기 M개의 예측오차 분석기의 판단결과를 융합하여 최종으로 정상 또는이상을 판단하는 것인,
    복수개의 머신 러닝 학습 모델을 이용한 이상 탐지 판단 장치.
KR1020200070140A 2020-06-10 2020-06-10 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치 KR102407730B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200070140A KR102407730B1 (ko) 2020-06-10 2020-06-10 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200070140A KR102407730B1 (ko) 2020-06-10 2020-06-10 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치

Publications (2)

Publication Number Publication Date
KR20210153785A true KR20210153785A (ko) 2021-12-20
KR102407730B1 KR102407730B1 (ko) 2022-06-16

Family

ID=79033873

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200070140A KR102407730B1 (ko) 2020-06-10 2020-06-10 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치

Country Status (1)

Country Link
KR (1) KR102407730B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114554490A (zh) * 2021-12-30 2022-05-27 国网辽宁省电力有限公司电力科学研究院 一种基于时序模型的异常ap检测方法及系统
KR102470763B1 (ko) * 2022-10-13 2022-11-25 주식회사 비플컨설팅 데이터 이상치 탐색 장치 및 방법
WO2023177150A1 (ko) * 2022-03-14 2023-09-21 주식회사 딥바이오 딥러닝 모델의 분산 훈련을 위한 전체 슬라이드 이미지 분배 방법 및 이를 수행하는 컴퓨팅 시스템

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230170561A (ko) 2022-06-10 2023-12-19 고려대학교 산학협력단 비지도 학습 기반의 이상 탐지 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160028750A1 (en) * 2014-07-23 2016-01-28 Cisco Technology, Inc. Signature creation for unknown attacks
JP2017143399A (ja) * 2016-02-10 2017-08-17 日本電信電話株式会社 時系列データ異常監視装置及び時系列データ異常監視方法
KR101888683B1 (ko) 2017-07-28 2018-08-14 펜타시큐리티시스템 주식회사 비정상 트래픽을 탐지하는 방법 및 장치
KR20180108446A (ko) * 2017-03-23 2018-10-04 (주)모아데이타 Ict 인프라 관리 시스템 및 이를 이용한 ict 인프라 관리 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160028750A1 (en) * 2014-07-23 2016-01-28 Cisco Technology, Inc. Signature creation for unknown attacks
JP2017143399A (ja) * 2016-02-10 2017-08-17 日本電信電話株式会社 時系列データ異常監視装置及び時系列データ異常監視方法
KR20180108446A (ko) * 2017-03-23 2018-10-04 (주)모아데이타 Ict 인프라 관리 시스템 및 이를 이용한 ict 인프라 관리 방법
KR101888683B1 (ko) 2017-07-28 2018-08-14 펜타시큐리티시스템 주식회사 비정상 트래픽을 탐지하는 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"최근접거리 기반 예측오차 패턴을 이용한 제어시스템 운전정보 대상 머신러닝 학습모델의 이상판단 성능 개선", 한국정보과학회 학술발표논문집(pp. 803-805), 2019년 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114554490A (zh) * 2021-12-30 2022-05-27 国网辽宁省电力有限公司电力科学研究院 一种基于时序模型的异常ap检测方法及系统
WO2023177150A1 (ko) * 2022-03-14 2023-09-21 주식회사 딥바이오 딥러닝 모델의 분산 훈련을 위한 전체 슬라이드 이미지 분배 방법 및 이를 수행하는 컴퓨팅 시스템
KR102470763B1 (ko) * 2022-10-13 2022-11-25 주식회사 비플컨설팅 데이터 이상치 탐색 장치 및 방법

Also Published As

Publication number Publication date
KR102407730B1 (ko) 2022-06-16

Similar Documents

Publication Publication Date Title
KR102407730B1 (ko) 복수개의 머신 러닝 학습 모델을 이용한 이상 상황 탐지 방법 및 이를 위한 장치
Pang et al. Predicting vulnerable software components through deep neural network
Su et al. An evaluation of the robustness of MTS for imbalanced data
KR102094377B1 (ko) 비지도학습 이상탐지를 위한 모델 선택 시스템 및 그 방법
US20190087737A1 (en) Anomaly detection and automated analysis in systems based on fully masked weighted directed
US20050021303A1 (en) Method for analyzing fail bit maps of wafers
CN105893256A (zh) 基于机器学习算法的软件故障定位方法
CN111191720B (zh) 一种业务场景的识别方法、装置及电子设备
KR102433598B1 (ko) 데이터 경계 도출 시스템 및 방법
CN111177731A (zh) 一种基于人工神经网络的软件源代码漏洞检测方法
CN115357764A (zh) 一种异常数据检测方法及装置
Lavalle et al. An approach to automatically detect and visualize bias in data analytics
CN110011990A (zh) 内网安全威胁智能分析方法
CN111047173B (zh) 基于改进d-s证据理论的社团可信度评估方法
CN115373879A (zh) 一种面向大规模云数据中心智能运维的磁盘故障预测方法
Brito et al. A preliminary investigation into using machine learning algorithms to identify minimal and equivalent mutants
Duque-Torres et al. Using source code metrics for predicting metamorphic relations at method level
CN112463852A (zh) 一种基于机器学习的单个指标异常点自动判断系统
CN116611003A (zh) 一种变压器故障诊断方法、装置、介质
Marian et al. Software defect detection using self-organizing maps
EP4033421B1 (en) Method and system for predicting a failure of a monitored entity
Ding et al. A novel software defect prediction method based on isolation forest
US11763446B2 (en) Wafer bin map based root cause analysis
TWI725543B (zh) 預測造成系統異常之稀有事件的方法
KR102418237B1 (ko) 머신 러닝을 이용한 이상 상황 탐지 시스템의 탐지 이상 처리 방법 및 이를 위한 장치

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right