KR102635946B1 - Device and method for correcting abnormal data - Google Patents

Device and method for correcting abnormal data Download PDF

Info

Publication number
KR102635946B1
KR102635946B1 KR1020230111854A KR20230111854A KR102635946B1 KR 102635946 B1 KR102635946 B1 KR 102635946B1 KR 1020230111854 A KR1020230111854 A KR 1020230111854A KR 20230111854 A KR20230111854 A KR 20230111854A KR 102635946 B1 KR102635946 B1 KR 102635946B1
Authority
KR
South Korea
Prior art keywords
window
abnormal
lstm
replacement
data
Prior art date
Application number
KR1020230111854A
Other languages
Korean (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 KR1020230111854A priority Critical patent/KR102635946B1/en
Application granted granted Critical
Publication of KR102635946B1 publication Critical patent/KR102635946B1/en

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2263Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/10Pre-processing; Data cleansing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

이상 데이터 보정 장치 및 방법이 제공된다. 상기 이상 데이터 보장 장치는, 다변량 시계열 데이터를 수집하는 데이터 수집 모듈, 상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 전처리 모듈, 상기 전처리 결과로부터 이상 윈도우를 탐지하는 이상 탐지 모듈, 상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 예측 모듈 및 상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 결정하는 대체 모듈을 포함하되, 상기 대체 모듈은, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성할 수 있다.An apparatus and method for correcting abnormal data are provided. The abnormal data guarantee device includes a data collection module that collects multivariate time series data, a preprocessing module that generates preprocessing results by performing preprocessing using a sliding window technique on the multivariate time series data, and an abnormality window that detects anomaly windows from the preprocessing results. It includes a detection module, a prediction module that predicts a preliminary window corresponding to the abnormal window based on the window immediately before the abnormal window, and a replacement module that determines a replacement window to replace the abnormal window based on the predicted preliminary window, , the replacement module may generate the replacement window using the anomaly detection module.

Figure R1020230111854
Figure R1020230111854

Description

이상 데이터 보정 장치 및 방법{DEVICE AND METHOD FOR CORRECTING ABNORMAL DATA}Abnormal data correction device and method {DEVICE AND METHOD FOR CORRECTING ABNORMAL DATA}

본 발명은 이상 데이터 보정 장치 및 방법에 관한 것이다. The present invention relates to an abnormal data correction device and method.

보다 상세하게, 본 발명은 LSTM(Long Short Term Memory) 모델, VAE(Variational AutoEncoder) 모델 및 GAN(Generative Adversarial Network) 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하는 이상 탐지 모듈과, 어텐션(Attention) 기반의 LSTM 모델 및 변수들 간의 상관계수 행렬을 이용하는 예측 모델을 이용하여 이상 데이터 감지 및 보정을 수행할 수 있는 이상 데이터 보정 장치 및 방법에 관한 것이다. More specifically, the present invention provides an anomaly detection module using an LSTM-based VAE-GAN model that combines a Long Short Term Memory (LSTM) model, a Variational AutoEncoder (VAE) model, and a Generative Adversarial Network (GAN) model, and an attention The present invention relates to an abnormal data correction device and method capable of detecting and correcting abnormal data using a prediction model using a LSTM-based model and a correlation coefficient matrix between variables.

이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할뿐 종래기술을 구성하는 것은 아니다.The content described in this section simply provides background information for this embodiment and does not constitute prior art.

최근 사물인터넷(IoT) 기술의 발전으로 데이터 센터, 공장, 스마트 빌딩 등 다양한 산업분야에서 네트워크로 연결된 센서를 활용하여 다변량 시계열 데이터를 수집하고 있다.Recently, with the development of Internet of Things (IoT) technology, multivariate time series data is being collected using networked sensors in various industrial fields such as data centers, factories, and smart buildings.

이러한 다변량 시계열 데이터는 특정 공간 및 환경에 대한 모니터링을 통해 이상 현상을 감지하고 발생가능한 사고를 대응하는데 유용하게 활용될 수 있다.Such multivariate time series data can be usefully used to detect abnormal phenomena and respond to possible accidents through monitoring of specific spaces and environments.

그러나, 다변량 시계열 데이터를 육안으로 지속적으로 모니터링하는 것은 물적, 인적 환경에 따른 제약이 크다. 그에 따라, 최근 딥러닝 기술을 이용하여 다변량 시계열 데이터로부터 이상 현상을 자동으로 감지하고 보정할 수 있는 기술에 대한 니즈가 충분히 존재해 왔다.However, continuous visual monitoring of multivariate time series data has significant limitations due to physical and human environments. Accordingly, there has recently been a sufficient need for technology that can automatically detect and correct abnormalities from multivariate time series data using deep learning technology.

본 발명의 목적은, 감지된 이상 윈도우의 직전 윈도우를 통해 해당 이상 윈도우에 대한 예비 윈도우를 예측하고, 예측된 예비 윈도우와 유사한 대체 윈도우를 통해 해당 이상 윈도우를 대체할 수 있는 이상 데이터 보정 장치 및 방법을 제공하는 것이다.The purpose of the present invention is to predict a preliminary window for the abnormal window through the window immediately preceding the detected abnormal window, and to replace the abnormal window with a replacement window similar to the predicted preliminary window. is to provide.

구체적으로, 본 발명의 목적은, 어텐션(Attention) 기반의 LSTM 모델 및 변수들 간의 상관계수 행렬을 이용하는 예측 모델을 이용하여 이상 윈도우에 대한 예비 윈도우를 예측하고, 예측된 예비 윈도우와 유사한 대체 윈도우를 생성하도록 VAE-GAN 모델의 생성자를 제어하고, 생성된 대체 윈도우를 통해 이상 윈도우를 대체할 수 있는 이상 데이터 보정 장치 및 방법을 제공하는 것이다.Specifically, the purpose of the present invention is to predict a preliminary window for an abnormal window using an attention-based LSTM model and a prediction model that uses a correlation coefficient matrix between variables, and to create a replacement window similar to the predicted preliminary window. The aim is to provide an abnormal data correction device and method that controls the generator of the VAE-GAN model to generate the abnormal data and replaces the abnormal window through the generated replacement window.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the objects mentioned above, and other objects and advantages of the present invention that are not mentioned can be understood by the following description and will be more clearly understood by the examples of the present invention. Additionally, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof indicated in the patent claims.

본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치는, 다변량 시계열 데이터를 수집하는 데이터 수집 모듈, 상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 전처리 모듈, 상기 전처리 결과로부터 이상 윈도우를 탐지하는 이상 탐지 모듈, 상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 예측 모듈 및 상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 결정하는 대체 모듈을 포함하되, 상기 대체 모듈은, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성할 수 있다.An abnormal data correction device according to some embodiments of the present invention includes a data collection module for collecting multivariate time series data, a preprocessing module for generating preprocessing results by performing preprocessing on the multivariate time series data using a sliding window technique, and the preprocessing results. an anomaly detection module that detects an abnormal window, a prediction module that predicts a preliminary window corresponding to the abnormal window based on the window immediately before the abnormal window, and a replacement window that replaces the abnormal window based on the predicted preliminary window. It includes a replacement module for determining, wherein the replacement module may generate the replacement window using the anomaly detection module.

또한, 상기 이상 탐지 모듈은, LSTM(Long Short Term Memory) 모델, VAE(Variational AutoEncoder) 모델 및 GAN(Generative Adversarial Network) 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 상기 이상 윈도우를 탐지하고, 상기 LSTM 기반의 인코딩부, 상기 LSTM 기반의 생성부 및 상기 LSTM 기반의 판별부를 포함할 수 있다.In addition, the anomaly detection module detects the anomaly window using an LSTM-based VAE-GAN model that combines a Long Short Term Memory (LSTM) model, a Variational AutoEncoder (VAE) model, and a Generative Adversarial Network (GAN) model, It may include the LSTM-based encoding unit, the LSTM-based generation unit, and the LSTM-based discriminator.

또한, 상기 이상 탐지 모듈은, 상기 전처리 결과에 포함된 각 윈도우 별 이상 점수를 계산하는 계산부를 더 포함할 수 있다.Additionally, the anomaly detection module may further include a calculation unit that calculates an anomaly score for each window included in the preprocessing result.

또한, 상기 계산부는, 상기 전처리 결과에 포함된 실제 윈도우와 상기 생성부에서 생성된 가상 윈도우 사이의 재구축 오차(Reconstruction Error) 및 상기 판별부로부터 출력되는 판별 오차를 조합하여 상기 이상 점수를 계산할 수 있다.In addition, the calculation unit may calculate the anomaly score by combining the reconstruction error between the real window included in the preprocessing result and the virtual window generated by the generation unit and the discrimination error output from the determination unit. there is.

또한, 상기 계산부는, 상기 이상 점수가 미리 정해진 임계치 이상인 윈도우를 상기 이상 윈도우로 탐지할 수 있다.Additionally, the calculation unit may detect a window in which the abnormality score is greater than or equal to a predetermined threshold as the abnormal window.

또한, 상기 예측 모듈은, 어텐션(Attention) 기반의 LSTM 모델을 이용하여 제1 히든 유닛(Unit) 을 생성하는 제1 레이어와, 상기 전처리 결과의 배치 단위마다 변수들의 상관계수를 계산하여 제2 히든 유닛을 생성하는 제2 레이어와, 상기 제1 히든 유닛 및 상기 제2 히든 유닛을 조합하여 상기 예비 윈도우를 출력하는 출력 레이어를 포함하되, 상기 제1 레이어와 상기 제2 레이어에는 상기 직전 윈도우가 입력 데이터로서 입력될 수 있다.In addition, the prediction module includes a first layer that generates a first hidden unit using an attention-based LSTM model, and a second hidden unit by calculating the correlation coefficient of variables for each batch unit of the preprocessing result. It includes a second layer that generates a unit, and an output layer that outputs the preliminary window by combining the first hidden unit and the second hidden unit, wherein the previous window is input to the first layer and the second layer. It can be entered as data.

또한, 상기 제2 레이어는, 상기 변수들 간의 상관계수 행렬을 도출하는 상관계수 도출부와, 상기 도출된 상관계수 행렬이 입력되면 플래튼 데이터를 출력하는 플래튼 레이어(Flatten Layer)와, 상기 플래튼 데이터가 입력되면 상기 제2 히든 유닛을 출력하는 완전 연결 레이어(Fully Connected Layer)를 포함할 수 있다.In addition, the second layer includes a correlation coefficient deriving unit that derives a correlation coefficient matrix between the variables, a flatten layer that outputs platen data when the derived correlation coefficient matrix is input, and the flatten layer. When data is input, it may include a fully connected layer that outputs the second hidden unit.

또한, 상기 대체 모듈은, 상기 예비 윈도우 및 상기 이상 탐지 모듈에 포함된 상기 LSTM 기반의 생성부를 기초로 상기 대체 윈도우를 생성할 수 있다.Additionally, the replacement module may generate the replacement window based on the preliminary window and the LSTM-based generator included in the anomaly detection module.

또한, 상기 대체 모듈은, 상기 예비 윈도우를 상기 LSTM 기반의 생성부에 전달하고, 상기 LSTM 기반의 생성부로부터, 상기 LSTM 기반의 생성부가 상기 예비 윈도우를 기초로 생성한 예비 가상 윈도우를 수신하고, 상기 수신된 예비 가상 윈도우를 상기 대체 윈도우로 결정할 수 있다.In addition, the replacement module transmits the preliminary window to the LSTM-based generator, and receives a preliminary virtual window generated by the LSTM-based generator based on the preliminary window from the LSTM-based generator, The received preliminary virtual window may be determined as the replacement window.

본 발명의 몇몇 실시예에 따른 이상 데이터 보정 방법은, 다변량 시계열 데이터를 수집하는 단계, 상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 단계, 이상 탐지 모듈을 이용하여 상기 전처리 결과로부터 이상 윈도우를 탐지하는 단계, 상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 단계 및 상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 생성하는 단계를 포함하되, 상기 대체 윈도우를 생성하는 단계는, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성하는 단계를 포함할 수 있다.An anomaly data correction method according to some embodiments of the present invention includes collecting multivariate time series data, performing preprocessing on the multivariate time series data using a sliding window technique to generate preprocessing results, and using an anomaly detection module. Detecting an abnormal window from the preprocessing result, predicting a preliminary window corresponding to the abnormal window based on a window immediately before the abnormal window, and providing a replacement window to replace the abnormal window based on the predicted preliminary window. Generating the replacement window may include generating the replacement window using the anomaly detection module.

본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치 및 방법은, 감지된 이상 윈도우의 직전 윈도우를 통해 해당 이상 윈도우에 대한 예비 윈도우를 예측하고, 예측된 예비 윈도우와 유사한 대체 윈도우를 통해 해당 이상 윈도우를 대체함으로써 데이터 품질을 향상시킬 수 있다.An abnormal data correction apparatus and method according to some embodiments of the present invention predicts a preliminary window for the abnormal window through the window immediately preceding the detected abnormal window, and predicts the abnormal window through a replacement window similar to the predicted preliminary window. Data quality can be improved by replacement.

보다 상세하게, 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치 및 방법은, 어텐션(Attention) 기반의 LSTM 모델 및 변수들 간의 상관계수 행렬을 이용하는 예측 모델을 이용하여 이상 윈도우에 대한 예비 윈도우를 예측하고, 예측된 예비 윈도우와 유사한 대체 윈도우를 생성하도록 VAE-GAN 모델의 생성자를 제어하고, 생성된 대체 윈도우를 통해 이상 윈도우를 대체함으로써 이상 데이터를 더욱 정확하고 빠르게 감지하고 보정할 수 있다.More specifically, the abnormal data correction apparatus and method according to some embodiments of the present invention predicts a preliminary window for an abnormal window using an attention-based LSTM model and a prediction model that uses a correlation coefficient matrix between variables. By controlling the generator of the VAE-GAN model to generate a replacement window similar to the predicted preliminary window, and replacing the abnormal window with the generated replacement window, abnormal data can be detected and corrected more accurately and quickly.

또한, 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치 및 방법은, 변수들 간의 상관계수 행렬을 이용하는 예측 모델을 이용하여 이상 윈도우에 대한 예비 윈도우를 예측함으로써, 다변량 시계열 데이터의 시간적 특성 뿐 아니라 변수들의 관계를 고려할 수 있는 새로운 효과를 갖는다.In addition, the anomaly data correction apparatus and method according to some embodiments of the present invention predicts a preliminary window for an anomaly window using a prediction model using a correlation coefficient matrix between variables, thereby improving not only the temporal characteristics of multivariate time series data but also the variables. It has a new effect that can take into account their relationships.

상술한 내용과 더불어 본 발명의 구체적인 효과는 이하 발명을 실시하기 위한 구체적인 사항을 설명하면서 함께 기술한다.In addition to the above-described content, specific effects of the present invention are described below while explaining specific details for carrying out the invention.

도 1은 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 시스템의 구성을 개략적으로 설명하기 위한 도면이다.
도 2는 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치의 블록도이다.
도 3은 본 발명의 몇몇 실시예에 따른 전처리 모듈의 동작을 설명하기 위한 도면이다.
도 4는 본 발명의 몇몇 실시예에 따른 이상 탐지 모듈의 구성 및 동작을 설명하기 위한 도면이다.
도 5는 본 발명의 몇몇 실시예에 따른 예측 모듈의 구성 및 동작을 설명하기 위한 도면이다.
도 6은 본 발명의 몇몇 실시예에 따른 상관계수 행렬을 설명하기 위한 도면이다.
도 7은 본 발명의 몇몇 실시예에 따른 대체 모듈의 동작을 설명하기 위한 도면이다.
도 8은 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 과정을 설명하기 위한 흐름도이다.
1 is a diagram schematically illustrating the configuration of an abnormal data correction system according to some embodiments of the present invention.
Figure 2 is a block diagram of an abnormal data correction device according to some embodiments of the present invention.
Figure 3 is a diagram for explaining the operation of a preprocessing module according to some embodiments of the present invention.
Figure 4 is a diagram for explaining the configuration and operation of an anomaly detection module according to some embodiments of the present invention.
Figure 5 is a diagram for explaining the configuration and operation of a prediction module according to some embodiments of the present invention.
Figure 6 is a diagram for explaining a correlation coefficient matrix according to some embodiments of the present invention.
Figure 7 is a diagram for explaining the operation of a replacement module according to some embodiments of the present invention.
Figure 8 is a flowchart for explaining an abnormal data correction process according to some embodiments of the present invention.

본 명세서 및 특허청구범위에서 사용된 용어나 단어는 일반적이거나 사전적인 의미로 한정하여 해석되어서는 아니된다. 발명자가 그 자신의 발명을 최선의 방법으로 설명하기 위해 용어나 단어의 개념을 정의할 수 있다는 원칙에 따라, 본 발명의 기술적 사상과 부합하는 의미와 개념으로 해석되어야 한다. 또한, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명이 실현되는 하나의 실시예에 불과하고, 본 발명의 기술적 사상을 전부 대변하는 것이 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 및 응용 가능한 예들이 있을 수 있음을 이해하여야 한다.Terms or words used in this specification and patent claims should not be construed as limited to their general or dictionary meaning. According to the principle that the inventor can define terms or word concepts in order to explain his or her invention in the best way, it should be interpreted with a meaning and concept consistent with the technical idea of the present invention. In addition, the embodiments described in this specification and the configurations shown in the drawings are only one embodiment of the present invention and do not completely represent the technical idea of the present invention, so they cannot be replaced at the time of filing the present application. It should be understood that there may be various equivalents, variations, and applicable examples.

본 명세서 및 특허청구범위에서 사용된 제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. '및/또는' 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, A, and B used in the present specification and claims may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, a first component may be named a second component, and similarly, the second component may also be named a first component without departing from the scope of the present invention. The term 'and/or' includes any of a plurality of related stated items or a combination of a plurality of related stated items.

본 명세서 및 특허청구범위에서 사용된 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서 "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the specification and claims are merely used to describe specific embodiments and are not intended to limit the invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "include" or "have" should be understood as not precluding the existence or addition possibility of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification. .

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해서 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as generally understood by a person of ordinary skill in the technical field to which the present invention pertains.

일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and unless explicitly defined in the present application, should not be interpreted in an ideal or excessively formal sense. No.

또한, 본 발명의 각 실시예에 포함된 각 구성, 과정, 공정 또는 방법 등은 기술적으로 상호 간 모순되지 않는 범위 내에서 공유될 수 있다. Additionally, each configuration, process, process, or method included in each embodiment of the present invention may be shared within the scope of not being technically contradictory to each other.

이하에서는, 도 1 내지 도 8을 참조하여 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치 및 방법에 대해 설명하기로 한다.Hereinafter, an abnormal data correction device and method according to some embodiments of the present invention will be described with reference to FIGS. 1 to 8.

도 1은 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 시스템의 구성을 개략적으로 설명하기 위한 도면이다.1 is a diagram schematically illustrating the configuration of an abnormal data correction system according to some embodiments of the present invention.

도 1을 참조하면, 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 시스템(1)은 외부 데이터베이스(100), 이상 데이터 보정 장치(200) 및 통신망(300)을 포함할 수 있다.Referring to FIG. 1, an abnormal data correction system 1 according to some embodiments of the present invention may include an external database 100, an abnormal data correction device 200, and a communication network 300.

외부 데이터베이스(100)는 이상 데이터 보정의 대상이 되는 기초 데이터를 저장, 관리 및/또는 전송하는 데이터베이스일 수 있다. 일 예로, 외부 데이터베이스(100)는 컴퓨터, 노트북 PC, 모바일 기기, 웨어러블 기기 등의 다양한 형태의 전자 기기, 워크스테이션(workstation), 데이터 센터, 인터넷 데이터 센터(internet data center(IDC)), DAS(direct attached storage) 시스템, SAN(storage area network) 시스템, NAS(network attached storage) 시스템 및 RAID(redundant array of inexpensive disks, or redundant array of independent disks) 시스템 등의 형태일 수 있으나, 본 발명의 실시예가 이에 제한되는 것은 아니다.The external database 100 may be a database that stores, manages, and/or transmits basic data that is the subject of abnormal data correction. As an example, the external database 100 may be used in various types of electronic devices such as computers, laptop PCs, mobile devices, wearable devices, workstations, data centers, internet data centers (IDC), and DAS ( It may be in the form of a direct attached storage) system, a storage area network (SAN) system, a network attached storage (NAS) system, and a redundant array of inexpensive disks, or redundant array of independent disks (RAID) system, but embodiments of the present invention It is not limited to this.

몇몇 예로, 외부 데이터베이스(100)는 이상 데이터 보정 장치(200)가 이상 데이터 보정을 수행하기 위한 기초 데이터를 이상 데이터 보정 장치(200)로 전송할 수 있다. 다시 말하면, 이상 데이터 보정 장치(200)는 외부 데이터베이스(100)로부터 이상 데이터 보정과 관련된 기초 데이터를 수신할 수 있다.In some examples, the external database 100 may transmit basic data for the abnormal data correction device 200 to perform abnormal data correction to the abnormal data correction device 200. In other words, the abnormal data correction device 200 may receive basic data related to abnormal data correction from the external database 100.

몇몇 예로, 기초 데이터는 다변량 시계열 데이터를 포함할 수 있다. 다변량 시계열 데이터는 시간에 따라 관찰되는 둘 이상의 변수로 구성된 데이터를 의미할 수 있다. 다시 말하면, 다변량 시계열 데이터는 적어도 둘 이상의 변수를 포함하고 있는 시계열 데이터를 의미할 수 있다. 이때, 다변량 시계열 데이터는 기상 데이터, 증권시장 데이터, 의료 모니터링 데이터 등 다양한 산업 환경에서 측정될 수 있다. In some examples, the underlying data may include multivariate time series data. Multivariate time series data can refer to data consisting of two or more variables observed over time. In other words, multivariate time series data may mean time series data containing at least two or more variables. At this time, multivariate time series data can be measured in various industrial environments such as weather data, stock market data, and medical monitoring data.

다변량 시계열 데이터는 정상 데이터와 이상(Abnormal) 데이터를 포함할 수 있다. 다시 말하면, 다변량 시계열 데이터는 정상 데이터와 함께, 이상 데이터 보정의 대상이 되는 이상 데이터를 포함하고 있는 데이터일 수 있다.Multivariate time series data may include normal and abnormal data. In other words, multivariate time series data may be data that includes abnormal data that is subject to abnormal data correction along with normal data.

이하, 설명의 편의를 위해 기초 데이터는 다변량 시계열 데이터인 경우를 가정하여 설명하기로 한다.Hereinafter, for convenience of explanation, it will be explained assuming that the basic data is multivariate time series data.

이상 데이터 보정 장치(200)는 외부 데이터베이스(100)로부터 수신된 다변량 시계열 데이터를 이용하여 이상 데이터 보정을 수행할 수 있다. 다시 말하면, 이상 데이터 보정 장치(200)는 외부 데이터베이스(100)로부터 수신된 다변량 시계열 데이터에서 이상 데이터를 검색한 후, 이를 보정 및/또는 대체할 수 있다.The abnormal data correction device 200 may perform abnormal data correction using multivariate time series data received from the external database 100. In other words, the abnormal data correction device 200 may search for abnormal data in multivariate time series data received from the external database 100 and then correct and/or replace the abnormal data.

몇몇 예로, 이상 데이터 보정 장치(200)는 다변량 시계열 데이터를 전처리하여 전처리 결과를 생성하고, 생성된 전처리 결과에서 이상 데이터를 검색하여 이를 보정할 수 있다.As some examples, the abnormal data correction device 200 may preprocess multivariate time series data to generate preprocessing results, search for abnormal data in the generated preprocessing results, and correct it.

우선, 이상 데이터 보정 장치(200)는 다변량 시계열 데이터를 전처리하여 전처리 결과를 생성할 수 있다. 예를 들어, 이상 데이터 보정 장치(200)는 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 적용하여 전처리 결과를 생성할 수 있다. 슬라이딩 윈도우 기법은 연속된 데이터 포인트의 고정된 크기의 부분 집합을 차례로 선택하는 방식의 프로세스를 의미한다. 슬라이딩 윈도우 기법은 특히 시계열 데이터의 특성과 패턴을 파악하는데 주로 활용된다. 이때, 슬라이딩 윈도우 기법에서 이용될 윈도우 크기, 슬라이딩 간격, 변수 등은 자유로이 설정되거나 변경될 수 있다. First, the abnormal data correction device 200 may preprocess multivariate time series data and generate preprocessing results. For example, the abnormal data correction device 200 may generate preprocessing results by applying a sliding window technique to multivariate time series data. The sliding window technique refers to the process of sequentially selecting fixed-sized subsets of consecutive data points. The sliding window technique is especially used to identify the characteristics and patterns of time series data. At this time, the window size, sliding interval, variables, etc. to be used in the sliding window technique can be freely set or changed.

이어서, 이상 데이터 보정 장치(200)는 전처리 결과를 기초로 이상 데이터를 탐지하여 이를 보정하거나 대체할 수 있다.Subsequently, the abnormal data correction device 200 may detect abnormal data based on the preprocessing result and correct or replace it.

예를 들어, 이상 데이터 보정 장치(200)는 전처리 결과로부터 이상 윈도우를 탐지하고, 탐지된 이상 윈도우의 직전 윈도우를 기초로 이상 윈도우에 상응하는 예비 윈도우를 예측하고, 예측된 예비 윈도우를 기초로 이상 윈도우를 대체할 대체 윈도우를 결정할 수 있다.For example, the abnormal data correction device 200 detects an abnormal window from the preprocessing result, predicts a preliminary window corresponding to the abnormal window based on the window immediately before the detected abnormal window, and predicts an abnormal window based on the predicted preliminary window. You can decide on a replacement window to replace the window.

이때, 본 발명의 이상 데이터 보정 장치(200)는 딥러닝 기술을 이용하여 이상 데이터 탐지 및/또는 보정을 수행할 수 있다. 이때, 딥러닝 기술을 이용하는 이상 데이터 보정 장치(200)는 머신 러닝(machine learning)을 기반으로 학습될 수 있다.At this time, the abnormal data correction device 200 of the present invention can detect and/or correct abnormal data using deep learning technology. At this time, the abnormal data correction device 200 using deep learning technology may be learned based on machine learning.

보다 자세히 설명하자면, 머신 러닝(Machine Learning)의 일종인 딥러닝(Deep Learning) 기술은 데이터를 기반으로 다단계로 깊은 수준까지 내려가 학습하는 것이다. 즉, 딥러닝은, 단계를 높여가면서 복수의 데이터들 로부터 핵심적인 데이터를 추출하는 머신 러닝 알고리즘의 집합을 나타낸다.To explain in more detail, Deep Learning technology, a type of Machine Learning, learns at a deep level in multiple stages based on data. In other words, deep learning represents a set of machine learning algorithms that extract key data from a plurality of data at increasing levels.

이상 데이터 보정 장치(200)는 공지된 다양한 딥러닝 구조를 이용할 수 있다. 예를 들어, 이상 데이터 보정 장치(200)는 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network), GNN(Graph Neural Network), GAN (Generative Adversarial Network), Transformer, Autoencoder, LSTM(Long Short Term Memory) 등의 구조를 이용할 수 있다.The abnormal data correction device 200 can use various known deep learning structures. For example, the abnormal data correction device 200 may include a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), a Deep Belief Network (DBN), a Graph Neural Network (GNN), a Generative Adversarial Network (GAN), a Transformer, and an Autoencoder. Structures such as LSTM (Long Short Term Memory) can be used.

