KR20240022361A - Method for detecting outliers in time series data and computing device for executing the same - Google Patents

Method for detecting outliers in time series data and computing device for executing the same Download PDF

Info

Publication number
KR20240022361A
KR20240022361A KR1020220100938A KR20220100938A KR20240022361A KR 20240022361 A KR20240022361 A KR 20240022361A KR 1020220100938 A KR1020220100938 A KR 1020220100938A KR 20220100938 A KR20220100938 A KR 20220100938A KR 20240022361 A KR20240022361 A KR 20240022361A
Authority
KR
South Korea
Prior art keywords
time series
series data
data
neural network
network model
Prior art date
Application number
KR1020220100938A
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 KR1020220100938A priority Critical patent/KR20240022361A/en
Publication of KR20240022361A publication Critical patent/KR20240022361A/en

Links

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
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold

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)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

시계열 데이터의 이상치 탐지 방법 및 이를 수행하기 위한 컴퓨팅 장치가 개시된다. 개시되는 일 실시예에 따른 시계열 데이터의 이상치 탐지 방법은, 정상적인 시계열 데이터를 획득하는 단계, 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간을 형성하는 단계, 인공 신경망 모델이 입력되는 시계열 데이터의 결측 구간을 예측하고, 예측된 값으로 결측 구간을 대체하여 복원된 시계열 데이터를 출력하도록 인공 신경망 모델을 학습하는 단계, 이상치의 탐지 대상이 되는 탐지 대상 시계열 데이터를 입력 받는 단계, 및 탐지 대상 시계열 데이터를 기 학습된 인공 신경망 모델에 입력하여 이상치 여부를 탐지하는 단계를 포함한다.A method for detecting outliers in time series data and a computing device for performing the same are disclosed. A method for detecting outliers in time series data according to an embodiment disclosed includes the steps of acquiring normal time series data, forming a missing section by removing some sections of the normal time series data, and the missing section of time series data into which an artificial neural network model is input. A step of learning an artificial neural network model to predict and output restored time series data by replacing the missing section with the predicted value, a step of receiving detection target time series data that is the target of detection of outliers, and storing the detection target time series data. It includes the step of detecting outliers by inputting them into a learned artificial neural network model.

Description

시계열 데이터의 이상치 탐지 방법 및 이를 수행하기 위한 컴퓨팅 장치{METHOD FOR DETECTING OUTLIERS IN TIME SERIES DATA AND COMPUTING DEVICE FOR EXECUTING THE SAME}Method for detecting outliers in time series data and computing device for performing the same {METHOD FOR DETECTING OUTLIERS IN TIME SERIES DATA AND COMPUTING DEVICE FOR EXECUTING THE SAME}

본 발명의 실시예는 시계열 데이터의 이상치 탐지 기술과 관련된다. Embodiments of the present invention relate to outlier detection technology in time series data.

시계열 데이터는 일정 기간 동안 기록된 측정 데이터로서, IT, 금융, 항공, 의료 분야 등에서 중요한 정보를 제공한다. 이러한 시계열 데이터의 활용에 가장 큰 걸림돌은 결측치이다. 시계열 데이터를 이용하여 데이터 분석을 수행하거나 기계 학습 모델에 시계열 데이터를 이용할 때 결측치는 그 결과에 부정적인 영향을 끼치게 된다. 특히, 기계 학습에서 시계열 데이터의 결측치는 기계 학습을 통한 추론을 어렵게 하는 요소가 된다. Time series data is measurement data recorded over a certain period of time and provides important information in the IT, finance, aviation, and medical fields. The biggest obstacle to utilizing such time series data is missing values. When performing data analysis using time series data or using time series data in a machine learning model, missing values have a negative impact on the results. In particular, in machine learning, missing values in time series data become a factor that makes inference through machine learning difficult.

한편, 결측치가 없는 시계열 데이터에서 얻을 수 있는 중요한 정보는 이상치이다. 시계열 데이터의 이상치를 탐지하여 그에 필요한 조치를 취하는 것은 IT, 금융, 항공, 의료 분야 등에서 매우 중요한 사항이다. 따라서, 시계열 데이터에서 결측치를 대체하여 결측치로 인한 에러를 방지하고, 시계열 데이터의 이상치를 탐지할 수 있는 방안이 요구된다.Meanwhile, important information that can be obtained from time series data without missing values are outliers. Detecting outliers in time series data and taking necessary measures is very important in the IT, finance, aviation, and medical fields. Therefore, a method is required to replace missing values in time series data to prevent errors due to missing values and to detect outliers in time series data.

한국공개특허공보 제10-2020-0030303호(2020.03.20)Korean Patent Publication No. 10-2020-0030303 (2020.03.20)

본 발명의 실시예는 시계열 데이터에서 결측치 예측과 이상치 탐지를 모두 수행할 수 있는 시계열 데이터의 이상치 탐지 방법 및 이를 수행하기 위한 컴퓨팅 장치를 제공하기 위한 것이다. An embodiment of the present invention is intended to provide a method for detecting outliers in time series data that can perform both missing value prediction and outlier detection in time series data, and a computing device for performing the same.

개시되는 일 실시예에 따른 시계열 데이터의 이상치 탐지 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 정상적인 시계열 데이터를 획득하는 단계; 상기 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간을 형성하는 단계; 인공 신경망 모델이 입력되는 시계열 데이터의 상기 결측 구간을 예측하고, 예측된 값으로 상기 결측 구간을 대체하여 복원된 시계열 데이터를 출력하도록 상기 인공 신경망 모델을 학습하는 단계; 이상치의 탐지 대상이 되는 탐지 대상 시계열 데이터를 입력 받는 단계; 및 상기 탐지 대상 시계열 데이터를 기 학습된 상기 인공 신경망 모델에 입력하여 이상치 여부를 탐지하는 단계를 포함한다.A method for detecting outliers in time series data according to an embodiment of the disclosure is a method performed on a computing device having one or more processors and a memory for storing one or more programs executed by the one or more processors, wherein the method is performed on a normal time series data. acquiring data; forming a missing section by removing some sections of the normal time series data; Learning the artificial neural network model to predict the missing section of input time series data, replace the missing section with a predicted value, and output restored time series data; A step of receiving detection target time series data that is the target of detection of outliers; and detecting whether there is an outlier by inputting the time series data to be detected into the previously learned artificial neural network model.

상기 인공 신경망 모델을 학습하는 단계는, 입력되는 시계열 데이터에서 값이 존재하는 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 시계열 데이터에서 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정하며, 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하도록 상기 인공 신경망 모델을 학습할 수 있다.In the step of learning the artificial neural network model, data in a reference section in which a value exists in the input time series data is set as reference data, and a missing section in which a value does not exist in the time series data is set as target data, and the reference section is set as target data. The artificial neural network model may be trained to predict the target data based on data.

상기 인공 신경망 모델을 학습하는 단계는, 상기 정상적인 시계열 데이터에서 결측 구간의 길이를 다르게 하면서 상기 인공 신경망 모델을 학습할 수 있다.In the step of learning the artificial neural network model, the artificial neural network model may be learned while varying the length of the missing section in the normal time series data.

상기 인공 신경망 모델을 학습하는 단계는, 상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 기 설정된 제1 임계 비율 이하가 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습할 수 있다.In the step of learning the artificial neural network model, the artificial neural network model may be learned while adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is less than or equal to a preset first threshold ratio.

