KR20200137107A - 기계 학습 기반의 시계열 데이터 분석 장치 및 방법 - Google Patents

기계 학습 기반의 시계열 데이터 분석 장치 및 방법 Download PDF

Info

Publication number
KR20200137107A
KR20200137107A KR1020190062881A KR20190062881A KR20200137107A KR 20200137107 A KR20200137107 A KR 20200137107A KR 1020190062881 A KR1020190062881 A KR 1020190062881A KR 20190062881 A KR20190062881 A KR 20190062881A KR 20200137107 A KR20200137107 A KR 20200137107A
Authority
KR
South Korea
Prior art keywords
data
learning
augmentation
feature
policy
Prior art date
Application number
KR1020190062881A
Other languages
English (en)
Inventor
서지현
박정형
박왕근
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020190062881A priority Critical patent/KR20200137107A/ko
Priority to US16/670,185 priority patent/US11562294B2/en
Priority to EP20167958.6A priority patent/EP3745317A1/en
Publication of KR20200137107A publication Critical patent/KR20200137107A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

기계 학습 기반의 시계열 데이터 분석 장치 및 방법이 개시된다. 일 실시예에 따른 시계열 데이터 분석 장치는 하나 이상의 항목, 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함하는 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성하는 학습 데이터 생성 모듈; 생성된 상기 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성하는 제1 데이터 증강 모듈; 상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는 특징 추출기; 및 추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류하는 분류기를 포함한다.

Description