구체적으로, CNN(Convolutional Neural Network)은 사람이 물체를 인식할 때 물체의 기본적인 특징들을 추출한 다음 뇌 속에서 복잡한 계산을 거쳐 그 결과를 기반으로 물체를 인식한다는 가정을 기반으로 만들어진 사람의 뇌 기능을 모사한 모델이다. CNN은 공지된 LeNet, AlexNet, VGGNet, GoogleNet, ResNet 등의 구조를 포함할 수 있으나, 이에 제한되는 것은 아니다.Specifically, CNN (Convolutional Neural Network) is a human brain function created based on the assumption that when a person recognizes an object, he or she extracts the basic features of the object and then performs complex calculations in the brain to recognize the object based on the results. It is a model that is copied. CNN may include, but is not limited to, known structures such as LeNet, AlexNet, VGGNet, GoogleNet, and ResNet.

RNN(Recurrent Neural Network)은 자연어 처리 등에 많이 이용되며, 시간의 흐름에 따라 변하는 시계열 데이터(Time-series data) 처리에 효과적인 구조로 매 순간마다 레이어를 쌓아 올려 인공신경망 구조를 구성할 수 있다.RNN (Recurrent Neural Network) is widely used in natural language processing, and is an effective structure for processing time-series data that changes over time. It can build an artificial neural network structure by stacking layers at every moment.