상기 인공 신경망 모델을 학습하는 단계는, 상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 상기 제1 임계 비율보다 높게 설정된 제2 임계 비율 이상이 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습할 수 있다.The step of learning the artificial neural network model includes adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is greater than or equal to a second threshold ratio set higher than the first threshold ratio, while training the artificial neural network model. You can learn.

상기 이상치 여부를 탐지하는 단계는, 상기 탐지 대상 시계열 데이터에서 하나 이상의 참고 구간을 설정하는 단계; 상기 기 학습된 상기 인공 신경망 모델이 입력되는 상기 탐지 대상 시계열 데이터에서 상기 참고 구간을 제외한 나머지 구간을 예측하여 복원된 탐지 대상 시계열 데이터를 출력하는 단계; 및 상기 탐지 대상 시계열 데이터와 상기 복원된 탐지 대상 시계열 데이터 간의 차이에 기반하여 이상치 여부를 탐지하는 단계를 포함할 수 있다.Detecting whether an outlier exists includes setting one or more reference intervals in the time series data to be detected; Predicting the remaining sections excluding the reference section from the detection target time series data inputted by the pre-trained artificial neural network model and outputting restored detection target time series data; And it may include detecting whether there is an outlier based on a difference between the detection target time series data and the restored detection target time series data.

상기 복원된 탐지 대상 시계열 데이터를 출력하는 단계는, 상기 탐지 대상 시계열 데이터에서 상기 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 참고 구간 이외의 나머지 구간을 타겟 데이터로 설정한 후 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하여 상기 복원된 탐지 대상 시계열 데이터를 출력할 수 있다.The step of outputting the restored detection target time series data includes setting the data of the reference section in the detection target time series data as reference data, setting the remaining sections other than the reference section as target data, and then setting the data of the reference section in the detection target time series data as target data. The target data can be predicted and the restored detection target time series data can be output.

상기 참고 구간을 설정하는 단계는, 상기 탐지 대상 시계열 데이터에서 기 설정된 기준 비율만큼 참고 구간을 랜덤하게 설정할 수 있다.In the step of setting the reference section, the reference section may be randomly set by a preset reference ratio in the detection target time series data.

상기 이상치 여부를 탐지하는 단계는, 상기 탐지 대상 시계열 데이터에 결측 구간이 존재하는 경우, 상기 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 상기 결측 구간의 값을 예측하고, 예측된 값으로 상기 결측 구간을 대체하는 단계; 및 상기 결측 구간이 대체된 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 이상치 여부를 탐지하는 단계를 포함할 수 있다. The step of detecting whether there is an outlier includes, when a missing section exists in the time series data to be detected, inputting the time series data to be detected into the previously learned artificial neural network model to predict the value of the missing section, and predict the value of the missing section. Replacing the missing interval with; And it may include detecting whether there is an outlier by inputting the detection target time series data with the missing section replaced into the pre-trained artificial neural network model.

개시되는 일 실시예에 따른 컴퓨팅 장치는, 하나 이상의 프로세서들; 메모리; 및 하나 이상의 프로그램들을 포함하고, 상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며, 상기 하나 이상의 프로그램들은, 정상적인 시계열 데이터를 획득하기 위한 명령; 상기 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간을 형성하기 위한 명령; 인공 신경망 모델이 입력되는 시계열 데이터의 상기 결측 구간을 예측하고, 예측된 값으로 상기 결측 구간을 대체하여 복원된 시계열 데이터를 출력하도록 상기 인공 신경망 모델을 학습하기 위한 명령; 이상치의 탐지 대상이 되는 탐지 대상 시계열 데이터를 입력 받기 위한 명령; 및 상기 탐지 대상 시계열 데이터를 기 학습된 상기 인공 신경망 모델에 입력하여 이상치 여부를 탐지하기 위한 명령을 포함한다.A computing device according to one disclosed embodiment includes one or more processors; Memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, wherein the one or more programs include: instructions for obtaining normal time series data; A command for removing some sections of the normal time series data to form a missing section; A command for training the artificial neural network model to predict the missing section of input time series data, replace the missing section with a predicted value, and output restored time series data; A command to input detection target time series data that is the target of detection of outliers; and a command for detecting an outlier by inputting the detection target time series data into the previously learned artificial neural network model.

상기 인공 신경망 모델을 학습하기 위한 명령은, 입력되는 시계열 데이터에서 값이 존재하는 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 시계열 데이터에서 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정하며, 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하도록 상기 인공 신경망 모델을 학습하기 위한 명령일 수 있다.The command for learning the artificial neural network model sets data in a reference section in which a value exists in the input time series data as reference data, and sets a missing section in which a value does not exist in the time series data as target data. This may be a command for learning the artificial neural network model to predict the target data based on reference data.

상기 인공 신경망 모델을 학습하기 위한 명령은, 상기 정상적인 시계열 데이터에서 결측 구간의 길이를 다르게 하면서 상기 인공 신경망 모델을 학습하기 위한 명령일 수 있다.The command for learning the artificial neural network model may be a command for learning the artificial neural network model while varying the length of the missing section in the normal time series data.

상기 인공 신경망 모델을 학습하기 위한 명령은, 상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 기 설정된 제1 임계 비율 이하가 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습하기 위한 명령일 수 있다.The command for learning the artificial neural network model is a command for learning the artificial neural network model while adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is less than or equal to a preset first threshold ratio. You can.

상기 인공 신경망 모델을 학습하기 위한 명령은, 상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 상기 제1 임계 비율보다 높게 설정된 제2 임계 비율 이상이 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습하기 위한 명령일 수 있다.The command for learning the artificial neural network model is to adjust the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is greater than or equal to a second threshold ratio set higher than the first threshold ratio. It may be a command to learn.

상기 이상치 여부를 탐지하기 위한 명령은, 상기 탐지 대상 시계열 데이터에서 하나 이상의 참고 구간을 설정하기 위한 명령; 상기 기 학습된 상기 인공 신경망 모델이 입력되는 상기 탐지 대상 시계열 데이터에서 상기 참고 구간을 제외한 나머지 구간을 예측하여 복원된 탐지 대상 시계열 데이터를 출력하기 위한 명령; 및 상기 탐지 대상 시계열 데이터와 상기 복원된 탐지 대상 시계열 데이터 간의 차이에 기반하여 이상치 여부를 탐지하기 위한 명령을 포함할 수 있다.The command for detecting whether an outlier exists includes: a command for setting one or more reference intervals in the time series data to be detected; A command for predicting the remaining sections excluding the reference section from the detection target time series data input to the pre-trained artificial neural network model and outputting restored detection target time series data; and a command for detecting an outlier based on a difference between the detection target time series data and the restored detection target time series data.

상기 복원된 탐지 대상 시계열 데이터를 출력하기 위한 명령은, 상기 탐지 대상 시계열 데이터에서 상기 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 참고 구간 이외의 나머지 구간을 타겟 데이터로 설정한 후 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하여 상기 복원된 탐지 대상 시계열 데이터를 출력할 수 있다.The command for outputting the restored detection target time series data sets the data of the reference section in the detection target time series data as reference data, sets the remaining sections other than the reference section as target data, and then sets the reference data. Based on this, the target data can be predicted and the restored detection target time series data can be output.