기계 학습 기반의 시계열 데이터 분석 장치 및 방법{APPARATUS AND METHOD FOR ANALYZING TIME-SERIES DATA BASED ON MACHINE LEARNING}
개시되는 실시예들은 기계 학습 기반의 시계열 데이터 분석 기술과 관련된다.
시계열 데이터(time series data)란 시간(time)의 개념을 갖는 데이터를 의미한다. 예를 들어, 일정 기간 동안의 제품 수요량 데이터, 기기 등의 이상 감지 데이터, 로그 데이터 등이 시계열 데이터에 해당한다. 시계열 데이터 분석은 수요 예측, 이상 감지, 로그 분석 등 시간 개념을 갖는 데이터를 수집하고 분석하는 모든 분야에서 널리 활용된다.
최근에는 시계열 데이터 분석에 기계 학습(machine learning)을 이용하는 경우가 증가하고 있다. 기계 학습의 정확도를 높이기 위해서는 다량의 학습 데이터가 필요하다. 그러나 대부분의 시계열 데이터는 데이터 분포의 불균형이 존재한다. 예를 들어 장애 로그 데이터의 경우 극소수의 장애 데이터를 제외하면 대부분의 경우 정상 데이터가 수집되므로 데이터의 양이 많아도 정작 장애 예측에 필요한 장애 로그 데이터는 불충분한 경우가 많다.
한국 등록특허 KR 10-1919076 B1 (2018.11.09)
개시되는 실시예들은 기계 학습 기반의 시계열 데이터 분석에서 학습 대상인 시계열 데이터의 증강(augmentation)을 효과적으로 수행하기 위한 기술적인 수단을 제공하기 위한 것이다.
예시적인 실시예에 따르면, 하나 이상의 항목, 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함하는 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성하는 학습 데이터 생성 모듈; 생성된 상기 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성하는 제1 데이터 증강 모듈; 상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는 특징 추출기; 및 추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류하는 분류기를 포함하는, 시계열 데이터 분석 장치가 제공된다.
상기 장치는, 상기 항목의 특성에 따라 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하는 제2 데이터 증강 모듈을 더 포함할 수 있다.
상기 항목이 하나 이상의 수치(numerical) 항목을 포함하는 경우, 상기 제2 데이터 증강 모듈은, 생성된 상기 학습 데이터 중 상기 수치 항목에 해당하는 관측값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 학습 데이터를 증강하며, 상기 특징 추출기는, 상기 증강된 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출할 수 있다.
상기 항목이 하나 이상의 범주(categorical) 항목을 포함하는 경우, 상기 제2 데이터 증강 모듈은, 상기 특징 추출기로부터 추출된 상기 하나 이상의 특징값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 특징값을 증강하며, 상기 분류기는, 상기 증강된 특징값에 기반하여 상기 학습 데이터를 분류할 수 있다.
상기 장치는, 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하기 위한 최적 데이터 증강 정책을 결정하는 정책 추천 모듈을 더 포함할 수 있다.
상기 정책 추천 모듈은, 복수의 서로 다른 데이터 증강 정책을 상기 학습 데이터 및 상기 특징값에 적용하여 학습을 수행하고, 상기 각 데이터 증강 정책 별 학습 결과를 비교하여 상기 최적 데이터 증강 정책을 결정할 수 있다.
상기 정책 추천 모듈은, 특정 데이터 증강 정책을 적용한 학습 과정에서 손실함수의 값이 증가하거나, 또는 과거 특정 기간 동안의 상기 손실함수의 값들의 평균과 현재 손실함수의 값의 차이가 설정된 기준치보다 작은 경우, 상기 특정 데이터 증강 정책에 따른 학습을 종료하고, 상기 특정 데이터 증강 정책을 삭제할 수 있다.
다른 예시적인 실시예에 따르면, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 하나 이상의 항목, 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함하는 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성하는 단계; 생성된 상기 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성하는 단계; 상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는 단계; 및 추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류하는 단계를 포함하는, 시계열 데이터 분석 방법이 제공된다.
상기 방법은, 상기 항목의 특성에 따라 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하는 단계를 더 포함할 수 있다.
상기 항목이 하나 이상의 수치(numerical) 항목을 포함하는 경우, 상기 증강 단계는, 생성된 상기 학습 데이터 중 상기 수치 항목에 해당하는 관측값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 학습 데이터를 증강하며, 상기 특징값을 추출하는 단계는, 상기 증강된 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출할 수 있다.
상기 항목이 하나 이상의 범주(categorical) 항목을 포함하는 경우, 상기 증강 단계는, 상기 특징 추출기로부터 추출된 상기 하나 이상의 특징값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 특징값을 증강하며, 상기 특징값을 추출하는 단계는, 상기 증강된 특징값에 기반하여 상기 학습 데이터를 분류할 수 있다.
상기 방법은, 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하기 위한 최적 데이터 증강 정책을 결정하는 단계를 더 포함할 수 있다.
상기 최적 데이터 증강 정책을 결정하는 단계는, 복수의 서로 다른 데이터 증강 정책을 상기 학습 데이터 및 상기 특징값에 적용하여 학습을 수행하고, 상기 각 데이터 증강 정책 별 학습 결과를 비교하여 상기 최적 데이터 증강 정책을 결정할 수 있다.
상기 최적 데이터 증강 정책을 결정하는 단계는, 특정 데이터 증강 정책을 적용한 학습 과정에서 손실함수의 값이 증가하거나, 또는 과거 특정 기간 동안의 상기 손실함수의 값들의 평균과 현재 손실함수의 값의 차이가 설정된 기준치보다 작은 경우, 상기 특정 데이터 증강 정책에 따른 학습을 종료하고, 상기 특정 데이터 증강 정책을 삭제할 수 있다.
개시되는 실시예들에 따르면, 시계열 데이터의 특성에 맞추어 학습 대상인 시계열 데이터를 효과적으로 증강할 수 있게 되며, 이에 따라 제한된 학습 데이터로 인한 기계 학습 모델의 과적합 문제 및 시계열 데이터 분포의 불균형으로 인한 예측 정확도 저하 문제를 개선하고 시계열 데이터 분석의 신뢰도를 향상할 수 있다.
또한 개시되는 실시예들에 따르면, 시계열 데이터를 증강하기 위한 최적 매개변수를 효과적으로 설정할 수 있다.
도 1은 개시되는 실시예들에서 사용되는 시계열 데이터를 설명하기 위한 예시도
도 2는 일 실시예에 따른 시계열 데이터 분석 장치(200)를 설명하기 위한 블록도
도 3은 일 실시예에 따른 학습 데이터 생성 모듈(202)에서 학습 데이터를 생성하는 예를 나타낸 예시도
도 4은 일 실시예에 따른 제1 데이터 증강 모듈(204)에서 학습 데이터를 추가 생성하는 예를 나타낸 예시도
도 5는 일 실시예에 따른 제2 데이터 증강 모듈(210)에서 학습 데이터에 raw space augmentation을 적용하는 예를 설명하기 위한 예시도
도 6은 일 실시예에 따른 제2 데이터 증강 모듈(210)에서 특징값에 feature space augmentation을 적용하는 예를 설명하기 위한 예시도
도 7은 일 실시예에 따른 정책 추천 모듈(212)에서의 최적 데이터 증강 정책 결정 과정을 설명하기 위한 흐름도
도 8은 일 실시예에 따른 시계열 데이터 분석 방법(800)을 설명하기 위한 흐름도
도 9는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 개시되는 실시예들에서 사용되는 시계열 데이터를 설명하기 위한 예시도이다. 시계열 데이터(time-series data)는 센서 데이터, 판매 데이터 등과 같이 시간적 순서를 가지고 있는 데이터를 의미한다. 이러한 시계열 데이터는 하나 이상의 항목(column) 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함한다. 도 1은 임의의 제품에 대한 주별 수요 데이터를 예시한 것이다. 도 1에 도시된 시계열 데이터에서 항목은 각각 “판매처 코드”, “품목”, “주차”, “공휴일”, “수요량”을 나타낸다.
이미지 또는 음성 데이터 등과 같이 그 값을 수치(numeric)로 표현할 수 있는 데이터와 달리, 시계열 데이터의 각 항목은 수치(numeric) 항목과 범주(categorical) 항목으로 구분될 수 있다. 예를 들어, 도 1에 도시된 시계열 데이터에서 “판매처 코드”, “품목”, “주차”는 범주 항목을, “공휴일”, “수요량”은 수치 항목을 각각 나타낸다. 참고로 도시된 시계열 데이터에서 “공휴일” 항목은 해당 주차의 공휴일이 차지하는 비율(ratio)을 나타낸 것이다. 수치 항목에 해당하는 값들은 그 수치가 약간 변하더라도 데이터의 의미에 큰 변화가 없는 경우가 많다. 예를 들어, 특정 주차의 수요량이 100에서 101, 또는 99로 변경되더라도 전체 데이터의 트렌드에는 큰 영향을 주지 않는다. 그러나 범주 항목에 해당하는 값의 경우 수치의 변화에 따라 값의 의미가 전혀 다르게 변경되는 경우가 발생한다. 예를 들어, 판매처에 따라 판매처 코드를 1, 2, 3 등과 같이 부여할 경우를 가정하자. 이 경우 판매처 코드의 100에서 101, 또는 99로의 변경은 판매처 자체가 변경되는 결과를 가져오게 된다. 따라서 시계열 데이터의 경우 데이터의 처리에 있어 수치 항목 및 범주 항목을 구분할 필요가 있다.
개시되는 실시예들에서는 기계 학습 모델, 예를 들어 심층 신경망(Deep Neural Network)을 이용하여 이와 같은 시계열 데이터를 학습함으로써 예측 모델을 생성할 수 있다. 만약 학습 대상 시계열 데이터의 분포가 고르고 데이터의 양이 많다면 높은 예측 정확도를 가진 예측 모델을 생성할 수 있다. 그러나 현실 세계에서 관측되는 시계열 데이터는 대부분 특정 값들에 과도하게 편향되어 있는 비정규 분포를 따르고 데이터 양도 부족한 경우가 대부분이다. 예를 들어, 수요가 부정기적으로 발생하는 제품에 대한 수요량 데이터의 경우, 수요가 발생한 구간을 제외하고는 수요량이 0인 경우가 대부분이므로 데이터가 0으로 과도하게 편향되게 된다. 이러한 데이터로만 수요 예측 모델을 학습하게 되면, 대부분의 결과가 0으로 예측하게 되는 모델을 생성하게 된다. 또한, 이상 감지 데이터의 경우에도, 센서 데이터의 대부분은 정상 구간에 해당하며 장애 구간에 해당하는 데이터는 극소수이므로 장애 구간에 대한 특징을 갖는 데이터 수집에 어려움이 있다.
도 2는 일 실시예에 따른 시계열 데이터 분석 장치(200)를 설명하기 위한 블록도이다. 일 실시예에 따른 시계열 데이터 분석 장치(200)는 시계열 데이터를 학습하고 이로부터 미래에 일어날 일에 대한 예측을 수행하기 위한 장치를 의미한다. 예를 들어, 시계열 데이터가 특정 상품의 일정 기간 동안의 판매 데이터인 경우, 시계열 데이터 분석 장치(200)는 해당 상품에 대한 과거의 판매 이력을 학습하여 앞으로의 판매량을 예측할 수 있다. 다른 예에서, 시계열 데이터가 특정 기기로부터 측정된 센서 데이터인 경우, 시계열 데이터 분석 장치(200)는 일정 기간 동안의 센서 데이터를 분석하여 향후 해당 기기의 장애 여부를 예측할 수 있다.
도 2에 도시된 바와 같이, 일 실시예에 따른 시계열 데이터 분석 장치(200)는 학습 데이터 생성 모듈(202), 제1 데이터 증강 모듈(204), 특징 추출기(206) 및 분류기(208)를 포함한다.
학습 데이터 생성 모듈(202)은 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성한다. 전술한 바와 같이, 시계열 원시 데이터는 하나 이상의 항목(column), 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값(row)을 포함할 수 있다.
도 3은 일 실시예에 따른 학습 데이터 생성 모듈(202)에서 학습 데이터를 생성하는 예를 나타낸 예시도이다. 구체적으로, 도 3에서는 도 1에 도시된 원시 시계열 데이터, 즉 동일한 판매처와 품목에 대해 연속되는 주별로 기록한 수요량 데이터로부터 학습 데이터를 생성한 예를 나타낸 것이다.
도 1에 도시된 바와 같이, 동일한 판매처와 품목에 대하여 11주간 기록한 수요량 데이터가 존재할 때, 시작 주차부터 7주간의 연속된 입력 데이터를 보고 그 뒤에 오는 주차의 수요량을 목표값(target)으로 예측하기 위한 학습 데이터를 생성한다고 가정하자. 그러면, 학습 데이터 생성 모듈(202)은 도 1의 원시 데이터로부터 도 3의 (a) 내지 (d)와 같은 4개의 학습 데이터를 생성할 수 있다. 구체적으로, 도 3의 (a)는 1주차부터 7주차까지의 수요량으로부터 8주차의 수요량을 예측하기 위한 학습 데이터, (b)는 2주차부터 8주차까지의 수요량으로부터 9주차의 수요량을 예측하기 위한 학습 데이터, (c)는 3주차부터 9주차까지의 수요량으로부터 10주차의 수요량을 예측하기 위한 학습 데이터, (d)는 4주차부터 10주차까지의 수요량으로부터 11주차의 수요량을 예측하기 위한 학습 데이터를 각각 나타낸다.
제1 데이터 증강 모듈(204)은 학습 데이터 생성부(202)에서 생성한 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성한다.
도 4은 일 실시예에 따른 제1 데이터 증강 모듈(204)에서 학습 데이터를 추가 생성하는 예를 나타낸 예시도이다. 구체적으로, 도 4에서는 도 1에 도시된 원시 시계열 데이터, 즉 동일한 판매처와 품목에 대해 연속되는 주별로 기록한 수요량 데이터로부터 학습 데이터를 추가 생성한 예를 나타낸 것이다.
예를 들어, 도 1에 도시된 원시 시계열 데이터 중 목표값(수요량)이 1 이상의 값을 가지는 주차에 대해서 학습 데이터를 추가 생성한다고 가정하자. 그러면, 제1 데이터 증강 모듈(204)은 수요량이 1 이상인 8주차, 9주차, 11주차에 대하여, 추출되는 시간 구간의 길이를 7주가 아닌 8주, 9주, 10주로 변경하여 추가로 학습 데이터를 생성할 수 있다. 구체적으로, 도 4의 (a)는 1주차부터 8주차까지의 수요량으로부터 9주차의 수요량을 예측하기 위한 학습 데이터, (b)는 3주차부터 10주차까지의 수요량으로부터 11주차의 수요량을 예측하기 위한 학습 데이터, (c)는 2주차부터 10주차까지의 수요량으로부터 11주차의 수요량을 예측하기 위한 학습 데이터, (d)는 1주차부터 10주차까지의 수요량으로부터 11주차의 수요량을 예측하기 위한 학습 데이터를 각각 나타낸다.
이와 같이 제1 데이터 증강 모듈(204)은 목표값이 특정 조건을 만족하는 경우 제1 데이터 증강 모듈(204)은 추출되는 시간 구간의 길이를 가변하여 학습 데이터를 추가 생성함으로써 시계열 데이터가 가질 수 있는 데이터 분포의 불균형으로 인한 과적합(overfitting) 문제를 개선할 수 있다. 전술한 예의 경우 목표 수요량이 1 이상인 경우에 대해서만 학습 데이터를 추가 생성함으로써 대부분의 수요량이 0인 시계열 데이터의 경우에도 수요량이 1 이상인 학습 데이터를 추가 확보할 수 있다. 특히 순서(시간 연관성) 정보의 패턴 학습에 적합한 Recurrent Neural Network(RNN) 계열의 심층 신경망은 가변 시간 길이를 갖는 데이터를 입력으로 하여 학습할 수 있기 때문에, 입력 데이터의 관측 시간을 다양하게 생성하여 활용할 수 있다.
다음으로, 특징 추출기(206, feature extractor)는 상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출한다. 특징 추출기(206)은 입력된 학습 데이터의 정보를 단계적으로 필터링/추출하여 불필요한 정보를 제거하고 중요하고 정보력을 갖는 특징(feature)을 추출하여, 분류기(208)의 입력으로 제공한다. 개시되는 실시예들에서, 특징 추출기(206)는 시계열 데이터의 특성 등에 따라 Convolutional Neural Network(CNN), Recurrent Neural Network(RNN), Fully Connected Network 등이 사용될 수 있다.
분류기(208, classifier)는 추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류한다. 시계열 데이터는 시간 순서에 대한 패턴 분석이 필요하기 때문에, 분류기(208)는 특징 추출기(206)에서 시간별로 추출된 특징값을 Recurrent Neural Network(RNN) 또는 Bi-directional Recurrent Neural Network(BRNN)의 입력으로 하여 순서 패턴을 학습할 수 있다. 또한, 분류기(208)는 특징(feature) 축과 시간 축에 대해 학습하여 추출된 특징 벡터(feature vector)를 Fully-Connected Network(FCN)을 통해 클래스에 따라 분류하거나 하나의 값으로 예측하는 모델을 구성할 수 있다.
한편, 일 실시예에 따른 시계열 데이터 분석 장치(200)는 제2 데이터 증강 모듈(210)을 더 포함할 수 있다. 제2 데이터 증강 모듈(210)은 시계열 데이터의 각 항목의 특성에 따라 학습 데이터 및 상기 특징값 중 하나 이상을 증강할 수 있다. 구체적으로, 일 실시예에 따른 제2 데이터 증강 모듈(210)은 시계열 데이터의 각 항목 중 수치(numerical) 항목이 포함되어 있는 경우, 생성된 상기 학습 데이터 중 상기 수치 항목에 해당하는 관측값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 상기 학습 데이터를 증강(augment)할 수 있다. 그러면 특징 추출기(206)는 상기 증강된 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출할 수 있다. 이하에서는 이와 같은 학습 데이터의 수치 항목의 증강을 Raw Space Augmentation(원시 공간 증강)이라 칭하기로 한다.
또한, 일 실시예에 따른 제2 데이터 증강 모듈(210)은 시계열 데이터의 각 항목 중 범주(categorical) 항목이 포함되어 있는 경우, 특징 추출기(206)로부터 추출된 상기 하나 이상의 특징값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 상기 특징값을 증강(augment)할 수 있다. 그러면 분류기(208)는 상기 증강된 특징값에 기반하여 상기 학습 데이터를 분류할 수 있다. 이하에서는 이와 특징 추출기(206)의 출력값에 대한 증강을 Feature Space Augmentation(특징 공간 증강)이라 칭하기로 한다.
이하에서는 이와 같은 Raw Space Augmentation 및 Feature Space Augmentation에 대해 좀 더 구체적으로 설명하기로 한다.
Raw Space Augmentation
Raw Space Augmentation은 데이터의 증강(data augmentation) 기법 중 하나로서 학습 데이터에 변형을 주어 유사한 학습 데이터를 생성하는 방법이다. 예를 들어, 음성 데이터의 경우 속도를 천천히 하거나 소리의 높낮이에 변형을 주어 음성 데이터의 의미는 바꾸지 않지만 형태에 변화를 주어 학습 데이터를 증강할 수 있다.
전술한 바와 같이, 시계열 데이터는 수치 항목과 범주 항목으로 구성되며, 범주 항목의 경우 약간의 값 변화로도 데이터의 의미가 크게 변화할 수 있다. 따라서 개시되는 실시예들에서 제2 데이터 증강 모듈(210)은 시계열 데이터의 각 항목 중 수치 항목에 대해서만 raw space augmentation을 적용하여 수치 항목에 약간의 노이즈를 주거나 시계열 트렌드에 살짝 변형을 주는 등, 다양한 기법을 활용하여 기 생성된 학습 데이터로부터 추가 학습 데이터를 적용할 수 있다.
Numeric과 categorical 컬럼들로 구성된 시계열 데이터에 raw space augmentation을 적용하는 경우, numerical 컬럼들에만 약간의 노이즈를 주거나 시계열의 트렌드에 살짝 변형을 주는 등 다양한 time-series data augmentation 기법을 활용하여 새로운 학습 데이터를 생성할 수 있다.
도 5는 일 실시예에 따른 제2 데이터 증강 모듈(210)에서 학습 데이터에 raw space augmentation을 적용하는 예를 설명하기 위한 예시도이다. 예를 들어, 제2 데이터 증강 모듈(210)은 동일 배치(batch) 내의 학습 데이터에 대하여 일부는 스케일링(scaling) 기법을 적용하고, 다른 일부에 대해서는 추세 결정(trend determination) 기법을 적용하여 학습 데이터를 효과적으로 증폭시킬 수 있다. 개시되는 실시예들에서 학습 데이터의 배치(batch)란 모델 학습 시 한 번에 처리하는 학습 데이터의 그룹을 의미한다. 제2 데이터 증강 모듈(210)은 학습 데이터의 각 배치(batch) 별로 다양한 증강 기법 및 증강 비율을 적용함으로써 특징 추출기(206) 및 분류기(208)가 학습 데이터의 다양한 형태를 효과적으로 학습할 수 있도록 구성할 수 있다.
제2 데이터 증강 모듈(210)에서 학습 데이터에 raw space augmentation을 적용 시 필요한 데이터 증강 정책은 다음과 같이 구성될 수 있다.
증강 기법: 학습 데이터에 적용할 증강 기법을 의미한다. 예를 들어, 상기 증강 기법에는 스케일링(scaling), 지터링(jittering), 추세 결정(trend determination), 크기 워프(magnitude warp) 등이 있다.
증강 적용 비율: 학습 데이터 중 증강 기법을 적용할 비율을 의미한다.
매개변수: 설정한 증강 기법에 관련된 파라미터를 의미한다.
Feature Space Augmentation
앞서 기술한 바와 같이, Raw Space Augmentation의 경우 시계열 데이터 항목 중 수치 데이터에 대해서만 학습 데이터를 증강할 수 있으며, 범주 항목에 대한 증강은 데이터 자체의 의미를 변경시키므로 Raw Space Augmentation을 적용할 수 없다. 이에 따라 제2 데이터 증강 모듈(210)은 범주 항목을 포함하는 데이터셋의 학습 데이터 양을 늘리기 위해, 학습 데이터 자체가 아닌 특징 추출기(206)의 출력값, 즉 학습 데이터로부터 생성된 특징값에 대해 데이터 증강 기법을 적용한다.
특징 추출기(206)를 통해 추출된 특징값 데이터는 입력값의 특성을 갖는 중요한 정보를 수치(numerical)값으로 표현한 벡터로서 학습 데이터를 충분히 대표한다고 볼 수 있다. 따라서 이와 같은 특징값에 대한 데이터 증강을 통해 마치 학습 데이터를 증강한 것과 유사한 효과를 줄 수 있다.
도 6은 일 실시예에 따른 제2 데이터 증강 모듈(210)에서 특징값에 feature space augmentation을 적용하는 예를 설명하기 위한 예시도이다. 편의를 위하여 도 6에서는 각 특징 벡터들이 2차원으로 구성된 것으로 예시하였으나, 특징 벡터의 차원은 학습 데이터 및 학습 모델에 따라 다양하게 구성될 수 있다.
도 6에 도시된 예시도에서, 파란색 점은 증강(augmentation) 기법을 적용하지 않은 특징값이고, 주황색 점은 증강 기법을 적용한 특징값이다. 증강 기법을 적용한 특징값들이 원본 특징값과 유사한 공간에 존하므로, 증강된 특징값들은 원본 특징값과 유사한 특징을 가진다고 볼 수 있다.
제2 데이터 증강 모듈(210)에서 학습 데이터에 feature space augmentation을 적용 시 필요한 데이터 증강 정책은 raw space augmentation과 동일하게 구성될 수 있다.
한편, 일 실시예에 따른 시계열 데이터 분석 장치(100)는 정책 추천 모듈(212)을 더 포함할 수 있다. 일 실시예에 따른 정책 추천 모듈(212)은 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하기 위한 최적 데이터 증강 정책을 결정할 수 있다.
앞서 기술한 바와 같이, 학습 데이터 또는 특징값에 데이터 증강 기법을 적용할 경우 이를 적용하지 않을 경우와 비교하여 더 좋은 학습 결과를 얻을 수 있다. 그러나 학습 대상인 시계열 데이터는 그 특성이 다양하므로, 모든 시계열 데이터에 동일한 증강 기법을 적용하는 것은 비효율적이다. 따라서 시계열 데이터 분석 장치(100)은 학습하고자 하는 시계열 데이터에 어떠한 데이터 증강 정책을 결정하는 것이 가장 효과적인지를 판단하여 최적 데이터 증강 정책을 추천하도록 구성될 수 있다. 전술한 바와 같이 상기 데이터 증강 정책은 증강 기법, 증강 적용 비율 및 매개변수 등을 포함할 수 있다.
일 실시예에서, 정책 추천 모듈(212)은 상기 정책 추천 모듈은, 복수의 서로 다른 데이터 증강 정책을 상기 학습 데이터 및 상기 특징값에 적용하여 학습을 수행하고, 상기 각 데이터 증강 정책 별 학습 결과를 비교하여 상기 최적 데이터 증강 정책을 결정할 수 있다.
도 7은 일 실시예에 따른 정책 추천 모듈(212)에서의 최적 데이터 증강 정책 결정 과정을 설명하기 위한 흐름도이다. 도시된 흐름도는 Raw space augmentation 또는 feature space augmentation에 동일하게 적용할 수 있다.
단계 702에서, 정책 추천 모듈(212)은 Raw space augmentation 또는 feature space augmentation에 적용할 복수의 데이터 증강 정책을 생성한다. 이때 정책 추천 모듈(212)은 사용자로부터 상기 데이터 증강 정책을 입력받거나, 또는 랜덤하게 데이터 증강 정책을 생성할 수 있다.
단계 704에서, 정책 추천 모듈(212)은 생성한 데이터 증강 정책 중 하나를 선택한다.
단계 706에서, 정책 추천 모듈(212)은 선택된 정책을 학습 데이터에 적용하여 모델 학습을 수행한다.
단계 708에서, 정책 추천 모듈(212)은 상기 모델 학습 수행 중 주기적으로 학습 결과가 조기 종료(early stopping) 조건에 해당하는지 여부를 판단한다. 일 실시예에서 정책 추천 모듈(212)은 선택된 정책에 따른 학습 과정에서 손실함수의 값이 증가하거나, 또는 과거 특정 기간 동안의 상기 손실함수의 값들의 평균과 현재 손실함수의 값의 차이가 설정된 기준치보다 작은 경우 조기 종료 조건에 해당하는 것으로 판단할 수 있다. 구체적으로 상기 조기 종료 조건은 다음과 같이 나타낼 수 있다.
[조건 1]
Figure pat00001
[조건 2]
Figure pat00002
이를 좀 더 상세히 설명하면 다음과 같다.
위의 조건 1은 t 시점의 손실함수값인 losst가 t-1 지점의 손실함수 값인 losst-1보다 커지는 경우를 나타낸다. 이전 시점보다 손실이 커진다는 것은 학습이 되지 않는다는 의미로 판단할 수 있다. 조건 2는 t 시점의 losst와 t 시점을 기준 과거 기간 동안(t-k ~ t-1)의 손실함수들의 평균값의 오차가 설정된 기준값(threshold)보다 작은 경우를 나타낸다. 이때 상기 과거 기간의 길이(k) 및 기준값은 시계열 데이터의 특성 등을 고려하여 적절히 설정될 수 있다.
만약 상기 708 단계의 판단 결과 조기 종료 조건을 만족하는 경우, 단계 710에서 정책 추천 모듈(212)은 704 단계에서 선택된 정책을 삭제한다. 즉, 정책 추천 모듈(212)은 상기 조건 1 및 조건 2 중 하나 이상을 적용하여 이를 만족하는 경우 더 이상 학습이 제대로 되지 않는다고 판단하고 학습을 조기 종료할 수 있다. 이와 같이 별도의 조기 종료 조건을 이용할 경우 불필요한 계산을 줄이고 최적 정책 결정 과정의 효율성을 높일 수 있다.
이와 달리, 상기 708 단계의 판단 결과 조기 종료 조건을 만족하지 않는 경우, 단계 712에서 정책 추천 모듈(212)은 해당 정책에 따른 학습이 종료되었는지의 여부를 판단한다.
상기 712 단계의 판단 결과 학습이 종료되지 않은 경우 정책 추천 모듈(212)은 다시 706 단계로 돌아가 학습을 계속 수행한다.
이와 달리 상기 712 단계의 판단 결과 학습이 종료된 경우, 또는 710 단계에서 조기 종료 조건에 따라 정책이 삭제된 경우, 단계 714에서 정책 추천 모듈(212)은 남은 데이터 증강 정책이 존재하는지의 여부를 판단한다.
상기 714 단계의 판단 결과 남은 정책이 존재하는 경우, 정책 추천 모듈(212)은 다시 704 단계로 돌아가 남은 데이터 증강 정책 중 하나를 선택한다.
이와 달리 714 단계의 판단 결과 남은 정책이 존재지 않는 경우, 정책 추천 모듈(212)은 각 정책 별 학습 결과를 비교하여 최적의 정책을 결정한다.
도 8은 일 실시예에 따른 시계열 데이터 분석 방법(800)을 설명하기 위한 흐름도이다. 도시된 흐름도는 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치, 예를 들어 전술한 시계열 데이터 분석 장치(200)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
단계 802에서, 시계열 데이터 분석 장치(200)의 학습 데이터 생성 모듈(202)은 하나 이상의 항목, 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함하는 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성한다.
단계 804에서, 시계열 데이터 분석 장치(200)의 제1 데이터 증강 모듈(204)은 생성된 상기 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성한다.
단계 806에서, 시계열 데이터 분석 장치(200)의 특징 추출기(206)는 상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출한다.
단계 808에서, 시계열 데이터 분석 장치(200)의 분류기(208)는 추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류한다.
도 9는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 본 발명의 실시예들에 따른 시계열 데이터 분석 장치(100)일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(102)와 연결될 수도 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
200: 시계열 데이터 분석 장치
202: 학습 데이터 생성 모듈
204: 제1 데이터 증강 모듈
206: 특징 추출기
208: 분류기