DBN(Deep Belief Network)은 딥러닝 기법인 RBM(Restricted Boltzman Machine)을 다층으로 쌓아 구성되는 딥러닝 구조이다. RBM(Restricted Boltzman Machine) 학습을 반복하여 일정 수의 레이어가 되면, 해당 개수의 레이어를 가지는 DBN(Deep Belief Network)이 구성될 수 있다.DBN (Deep Belief Network) is a deep learning structure composed of multiple layers of RBM (Restricted Boltzman Machine), a deep learning technique. If a certain number of layers are reached by repeating Restricted Boltzman Machine (RBM) learning, a Deep Belief Network (DBN) with the corresponding number of layers can be constructed.

GNN(Graphic Neural Network, 그래픽 인공신경망, 이하, GNN)는 특정 파라미터 간 매핑된 데이터를 기초로 모델링된 모델링 데이터를 이용하여, 모델링 데이터 간의 유사도와 특징점을 도출하는 방식으로 구현된 인공신경망 구조를 나타낸다.GNN (Graphic Neural Network) refers to an artificial neural network structure implemented by deriving similarities and feature points between modeling data using modeling data modeled based on data mapped between specific parameters. .

GAN(Generative Adversarial Network, 적대적 생성 신경망, 이하 GAN)은 생성신경망과 구별신경망을 이용하여, 입력된 데이터와 유사한 형태의 새로운 데이터를 만들어내는 인공신경망 구조를 나타낸다. GAN은 공지된 DCGAN(Deep Convolutional GAN), CGAN (Conditional GAN), WGAN (Wasserstein GAN), StyleGAN (Style-Based GAN), CycleGAN 등을 포함할 수 있으나, 본 발명의 실시예가 이에 제한되는 것은 아니다.GAN (Generative Adversarial Network, hereinafter GAN) represents an artificial neural network structure that uses generative neural networks and discriminative neural networks to generate new data in a similar form to input data. GAN may include known deep convolutional GAN (DCGAN), Conditional GAN (CGAN), Wasserstein GAN (WGAN), Style-Based GAN (StyleGAN), CycleGAN, etc., but embodiments of the present invention are not limited thereto.

Transformer(트랜스포머)는 어텐션을 활용한 인코더-디코더 구조의 인공신경망으로서, 입력 시퀀스와 출력 시퀀스 간의 전체적인 의미를 파악할 수 있다. 트랜스포머는, 어텐션(Attention) 메커니즘을 이용하여 입력 시퀀스의 모든 요소가 출력 시퀀스에 영향을 주도록 하며, 이를 통해 인코더와 디코더 모두 시퀀스 전체를 고려할 수 있다. 트랜스포머는, 자연어, 시계열 데이터뿐만 아니라, 이미지를 패치화 하여 입력으로 사용할 수 있다.Transformer is an artificial neural network with an encoder-decoder structure that utilizes attention, and can grasp the overall meaning between the input sequence and output sequence. The transformer uses an attention mechanism to ensure that all elements of the input sequence affect the output sequence, allowing both the encoder and decoder to consider the entire sequence. Transformers can patch images and use them as input, as well as natural language and time series data.

Autoencoder(오토인코더)는 데이터의 특징을 추출하고 재구성하는 역할을 수행하는 딥러닝 구조이다. 대표적으로 오토인코더는 입력값을 압축하는 인코더와, 압축된 데이터를 복원하는 디코더를 포함한다. 인코더는 입력값을 저차원의 잠재 벡터(latent vector)로 변환하고, 디코더는 잠재 벡터를 입력값과 동일한 차원으로 복원한다. 이 때 인코더와 디코더는 각각 다층 퍼셉트론(MLP)으로 구성될 수 있다. 오토인코더를 학습할 때에는 입력 데이터를 입력하고, 출력값과 입력값 간의 차이를 최소화하는 방향으로 가중치와 편향을 학습시킨다. 이렇게 학습된 오토인코더는 입력 데이터의 특징을 잘 추출하고, 잡음이 있는 입력 데이터를 복원할 수 있다. 오토인코더는 주로 데이터 압축, 차원 축소, 잡음 제거, 데이터 생성 등의 분야에서 활용되며, 또한, 이미지 인식, 자연어 처리, 음성 인식 등의 분야에서도 활용될 수 있다.Autoencoder is a deep learning structure that extracts and reconstructs data features. Typically, an autoencoder includes an encoder that compresses input values and a decoder that restores compressed data. The encoder converts the input value into a low-dimensional latent vector, and the decoder restores the latent vector to the same dimension as the input value. At this time, the encoder and decoder may each be composed of a multilayer perceptron (MLP). When learning an autoencoder, input data is input, and weights and biases are learned to minimize the difference between output and input values. The autoencoder learned in this way can well extract the features of input data and restore noisy input data. Autoencoders are mainly used in fields such as data compression, dimensionality reduction, noise removal, and data generation, and can also be used in fields such as image recognition, natural language processing, and voice recognition.

LSTM은 전술한 RNN 구조를 일부 변형한 뉴럴 네트워크이다. RNN은 현재 시점과 이전 시점을 연결한 구조이기 때문에, 입력값이 길어지면 과거의 정보가 소실되는 장기 의존성(Long-term Dependency) 문제가 발생할 수 있다. LSTM은 이러한 장기 의존성 문제를 해결하기 위해 RNN의 구조를 일부 변형한 모델이다. LSTM is a neural network that partially modifies the RNN structure described above. Because RNN is a structure that connects the current point and the previous point in time, if the input value becomes long, a long-term dependency problem in which past information is lost may occur. LSTM is a model that partially modifies the structure of RNN to solve this long-term dependency problem.

한편, 이상 데이터 보정 장치(200)의 인공신경망 학습은 주어진 입력에 대하여 원하는 출력이 나오도록 노드간 연결선의 웨이트(weight)를 조정(필요한 경우 바이어스(bias) 값도 조정)함으로써 이루어질 수 있다. 또한, 인공신경망은 학습에 의해 웨이트(weight) 값을 지속적으로 업데이트 시킬 수 있다. 또한, 인공신경망의 학습에는 역전파(Back Propagation) 등의 방법이 사용될 수 있다.Meanwhile, artificial neural network learning of the abnormal data correction device 200 can be accomplished by adjusting the weight of the connection line between nodes (adjusting the bias value, if necessary) so that a desired output is produced for a given input. Additionally, artificial neural networks can continuously update weight values through learning. Additionally, methods such as back propagation can be used to learn artificial neural networks.

이때, 인공신경망의 머신 러닝 방법으로는 자율학습(unsupervised learning), 준지도학습(semi-supervised learning), 지도학습(supervised learning)등이 사용될 수 있다. 또한, 이상 데이터 보정 장치(200)는 설정에 따라 학습 후 분석 데이터를 출력하기 위한 인공신경망 구조를 자동 업데이트하도록 제어될 수 있다.At this time, unsupervised learning, semi-supervised learning, and supervised learning can be used as machine learning methods for artificial neural networks. Additionally, the abnormal data correction device 200 may be controlled to automatically update the artificial neural network structure for outputting analysis data after learning according to settings.

본 발명의 이상 데이터 보정 장치(200)는 전술한 딥러닝 구조들 중 일부를 이용, 활용, 변경 및/또는 수정하여 이상 데이터를 탐지하고 보정할 수 있다.The abnormal data correction apparatus 200 of the present invention can detect and correct abnormal data by using, utilizing, changing, and/or modifying some of the deep learning structures described above.

일 예로, 이상 윈도우 탐지 과정에서 LSTM(Long Short Term Memory) 기반의 생성부(generator)가 이용될 수 있으며, 이는 예비 윈도우를 기초로 대체 윈도우를 결정하는 데에도 활용될 수 있다. 이렇듯, 본 발명의 이상 데이터 보정 장치(200)는 이상 윈도우 탐지에 이용된 생성부를 대체 윈도우 생성에도 이용하는 새로운 방식을 이용하여 이상 데이터 보정을 수행할 수 있다. For example, a Long Short Term Memory (LSTM)-based generator may be used in the abnormal window detection process, and this may also be used to determine a replacement window based on a preliminary window. As such, the abnormal data correction device 200 of the present invention can perform abnormal data correction using a new method in which the generator used to detect an abnormal window is also used to generate a replacement window.

다른 예로, 본 발명의 이상 데이터 보정 장치(200)는 예비 윈도우 예측 과정에서 어텐션(Attention) 기반의 LSTM 모델을 이용하는 것과 함께, 전처리 결과의 배치 단위마다의 변수 간 상관계수를 파악함으로써 예비 윈도우를 예측할 수 있고, 이를 통해 변수 간 상관관계를 고려한 예비 윈도우 예측이 가능하다.As another example, the abnormal data correction device 200 of the present invention uses an attention-based LSTM model in the preliminary window prediction process and predicts the preliminary window by determining the correlation coefficient between variables for each batch unit of the preprocessing result. This allows preliminary window prediction considering the correlation between variables.

이상 데이터 보정 장치(200)의 이상 데이터 보정 과정에 대한 자세한 설명은 후술하기로 한다.A detailed description of the abnormal data correction process of the abnormal data correction device 200 will be described later.

도 1에는 이상 데이터 보정 장치(200)가 외부 데이터베이스(100)로부터 다변량 시계열 데이터를 수신하고, 수신된 다변량 시계열 데이터를 이용하여 이상 데이터 보정을 수행하는 것으로 도시되어 있으나, 본 발명의 실시예가 이에 제한되는 것은 아니다. 예를 들어, 이상 데이터 보정 장치(200)는 외부 데이터베이스(100)로부터 다변량 시계열 데이터를 수신하지 않고도, 이상 데이터 보정 장치(200)내에 저장된 다변량 시계열 데이터를 이용하여 이상 데이터 보정을 수행할 수도 있다. In Figure 1, the abnormal data correction device 200 is shown as receiving multivariate time series data from the external database 100 and performing abnormal data correction using the received multivariate time series data, but the embodiment of the present invention is limited to this. It doesn't work. For example, the abnormal data correction device 200 may perform abnormal data correction using multivariate time series data stored in the abnormal data correction device 200 without receiving multivariate time series data from the external database 100.