상기 참고 구간을 설정하기 위한 명령은, 상기 탐지 대상 시계열 데이터에서 기 설정된 기준 비율만큼 참고 구간을 랜덤하게 설정할 수 있다.The command for setting the reference section may randomly set the reference section as much as a preset reference ratio in the detection target time series data.

상기 이상치 여부를 탐지하기 위한 명령은, 상기 탐지 대상 시계열 데이터에 결측 구간이 존재하는 경우, 상기 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 상기 결측 구간의 값을 예측하고, 예측된 값으로 상기 결측 구간을 대체하기 위한 명령; 및 상기 결측 구간이 대체된 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 이상치 여부를 탐지하기 위한 명령을 포함할 수 있다.The command for detecting the presence of an outlier includes, when a missing section exists in the time series data to be detected, inputting the time series data to be detected into the previously learned artificial neural network model to predict the value of the missing section, and predict the value of the missing section. a command to replace the missing interval with a value; and a command for detecting an outlier by inputting the detection target time series data in which the missing section has been replaced into the pre-trained artificial neural network model.

개시되는 실시예에 의하면, 하나의 인공 신경망 모델을 통해 결측치를 예측하는 태스크와 이상치 여부를 탐지하는 태스크를 모두 수행할 수 있게 된다. 이때, 인공 신경망 모델을 결측치 예측에 대해 한번만 학습하면 되므로, 효율적으로 결측치 예측 및 이상치 탐지를 수행할 수 있게 된다.According to the disclosed embodiment, it is possible to perform both the task of predicting missing values and the task of detecting outliers through a single artificial neural network model. At this time, since the artificial neural network model only needs to be trained once for missing value prediction, missing value prediction and outlier detection can be performed efficiently.

도 1은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
도 2는 본 발명의 일 실시예에 따른 시계열 데이터의 이상치 탐지 방법을 나타낸 흐름도
도 3은 본 발명의 일 실시예에서 인공 신경망 모델을 학습하는 상태를 나타낸 도면
도 4는 본 발명의 일 실시예에서 인공 신경망 모델을 통해 탐지 대상 시계열 데이터를 복원하는 상태를 나타낸 도면
1 is a block diagram illustrating and illustrating a computing environment including a computing device suitable for use in example embodiments.
Figure 2 is a flowchart showing a method for detecting outliers in time series data according to an embodiment of the present invention.
Figure 3 is a diagram showing a state of learning an artificial neural network model in one embodiment of the present invention
Figure 4 is a diagram showing the state of restoring detection target time series data through an artificial neural network model in one embodiment of the present invention.

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The detailed description below is provided to provide a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and the present invention is not limited thereto.

본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, if it is determined that a detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. In addition, the terms described below are terms defined in consideration of functions in the present invention, and may vary depending on the intention or custom of the user or operator. Therefore, the definition should be made based on the contents throughout this specification. The terminology used in the detailed description is merely for describing embodiments of the present invention and should in no way be limiting. Unless explicitly stated otherwise, singular forms include plural meanings. In this description, expressions such as “comprising” or “comprising” are intended to indicate certain features, numbers, steps, operations, elements, parts or combinations thereof, and one or more than those described. It should not be construed to exclude the existence or possibility of any other characteristic, number, step, operation, element, or part or combination thereof.

또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.Additionally, terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The above terms may be used for the purpose of distinguishing one component from another component. For example, a first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component without departing from the scope of the present invention.

도 1은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.1 is a block diagram illustrating and illustrating a computing environment 10 including computing devices suitable for use in example embodiments. In the illustrated embodiment, each component may have different functions and capabilities in addition to those described below, and may include additional components in addition to those described below.

도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 시계열 데이터의 이상치 탐지를 위한 장치일 수 있다. The illustrated computing environment 10 includes a computing device 12 . In one embodiment, computing device 12 may be a device for detecting outliers in time series data.

컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.Computing device 12 includes at least one processor 14, a computer-readable storage medium 16, and a communication bus 18. Processor 14 may cause computing device 12 to operate in accordance with the example embodiments noted above. For example, processor 14 may execute one or more programs stored on computer-readable storage medium 16. The one or more programs may include one or more computer-executable instructions, which, when executed by the processor 14, cause computing device 12 to perform operations according to example embodiments. It can be.

컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.Computer-readable storage medium 16 is configured to store computer-executable instructions or program code, program data, and/or other suitable form of information. The program 20 stored in the computer-readable storage medium 16 includes a set of instructions executable by the processor 14. In one embodiment, computer-readable storage medium 16 includes memory (volatile memory, such as random access memory, non-volatile memory, or an appropriate combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash It may be memory devices, another form of storage medium that can be accessed by computing device 12 and store desired information, or a suitable combination thereof.

통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.Communication bus 18 interconnects various other components of computing device 12, including processor 14 and computer-readable storage medium 16.

컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.Computing device 12 may also include one or more input/output interfaces 22 and one or more network communication interfaces 26 that provide an interface for one or more input/output devices 24. The input/output interface 22 and the network communication interface 26 are connected to the communication bus 18. Input/output device 24 may be coupled to other components of computing device 12 through input/output interface 22. Exemplary input/output devices 24 include, but are not limited to, a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touchpad or touch screen), a voice or sound input device, various types of sensor devices, and/or imaging devices. It may include input devices and/or output devices such as display devices, printers, speakers, and/or network cards. The exemplary input/output device 24 may be included within the computing device 12 as a component constituting the computing device 12, or may be connected to the computing device 12 as a separate device distinct from the computing device 12. It may be possible.

도 2는 본 발명의 일 실시예에 따른 시계열 데이터의 이상치 탐지 방법을 나타낸 흐름도이다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.Figure 2 is a flowchart showing a method for detecting outliers in time series data according to an embodiment of the present invention. In the illustrated flow chart, the method is divided into a plurality of steps, but at least some of the steps are performed in a different order, combined with other steps, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.

도 2를 참조하면, 컴퓨팅 장치(12)는 정상적인 시계열 데이터를 획득할 수 있다(S 101). 컴퓨팅 장치(12)는 후술하는 인공 신경망 모델(50)을 학습하기 위해 정상적인 시계열 데이터를 획득할 수 있다. 즉, 컴퓨팅 장치(12)는 인공 신경망 모델(50)을 학습하는 학습 데이터로서 정상적인 시계열 데이터를 이용할 수 있다. Referring to FIG. 2, the computing device 12 may acquire normal time series data (S 101). The computing device 12 may acquire normal time series data to learn an artificial neural network model 50, which will be described later. That is, the computing device 12 can use normal time series data as learning data for training the artificial neural network model 50.

여기서, 정상적인 시계열 데이터라 함은 결측치가 없는 시계열 데이터를 의미할 수 있다. 그리고, 시계열 데이터는 일정 시간 동안 측정된 연속 데이터일 수도 있고, 일정 시간 동안 측정된 불연속 데이터이나 주기적인 데이터(예를 들어, 기 설정된 단위 시간마다 측정된 데이터 등)일 수도 있다. 시계열 데이터는 IoT 장치, 센서(예를 들어, 심전도 센서, 온도 센서, 습도 센서 등) 등을 통해 획득할 수 있다. Here, normal time series data may mean time series data without missing values. Additionally, time series data may be continuous data measured over a certain period of time, discontinuous data measured over a period of time, or periodic data (for example, data measured at preset unit times, etc.). Time series data can be obtained through IoT devices and sensors (e.g., electrocardiogram sensors, temperature sensors, humidity sensors, etc.).