Claims (14)

  1. 하나 이상의 항목, 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함하는 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성하는 학습 데이터 생성 모듈;
    생성된 상기 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성하는 제1 데이터 증강 모듈;
    상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는 특징 추출기; 및
    추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류하는 분류기를 포함하는, 시계열 데이터 분석 장치.
  2. 청구항 1에 있어서,
    상기 항목의 특성에 따라 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하는 제2 데이터 증강 모듈을 더 포함하는, 시계열 데이터 분석 장치.
  3. 청구항 2에 있어서,
    상기 항목이 하나 이상의 수치(numerical) 항목을 포함하는 경우,
    상기 제2 데이터 증강 모듈은, 생성된 상기 학습 데이터 중 상기 수치 항목에 해당하는 관측값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 학습 데이터를 증강하며,
    상기 특징 추출기는, 상기 증강된 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는, 시계열 데이터 분석 장치.
  4. 청구항 2에 있어서,
    상기 항목이 하나 이상의 범주(categorical) 항목을 포함하는 경우,
    상기 제2 데이터 증강 모듈은, 상기 특징 추출기로부터 추출된 상기 하나 이상의 특징값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 특징값을 증강하며,
    상기 분류기는, 상기 증강된 특징값에 기반하여 상기 학습 데이터를 분류하는, 시계열 데이터 분석 장치.
  5. 청구항 2에 있어서,
    상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하기 위한 최적 데이터 증강 정책을 결정하는 정책 추천 모듈을 더 포함하는, 시계열 데이터 분석 장치.
  6. 청구항 5에 있어서,
    상기 정책 추천 모듈은, 복수의 서로 다른 데이터 증강 정책을 상기 학습 데이터 및 상기 특징값에 적용하여 학습을 수행하고, 상기 각 데이터 증강 정책 별 학습 결과를 비교하여 상기 최적 데이터 증강 정책을 결정하는, 시계열 데이터 분석 장치.
  7. 청구항 6에 있어서,
    상기 정책 추천 모듈은, 특정 데이터 증강 정책을 적용한 학습 과정에서 손실함수의 값이 증가하거나, 또는 과거 특정 기간 동안의 상기 손실함수의 값들의 평균과 현재 손실함수의 값의 차이가 설정된 기준치보다 작은 경우, 상기 특정 데이터 증강 정책에 따른 학습을 종료하고, 상기 특정 데이터 증강 정책을 삭제하는, 시계열 데이터 분석 장치.
  8. 하나 이상의 프로세서들, 및
    상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
    하나 이상의 항목, 및 상기 항목에 대하여 일정 시간 간격으로 측정된 복수의 관측값을 포함하는 시계열 원시 데이터로부터 기 설정된 길이의 시간 구간만큼을 추출하여 하나 이상의 학습 데이터를 생성하는 단계;
    생성된 상기 학습 데이터의 목표값이 특정 조건을 만족하는 경우, 상기 목표값과 동일한 목표값을 가지되 추출되는 시간 구간의 길이가 상이한 하나 이상의 학습 데이터를 추가 생성하는 단계;
    상기 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는 단계; 및
    추출된 상기 하나 이상의 특징값에 기반하여 상기 학습 데이터를 분류하는 단계를 포함하는, 시계열 데이터 분석 방법.
  9. 청구항 8에 있어서,
    상기 항목의 특성에 따라 상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하는 단계를 더 포함하는, 시계열 데이터 분석 방법.
  10. 청구항 9에 있어서,
    상기 항목이 하나 이상의 수치(numerical) 항목을 포함하는 경우,
    상기 증강 단계는, 생성된 상기 학습 데이터 중 상기 수치 항목에 해당하는 관측값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 학습 데이터를 증강하며,
    상기 특징값을 추출하는 단계는, 상기 증강된 학습 데이터를 입력받고 이로부터 하나 이상의 특징값을 추출하는, 시계열 데이터 분석 방법.
  11. 청구항 9에 있어서,
    상기 항목이 하나 이상의 범주(categorical) 항목을 포함하는 경우,
    상기 증강 단계는, 상기 특징 추출기로부터 추출된 상기 하나 이상의 특징값에 기 설정된 데이터 증강(data augmentation) 기법을 적용하여 하나 이상의 특징값을 증강하며,
    상기 특징값을 추출하는 단계는, 상기 증강된 특징값에 기반하여 상기 학습 데이터를 분류하는, 시계열 데이터 분석 방법.
  12. 청구항 9에 있어서,
    상기 학습 데이터 및 상기 특징값 중 하나 이상을 증강하기 위한 최적 데이터 증강 정책을 결정하는 단계를 더 포함하는, 시계열 데이터 분석 방법.
  13. 청구항 12에 있어서,
    상기 최적 데이터 증강 정책을 결정하는 단계는,
    복수의 서로 다른 데이터 증강 정책을 상기 학습 데이터 및 상기 특징값에 적용하여 학습을 수행하고, 상기 각 데이터 증강 정책 별 학습 결과를 비교하여 상기 최적 데이터 증강 정책을 결정하는, 시계열 데이터 분석 방법.
  14. 청구항 12에 있어서,
    상기 최적 데이터 증강 정책을 결정하는 단계는,
    특정 데이터 증강 정책을 적용한 학습 과정에서 손실함수의 값이 증가하거나, 또는 과거 특정 기간 동안의 상기 손실함수의 값들의 평균과 현재 손실함수의 값의 차이가 설정된 기준치보다 작은 경우, 상기 특정 데이터 증강 정책에 따른 학습을 종료하고, 상기 특정 데이터 증강 정책을 삭제하는, 시계열 데이터 분석 방법.