한편, 통신망(300)은 외부 데이터베이스(100)와 이상 데이터 보정 장치(200)를 연결하는 역할을 수행한다. 즉, 통신망(300)은 외부 데이터베이스(100)와 이상 데이터 보정 장치(200)가 서로 데이터를 송수신할 수 있도록 접속 경로를 제공하는 통신망을 의미한다. 통신망(300)은 예컨대 LANs(Local Area Networks), WANs(Wide Area Networks), MANs(MetRoFolitan Area Networks), ISDNs(Integrated Service Digital Networks) 등의 유선 네트워크나, 무선 LANs, CDMA, 블루투스, 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.Meanwhile, the communication network 300 serves to connect the external database 100 and the abnormal data correction device 200. In other words, the communication network 300 refers to a communication network that provides a connection path so that the external database 100 and the abnormal data correction device 200 can transmit and receive data with each other. The communication network 300 is, for example, a wired network such as LANs (Local Area Networks), WANs (Wide Area Networks), MANs (MetRoFolitan Area Networks), and ISDNs (Integrated Service Digital Networks), or wireless LANs, CDMA, Bluetooth, satellite communication, etc. may cover wireless networks, but the scope of the present invention is not limited thereto.

이하, 도 2를 더 참조하여 본 발명의 이상 데이터 보정 장치(200)에 대하여 더 자세히 설명하기로 한다.Hereinafter, the abnormal data correction device 200 of the present invention will be described in more detail with further reference to FIG. 2.

도 2는 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치의 블록도이다.Figure 2 is a block diagram of an abnormal data correction device according to some embodiments of the present invention.

도 1 및 도 2를 참조하면, 이상 데이터 보정 장치(200)는 다변량 시계열 데이터(Multivariate Time Series Data, 이하 “MTSD”라 한다)를 수신한 후, 수신된 다변량 시계열 데이터(MTSD)에 대한 보정 결과인 보정 데이터(MTSD_correct)를 생성하여 출력할 수 있다. Referring to FIGS. 1 and 2, the abnormal data correction device 200 receives multivariate time series data (hereinafter referred to as “MTSD”) and then provides a correction result for the received multivariate time series data (MTSD). Correction data (MTSD_correct) can be generated and output.

구체적으로, 이상 데이터 보정 장치(200)는 데이터 수집 모듈(210), 전처리 모듈(220), 이상 탐지 모듈(230), 예측 모듈(240) 및 대체 모듈(250)을 포함할 수 있다.Specifically, the abnormal data correction device 200 may include a data collection module 210, a pre-processing module 220, an abnormality detection module 230, a prediction module 240, and a replacement module 250.

데이터 수집 모듈(210)은 다변량 시계열 데이터(MTSD)를 수집할 수 있다. 다시 말하면, 데이터 수집 모듈(210)은 외부 데이터베이스(100)로부터 이상 데이터 보정과 관련한 다변량 시계열 데이터(MTSD)를 수신할 수 있다. The data collection module 210 may collect multivariate time series data (MTSD). In other words, the data collection module 210 may receive multivariate time series data (MTSD) related to abnormal data correction from the external database 100.

다변량 시계열 데이터(MTSD)는 시간에 따라 관찰되는 둘 이상의 변수로 구성된 데이터를 의미할 수 있다. 다시 말하면, 다변량 시계열 데이터(MTSD)는 적어도 둘 이상의 변수를 포함하고 있는 시계열 데이터를 의미할 수 있다. 이때, 다변량 시계열 데이터(MTSD)는 기상 데이터, 증권시장 데이터, 의료 모니터링 데이터 등 다양한 산업 환경에서 측정될 수 있다. Multivariate time series data (MTSD) can refer to data consisting of two or more variables observed over time. In other words, multivariate time series data (MTSD) may refer to time series data containing at least two or more variables. At this time, multivariate time series data (MTSD) can be measured in various industrial environments such as weather data, stock market data, and medical monitoring data.

다변량 시계열 데이터(MTSD)는 정상 데이터와 이상(Abnormal) 데이터를 포함할 수 있다. 다시 말하면, 다변량 시계열 데이터(MTSD)는 정상 데이터와 함께, 이상 데이터 보정의 대상이 되는 이상 데이터를 포함하고 있는 데이터일 수 있다.Multivariate time series data (MTSD) can include normal and abnormal data. In other words, multivariate time series data (MTSD) may be data that includes abnormal data that is the subject of abnormal data correction along with normal data.

데이터 수집 모듈(210)은 수신된 다변량 시계열 데이터(MTSD)를 이상 데이터 보정 장치(200)내의 다른 구성요소에 전달할 수 있다. 예컨대, 데이터 수집 모듈(210)은 다변량 시계열 데이터(MTSD)를 전처리 모듈(220) 및 대체 모듈(250) 등에 전달할 수 있으나, 본 발명이 이에 제한되는 것은 아니다.The data collection module 210 may transmit the received multivariate time series data (MTSD) to other components within the anomaly data correction device 200. For example, the data collection module 210 may transmit multivariate time series data (MTSD) to the preprocessing module 220 and the replacement module 250, but the present invention is not limited thereto.

데이터 수집 모듈(210)에는 다양한 통신 모듈이 이용될 수 있으며, 통신망(도 1의 300)을 통해 외부 데이터베이스(100)와 이상 데이터 보정 장치(200) 사이의 데이터 교환을 수행할 수 있다. A variety of communication modules may be used in the data collection module 210, and data may be exchanged between the external database 100 and the abnormal data correction device 200 through a communication network (300 in FIG. 1).

전처리 모듈(220)은 다변량 시계열 데이터(MTSD)를 기초로 전처리 결과(Preprocessing Result, 이하 "PR"이라 한다)를 생성할 수 있다. 다시 말하면, 전처리 모듈(220)은 데이터 수집 모듈(210)로부터 전달 받은 다변량 시계열 데이터(MTSD)에 대한 전처리를 수행하여 전처리 결과(PR)를 생성할 수 있다.The preprocessing module 220 may generate a preprocessing result (hereinafter referred to as “PR”) based on multivariate time series data (MTSD). In other words, the preprocessing module 220 may perform preprocessing on the multivariate time series data (MTSD) received from the data collection module 210 to generate a preprocessing result (PR).

몇몇 예로, 전처리 모듈(220)은 다변량 시계열 데이터(MTSD)에 대하여 슬라이딩 윈도우 기법을 이용한 전처리를 수행하여 전처리 결과(PR)를 생성할 수 있다. As some examples, the preprocessing module 220 may perform preprocessing using a sliding window technique on multivariate time series data (MTSD) to generate a preprocessing result (PR).

전처리 모듈(220)의 슬라이딩 윈도우 기법을 이용한 전처리 과정을 도 3을 참조하여 자세히 설명한다.The preprocessing process using the sliding window technique of the preprocessing module 220 will be described in detail with reference to FIG. 3.

도 3은 본 발명의 몇몇 실시예에 따른 전처리 모듈의 동작을 설명하기 위한 도면이다.Figure 3 is a diagram for explaining the operation of a preprocessing module according to some embodiments of the present invention.

도 2 및 도 3을 참조하면, 전처리 모듈(220)은 다변량 시계열 데이터(MTSD)에 대하여 슬라이딩 윈도우 기법을 이용한 전처리를 수행하여 전처리 결과(PR)를 생성할 수 있다. Referring to Figures 2 and 3, the preprocessing module 220 may perform preprocessing using a sliding window technique on multivariate time series data (MTSD) to generate a preprocessing result (PR).

도 3에는, 슬라이딩 윈도우 기법 적용에 따라, 전처리 결과(PR)에 복수개의 윈도우가 설정된 것이 도시되어 있다. 이때, 슬라이딩 윈도우 기법에서 이용되는 윈도우 크기, 슬라이딩 간격, 변수 등은 자유로이 설정되거나 변경될 수 있다. Figure 3 shows that a plurality of windows are set in the preprocessing result (PR) according to the application of the sliding window technique. At this time, the window size, sliding interval, variables, etc. used in the sliding window technique can be freely set or changed.

슬라이딩 윈도우 기법은 시계열 데이터를 전처리하는데 주로 이용되는 기법이고 이에 대한 자세한 설명은 이미 공지기술 영역인 바, 여기서는 생략하기로 한다.The sliding window technique is a technique mainly used to preprocess time series data, and a detailed description of it is already a known technology area, so it will be omitted here.