다음으로, 컴퓨팅 장치(12)는 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간이 존재하도록 한 후 인공 신경망 모델에 입력 할 수 있다(S 103). Next, the computing device 12 may remove some sections of the normal time series data so that there are missing sections and then input them into the artificial neural network model (S 103).

예를 들어, 정상적인 시계열 데이터가 연속 데이터인 경우, 컴퓨팅 장치(12)는 정상적인 시계열 데이터에서 일부 시간 길이의 연속 데이터를 제거하여 결측 구간을 형성할 수 있다. 또한, 정상적인 시계열 데이터가 불연속 데이터인 경우, 컴퓨팅 장치(12)은 정상적인 시계열 데이터에서 하나 이상의 데이터를 제거하여 결측 구간을 형성할 수 있다. For example, if the normal time series data is continuous data, the computing device 12 may form a missing section by removing continuous data of some time length from the normal time series data. Additionally, when the normal time series data is discontinuous data, the computing device 12 may form a missing section by removing one or more data from the normal time series data.

다음으로, 컴퓨팅 장치(12)는 인공 신경망 모델이 입력된 시계열 데이터의 결측 구간을 예측하여 결측 값을 대체하도록 학습시킬 수 있다(S 105). 즉, 인공 신경망 모델은 결측 구간이 존재하는 시계열 데이터를 입력 받아 결측 구간의 값을 예측하고, 예측된 값으로 결측 구간을 대체함으로써 시계열 데이터를 복원하도록 학습되는 모델일 수 있다. Next, the computing device 12 can train the artificial neural network model to predict the missing section of the input time series data and replace the missing value (S 105). In other words, the artificial neural network model may be a model that is learned to restore time series data by receiving time series data with a missing section, predicting the value of the missing section, and replacing the missing section with the predicted value.

도 3은 본 발명의 일 실시예에서 인공 신경망 모델을 학습하는 상태를 나타낸 도면이다. 도 3을 참조하면, 인공 신경망 모델(50)은 결측 구간이 존재하는 시계열 데이터를 입력 받고, 결측 구간의 값을 예측하여 복원된 시계열 데이터를 출력할 수 있다. 컴퓨팅 장치(12)는 인공 신경망 모델(50)에 의해 복원된 시계열 데이터와 결측 구간을 생성하기 전 원래의 정상적인 시계열 데이터 간의 차이가 최소화되도록 인공 신경망 모델(50)을 학습시킬 수 있다. 예시적인 실시예에서, 인공 신경망 모델(50)은 GAN(Generative Adversarial Network), 조건부 확산 모델 등이 사용될 수 있으나, 이에 한정되는 것은 아니다. Figure 3 is a diagram showing a state of learning an artificial neural network model in one embodiment of the present invention. Referring to FIG. 3, the artificial neural network model 50 can receive time series data with a missing section, predict the value of the missing section, and output restored time series data. The computing device 12 may train the artificial neural network model 50 to minimize the difference between the time series data restored by the artificial neural network model 50 and the original normal time series data before generating the missing section. In an exemplary embodiment, the artificial neural network model 50 may use a generative adversarial network (GAN), a conditional diffusion model, etc., but is not limited thereto.

여기서, 인공 신경망 모델(50)은 입력되는 시계열 데이터에서 값이 존재하는 구간의 데이터를 참고 데이터로 설정하고, 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정한 후, 참고 데이터를 기반으로 타겟 데이터를 예측하도록 학습될 수 있다. 이때, 컴퓨팅 장치(12)는 결측 구간에 랜덤한 노이즈를 삽입하여 인공 신경망 모델(50)이 원래의 정상적인 시계열 데이터를 복원하도록 할 수 있다. Here, the artificial neural network model 50 sets the data in the section where the value exists in the input time series data as reference data, sets the missing section in which the value does not exist as target data, and then sets the target data based on the reference data. can be learned to predict. At this time, the computing device 12 may insert random noise into the missing section to allow the artificial neural network model 50 to restore the original normal time series data.

인공 신경망 모델(50)은 정상적인 시계열 데이터로 학습되기 때문에, 참고 데이터를 기반으로 정상적인 시계열 데이터의 분포와 유사한 값으로 타겟 데이터를 예측할 수 있게 된다. 이하, 정상적인 시계열 데이터에서 값이 존재하는 구간을 참고 구간이라 하고, 값이 존재하지 않는 구간(즉, 값을 고의로 제거한 구간)을 결측 구간이라 지칭할 수 있다. Since the artificial neural network model 50 is learned with normal time series data, it is possible to predict target data with a value similar to the distribution of normal time series data based on reference data. Hereinafter, the section in which a value exists in normal time series data may be referred to as a reference section, and the section in which a value does not exist (i.e., a section in which the value has been intentionally removed) may be referred to as a missing section.

한편, 인공 신경망 모델(50)을 학습할 때, 컴퓨팅 장치(12)는 정상적인 시계열 데이터에서 결측 구간의 길이를 다르게 하면서 인공 신경망 모델(50)을 학습할 수 있다. 예시적인 실시예에서, 컴퓨팅 장치(12)는 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 기 설정된 제1 임계 비율 이하가 되도록 결측 구간을 조절하면서 인공 신경망 모델(50)을 학습할 수 있다. 이는 참고 구간 대비 결측 구간이 작도록 한 상태에서 인공 신경망 모델(50)이 결측 구간의 값을 잘 예측하도록 하기 위한 것일 수 있다. Meanwhile, when learning the artificial neural network model 50, the computing device 12 may learn the artificial neural network model 50 while varying the length of the missing section in normal time series data. In an exemplary embodiment, the computing device 12 may learn the artificial neural network model 50 while adjusting the missing section so that the ratio of the missing section to the reference section in normal time series data is less than or equal to a preset first threshold ratio. This may be to ensure that the artificial neural network model 50 predicts the value of the missing section well while keeping the missing section smaller than the reference section.

또한, 컴퓨팅 장치(12)는 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 제1 임계 비율 보다 높게 설정된 제2 임계 비율 이상이 되도록 결측 구간을 조절하면서 인공 신경망 모델(50)을 학습할 수 있다. 이는 참고 구간 대비 결측 구간이 크도록 한 상태에서(즉, 참고 구간이 결측 구간보다 작은 상태에서) 후술하는 이상치 탐지 시 인공 신경망 모델(50)이 시계열 데이터를 잘 복원하도록 하기 위한 것일 수 있다. In addition, the computing device 12 may learn the artificial neural network model 50 while adjusting the missing section so that the ratio of the missing section to the reference section in normal time series data is greater than or equal to a second threshold ratio set higher than the first threshold ratio. . This may be to ensure that the artificial neural network model 50 can restore time series data well when detecting an outlier, which will be described later, with the missing section being larger than the reference section (i.e., the reference section being smaller than the missing section).

다음으로, 컴퓨팅 장치(12)는 이상치의 탐지 대상이 되는 시계열 데이터(탐지 대상 시계열 데이터)를 입력 받을 수 있다(S 107). 즉, 컴퓨팅 장치(12)는 인공 신경망 모델(50)이 학습된 상태에서 탐지 대상 시계열 데이터를 입력 받을 수 있다. Next, the computing device 12 may receive time series data (detection target time series data) for detecting outliers (S 107). That is, the computing device 12 can receive detection target time series data while the artificial neural network model 50 is trained.