KR1020190062881A 2019-05-29 2019-05-29 기계 학습 기반의 시계열 데이터 분석 장치 및 방법 KR20200137107A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020190062881A KR20200137107A (ko) 2019-05-29 2019-05-29 기계 학습 기반의 시계열 데이터 분석 장치 및 방법
US16/670,185 US11562294B2 (en) 2019-05-29 2019-10-31 Apparatus and method for analyzing time-series data based on machine learning
EP20167958.6A EP3745317A1 (en) 2019-05-29 2020-04-03 Apparatus and method for analyzing time series data based on machine learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190062881A KR20200137107A (ko) 2019-05-29 2019-05-29 기계 학습 기반의 시계열 데이터 분석 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20200137107A true KR20200137107A (ko) 2020-12-09

Family

ID=70189691

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190062881A KR20200137107A (ko) 2019-05-29 2019-05-29 기계 학습 기반의 시계열 데이터 분석 장치 및 방법

Country Status (2)

Country Link
EP (1) EP3745317A1 (ko)
KR (1) KR20200137107A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220156388A (ko) * 2021-05-18 2022-11-25 한전케이디엔주식회사 시계열 추론 데이터 생성 장치 및 그 방법
KR20230017113A (ko) 2021-07-27 2023-02-03 경북대학교 산학협력단 시간 지연 플롯 기반 시계열 데이터 분석 방법 및 장치, 그리고 이를 구현하기 위한 프로그램이 기록된 기록매체
KR102536284B1 (ko) * 2022-09-01 2023-05-30 전남대학교산학협력단 시계열 데이터 특성을 반영한 tcn 모델 예측 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101919076B1 (ko) 2017-12-20 2018-11-19 (주)지오시스템리서치 시계열 데이터 예측 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101919076B1 (ko) 2017-12-20 2018-11-19 (주)지오시스템리서치 시계열 데이터 예측 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220156388A (ko) * 2021-05-18 2022-11-25 한전케이디엔주식회사 시계열 추론 데이터 생성 장치 및 그 방법
KR20230017113A (ko) 2021-07-27 2023-02-03 경북대학교 산학협력단 시간 지연 플롯 기반 시계열 데이터 분석 방법 및 장치, 그리고 이를 구현하기 위한 프로그램이 기록된 기록매체
KR102536284B1 (ko) * 2022-09-01 2023-05-30 전남대학교산학협력단 시계열 데이터 특성을 반영한 tcn 모델 예측 시스템