다시 도 1 및 도 2를 참조하면, 전처리 모듈(220)은 전술한 슬라이딩 윈도우 기법 외에도, 다변량 시계열 데이터(MTSD)를 전처리하기 위한 다양한 방식을 이용하여 전처리를 수행할 수 있다. 예를 들어, 전처리 모듈(220)은 정규화(Normalization), 표준화(Standardization), 결측치 처리(Missing Value Imputation), 차분(Differencing), 데이터 스무딩(Data Smoothing), 트렌드 제거(Trend Removal), 데이터 변환(Data Transformation) 등의 전처리를 수행할 수도 있다. Referring again to FIGS. 1 and 2 , the preprocessing module 220 may perform preprocessing using various methods for preprocessing multivariate time series data (MTSD) in addition to the sliding window technique described above. For example, the preprocessing module 220 performs normalization, standardization, missing value imputation, differencing, data smoothing, trend removal, and data conversion ( Preprocessing such as Data Transformation can also be performed.

전처리 모듈(220)은 전처리 결과(PR)를 이상 탐지 모듈(230)에 전달할 수 있다.The preprocessing module 220 may transmit the preprocessing result (PR) to the anomaly detection module 230.

이상 탐지 모듈(230)은 수신된 전처리 결과(PR)를 기초로 이상 윈도우(Abnormal Window, 이하 "WIN_AB"라 한다)를 탐지할 수 있다. 다시 말하면, 이상 탐지 모듈(230)은 복수의 윈도우를 포함하는 전처리 결과(PR) 에서 이상 윈도우(WIN_AB)를 검색할 수 있다.The abnormality detection module 230 may detect an abnormal window (hereinafter referred to as “WIN_AB”) based on the received preprocessing result (PR). In other words, the anomaly detection module 230 may search for an anomaly window (WIN_AB) in the preprocessing result (PR) including a plurality of windows.

몇몇 예로, 이상 탐지 모듈(230)은 LSTM(Long Short Term Memory) 모델, VAE(Variational AutoEncoder) 모델 및 GAN(Generative Adversarial Network) 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 이상 윈도우(WIN_AB)를 탐지할 수 있다. As some examples, the anomaly detection module 230 uses an LSTM-based VAE-GAN model that combines a Long Short Term Memory (LSTM) model, a Variational AutoEncoder (VAE) model, and a Generative Adversarial Network (GAN) model to detect an anomaly window (WIN_AB). can be detected.

이때, 이상 탐지 모듈(230)은 LSTM 기반의 인코딩부, LSTM 기반의 생성부, LSTM 기반의 판별부, 각 윈도우 별 이상 점수를 계산하는 계산부 등을 포함할 수 있다. At this time, the anomaly detection module 230 may include an LSTM-based encoding unit, an LSTM-based generation unit, an LSTM-based discriminator, and a calculation unit that calculates an anomaly score for each window.

이하, 도 4를 참조하여 본 발명의 이상 탐지 모듈(230)이 이상 윈도우(WIN_AB)를 탐지하는 방법에 대하여 자세히 설명하기로 한다.Hereinafter, with reference to FIG. 4, a detailed description will be given of how the anomaly detection module 230 of the present invention detects an anomaly window (WIN_AB).

도 4는 본 발명의 몇몇 실시예에 따른 이상 탐지 모듈의 구성 및 동작을 설명하기 위한 도면이다.Figure 4 is a diagram for explaining the configuration and operation of an anomaly detection module according to some embodiments of the present invention.

도 2 및 도 4를 참조하면, 이상 탐지 모듈(230)은 전처리 결과(PR)로부터 이상 윈도우(WIN_AB)를 탐지할 수 있다. 몇몇 예로, 이상 탐지 모듈(230)은 LSTM 모델, VAE 모델 및 GAN 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 이상 윈도우(WIN_AB)를 탐지할 수 있다. Referring to FIGS. 2 and 4 , the anomaly detection module 230 may detect an anomaly window (WIN_AB) from the preprocessing result (PR). As some examples, the anomaly detection module 230 may detect an anomaly window (WIN_AB) using an LSTM-based VAE-GAN model that combines an LSTM model, a VAE model, and a GAN model.

구체적으로, 이상 탐지 모듈(230)은 인코딩부(231), 생성부(232), 판별부(233), 각 윈도우 별 이상 점수를 계산하는 계산부(234) 등을 포함할 수 있다. 이때, 인코딩부(231), 생성부(232) 및 판별부(233)는 LSTM 기반의 동작 모듈일 수 있다. Specifically, the anomaly detection module 230 may include an encoding unit 231, a generation unit 232, a determination unit 233, and a calculation unit 234 that calculates an anomaly score for each window. At this time, the encoding unit 231, the generating unit 232, and the determining unit 233 may be LSTM-based operation modules.

인코딩부(231)는 전처리 결과(PR)를 수신하고, 수신된 전처리 결과(PR)로부터 평균 (μ) 과 분산(σ)을 추출하며, 추출된 평균(μ)과 분산(σ)을 잠재 벡터 공간(Z)으로 맵핑할 수 있다. 이때, 인코딩부(231)는 공지된 뉴럴 네트워크인 오토인코터(Autoencoder)의 인코더의 역할을 수행할 수 있다.The encoding unit 231 receives the preprocessing result (PR), extracts the mean (μ) and variance (σ) from the received preprocessing result (PR), and converts the extracted mean (μ) and variance (σ) into a latent vector. It can be mapped into space (Z). At this time, the encoding unit 231 may function as an encoder for Autoencoder, a known neural network.

생성부(232)는 잠재 벡터 공간(Z)으로부터 출력된 잠재 벡터(z)를 수신하고, 수신된 잠재 벡터(z)를 이용하여 실제 윈도우(WIN_real), 즉 전처리 결과(PR)와 유사한 가상 윈도우(WIN_virtual)를 생성할 수 있다. 이때, 생성부(232)는 공지된 뉴럴 네트워크인 GAN의 생성자(Generator)의 역할을 수행할 수 있다. 생성부(232)의 입력인 잠재 벡터(z)는 오토인코더에서 인코더의 출력이며 디코더의 입력인 잠재 벡터(Latent Vector)로 호칭될 수도 있다.The generator 232 receives a latent vector (z) output from the latent vector space (Z), and uses the received latent vector (z) to create a real window (WIN_real), that is, a virtual window similar to the preprocessing result (PR). (WIN_virtual) can be created. At this time, the generator 232 may serve as a generator of GAN, a known neural network. The latent vector (z), which is the input of the generator 232, is the output of the encoder in the autoencoder and may also be called a latent vector, which is the input of the decoder.

판별부(233)는, 전처리 결과(PR)인 실제 윈도우(WIN_real)와 생성부(232)로부터 생성된 가상 윈도우(WIN_virtual)를 구별할 수 있다. 다시 말하면, 판별부(233)는 실제 윈도우(WIN_real)와 가상 윈도우(WIN_virtual)를 비교하여, 실제 윈도우(WIN_real)와 가상 윈도우(WIN_virtual) 사이의 판별 오차(Discrimination Loss, 이하 "DL"이라 한다)를 판단할 수 있다. 판별부(233)는 공지된 뉴럴 네트워크인 GAN의 판별자(Discriminator)의 역할을 수행할 수 있다.The determination unit 233 may distinguish between the real window (WIN_real), which is the preprocessing result (PR), and the virtual window (WIN_virtual) generated by the generation unit 232. In other words, the determination unit 233 compares the real window (WIN_real) and the virtual window (WIN_virtual), and produces a discrimination loss (hereinafter referred to as “DL”) between the real window (WIN_real) and the virtual window (WIN_virtual). can be judged. The discriminator 233 may perform the role of a discriminator of GAN, a known neural network.

계산부(234)는 전처리 결과(PR)에 포함된 각 윈도우 별 이상 점수를 계산할 수 있다. 다시 말하면, 계산부(234)는 전처리 결과(PR)인 실제 윈도우(WIN_real)에 포함된 복수의 윈도우 별로, 각 윈도우의 이상 점수를 판단할 수 있다. The calculation unit 234 may calculate an abnormality score for each window included in the preprocessing result (PR). In other words, the calculation unit 234 may determine the abnormality score of each window for each of the plurality of windows included in the real window (WIN_real), which is the preprocessing result (PR).

몇몇 예로, 계산부(234)는 실제 윈도우(WIN_real)와 생성부(232)에서 생성된 가상 윈도우(WIN_virtual) 사이의 재구축 오차(Reconstruction Loss, 이하 "RL"이라 한다), 판별부(233)로부터 출력되는 판별 오차(DL) 등에 기초하여 각 윈도우의 이상 점수를 계산할 수 있다, In some examples, the calculation unit 234 calculates the reconstruction loss (hereinafter referred to as “RL”) between the real window (WIN_real) and the virtual window (WIN_virtual) generated by the generation unit 232, and the determination unit 233. The abnormality score of each window can be calculated based on the discrimination error (DL) output from, etc.

이때, 계산부(234)는 공지된 재구축 오차 판단 알고리즘 등을 이용하여 실제 윈도우(WIN_real)와 가상 윈도우(WIN_virtual) 사이의 재구축 오차(RL)를 판단할 수 있다. 이때, 공지된 재구축 오차 판단 알고리즘은 평균 제곱 오차(Mean Squaered Error), 평균 절대 오차(Mean Absolute Error), 코사인 유사도(Cosine Similarity) 등을 이용한 두 데이터 간 유사도를 측정하는 알고리즘일 수 있으나, 본 발명의 실시예가 이에 제한되는 것은 아니다.At this time, the calculation unit 234 may determine the reconstruction error (RL) between the real window (WIN_real) and the virtual window (WIN_virtual) using a known reconstruction error determination algorithm. At this time, the known reconstruction error determination algorithm may be an algorithm that measures the similarity between two data using Mean Squared Error, Mean Absolute Error, Cosine Similarity, etc., but this The embodiments of the invention are not limited thereto.

예를 들어, 계산부(234)는 실제 윈도우(WIN_real)와 가상 윈도우(WIN_virtual) 사이의 재구축 오차(RL) 및 판별부(233)로부터 출력되는 판별 오차(DL)를 조합하여 각 윈도우의 이상 점수를 계산할 수 있다,For example, the calculation unit 234 combines the reconstruction error (RL) between the real window (WIN_real) and the virtual window (WIN_virtual) and the discrimination error (DL) output from the determination unit 233 to determine the abnormality of each window. You can calculate the score,

예컨대, 계산부(234)는 재구축 오차(RL)와 판별 오차(DL)에 동일한 가중치를 두어 이상 점수를 계산하거나 또는 재구축 오차(RL)와 판별 오차(DL)에 서로 다른 가중치를 부여한 후 합산하여 이상 점수를 계산할 수 있다.For example, the calculation unit 234 calculates the anomaly score by giving the same weight to the reconstruction error (RL) and the discrimination error (DL), or gives different weights to the reconstruction error (RL) and the discrimination error (DL). The abnormality score can be calculated by adding up.

이어서, 계산부(234)는 이상 점수가 미리 정해진 임계치 이상인 윈도우를 이상 윈도우(WIN_AB)로 탐지할 수 있다. 다시 말하면, 계산부(234)는 전처리 결과(PR)인 실제 윈도우(WIN_real)에 포함된 복수의 윈도우 중에서, 이상 점수가 미리 정해진 임계치 이상인 윈도우를 이상 윈도우(WIN_AB)로 판단할 수 있다.Subsequently, the calculation unit 234 may detect a window with an abnormality score greater than or equal to a predetermined threshold as an abnormal window (WIN_AB). In other words, the calculation unit 234 may determine a window with an abnormality score greater than or equal to a predetermined threshold as an abnormal window (WIN_AB) among a plurality of windows included in the real window (WIN_real), which is the preprocessing result (PR).

다시 도 1 및 도 2를 참조하면, 이상 탐지 모듈(230)은 판단된 이상 윈도우(WIN_AB)에 관한 정보를 예측 모듈(240)로 전달할 수 있다.Referring again to FIGS. 1 and 2 , the anomaly detection module 230 may transmit information about the determined anomaly window (WIN_AB) to the prediction module 240 .

예측 모듈(240)은 수신된 이상 윈도우(WIN_AB)에 관한 정보를 기초로, 해당 이상 윈도우(WIN_AB)에 관한 예비 윈도우(Preliminary Window, 이하 "WIN_PRE"라 한다)를 예측할 수 있다. 다시 말하면, 예측 모듈(240)은 수신된 이상 윈도우(WIN_AB)를 기초로 해당 이상 윈도우(WIN_AB)에 상응하는 예비 윈도우(WIN_PRE)를 예측할 수 있다.The prediction module 240 may predict a preliminary window (hereinafter referred to as “WIN_PRE”) regarding the abnormal window (WIN_AB) based on the received information about the abnormal window (WIN_AB). In other words, the prediction module 240 may predict the preliminary window (WIN_PRE) corresponding to the abnormal window (WIN_AB) based on the received abnormal window (WIN_AB).

이때, 예비 윈도우(WIN_AB)는 해당 이상 윈도우(WIN_AB)를 직접 대체하지는 않으나, 해당 이상 윈도우(WIN_AB)를 대체할 대체 윈도우(Replacing Window, 이하 "WIN_REP"라 한다)를 생성하는데 이용되는 윈도우일 수 있다.At this time, the spare window (WIN_AB) does not directly replace the corresponding abnormal window (WIN_AB), but may be a window used to create a replacement window (Replacing Window, hereinafter referred to as “WIN_REP”) to replace the corresponding abnormal window (WIN_AB). there is.

몇몇 예로, 예측 모듈(240)은 이상 윈도우(WIN_AB)의 직전 윈도우를 기초로 예비 윈도우(WIN_PRE)를 예측할 수 있다.In some examples, the prediction module 240 may predict the preliminary window (WIN_PRE) based on the window immediately before the abnormal window (WIN_AB).

예를 들어, 예측 모듈(240)은 이상 윈도우(WIN_AB)의 직전 윈도우를 미리 학습된 뉴럴 네트워크에 입력하여 해당 이상 윈도우(WIN_AB)에 상응하는 예비 윈도우(WIN_PRE)를 예측할 수 있다.For example, the prediction module 240 may predict the preliminary window (WIN_PRE) corresponding to the abnormal window (WIN_AB) by inputting the window immediately preceding the abnormal window (WIN_AB) into a pre-trained neural network.

이하, 도 5 및 도 6을 참조하여 예측 모듈(240)이 예비 윈도우(WIN_PRE)를 예측하는 과정을 더욱 상세히 설명하기로 한다.Hereinafter, the process by which the prediction module 240 predicts the preliminary window (WIN_PRE) will be described in more detail with reference to FIGS. 5 and 6.

도 5는 본 발명의 몇몇 실시예에 따른 예측 모듈의 구성 및 동작을 설명하기 위한 도면이다. 도 6은 본 발명의 몇몇 실시예에 따른 상관계수 행렬을 설명하기 위한 도면이다.Figure 5 is a diagram for explaining the configuration and operation of a prediction module according to some embodiments of the present invention. Figure 6 is a diagram for explaining a correlation coefficient matrix according to some embodiments of the present invention.

도 5 및 도 6을 참조하면, 예측 모듈(240)은 제1 레이어(L1), 제2 레이어(L2) 및 출력 레이어(L_output)를 포함할 수 있다. 이때, 제1 레이어(L1)와 제2 레이어(L2)의 입력값은 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)일 수 있고, 출력 레이어(L_output)의 출력값은 예비 윈도우(WIN_PRE)일 수 있다.Referring to FIGS. 5 and 6 , the prediction module 240 may include a first layer (L1), a second layer (L2), and an output layer (L_output). At this time, the input value of the first layer (L1) and the second layer (L2) may be the window (WIN_LAST) immediately before the ideal window (WIN_AB), and the output value of the output layer (L_output) may be the preliminary window (WIN_PRE). .

제1 레이어(L1)는 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)를 입력값으로 하되, 어텐션(Attention) 기반의 LSTM 모델을 이용하여 제1 히든 유닛(HU1)을 생성할 수 있다. 이때, 제1 레이어(L1)는 공지된 어텐션(Attention) 기반의 LSTM 모델을 포함할 수 있으며, 구체적으로는 도 5에 도시된 바와 같이 LSTM 레이어(LSTM Layer), 어텐션 레이어(Attention Layer) 및 플래튼 레이어(Flatten Layer)를 포함할 수 있다.The first layer (L1) uses the window (WIN_LAST) immediately before the abnormal window (WIN_AB) as an input value, and can generate the first hidden unit (HU1) using an attention-based LSTM model. At this time, the first layer (L1) may include a known attention-based LSTM model, and specifically, as shown in FIG. 5, an LSTM layer (LSTM Layer), an attention layer (Attention Layer), and a flash It may include a flatten layer.

제2 레이어(L2)는 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)를 입력값으로 하되, 전처리 결과(PR)의 배치(batch) 단위 마다의 변수들(V1 내지 V3)의 상관계수를 계산하여 제2 히든 유닛(HU2)을 생성할 수 있다.The second layer (L2) takes the window (WIN_LAST) immediately before the ideal window (WIN_AB) as an input value, and calculates the correlation coefficient of the variables (V1 to V3) for each batch of the preprocessing result (PR). A second hidden unit (HU2) can be created.

몇몇 예로, 제2 레이어(L2)는 변수들(V1 내지 V3) 간의 상관계수 행렬(Correlation Coefficient Matrix, 이하 "CCM"이라 한다)을 도출하는 상관계수 도출부와, 도출된 상관계수 행렬이 입력되면 플래튼 데이터를 출력하는 플래튼 레이어(Flatten Layer)와, 플래튼 데이터가 입력되면 제2 히든 유닛(HU2)을 출력하는 완전 연결 레이어(Fully Connected Layer, FC Layer)를 포함할 수 있다.In some examples, the second layer (L2) includes a correlation coefficient deriving unit that derives a correlation coefficient matrix (hereinafter referred to as “CCM”) between variables (V1 to V3), and when the derived correlation coefficient matrix is input, It may include a platen layer (Flatten Layer) that outputs platen data, and a fully connected layer (FC Layer) that outputs a second hidden unit (HU2) when platen data is input.