다음으로, 컴퓨팅 장치(12)는 탐지 대상 시계열 데이터를 기 학습된 인공 신경망 모델(50)에 입력하여 이상치 여부를 탐지할 수 있다(S 109). 여기서, 인공 신경망 모델(50)은 시계열 데이터에서 결측 구간의 값을 예측하여 시계열 데이터를 복원하도록 학습된 모델인데, 개시되는 실시예에서는 인공 신경망 모델(50)을 통해 탐지 대상 시계열 데이터의 이상치 여부도 탐지하도록 한다. Next, the computing device 12 can input the detection target time series data into the previously learned artificial neural network model 50 to detect whether there is an outlier (S 109). Here, the artificial neural network model 50 is a model learned to restore time series data by predicting the value of a missing section in time series data. In the disclosed embodiment, the artificial neural network model 50 determines whether the time series data to be detected is an outlier. Let it be detected.

즉, 개시되는 실시예에서는 시계열 데이터의 결측치를 예측하는 제1 태스크와 시계열 데이터의 이상치를 탐지하는 제2 태스크를 모두 하나의 인공 신경망 모델(50)을 통해 수행할 수 있다. That is, in the disclosed embodiment, both the first task of predicting missing values of time series data and the second task of detecting outliers of time series data can be performed through a single artificial neural network model 50.

구체적으로, 컴퓨팅 장치(12)는 탐지 대상 시계열 데이터에서 하나 이상의 참고 구간을 설정할 수 있다. 예시적인 실시예에서, 컴퓨팅 장치(12)는 탐지 대상 시계열 데이터에서 기 설정된 기준 비율만큼 참고 구간을 랜덤하게 설정할 수 있으나, 이에 한정되는 것은 아니다. Specifically, the computing device 12 may set one or more reference intervals in time series data to be detected. In an exemplary embodiment, the computing device 12 may randomly set a reference interval equal to a preset reference ratio in the detection target time series data, but is not limited to this.

그리고, 인공 신경망 모델(50)은 입력되는 탐지 대상 시계열 데이터에서 기 설정된 참고 구간을 제외한 나머지 구간을 예측하여 복원된 탐지 대상 시계열 데이터를 출력할 수 있다. In addition, the artificial neural network model 50 may predict the remaining sections excluding the preset reference section from the input detection target time series data and output restored detection target time series data.

이때, 인공 신경망 모델(50)은 탐지 대상 시계열 데이터에서 기 설정된 참고 구간의 데이터를 참고 데이터로 설정하고, 참고 구간을 제외한 나머지 구간의 데이터를 타겟 데이터로 설정한 후 참고 데이터를 기반으로 타겟 데이터를 예측하여 복원된 탐지 대상 시계열 데이터를 출력할 수 있다. At this time, the artificial neural network model 50 sets the data in the preset reference section in the time series data to be detected as reference data, sets the data in the remaining sections excluding the reference section as target data, and then sets the target data based on the reference data. The predicted and restored detection target time series data can be output.

즉, 인공 신경망 모델(50)은 시계열 데이터에서 결측 구간의 값을 예측하도록 학습된 모델인 바, 탐지 대상 시계열 데이터에서 참고 구간을 제외한 나머지 구간을 결측 구간인 것처럼 인식하여 상기 나머지 구간의 값을 예측한 후 이를 복원할 수 있게 된다. In other words, the artificial neural network model 50 is a model learned to predict the value of the missing section in time series data, and recognizes the remaining section in the time series data to be detected, excluding the reference section, as if it were the missing section and predicts the value of the remaining section. After doing so, you can restore it.

여기서, 인공 신경망 모델(50)은 참고 구간 대비 결측 구간의 비율이 제2 임계 비율 이상이 되도록 결측 구간을 조절하면서 학습되었으므로, 참고 구간을 제외한 나머지 구간이 참고 구간보다 큰 경우에도 상기 나머지 구간의 값을 예측하여 탐지 대상 시계열 데이터를 복원할 수 있게 된다. Here, the artificial neural network model 50 was learned by adjusting the missing section so that the ratio of the missing section to the reference section is more than the second critical ratio, so even if the remaining section excluding the reference section is larger than the reference section, the value of the remaining section By predicting , it is possible to restore the detection target time series data.

도 4는 본 발명의 일 실시예에서 인공 신경망 모델을 통해 탐지 대상 시계열 데이터를 복원하는 상태를 나타낸 도면이다. 도 4를 참조하면, 컴퓨팅 장치(12)는 탐지 대상 시계열 데이터에서 복수 개의 참고 구간을 설정할 수 있다. 인공 신경망 모델(50)은 입력되는 탐지 대상 시계열 데이터에서 참고 구간의 데이터를 기반으로 참고 구간을 제외한 나머지 구간의 데이터를 예측하여 복원된 탐지 대상 시계열 데이터를 출력할 수 있다. Figure 4 is a diagram showing a state of restoring detection target time series data through an artificial neural network model in one embodiment of the present invention. Referring to FIG. 4, the computing device 12 may set a plurality of reference intervals in time series data to be detected. The artificial neural network model 50 may predict data in the remaining sections excluding the reference section based on data in the reference section from the input detection target time series data and output restored detection target time series data.

이는 인공 신경망 모델(50)에서 결측 구간을 예측하는 것과 동일한 방식으로 이루어지는 것일 수 있다. 즉, 인공 신경망 모델(50)에서 결측 구간을 예측할 때는, 시계열 데이터의 값이 존재하는 구간의 데이터를 참고 데이터로 설정하고, 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정한 후, 참고 데이터를 기반으로 결측 구간을 예측하여 시계열 데이터를 복원하였다. This may be done in the same way as predicting the missing section in the artificial neural network model 50. In other words, when predicting a missing section in the artificial neural network model 50, the data in the section where the value of the time series data exists is set as reference data, the missing section where the value does not exist is set as target data, and then the reference data is set. Based on this, the missing section was predicted and the time series data was restored.

그리고, 인공 신경망 모델(50)에서 이상치 여부를 탐지할 때는, 시계열 데이터에서 복수 개의 참고 구간의 데이터를 참고 데이터로 설정하고, 참고 구간 이외의 나머지 구간을 타겟 데이터로 설정한 후, 참고 데이터를 기반으로 나머지 구간을 예측하여 시계열 데이터를 복원하게 되는 바, 하나의 인공 신경망 모델(50)을 통해 결측치를 예측하는 제1 태스크 및 이상치 여부를 탐지하는 제2 태스크를 모두 수행할 수 있게 된다. In addition, when detecting outliers in the artificial neural network model 50, data from a plurality of reference sections in the time series data are set as reference data, the remaining sections other than the reference section are set as target data, and then based on the reference data. Since the time series data is restored by predicting the remaining section, both the first task of predicting missing values and the second task of detecting outliers can be performed through one artificial neural network model 50.