Also Published As

Publication number Publication date
EP3745317A1 (en) 2020-12-02

Similar Documents

Publication Publication Date Title
US11562294B2 (en) Apparatus and method for analyzing time-series data based on machine learning
US20190272553A1 (en) Predictive Modeling with Entity Representations Computed from Neural Network Models Simultaneously Trained on Multiple Tasks
US20220414072A1 (en) Severity computation of anomalies in information technology operations
CN110310114B (zh) 对象分类方法、装置、服务器及存储介质
KR20200137107A (ko) 기계 학습 기반의 시계열 데이터 분석 장치 및 방법
US20220108184A1 (en) Method and device for training a machine learning system
Jun A forecasting model for technological trend using unsupervised learning
KR101813805B1 (ko) 머신 러닝을 이용한 사용자의 구매 확률 예측 방법 및 장치
CN111523421A (zh) 基于深度学习融合各种交互信息的多人行为检测方法及***
Pan et al. A variational point process model for social event sequences
US20220414470A1 (en) Multi-Task Attention Based Recurrent Neural Networks for Efficient Representation Learning
Salunkhe et al. A hybrid approach for class imbalance problem in customer churn prediction: A novel extension to under-sampling
CN109978575B (zh) 一种挖掘用户流量经营场景的方法及装置
JP7207540B2 (ja) 学習支援装置、学習支援方法、及びプログラム
KR20050005592A (ko) 앙상블 서포트 벡터 머신을 이용한 인터넷 환경의 웹 정보예측 시스템 및 방법
CN110705622A (zh) 一种决策方法、***以及电子设备
Hashemi et al. Runtime monitoring for out-of-distribution detection in object detection neural networks
CN112116028B (zh) 模型决策解释实现方法、装置及计算机设备
Islam et al. A multi-mode real-time system verification model using efficient event-driven dataset
CN110717537B (zh) 训练用户分类模型、执行用户分类预测的方法及装置
Eria et al. Significance-based feature extraction for customer churn prediction data in the telecom sector
KR20200134813A (ko) 기계 학습을 위한 이미지 처리 장치 및 방법
JP7242590B2 (ja) 機械学習モデル圧縮システム、プルーニング方法及びプログラム
CN114897290A (zh) 业务流程的演化识别方法、装置、终端设备以及存储介质
US20200387811A1 (en) Systems and methods for neighbor frequency aggregation of parametric probability distributions with decision trees