이때, 상관계수 도출부는 피어슨(Pearson) 상관계수를 이용하여 상관계수 행렬(CCM)을 도출할 수 있다. At this time, the correlation coefficient deriving unit may derive a correlation coefficient matrix (CCM) using the Pearson correlation coefficient.

상관계수 행렬(CCM)은 각 변수들(V1 내지 V3) 간의 관계 정보를 포함하고 있는 행렬 데이터일 수 있다. 도출된 상관계수 행렬(CCM)의 몇몇 예는 도 6에 도시되어 있다. 상관계수 행렬(CCM)에서는 특정 변수가 다른 변수들과의 상관관계가 높다면 1 또는 -1에 가까운 수치를 보여줄 것이고, 다른 변수들과 상관관계가 낮다면 0에 가까운 수치를 보여준다. The correlation coefficient matrix (CCM) may be matrix data containing relationship information between each variable (V1 to V3). Some examples of the derived correlation coefficient matrix (CCM) are shown in Figure 6. In the correlation coefficient matrix (CCM), if a specific variable has a high correlation with other variables, it will show a value close to 1 or -1, and if the correlation with other variables is low, it will show a value close to 0.

이때, 상관계수 행렬(CCM)이 완전 연결 레이어(FC layer)에 입력되면, 완전 연결 레이어(FC layer)의 출력값은 변수들(V1 내지 V3)의 관계를 나타내는 것으로 해석될 수 있다. 이때, 변수들(V1 내지 V3)의 개수가 완전 연결 레이어(FC Layer)의 은닉 노드수가 된다. At this time, when the correlation coefficient matrix (CCM) is input to the fully connected layer (FC layer), the output value of the fully connected layer (FC layer) can be interpreted as representing the relationship between the variables (V1 to V3). At this time, the number of variables (V1 to V3) becomes the number of hidden nodes of the fully connected layer (FC Layer).

출력 레이어(L_output)는 제1 레이어(L1)로부터 출력된 제1 히든 유닛(HU1)과, 제2 레이어(L2)로부터 출력된 제2 히든 유닛(HU2)을 조합하여 출력값인 예비 윈도우(WIN_PRE)를 생성할 수 있다. 이때, 출력 레이어(L_output)는 도 5에 도시된 바와 같이 제1 히든 유닛(HU1)와 제2 히든 유닛(HU2)을 연결 및/또는 조합하는 콘케트네이트 레이어(Concatenate Layer), 완전 연결 레이어(Fully Connected Layer, FC Layer), 출력 레이어(Output Layer)를 포함할 수 있다. The output layer (L_output) combines the first hidden unit (HU1) output from the first layer (L1) and the second hidden unit (HU2) output from the second layer (L2) to create a preliminary window (WIN_PRE) that is an output value. can be created. At this time, the output layer (L_output) is a concatenate layer that connects and/or combines the first hidden unit (HU1) and the second hidden unit (HU2), as shown in FIG. 5, and a fully connected layer ( It may include a Fully Connected Layer (FC Layer) and an output layer (Output Layer).

다시 도 1 및 도 2를 참조하면, 예측 모듈(240)은 생성된 예비 윈도우(WIN_PRE)를 대체 모듈(250)로 전달할 수 있다.Referring again to FIGS. 1 and 2 , the prediction module 240 may transfer the generated preliminary window (WIN_PRE) to the replacement module 250 .

대체 모듈(250)은, 수신된 예비 윈도우(WIN_PRE)를 기초로 대체 윈도우(WIN_REP)를 결정할 수 있다. 다시 말하면, 대체 모듈(250)은, 수신된 예비 윈도우(WIN_PRE)를 기초로 대체 윈도우(WIN_REP)를 결정하고, 다변량 시계열 데이터(MTSD)에서 이상 윈도우(WIN_AB)에 해당하는 윈도우를 대체 윈도우(WIN_REP)로 대체함으로써 다변량 시계열 데이터(MTSD)를 보정할 수 있다.The replacement module 250 may determine the replacement window (WIN_REP) based on the received preliminary window (WIN_PRE). In other words, the replacement module 250 determines the replacement window (WIN_REP) based on the received preliminary window (WIN_PRE), and replaces the window corresponding to the ideal window (WIN_AB) in the multivariate time series data (MTSD) with the replacement window (WIN_REP). ) can be used to correct multivariate time series data (MTSD).

몇몇 예로, 대체 모듈(250)은 예비 윈도우(WIN_PRE) 및 이상 탐지 모듈(230)을 이용하여 대체 윈도우(WIN_REP)를 결정할 수 있다.In some examples, the replacement module 250 may determine the replacement window (WIN_REP) using the preliminary window (WIN_PRE) and the anomaly detection module 230.

예를 들어, 대체 모듈(250)은 예비 윈도우(WIN_PRE) 및 이상 탐지 모듈(230)에 포함된 LSTM 기반의 생성부(232)를 기초로 대체 윈도우(WIN_REP)를 생성할 수 있다.For example, the replacement module 250 may generate a replacement window (WIN_REP) based on the preliminary window (WIN_PRE) and the LSTM-based generator 232 included in the anomaly detection module 230.

이하, 도 7을 참조하여, 대체 모듈(250)이 대체 윈도우(WIN_REP)를 생성하는 과정을 자세히 설명하기로 한다.Hereinafter, with reference to FIG. 7, the process by which the replacement module 250 creates the replacement window (WIN_REP) will be described in detail.

도 7은 본 발명의 몇몇 실시예에 따른 대체 모듈의 동작을 설명하기 위한 도면이다.Figure 7 is a diagram for explaining the operation of a replacement module according to some embodiments of the present invention.

우선, 이상 탐지 모듈(230)이 이상 윈도우(WIN_AB)를 탐지하고, 예측 모듈(240)이 해당 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)를 이용하여 해당 이상 윈도우(WIN_AB)에 대한 예비 윈도우(WIN_PRE)를 예측하면, 대체 모듈(250)은 예측 모듈(240)로부터 해당 예비 윈도우(WIN_PRE)를 전달받을 수 있다.First, the anomaly detection module 230 detects an abnormal window (WIN_AB), and the prediction module 240 uses the window (WIN_LAST) immediately before the abnormal window (WIN_AB) to create a preliminary window (WIN_AB) for the abnormal window (WIN_AB). If WIN_PRE) is predicted, the replacement module 250 may receive the corresponding preliminary window (WIN_PRE) from the prediction module 240.

이어서, 대체 모듈(250)은 예비 윈도우(WIN_PRE)를 이상 탐지 모듈(230)의 LSTM 기반의 생성부(232)에 전달할 수 있다. 이때, 대체 모듈(250)은 생성부(232)로 하여금 예비 윈도우(WIN_PRE)와 유사한 예비 가상 윈도우(WIN_PRE_virtual)를 생성하도록 제어 신호를 전송할 수 있다.Subsequently, the replacement module 250 may transmit the preliminary window (WIN_PRE) to the LSTM-based generator 232 of the anomaly detection module 230. At this time, the replacement module 250 may transmit a control signal to cause the generator 232 to generate a preliminary virtual window (WIN_PRE_virtual) similar to the preliminary window (WIN_PRE).

이때, 생성부(232)는 전달 받은 예비 윈도우(WIN_PRE)를 기초로, 이와 유사한 예비 가상 윈도우(WIN_PRE_virtual)를 생성할 수 있다. 즉, 생성부(232)는 도 4에서 전술한 바와 유사한 방식으로, 예비 윈도우(WIN_PRE)를 실제 데이터로 하여, 해당 실제 데이터와 유사한 예비 가상 윈도우(WIN_PRE_virtual)를 생성할 수 있다.At this time, the generator 232 may generate a preliminary virtual window (WIN_PRE_virtual) similar to the received preliminary window (WIN_PRE). That is, the generator 232 may use the preliminary window (WIN_PRE) as actual data to generate a preliminary virtual window (WIN_PRE_virtual) similar to the actual data in a similar manner as described above in FIG. 4 .

이어서, 대체 모듈(250)은 생성부(232)로부터 예비 가상 윈도우(WIN_PRE_virtual)를 수신할 수 있고, 수신된 예비 가상 윈도우(WIN_PRE_virtual)를 대체 윈도우(WIN_REP)로 결정할 수 있다.Subsequently, the replacement module 250 may receive the preliminary virtual window (WIN_PRE_virtual) from the generator 232 and determine the received preliminary virtual window (WIN_PRE_virtual) as the replacement window (WIN_REP).

이어서, 대체 모듈(250)은, 다변량 시계열 데이터(MTSD)에서 이상 윈도우(WIN_AB)에 해당하는 윈도우를 대체 윈도우(WIN_REP)로 대체함으로써 다변량 시계열 데이터(MTSD)를 보정할 수 있고, 그에 따라 보정 데이터(MTSD_correct)를 생성할 수 있다.Subsequently, the replacement module 250 may correct the multivariate time series data (MTSD) by replacing the window corresponding to the abnormal window (WIN_AB) in the multivariate time series data (MTSD) with the replacement window (WIN_REP), and thereby correct the correction data. (MTSD_correct) can be created.

도 8은 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 과정을 설명하기 위한 흐름도이다. 도 8의 각 단계(S100 내지 S500)는 본 발명의 몇몇 실시예에 따른 이상 데이터 보정 장치(도 1 및 도 2의 200)에 의해 수행될 수 있다. 이하 중복되는 내용은 제외하고 간략하게 서술한다.Figure 8 is a flowchart for explaining an abnormal data correction process according to some embodiments of the present invention. Each step (S100 to S500) of FIG. 8 may be performed by an abnormal data correction device (200 in FIGS. 1 and 2) according to some embodiments of the present invention. Below is a brief description, excluding duplicate content.

도 1, 도 2 및 도 8을 참조하면, 우선, 다변량 시계열 데이터를 수집할 수 있다(S100).Referring to FIGS. 1, 2, and 8, first, multivariate time series data can be collected (S100).

다변량 시계열 데이터(MTSD)는 시간에 따라 관찰되는 둘 이상의 변수로 구성된 데이터를 의미할 수 있다. 다시 말하면, 다변량 시계열 데이터(MTSD)는 적어도 둘 이상의 변수를 포함하고 있는 시계열 데이터를 의미할 수 있다. 이때, 다변량 시계열 데이터(MTSD)는 기상 데이터, 증권시장 데이터, 의료 모니터링 데이터 등 다양한 산업 환경에서 측정될 수 있다. Multivariate time series data (MTSD) can refer to data consisting of two or more variables observed over time. In other words, multivariate time series data (MTSD) may refer to time series data containing at least two or more variables. At this time, multivariate time series data (MTSD) can be measured in various industrial environments such as weather data, stock market data, and medical monitoring data.

다변량 시계열 데이터(MTSD)는 정상 데이터와 이상(Abnormal) 데이터를 포함할 수 있다. 다시 말하면, 다변량 시계열 데이터(MTSD)는 정상 데이터와 함께, 이상 데이터 보정의 대상이 되는 이상 데이터를 포함하고 있는 데이터일 수 있다.Multivariate time series data (MTSD) can include normal and abnormal data. In other words, multivariate time series data (MTSD) may be data that includes abnormal data that is the subject of abnormal data correction along with normal data.

이어서, 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성할 수 있다(S200).Next, preprocessing using a sliding window technique can be performed on the multivariate time series data to generate preprocessing results (S200).

몇몇 예로, 전처리 모듈(220)은 데이터 수집 모듈(210)로부터 전달 받은 다변량 시계열 데이터(MTSD)에 대하여 슬라이딩 윈도우 기법을 적용하여 전처리 결과(PR)를 생성할 수 있다.As some examples, the preprocessing module 220 may generate a preprocessing result (PR) by applying a sliding window technique to the multivariate time series data (MTSD) received from the data collection module 210.

이어서, 전처리 결과로부터 이상 윈도우를 탐지할 수 있다(S300).Next, an abnormal window can be detected from the preprocessing results (S300).

몇몇 예로, 이상 탐지 모듈(230)은 수신된 전처리 결과(PR)를 기초로 이상 윈도우(WIN_AB)를 탐지할 수 있다. 다시 말하면, 이상 탐지 모듈(230)은 복수의 윈도우를 포함하는 전처리 결과(PR) 에서 이상 윈도우(WIN_AB)를 검색할 수 있다.In some examples, the anomaly detection module 230 may detect an anomaly window (WIN_AB) based on the received preprocessing result (PR). In other words, the anomaly detection module 230 may search for an anomaly window (WIN_AB) in the preprocessing result (PR) including a plurality of windows.

예를 들어, 이상 탐지 모듈(230)은 LSTM(Long Short Term Memory) 모델, VAE(Variational AutoEncoder) 모델 및 GAN(Generative Adversarial Network) 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 이상 윈도우(WIN_AB)를 탐지할 수 있다. 이때, 이상 탐지 모듈(230)은 LSTM 기반의 인코딩부, LSTM 기반의 생성부, LSTM 기반의 판별부, 각 윈도우 별 이상 점수를 계산하는 계산부 등을 포함할 수 있다. For example, the anomaly detection module 230 uses an LSTM-based VAE-GAN model that combines a Long Short Term Memory (LSTM) model, a Variational AutoEncoder (VAE) model, and a Generative Adversarial Network (GAN) model to create an anomaly window (WIN_AB). ) can be detected. At this time, the anomaly detection module 230 may include an LSTM-based encoding unit, an LSTM-based generation unit, an LSTM-based discriminator, and a calculation unit that calculates an anomaly score for each window.