컴퓨팅 장치(12)는 탐지 대상 시계열 데이터와 인공 신경망 모델(50)이 출력하는 복원된 탐지 대상 시계열 데이터 간의 차이에 기반하여 이상치 여부를 탐지할 수 있다. 컴퓨팅 장치(12)는 탐지 대상 시계열 데이터와 상기 복원된 탐지 대상 시계열 데이터 간의 차이가 기 설정된 임계치 이상인 경우 해당 시점의 탐지 대상 시계열 데이터는 이상치인 것으로 판단할 수 있다. The computing device 12 may detect an outlier based on the difference between the detection target time series data and the restored detection target time series data output by the artificial neural network model 50. If the difference between the detection target time series data and the restored detection target time series data is greater than or equal to a preset threshold, the computing device 12 may determine that the detection target time series data at that time is an outlier.

여기서, 인공 신경망 모델(50)은 정상적인 시계열 데이터를 이용하여 학습된 모델이기 때문에, 탐지 대상 시계열 데이터에 이상치가 포함된 경우 이는 정상적인 시계열 데이터와는 다른 분포를 보이게 되는 바, 원래 입력 데이터인 탐지 대상 시계열 데이터와 복원된 탐지 대상 시계열 데이터 간에는 차이가 생기게 된다.Here, since the artificial neural network model 50 is a model learned using normal time series data, if the detection target time series data includes outliers, it will show a different distribution from the normal time series data, and the detection target, which is the original input data, will show a different distribution than the normal time series data. There is a difference between the time series data and the restored detection target time series data.

한편, 탐지 대상 시계열 데이터에 결측 구간이 존재하는 경우, 컴퓨팅 장치(12)는 탐지 대상 시계열 데이터를 기 학습된 인공 신경망 모델(50)에 입력하여 결측 구간이 예측된 값으로 대체된 탐지 대상 시계열 데이터를 획득할 수 있다. Meanwhile, if a missing section exists in the time series data to be detected, the computing device 12 inputs the time series data to be detected into the previously learned artificial neural network model 50, and the missing section is replaced with the predicted value. can be obtained.

인공 신경망 모델(50)은 시계열 데이터에서 결측 구간의 값을 예측하도록 학습된 모델인 바, 탐지 대상 시계열 데이터에 존재하는 결측 구간의 값을 예측하고, 예측된 값으로 결측 구간을 대체할 수 있다. 이때, 인공 신경망 모델(50)은 탐지 대상 시계열 데이터에서 값이 존재하는 구간의 데이터를 참고 데이터로 설정하고, 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정한 후, 참고 데이터를 기반으로 타겟 데이터를 예측할 수 있다. The artificial neural network model 50 is a model learned to predict the value of a missing section in time series data, and can predict the value of a missing section that exists in the time series data to be detected and replace the missing section with the predicted value. At this time, the artificial neural network model 50 sets the data in the section where the value exists in the time series data to be detected as reference data, sets the missing section in which the value does not exist as target data, and then sets the target data based on the reference data. can be predicted.

그 후, 컴퓨팅 장치(12)는 결측 구간이 예측된 값으로 대체된 탐지 대상 시계열 데이터를 기 학습된 인공 신경망 모델(50)에 입력하여 이상치 여부를 탐지할 수 있다. Thereafter, the computing device 12 may input the detection target time series data, in which the missing section is replaced with the predicted value, into the previously learned artificial neural network model 50 to detect whether there is an outlier.

개시되는 실시예에 의하면, 하나의 인공 신경망 모델을 통해 결측치를 예측하는 태스크와 이상치 여부를 탐지하는 태스크를 모두 수행할 수 있게 된다. 이때, 인공 신경망 모델을 결측치 예측에 대해 한번만 학습하면 되므로, 효율적으로 결측치 예측 및 이상치 탐지를 수행할 수 있게 된다.According to the disclosed embodiment, it is possible to perform both the task of predicting missing values and the task of detecting outliers through a single artificial neural network model. At this time, since the artificial neural network model only needs to be trained once for missing value prediction, missing value prediction and outlier detection can be performed efficiently.

이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although representative embodiments of the present invention have been described in detail above, those skilled in the art will understand that various modifications can be made to the above-described embodiments without departing from the scope of the present invention. . Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims described later but also by equivalents to the claims.

10 : 컴퓨팅 환경
12 : 컴퓨팅 장치
14 : 프로세서
16 : 컴퓨터 판독 가능 저장 매체
18 : 통신 버스
20 : 프로그램
22 : 입출력 인터페이스
24 : 입출력 장치
26 : 네트워크 통신 인터페이스
50 : 인공 신경망 모델
10: Computing environment
12: Computing device
14: processor
16: computer-readable storage medium
18: communication bus
20: Program
22: input/output interface
24: input/output device
26: Network communication interface
50: Artificial neural network model

Claims (19)

