시계열 데이터란? - MATLAB & Simulink

시계열 데이터

시계열 데이터를 사용한 작업

시계열 데이터는 연속적인 시간 지점에서 수집되거나 기록된 일련의 데이터 점입니다. 시계열 데이터는 센서 데이터가 근본적으로 시계열인 자동차 분야, 해양 측정 및 기후 분석과 같은 데이터의 과학 연구 분야, 주가 및 기타 지표 등이 있는 금융 분야에서 특히 널리 사용되고 있습니다. 타임스탬프는 분석의 필수 요소는 아니지만, 데이터에는 시계열 접근법이 필요한 경우가 많기 때문에 사용자가 정기적으로 다루는 데이터의 중요한 부분을 차지합니다.

시계열 데이터를 사용한 작업은 까다로울 수 있지만, 데이터 분석 종사자에게는 반드시 필요한 역량입니다. 본 안내서에서는 일반적인 질문에 대한 답변과 여러분의 다음 시계열 프로젝트를 성공적으로 이끌 수 있도록 돕는 유용한 자료를 제공합니다.

65년에 걸친 시계열 데이터의 2차원 플롯.

MATLAB에서 시각화된 시계열 데이터. 시계열이란 시간 경과에 따라 순차적으로 기록된 데이터 점의 모음입니다. (코드 보기.)

시계열 데이터의 주요 특징

분류 중요도를 나타내기 위해 플롯의 특정 구간이 강조 표시되어 있는 시계열 데이터의 3개의 선 플롯.

시계열 데이터의 분류를 이해하기 위해 MATLAB에서 Grad-CAM 및 기타 시각화를 만들 수 있습니다. (코드 보기.)

시계열 데이터에는 시간적 요소, 즉 시간이 관련됩니다. 핵심적인 사항은 시간 경과에 따라 순차적으로 수집되거나 기록된 데이터 점이 연속해 있다는 것입니다. 이는 매분, 매초 또는 매일 등 일정 간격을 의미하는 경우가 많지만, 규칙성이 엄격하게 요구되는 것은 아니며 타임스탬프가 있는지 여부가 중요합니다. 여러분의 데이터셋에 타임스탬프가 포함되어 있으며 시간을 기준으로 한 정렬이나 분석이 필요하다면, 이는 시계열 데이터일 가능성이 높습니다. 이는 이해를 얻거나 예측을 수행하는 데 시간 경과에 따른 데이터 점의 순서가 중요한 일기 예보 또는 금융 분석 등의 분야에서 널리 사용됩니다.

시계열 데이터는 한 열이 시간으로 설정되고 일반적으로 정렬되어 있는 것이 특징입니다. 밀리초에서 며칠에 이르는 다양한 특정 시간 값에 대한 측정값을 나타냅니다. 데이터의 샘플 레이트는 동일한 시계열 내에서도 다양할 수 있습니다. 시계열 데이터는 해당 시간의 특정 데이터 점에 대한 것일 뿐만 아니라 일일 또는 주간 요약과 같이 어느 기간 동안의 측정값을 나타낼 수도 있습니다.

시계열 데이터의 분석 방법

MATLAB®에는 시계열 데이터 전처리에 사용할 수 있는 많은 내장 앱과 함수가 있습니다. 어떤 기법을 선택할지는 여러분이 데이터와 정리 과정에 대해 익숙한 정도에 따라 달라질 수 있습니다. 데이터셋을 처음 접하는 경우 초기 탐색 및 정리 시 직관적인 인터페이스가 제공되는 데이터 정리기 앱과 같은 대화형 앱으로 시작하는 것이 가장 좋습니다. 동기화 및 재추출과 같은 특정 목적의 경우 라이브 편집기 작업을 사용하는 것이 좋을 수 있습니다. 코딩을 선호하고 함수에 익숙한 경우 명령줄 함수를 직접 사용할 수 있습니다.

시간 및 시간-주파수 영역의 신호에 대한 네 가지 시각화.

MATLAB의 신호 분석기 앱. (문서 보기.)

시계열 데이터를 사용한 작업의 두 가지 핵심 요소는 동기화와 재추출입니다. 동기화에는 타임스탬프에 따라 데이터 점을 정렬하여 데이터셋이 비교 가능하도록 하고 분석이 정확하도록 보장하는 작업이 포함됩니다. 재추출은 특정 분석 목표를 달성하기 위해 데이터 점의 빈도를 조정하는 데 필수적인 작업입니다. MATLAB은 특정 시간 지점에서 데이터셋을 결합할 수 있도록 synchronizeretime 명령을 제공합니다. 이러한 함수를 사용해야 하는지 확실하지 않은 경우 라이브 편집기 작업을 통해 대화형 방식으로 함수를 적용하고 다양한 옵션을 살펴볼 수 있습니다.