이어서, 이상 윈도우의 직전 윈도우를 기초로 이상 윈도우에 상응하는 예비 윈도우를 예측할 수 있다(S400).Next, a preliminary window corresponding to the abnormal window can be predicted based on the window immediately before the abnormal window (S400).

몇몇 예로, 예측 모듈(240)은 수신된 이상 윈도우(WIN_AB)를 기초로 해당 이상 윈도우(WIN_AB)에 상응하는 예비 윈도우(WIN_PRE)를 예측할 수 있다. 이때, 예비 윈도우(WIN_AB)는 해당 이상 윈도우(WIN_AB)를 직접 대체하지는 않으나, 해당 이상 윈도우(WIN_AB)를 대체할 대체 윈도우(WIN_REP)를 생성하는데 이용되는 윈도우일 수 있다.In some examples, the prediction module 240 may predict the preliminary window (WIN_PRE) corresponding to the abnormal window (WIN_AB) based on the received abnormal window (WIN_AB). At this time, the spare window (WIN_AB) does not directly replace the corresponding abnormal window (WIN_AB), but may be a window used to create a replacement window (WIN_REP) to replace the corresponding abnormal window (WIN_AB).

이때, 예측 모듈(240)은 이상 윈도우(WIN_AB)의 직전 윈도우를 기초로 예비 윈도우(WIN_PRE)를 예측할 수 있다. 예를 들어, 예측 모듈(240)은 이상 윈도우(WIN_AB)의 직전 윈도우를 미리 학습된 뉴럴 네트워크에 입력하여 해당 이상 윈도우(WIN_AB)에 상응하는 예비 윈도우(WIN_PRE)를 예측할 수 있다.At this time, the prediction module 240 may predict the preliminary window (WIN_PRE) based on the window immediately before the abnormal window (WIN_AB). For example, the prediction module 240 may predict the preliminary window (WIN_PRE) corresponding to the abnormal window (WIN_AB) by inputting the window immediately preceding the abnormal window (WIN_AB) into a pre-trained neural network.

구체적으로, 예측 모듈(240)은 제1 레이어, 제2 레이어 및 출력 레이어를 포함할 수 있다. 이때, 제1 레이어와 제2 레이어의 입력값은 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)일 수 있고, 출력 레이어의 출력값은 예비 윈도우(WIN_PRE)일 수 있다.Specifically, the prediction module 240 may include a first layer, a second layer, and an output layer. At this time, the input value of the first layer and the second layer may be the window (WIN_LAST) immediately before the ideal window (WIN_AB), and the output value of the output layer may be the preliminary window (WIN_PRE).

제1 레이어는 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)를 입력값으로 하되, 어텐션(Attention) 기반의 LSTM 모델을 이용하여 제1 히든 유닛을 생성할 수 있다. 이때, 제1 레이어(L1)는 공지된 어텐션(Attention) 기반의 LSTM 모델을 포함할 수 있다.The first layer uses the window (WIN_LAST) immediately before the ideal window (WIN_AB) as an input value, and can generate the first hidden unit using an attention-based LSTM model. At this time, the first layer (L1) may include a known attention-based LSTM model.

제2 레이어는 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)를 입력값으로 하되, 전처리 결과(PR)의 배치(batch) 단위 마다의 변수들의 상관계수를 계산하여 제2 히든 유닛을 생성할 수 있다.The second layer takes the window (WIN_LAST) immediately before the ideal window (WIN_AB) as an input value, and calculates the correlation coefficient of variables for each batch of the preprocessing result (PR) to generate a second hidden unit. .

몇몇 예로, 제2 레이어는 변수들 간의 상관계수 행렬을 도출하는 상관계수 도출부와, 도출된 상관계수 행렬이 입력되면 플래튼 데이터를 출력하는 플래튼 레이어(Flatten Layer)와, 플래튼 데이터가 입력되면 제2 히든 유닛을 출력하는 완전 연결 레이어(Fully Connected Layer, FC Layer)를 포함할 수 있다.As some examples, the second layer includes a correlation coefficient deriving unit that derives a correlation coefficient matrix between variables, a flatten layer that outputs platen data when the derived correlation coefficient matrix is input, and the platen data is input. If so, it may include a fully connected layer (FC Layer) that outputs a second hidden unit.

이때, 상관계수 도출부는 피어슨(Pearson) 상관계수를 이용하여 상관계수 행렬을 도출할 수 있다. At this time, the correlation coefficient deriving unit may derive a correlation coefficient matrix using the Pearson correlation coefficient.

상관계수 행렬은 각 변수들간의 관계 정보를 포함하고 있는 행렬 데이터일 수 있다. 도출된 상관계수 행렬의 몇몇 예는 도 6에 도시되어 있다. 상관계수 행렬에서는 특정 변수가 다른 변수들과의 상관관계가 높다면 1 또는 -1에 가까운 수치를 보여줄 것이고, 다른 변수들과 상관관계가 낮다면 0에 가까운 수치를 보여준다. The correlation coefficient matrix may be matrix data containing relationship information between each variable. Some examples of the derived correlation coefficient matrix are shown in Figure 6. In the correlation coefficient matrix, if a specific variable has a high correlation with other variables, it will show a value close to 1 or -1, and if the correlation with other variables is low, it will show a value close to 0.

이때, 상관계수 행렬이 완전 연결 레이어에 입력되면, 완전 연결 레이어의 출력값은 변수들의 관계를 나타내는 것으로 해석될 수 있다. 이때, 변수들의 개수가 완전 연결 레이어의 은닉 노드수가 된다. At this time, when the correlation coefficient matrix is input to the fully connected layer, the output value of the fully connected layer can be interpreted as representing the relationship between variables. At this time, the number of variables becomes the number of hidden nodes in the fully connected layer.

출력 레이어는 제1 레이어로부터 출력된 제1 히든 유닛과, 제2 레이어로부터 출력된 제2 히든 유닛을 조합하여 출력값인 예비 윈도우(WIN_PRE)를 생성할 수 있다. The output layer may generate a preliminary window (WIN_PRE), which is an output value, by combining the first hidden unit output from the first layer and the second hidden unit output from the second layer.

이어서, 예측된 예비 윈도우를 기초로 이상 윈도우를 대체할 대체 윈도우를 결정할 수 있다(S500).Next, a replacement window to replace the abnormal window may be determined based on the predicted preliminary window (S500).

구체적으로 설명하면, 우선, 이상 탐지 모듈(230)이 이상 윈도우(WIN_AB)를 탐지하고, 예측 모듈(240)이 해당 이상 윈도우(WIN_AB)의 직전 윈도우(WIN_LAST)를 이용하여 해당 이상 윈도우(WIN_AB)에 대한 예비 윈도우(WIN_PRE)를 예측하면, 대체 모듈(250)은 예측 모듈(240)로부터 해당 예비 윈도우(WIN_PRE)를 전달받을 수 있다.Specifically, first, the anomaly detection module 230 detects an abnormal window (WIN_AB), and the prediction module 240 uses the window (WIN_LAST) immediately before the abnormal window (WIN_AB) to detect the abnormal window (WIN_AB). If the preliminary window (WIN_PRE) for is predicted, the replacement module 250 may receive the corresponding preliminary window (WIN_PRE) from the prediction module 240.

이어서, 대체 모듈(250)은 예비 윈도우(WIN_PRE)를 이상 탐지 모듈(230)의 LSTM 기반의 생성부(232)에 전달할 수 있다. 이때, 대체 모듈(250)은 생성부(232)로 하여금 예비 윈도우(WIN_PRE)와 유사한 예비 가상 윈도우를 생성하도록 제어 신호를 전송할 수 있다.Subsequently, the replacement module 250 may transmit the preliminary window (WIN_PRE) to the LSTM-based generator 232 of the anomaly detection module 230. At this time, the replacement module 250 may transmit a control signal to cause the generator 232 to generate a preliminary virtual window similar to the preliminary window (WIN_PRE).

이때, 생성부(232)는 전달 받은 예비 윈도우(WIN_PRE)를 기초로, 이와 유사한 예비 가상 윈도우를 생성할 수 있다. 즉, 생성부(232)는 도 4에서 전술한 바와 유사한 방식으로, 예비 윈도우(WIN_PRE)를 실제 데이터로 하여, 해당 실제 데이터와 유사한 예비 가상 윈도우를 생성할 수 있다.At this time, the generator 232 may generate a preliminary virtual window similar to the received preliminary window (WIN_PRE). That is, the generator 232 may generate a preliminary virtual window similar to the actual data by using the preliminary window (WIN_PRE) as actual data in a similar manner as described above with reference to FIG. 4 .

이어서, 대체 모듈(250)은 생성부(232)로부터 예비 가상 윈도우를 수신할 수 있고, 수신된 예비 가상 윈도우를 대체 윈도우(WIN_REP)로 결정할 수 있다.Subsequently, the replacement module 250 may receive a spare virtual window from the generator 232 and determine the received spare virtual window as the replacement window (WIN_REP).

이어서, 대체 모듈(250)은, 다변량 시계열 데이터(MTSD)에서 이상 윈도우(WIN_AB)에 해당하는 윈도우를 대체 윈도우(WIN_REP)로 대체함으로써 다변량 시계열 데이터(MTSD)를 보정할 수 있고, 그에 따라 보정 데이터(MTSD_correct)를 생성할 수 있다.Subsequently, the replacement module 250 may correct the multivariate time series data (MTSD) by replacing the window corresponding to the abnormal window (WIN_AB) in the multivariate time series data (MTSD) with the replacement window (WIN_REP), and thereby correct the correction data. (MTSD_correct) can be created.

이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative explanation of the technical idea of the present embodiment, and those skilled in the art will be able to make various modifications and variations without departing from the essential characteristics of the present embodiment. Accordingly, the present embodiments are not intended to limit the technical idea of the present embodiment, but rather to explain it, and the scope of the technical idea of the present embodiment is not limited by these examples. The scope of protection of this embodiment should be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of rights of this embodiment.

Claims (13)