하나 이상의 프로세서들, 및
상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
정상적인 시계열 데이터를 획득하는 단계;
상기 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간을 형성하는 단계;
인공 신경망 모델이 입력되는 시계열 데이터의 상기 결측 구간을 예측하고, 예측된 값으로 상기 결측 구간을 대체하여 복원된 시계열 데이터를 출력하도록 상기 인공 신경망 모델을 학습하는 단계;
이상치의 탐지 대상이 되는 탐지 대상 시계열 데이터를 입력 받는 단계; 및
상기 탐지 대상 시계열 데이터를 기 학습된 상기 인공 신경망 모델에 입력하여 이상치 여부를 탐지하는 단계를 포함하는, 시계열 데이터의 이상치 탐지 방법.
one or more processors, and
A method performed on a computing device having a memory that stores one or more programs executed by the one or more processors, comprising:
Obtaining normal time series data;
forming a missing section by removing some sections of the normal time series data;
Learning the artificial neural network model to predict the missing section of input time series data, replace the missing section with a predicted value, and output restored time series data;
A step of receiving detection target time series data that is the target of detection of outliers; and
A method for detecting outliers in time series data, comprising the step of detecting whether there are outliers by inputting the time series data to be detected into the previously learned artificial neural network model.
청구항 1에 있어서,
상기 인공 신경망 모델을 학습하는 단계는,
입력되는 시계열 데이터에서 값이 존재하는 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 시계열 데이터에서 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정하며, 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하도록 상기 인공 신경망 모델을 학습하는, 시계열 데이터의 이상치 탐지 방법.
In claim 1,
The step of learning the artificial neural network model is,
In the input time series data, the data in the reference section where the value exists is set as reference data, the missing section in the time series data where the value does not exist is set as target data, and the target data is predicted based on the reference data. A method for detecting outliers in time series data, learning the artificial neural network model.
청구항 2에 있어서,
상기 인공 신경망 모델을 학습하는 단계는,
상기 정상적인 시계열 데이터에서 결측 구간의 길이를 다르게 하면서 상기 인공 신경망 모델을 학습하는, 시계열 데이터의 이상치 탐지 방법.
In claim 2,
The step of learning the artificial neural network model is,
A method of detecting outliers in time series data, wherein the artificial neural network model is learned while varying the length of the missing section in the normal time series data.
청구항 3에 있어서,
상기 인공 신경망 모델을 학습하는 단계는,
상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 기 설정된 제1 임계 비율 이하가 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습하는, 시계열 데이터의 이상치 탐지 방법.
In claim 3,
The step of learning the artificial neural network model is,
A method for detecting outliers in time series data, wherein the artificial neural network model is learned while adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is less than or equal to a preset first threshold ratio.
청구항 4에 있어서,
상기 인공 신경망 모델을 학습하는 단계는,
상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 상기 제1 임계 비율보다 높게 설정된 제2 임계 비율 이상이 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습하는, 시계열 데이터의 이상치 탐지 방법.
In claim 4,
The step of learning the artificial neural network model is,
A method for detecting outliers in time series data, wherein the artificial neural network model is learned while adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is greater than or equal to a second threshold ratio set higher than the first threshold ratio.
청구항 5에 있어서,
상기 이상치 여부를 탐지하는 단계는,
상기 탐지 대상 시계열 데이터에서 하나 이상의 참고 구간을 설정하는 단계;
상기 기 학습된 상기 인공 신경망 모델이 입력되는 상기 탐지 대상 시계열 데이터에서 상기 참고 구간을 제외한 나머지 구간을 예측하여 복원된 탐지 대상 시계열 데이터를 출력하는 단계; 및
상기 탐지 대상 시계열 데이터와 상기 복원된 탐지 대상 시계열 데이터 간의 차이에 기반하여 이상치 여부를 탐지하는 단계를 포함하는, 시계열 데이터의 이상치 탐지 방법.
In claim 5,
The step of detecting the outlier is,
Setting one or more reference intervals in the detection target time series data;
Predicting the remaining sections excluding the reference section from the detection target time series data inputted by the pre-trained artificial neural network model and outputting restored detection target time series data; and
A method for detecting outliers in time series data, comprising the step of detecting an outlier based on a difference between the detection target time series data and the restored detection target time series data.
청구항 6에 있어서,
상기 복원된 탐지 대상 시계열 데이터를 출력하는 단계는,
상기 탐지 대상 시계열 데이터에서 상기 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 참고 구간 이외의 나머지 구간을 타겟 데이터로 설정한 후 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하여 상기 복원된 탐지 대상 시계열 데이터를 출력하는, 시계열 데이터의 이상치 탐지 방법.
In claim 6,
The step of outputting the restored detection target time series data is,
In the detection target time series data, the data in the reference section is set as reference data, the remaining sections other than the reference section are set as target data, and the target data is predicted based on the reference data to predict the restored detection target time series. Outlier detection method for time series data that outputs data.
청구항 6에 있어서,
상기 참고 구간을 설정하는 단계는,
상기 탐지 대상 시계열 데이터에서 기 설정된 기준 비율만큼 참고 구간을 랜덤하게 설정하는, 시계열 데이터의 이상치 탐지 방법.
In claim 6,
The step of setting the reference section is,
A method of detecting outliers in time series data, wherein a reference interval is randomly set by a preset reference ratio in the time series data to be detected.
청구항 1에 있어서,
상기 이상치 여부를 탐지하는 단계는,
상기 탐지 대상 시계열 데이터에 결측 구간이 존재하는 경우, 상기 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 상기 결측 구간의 값을 예측하고, 예측된 값으로 상기 결측 구간을 대체하는 단계; 및
상기 결측 구간이 대체된 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 이상치 여부를 탐지하는 단계를 포함하는, 시계열 데이터의 이상치 탐지 방법.
In claim 1,
The step of detecting the outlier is,
When a missing section exists in the detection target time series data, inputting the detection target time series data into the pre-trained artificial neural network model to predict the value of the missing section, and replacing the missing section with the predicted value; and
A method for detecting outliers in time series data, comprising the step of inputting detection target time series data in which the missing section has been replaced into the previously learned artificial neural network model to detect whether there are outliers.
하나 이상의 프로세서들;
메모리; 및
하나 이상의 프로그램들을 포함하고,
상기 하나 이상의 프로그램들은 상기 메모리에 저장되고, 상기 하나 이상의 프로세서들에 의해 실행되도록 구성되며,
상기 하나 이상의 프로그램들은,
정상적인 시계열 데이터를 획득하기 위한 명령;
상기 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간을 형성하기 위한 명령;
인공 신경망 모델이 입력되는 시계열 데이터의 상기 결측 구간을 예측하고, 예측된 값으로 상기 결측 구간을 대체하여 복원된 시계열 데이터를 출력하도록 상기 인공 신경망 모델을 학습하기 위한 명령;
이상치의 탐지 대상이 되는 탐지 대상 시계열 데이터를 입력 받기 위한 명령; 및
상기 탐지 대상 시계열 데이터를 기 학습된 상기 인공 신경망 모델에 입력하여 이상치 여부를 탐지하기 위한 명령을 포함하는, 컴퓨팅 장치.
one or more processors;
Memory; and
Contains one or more programs,
The one or more programs are stored in the memory and configured to be executed by the one or more processors,
The one or more programs above include:
Command for acquiring normal time series data;
A command for removing some sections of the normal time series data to form a missing section;
A command for training the artificial neural network model to predict the missing section of input time series data, replace the missing section with a predicted value, and output restored time series data;
A command to input detection target time series data that is the target of detection of outliers; and
A computing device comprising a command for detecting an outlier by inputting the detection target time series data into the previously learned artificial neural network model.
청구항 10에 있어서,
상기 인공 신경망 모델을 학습하기 위한 명령은,
입력되는 시계열 데이터에서 값이 존재하는 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 시계열 데이터에서 값이 존재하지 않는 결측 구간을 타겟 데이터로 설정하며, 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하도록 상기 인공 신경망 모델을 학습하기 위한 명령인, 컴퓨팅 장치.
In claim 10,
The command for learning the artificial neural network model is,
In the input time series data, the data in the reference section where the value exists is set as reference data, the missing section in the time series data where the value does not exist is set as target data, and the target data is predicted based on the reference data. A computing device, a command for learning the artificial neural network model.
청구항 11에 있어서,
상기 인공 신경망 모델을 학습하기 위한 명령은,
상기 정상적인 시계열 데이터에서 결측 구간의 길이를 다르게 하면서 상기 인공 신경망 모델을 학습하기 위한 명령인, 컴퓨팅 장치.
In claim 11,
The command for learning the artificial neural network model is,
A computing device that is a command for learning the artificial neural network model while varying the length of the missing section in the normal time series data.
청구항 12에 있어서,
상기 인공 신경망 모델을 학습하기 위한 명령은,
상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 기 설정된 제1 임계 비율 이하가 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습하기 위한 명령인, 컴퓨팅 장치.
In claim 12,
The command for learning the artificial neural network model is,
A computing device that is a command for learning the artificial neural network model while adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is less than or equal to a preset first threshold ratio.
청구항 13에 있어서,
상기 인공 신경망 모델을 학습하기 위한 명령은,
상기 정상적인 시계열 데이터에서 참고 구간 대비 결측 구간의 비율이 상기 제1 임계 비율보다 높게 설정된 제2 임계 비율 이상이 되도록 결측 구간의 길이를 조절하면서 상기 인공 신경망 모델을 학습하기 위한 명령인, 컴퓨팅 장치.
In claim 13,
The command for learning the artificial neural network model is,
A command for learning the artificial neural network model while adjusting the length of the missing section so that the ratio of the missing section to the reference section in the normal time series data is greater than or equal to a second threshold ratio set higher than the first threshold ratio.
청구항 14에 있어서,
상기 이상치 여부를 탐지하기 위한 명령은,
상기 탐지 대상 시계열 데이터에서 하나 이상의 참고 구간을 설정하기 위한 명령;
상기 기 학습된 상기 인공 신경망 모델이 입력되는 상기 탐지 대상 시계열 데이터에서 상기 참고 구간을 제외한 나머지 구간을 예측하여 복원된 탐지 대상 시계열 데이터를 출력하기 위한 명령; 및
상기 탐지 대상 시계열 데이터와 상기 복원된 탐지 대상 시계열 데이터 간의 차이에 기반하여 이상치 여부를 탐지하기 위한 명령을 포함하는, 컴퓨팅 장치.
In claim 14,
The command for detecting the outlier is:
A command for setting one or more reference intervals in the detection target time series data;
A command for predicting the remaining sections excluding the reference section from the detection target time series data input to the pre-trained artificial neural network model and outputting restored detection target time series data; and
A computing device comprising instructions for detecting an outlier based on a difference between the detection target time series data and the restored detection target time series data.
청구항 15에 있어서,
상기 복원된 탐지 대상 시계열 데이터를 출력하기 위한 명령은,
상기 탐지 대상 시계열 데이터에서 상기 참고 구간의 데이터를 참고 데이터로 설정하고, 상기 참고 구간 이외의 나머지 구간을 타겟 데이터로 설정한 후 상기 참고 데이터를 기반으로 상기 타겟 데이터를 예측하여 상기 복원된 탐지 대상 시계열 데이터를 출력하는, 컴퓨팅 장치.
In claim 15,
The command for outputting the restored detection target time series data is:
In the detection target time series data, the data in the reference section is set as reference data, the remaining sections other than the reference section are set as target data, and the target data is predicted based on the reference data to predict the restored detection target time series. A computing device that outputs data.
청구항 15에 있어서,
상기 참고 구간을 설정하기 위한 명령은,
상기 탐지 대상 시계열 데이터에서 기 설정된 기준 비율만큼 참고 구간을 랜덤하게 설정하는, 컴퓨팅 장치.
In claim 15,
The command for setting the reference section is:
A computing device that randomly sets a reference interval as much as a preset reference ratio in the detection target time series data.
청구항 10에 있어서,
상기 이상치 여부를 탐지하기 위한 명령은,
상기 탐지 대상 시계열 데이터에 결측 구간이 존재하는 경우, 상기 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 상기 결측 구간의 값을 예측하고, 예측된 값으로 상기 결측 구간을 대체하기 위한 명령; 및
상기 결측 구간이 대체된 탐지 대상 시계열 데이터를 상기 기 학습된 인공 신경망 모델에 입력하여 이상치 여부를 탐지하기 위한 명령을 포함하는, 컴퓨팅 장치.
In claim 10,
The command for detecting the outlier is:
If a missing section exists in the time series data to be detected, a command for inputting the time series data to be detected into the previously learned artificial neural network model to predict the value of the missing section and replace the missing section with the predicted value. ; and
A computing device comprising a command for detecting an outlier by inputting the detection target time series data in which the missing section has been replaced into the previously learned artificial neural network model.
비일시적 컴퓨터 판독 가능한 저장 매체(non-transitory computer readable storage medium)에 저장된 컴퓨터 프로그램으로서,
상기 컴퓨터 프로그램은 하나 이상의 명령어들을 포함하고, 상기 명령어들은 하나 이상의 프로세서들을 갖는 컴퓨팅 장치에 의해 실행될 때, 상기 컴퓨팅 장치로 하여금,
정상적인 시계열 데이터를 획득하는 단계;
상기 정상적인 시계열 데이터의 일부 구간을 제거하여 결측 구간을 형성하는 단계;
인공 신경망 모델이 입력되는 시계열 데이터의 상기 결측 구간을 예측하고, 예측된 값으로 상기 결측 구간을 대체하여 복원된 시계열 데이터를 출력하도록 상기 인공 신경망 모델을 학습하는 단계;
이상치의 탐지 대상이 되는 탐지 대상 시계열 데이터를 입력 받는 단계; 및
상기 탐지 대상 시계열 데이터를 기 학습된 상기 인공 신경망 모델에 입력하여 이상치 여부를 탐지하는 단계를 수행하도록 하는, 컴퓨터 프로그램.
A computer program stored on a non-transitory computer readable storage medium,
The computer program includes one or more instructions that, when executed by a computing device having one or more processors, cause the computing device to:
Obtaining normal time series data;
forming a missing section by removing some sections of the normal time series data;
Learning the artificial neural network model to predict the missing section of input time series data, replace the missing section with a predicted value, and output restored time series data;
A step of receiving detection target time series data that is the target of detection of outliers; and
A computer program that inputs the detection target time series data into the previously learned artificial neural network model and performs a step of detecting whether there is an outlier.
KR1020220100938A 2022-08-11 2022-08-11 Method for detecting outliers in time series data and computing device for executing the same KR20240022361A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220100938A KR20240022361A (en) 2022-08-11 2022-08-11 Method for detecting outliers in time series data and computing device for executing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220100938A KR20240022361A (en) 2022-08-11 2022-08-11 Method for detecting outliers in time series data and computing device for executing the same

Publications (1)

Publication Number Publication Date
KR20240022361A true KR20240022361A (en) 2024-02-20

Family

ID=90057137

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220100938A KR20240022361A (en) 2022-08-11 2022-08-11 Method for detecting outliers in time series data and computing device for executing the same

Country Status (1)

Country Link
KR (1) KR20240022361A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200030303A (en) 2018-09-12 2020-03-20 삼성에스디에스 주식회사 Method and apparatus for compensating a missing value in data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200030303A (en) 2018-09-12 2020-03-20 삼성에스디에스 주식회사 Method and apparatus for compensating a missing value in data

Similar Documents

Publication Publication Date Title
JP6972265B2 (en) Pointer sentinel mixed architecture
CN110276446B (en) Method and device for training model and selecting recommendation information
KR102158683B1 (en) Augmenting neural networks with external memory
KR101869438B1 (en) Method and system for predicting prognosis from diagnostic histories using deep learning
JP6182242B1 (en) Machine learning method, computer and program related to data labeling model
US20170364829A1 (en) System and methods for intrinsic reward reinforcement learning
JP2019061647A (en) Method for sensing abnormal session
US12051232B2 (en) Anomaly detection apparatus, anomaly detection method, and program
US10366330B2 (en) Formal verification result prediction
KR102074909B1 (en) Apparatus and method for classifying software vulnerability
JP6763482B2 (en) Hypothesis reasoning device, hypothesis reasoning method, and program
KR20190045038A (en) Method and apparatus for speech recognition
US20220012632A1 (en) Generalized metric for machine learning model evaluation for unsupervised classification
JP4265296B2 (en) Change point detection apparatus, change point detection method, and change point detection program
US10936967B2 (en) Information processing system, information processing method, and recording medium for learning a classification model
US20220114478A1 (en) System and method for enhancing inference models based on prediction data
US11531927B2 (en) Categorical data transformation and clustering for machine learning using natural language processing
CN117057443B (en) Prompt learning method of visual language model and electronic equipment
KR102124425B1 (en) Method and apparatus for estimating a predicted time series data
Stötzel et al. Complementing ODE-based system analysis using Boolean networks derived from an Euler-like transformation
KR20240022361A (en) Method for detecting outliers in time series data and computing device for executing the same
KR102413588B1 (en) Object recognition model recommendation method, system and computer program according to training data
US11593686B2 (en) Methods, systems and apparatus to improve deep learning resource efficiency
JP7127686B2 (en) Hypothetical Inference Device, Hypothetical Inference Method, and Program
CN113066486B (en) Data identification method, device, electronic equipment and computer readable storage medium