시계열 분석 기법에는 여러 가지가 있지만, 추세 분석과 계절성이라는 두 가지 주요 접근법이 있습니다.

  • 트렌드 분석은 데이터의 장기적인 움직임을 파악하고 분석하여 전반적인 방향을 이해하는 작업으로, 이를 통해 정보에 기반하여 예측을 하거나 의사결정을 내릴 수 있습니다.
  • 계절성은 매년, 매월 또는 매일 주기와 같이 특정 기간 동안 반복되는 규칙적인 패턴을 감지하고 모델링하는 작업입니다. 센서의 경우에는 이러한 기간이 훨씬 더 세부적일 수 있습니다. 자동차 산업에 종사하는 엔지니어는 나노초 또는 마이크로초 단위의 주기까지 고려해야 하며, 이 경우 정확한 예측이 무엇보다 중요합니다.

MATLAB은 데이터 정리, 시각화, 고급 모델링을 위한 내장 함수 등 이러한 기법을 효과적으로 수행하기 위한 툴과 함수를 제공합니다. timetable 테이블 유형은 시계열 데이터를 정리하고 관리하는 데 특히 유용하며, 신호 분석기 앱은 신호를 대화형 방식으로 시각화하고 분석할 수 있는 강력한 플랫폼을 제공합니다.

시계열 데이터와 관련된 엔지니어의 해결 과제

엔지니어는 센서 드롭아웃으로 인한 누락 데이터의 처리, 이상값 처리 및 데이터의 잡음 관리 등의 어려움을 자주 겪습니다. 통상적으로 시계열 데이터를 모델링에 효과적으로 사용하려면 정리 및 준비가 필요합니다.

주요 해결 과제는 시계열 데이터가 올바른 순서로 지정 및 정렬되도록 하는 것입니다. 데이터에 많은 처리가 필요하지 않더라도 분석이나 머신러닝 모델을 위해 논리적으로 정형화되어야 합니다. 이러한 패턴은 진정한 특징이 아닌 아티팩트일 수 있으므로 계절성과 추세를 이해하는 것이 매우 중요합니다. 이러한 아티팩트를 해결하지 않을 경우 특히 딥러닝에서 잘못된 패턴이 고착화될 수 있습니다. 또한 엔지니어는 복잡한 분석을 시작하기 전에 계절성 및 정상성 같은 시계열 기본 사항을 철저하게 이해해야 합니다. 공학적 배경 지식 없이 주로 머신러닝 분야에서 일하는 사람들의 경우 때때로 이러한 기초 지식이 부족한 경우가 있습니다.

특히 MATLAB 사용자가 겪는 또다른 어려움으로는 개념으로서의 “시계열”과 MATLAB timeseries 객체 간의 혼동입니다. 사용자는 “시계열”을 자주 검색하지만, 시간 기반 데이터를 처리하기 위한 고급 기능을 제공하는 timetable 기능에 대해 알지 못할 수 있습니다. MATLAB에서 timetable을 사용하면 시각화를 만들고, 데이터를 준비하고, 다른 작업을 수행할 수 있습니다. 이는 효과적인 시계열 데이터 관리에 필수적인 동기화 및 기타 고급 작업을 지원합니다.

멀티레이트 데이터를 하나의 데이터셋으로 동기화하는 방법을 보여주는 애니메이션. 시간이 정렬되고, 이에 따라 데이터가 리샘플링됩니다.

앞으로 MATLAB의 개발은 timetable 기능에 집중될 것이며, 기존 timeseries 객체는 현재 유지보수 중입니다. 이 접근법을 통해 향상된 특징과 기능을 사용할 수 있게 되면 시계열 데이터로 작업하는 MATLAB 사용자를 더욱 효과적으로 지원할 수 있습니다.

다음 단계 및 엔지니어가 나아가야 할 방향

타임스탬프가 있는 데이터의 두 개의 선 플롯과 기록된 두 개의 선으로 된 플롯과 다음 단계를 보여주는 버튼들의 스크린샷.

MATLAB의 데이터 정리기 앱을 사용한 시계열 데이터의 전처리 및 정리. (문서 보기.)

MATLAB은 시계열 데이터 정리를 위한 몇 가지 툴과 함수를 제공합니다. 코딩을 선호하는 경우 명령줄 함수를 사용하거나 데이터 정리기 앱 또는 라이브 편집기 작업과 같은 로우코드 기능을 활용할 수 있습니다. 이러한 툴을 통해 데이터 동기화하고 선형 보간 등의 방법을 사용하여 누락값을 채울 수 있습니다.

다음 단계는 응용 사례에 따라 다를 수 있지만, 다음 네 가지 경로를 살펴보도록 하겠습니다.

  • 예제: 신호 처리 및 주파수 영역과 관련된 예제를 살펴보세요. 이런 예제를 통해 유용할 수 있는 고도의 기법을 배울 수 있습니다.
  • Signal Processing Onramp: Signal Processing Onramp는 이러한 개념을 처음 접하고 신호 데이터를 처리하는 사람들에게 적합한 출발점입니다.
  • 딥러닝 및 머신러닝 예제: 딥러닝과 머신러닝 문맥 내에서 시계열을 예측하는 특정 예제를 살펴보세요. 이런 예제에서는 관련 기법과 응용 사례를 조명합니다.
  • 실시간 응용 사례: 실시간 처리나 모델 업데이트에 관심이 있는 분들은 스트리밍 응용 사례를 살펴보시기 바랍니다. 하지만 실시간 응용 사례를 시작하기 전에 기초 개념을 이해하는 것이 중요합니다.

참조: 시계열 분석