다변량 시계열 데이터를 수집하는 데이터 수집 모듈;
상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 전처리 모듈;
상기 전처리 결과로부터 이상 윈도우를 탐지하는 이상 탐지 모듈;
상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 예측 모듈; 및
상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 결정하는 대체 모듈을 포함하되,
상기 대체 모듈은, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성하고,
상기 이상 탐지 모듈은,
LSTM(Long Short Term Memory) 모델, VAE(Variational AutoEncoder) 모델 및 GAN(Generative Adversarial Network) 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 상기 이상 윈도우를 탐지하고,
상기 LSTM 기반의 인코딩부, 상기 LSTM 기반의 생성부, 상기 LSTM 기반의 판별부 및 상기 전처리 결과에 포함된 각 윈도우 별 이상 점수를 계산하는 계산부를 포함하고,
상기 계산부는,
상기 전처리 결과에 포함된 실제 윈도우와 상기 생성부에서 생성된 가상 윈도우 사이의 재구축 오차(Reconstruction Error) 및 상기 판별부로부터 출력되는 판별 오차를 조합하여 상기 이상 점수를 계산하고,
상기 이상 점수가 미리 정해진 임계치 이상인 윈도우를 상기 이상 윈도우로 탐지하는
이상 데이터 보정 장치.
a data collection module that collects multivariate time series data;
a preprocessing module that generates preprocessing results by performing preprocessing using a sliding window technique on the multivariate time series data;
an anomaly detection module that detects an anomaly window from the preprocessing results;
a prediction module that predicts a preliminary window corresponding to the abnormal window based on a window immediately preceding the abnormal window; and
A replacement module that determines a replacement window to replace the abnormal window based on the predicted preliminary window,
The replacement module generates the replacement window using the anomaly detection module,
The abnormality detection module,
Detect the abnormal window using an LSTM-based VAE-GAN model that combines a Long Short Term Memory (LSTM) model, a Variational AutoEncoder (VAE) model, and a Generative Adversarial Network (GAN) model,
It includes the LSTM-based encoding unit, the LSTM-based generation unit, the LSTM-based discriminator, and a calculation unit that calculates an anomaly score for each window included in the preprocessing result,
The calculation unit,
Calculating the anomaly score by combining a reconstruction error between the real window included in the preprocessing result and the virtual window generated by the generation unit and the discrimination error output from the determination unit,
Detecting a window whose abnormality score is more than a predetermined threshold as the abnormal window
Anomaly data correction device.
삭제delete 삭제delete 삭제delete 삭제delete 제1 항에 있어서,
상기 예측 모듈은,
어텐션(Attention) 기반의 LSTM 모델을 이용하여 제1 히든 유닛(Hidden Unit)을 생성하는 제1 레이어와,
상기 전처리 결과의 배치 단위마다 변수들의 상관계수를 계산하여 제2 히든 유닛을 생성하는 제2 레이어와,
상기 제1 히든 유닛 및 상기 제2 히든 유닛을 조합하여 상기 예비 윈도우를 출력하는 출력 레이어를 포함하되,
상기 제1 레이어와 상기 제2 레이어에는 상기 직전 윈도우가 입력 데이터로서 입력되는
이상 데이터 보정 장치.
According to claim 1,
The prediction module is,
A first layer that generates a first hidden unit using an attention-based LSTM model,
a second layer that generates a second hidden unit by calculating correlation coefficients of variables for each batch of the preprocessing results;
An output layer that outputs the preliminary window by combining the first hidden unit and the second hidden unit,
The immediately preceding window is input as input data to the first layer and the second layer.
Anomaly data correction device.
제6 항에 있어서,
상기 제2 레이어는,
상기 변수들 간의 상관계수 행렬을 도출하는 상관계수 도출부와,
상기 도출된 상관계수 행렬이 입력되면 플래튼 데이터를 출력하는 플래튼 레이어(Flatten Layer)와,
상기 플래튼 데이터가 입력되면 상기 제2 히든 유닛을 출력하는 완전 연결 레이어(Fully Connected Layer)를 포함하는
이상 데이터 보정 장치.
According to clause 6,
The second layer is,
a correlation coefficient deriving unit that derives a correlation coefficient matrix between the variables;
a flatten layer that outputs platen data when the derived correlation coefficient matrix is input;
A fully connected layer that outputs the second hidden unit when the platen data is input.
Anomaly data correction device.
삭제delete 삭제delete 이상 데이터 보정 장치에 의해 수행되는 이상 데이터 보정 방법에 있어서,
다변량 시계열 데이터를 수집하는 단계;
상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 단계;
이상 탐지 모듈을 이용하여 상기 전처리 결과로부터 이상 윈도우를 탐지하는 단계;
상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 단계; 및
상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 생성하는 단계를 포함하되,
상기 대체 윈도우를 생성하는 단계는, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성하는 단계를 포함하고,
상기 이상 탐지 모듈은,
LSTM 모델, VAE 모델 및 GAN 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 상기 이상 윈도우를 탐지하고,
상기 LSTM 기반의 인코딩부, 상기 LSTM 기반의 생성부, 상기 LSTM 기반의 판별부 및 상기 전처리 결과에 포함된 각 윈도우 별 이상 점수를 계산하는 계산부를 포함하고,
상기 계산부는,
상기 전처리 결과에 포함된 실제 윈도우와 상기 생성부에서 생성된 가상 윈도우 사이의 재구축 오차 및 상기 판별부로부터 출력되는 판별 오차를 조합하여 상기 이상 점수를 계산하고,
상기 이상 점수가 미리 정해진 임계치 이상인 윈도우를 상기 이상 윈도우로 탐지하는
이상 데이터 보정 방법.
In an abnormal data correction method performed by an abnormal data correction device,
collecting multivariate time series data;
Generating preprocessing results by performing preprocessing using a sliding window technique on the multivariate time series data;
Detecting an abnormal window from the preprocessing result using an anomaly detection module;
predicting a preliminary window corresponding to the abnormal window based on a window immediately preceding the abnormal window; and
Generating a replacement window to replace the abnormal window based on the predicted preliminary window,
The step of generating the replacement window includes generating the replacement window using the anomaly detection module,
The abnormality detection module,
Detect the abnormal window using an LSTM-based VAE-GAN model that combines an LSTM model, a VAE model, and a GAN model,
It includes the LSTM-based encoding unit, the LSTM-based generation unit, the LSTM-based discriminator, and a calculation unit that calculates an anomaly score for each window included in the preprocessing result,
The calculation unit,
Calculate the anomaly score by combining the reconstruction error between the real window included in the preprocessing result and the virtual window generated by the generation unit and the discrimination error output from the determination unit,
Detecting a window whose abnormality score is more than a predetermined threshold as the abnormal window
How to correct abnormal data.
다변량 시계열 데이터를 수집하는 데이터 수집 모듈;
상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 전처리 모듈;
상기 전처리 결과로부터 이상 윈도우를 탐지하는 이상 탐지 모듈;
상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 예측 모듈; 및
상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 결정하는 대체 모듈을 포함하되,
상기 대체 모듈은, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성하고,는
상기 이상 탐지 모듈은,
LSTM 모델, VAE 모델 및 GAN 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 상기 이상 윈도우를 탐지하고,
상기 LSTM 기반의 인코딩부, 상기 LSTM 기반의 생성부 및 상기 LSTM 기반의 판별부를 포함하고,
상기 대체 모듈은,
상기 예비 윈도우 및 상기 이상 탐지 모듈에 포함된 상기 LSTM 기반의 생성부를 기초로 상기 대체 윈도우를 생성하는
이상 데이터 보정 장치.
a data collection module that collects multivariate time series data;
a preprocessing module that generates preprocessing results by performing preprocessing using a sliding window technique on the multivariate time series data;
an anomaly detection module that detects an anomaly window from the preprocessing results;
a prediction module that predicts a preliminary window corresponding to the abnormal window based on a window immediately preceding the abnormal window; and
A replacement module that determines a replacement window to replace the abnormal window based on the predicted preliminary window,
The replacement module generates the replacement window using the anomaly detection module,
The abnormality detection module,
Detect the abnormal window using an LSTM-based VAE-GAN model that combines an LSTM model, a VAE model, and a GAN model,
Comprising the LSTM-based encoding unit, the LSTM-based generation unit, and the LSTM-based discriminator,
The replacement module is,
Generating the replacement window based on the preliminary window and the LSTM-based generator included in the anomaly detection module.
Anomaly data correction device.
제11 항에 있어서,
상기 대체 모듈은,
상기 예비 윈도우를 상기 LSTM 기반의 생성부에 전달하고,
상기 LSTM 기반의 생성부로부터, 상기 LSTM 기반의 생성부가 상기 예비 윈도우를 기초로 생성한 예비 가상 윈도우를 수신하고,
상기 수신된 예비 가상 윈도우를 상기 대체 윈도우로 결정하는
이상 데이터 보정 장치.
According to claim 11,
The replacement module is,
Passing the preliminary window to the LSTM-based generator,
Receive, from the LSTM-based generation unit, a preliminary virtual window generated by the LSTM-based generation unit based on the preliminary window,
Determining the received preliminary virtual window as the replacement window
Anomaly data correction device.
이상 데이터 보정 장치에 의해 수행되는 이상 데이터 보정 방법에 있어서,
다변량 시계열 데이터를 수집하는 단계;
상기 다변량 시계열 데이터에 대하여 슬라이딩 윈도우 기법을 통한 전처리를 수행하여 전처리 결과를 생성하는 단계;
이상 탐지 모듈을 이용하여 상기 전처리 결과로부터 이상 윈도우를 탐지하는 단계;
상기 이상 윈도우의 직전 윈도우를 기초로 상기 이상 윈도우에 상응하는 예비 윈도우를 예측하는 단계; 및
상기 예측된 예비 윈도우를 기초로 상기 이상 윈도우를 대체할 대체 윈도우를 생성하는 단계를 포함하되,
상기 대체 윈도우를 생성하는 단계는, 상기 이상 탐지 모듈을 이용하여 상기 대체 윈도우를 생성하는 단계를 포함하고,
상기 이상 탐지 모듈은,
LSTM 모델, VAE 모델 및 GAN 모델이 결합된 LSTM 기반 VAE-GAN 모델을 이용하여 상기 이상 윈도우를 탐지하고,
상기 LSTM 기반의 인코딩부, 상기 LSTM 기반의 생성부 및 상기 LSTM 기반의 판별부를 포함하고,
상기 대체 윈도우를 생성하는 단계는,
상기 예비 윈도우 및 상기 이상 탐지 모듈에 포함된 상기 LSTM 기반의 생성부를 기초로 상기 대체 윈도우를 생성하는
이상 데이터 보정 방법.
In an abnormal data correction method performed by an abnormal data correction device,
collecting multivariate time series data;
Generating preprocessing results by performing preprocessing using a sliding window technique on the multivariate time series data;
Detecting an abnormal window from the preprocessing result using an anomaly detection module;
predicting a preliminary window corresponding to the abnormal window based on a window immediately preceding the abnormal window; and
Generating a replacement window to replace the abnormal window based on the predicted preliminary window,
The step of generating the replacement window includes generating the replacement window using the anomaly detection module,
The abnormality detection module,
Detect the abnormal window using an LSTM-based VAE-GAN model that combines an LSTM model, a VAE model, and a GAN model,
Comprising the LSTM-based encoding unit, the LSTM-based generation unit, and the LSTM-based discriminator,
The step of creating the replacement window is,
Generating the replacement window based on the preliminary window and the LSTM-based generator included in the anomaly detection module.
How to correct abnormal data.
KR1020230111854A 2023-08-25 2023-08-25 Device and method for correcting abnormal data KR102635946B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230111854A KR102635946B1 (en) 2023-08-25 2023-08-25 Device and method for correcting abnormal data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230111854A KR102635946B1 (en) 2023-08-25 2023-08-25 Device and method for correcting abnormal data

Publications (1)

Publication Number Publication Date
KR102635946B1 true KR102635946B1 (en) 2024-02-13

Family

ID=89899449

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230111854A KR102635946B1 (en) 2023-08-25 2023-08-25 Device and method for correcting abnormal data

Country Status (1)

Country Link
KR (1) KR102635946B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220074691A (en) * 2020-11-27 2022-06-03 연세대학교 산학협력단 Apparatus and method for detecting cable fault based on reflectometry using AI
KR102424916B1 (en) * 2021-10-14 2022-07-22 모나일렉트릭 주식회사 Battery diagnostic method and apparatus
KR102557151B1 (en) * 2022-11-17 2023-07-19 서울시립대학교 산학협력단 Method and device for improving quality of time series data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220074691A (en) * 2020-11-27 2022-06-03 연세대학교 산학협력단 Apparatus and method for detecting cable fault based on reflectometry using AI
KR102424916B1 (en) * 2021-10-14 2022-07-22 모나일렉트릭 주식회사 Battery diagnostic method and apparatus
KR102557151B1 (en) * 2022-11-17 2023-07-19 서울시립대학교 산학협력단 Method and device for improving quality of time series data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"LSTM-Based VAE-GAN for Time-Series Anomaly Detection", Zijian Niu 외 2명, https://www.mdpi.com/1424-8220/20/13/3738, pp.1-13, 2020.07.03.* *
"LSTM-GAN 기반 이상탐지 모델을 활용한 시계열 데이터의 동적 보정기법", 정한석 외 1명, 한국인터넷방송통신학회 논문지, Vol.23. No.2, 2023.04.30. *
"Multivariate Time-series Data Correction by combining Attention-based LSTM and GAN Model", Hanseok Jeong 외 3명, 2023 9th International Conference on Applied System Innovation (ICASI), 2023.04.25. *

Similar Documents

Publication Publication Date Title
JP7167084B2 (en) Anomaly detection system, anomaly detection method, anomaly detection program, and learned model generation method
Zhang et al. Attention-based LSTM network for rotatory machine remaining useful life prediction
CN108881196A (en) The semi-supervised intrusion detection method of model is generated based on depth
CN114065862A (en) Multi-dimensional time sequence data anomaly detection method and system
Cheng et al. Using neural networks to detect the bivariate process variance shifts pattern
CN115063588A (en) Data processing method, device, equipment and storage medium
WO2021169361A1 (en) Method and apparatus for detecting time series data, and computer device and storage medium
CN113328908B (en) Abnormal data detection method and device, computer equipment and storage medium
CN116680105A (en) Time sequence abnormality detection method based on neighborhood information fusion attention mechanism
CN111881299A (en) Outlier event detection and identification method based on duplicate neural network
CN116596150A (en) Event prediction method of transform Hoxwell process model based on multi-branch self-attention
CN114266201A (en) Self-attention elevator trapping prediction method based on deep learning
Akpudo et al. A deep learning approach to prognostics of rolling element bearings
Moon et al. Anomaly detection using a model-agnostic meta-learning-based variational auto-encoder for facility management
KR102635946B1 (en) Device and method for correcting abnormal data
Yang et al. Nuclear power plant sensor signal reconstruction based on deep learning methods
Jiangyan et al. A regularized constrained two-stream convolution augmented Transformer for aircraft engine remaining useful life prediction
CN116401537A (en) Network multi-element time flow sequence anomaly detection method and device based on multi-task
Düdükçü et al. LSTM and WaveNet implementation for predictive maintenance of turbofan engines
KR20220108678A (en) Arrhythmia classification method using long short-term memory based on recurrent neural network
Lin et al. Hierarchical Context Representation and Self-adaptive Thresholding for Multivariate Anomaly Detection
Takahashi et al. Anomaly detection and missing data imputation in building energy data for automated data pre-processing
KR102611403B1 (en) Abnormal detection device including repair part determination function and repair completeness evaluation function
CN116722548B (en) Photovoltaic power generation prediction method based on time sequence model and related equipment
CN117591942B (en) Power load data anomaly detection method, system, medium and equipment

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant