시계열 특징의 생성 및 선택

특징 생성 : 시계열 데이터의 가장 중요한 특성을 정량화하여 수치 및 범주형 레이블로 압축하는 방법을 찾는 과정

예시) 평균과 시간 단계의 개수

특징 생성의 목적 : 많은 정보를 적은 수의 지표로 압축하는 것, 압축된 지표로 중요한 정보를 식별하고 나머지는 제거할 수 있다.


8.1 입문자를 위한 예제

온도가 주기성(일일 순환)을 띄며, 전반적으로 증가하는 추세를 가진다. 이 데이터를 요약지표로 압축하는 방식을 추구한다. 다음과 같은 요약지표로 압축할 수 있다.

- 일일/주기성

- 증가하는 추세

- 각각 아침, 점심, 저녁의 평균값


8.2 특징 계산 시 고려 사항

8.2.1 시계열의 특성

특징을 생성하는 과정에서 아래와 같은 기본 성질을 항상 염두해야 한다.

정상성

정상성은 시계열의 확률적 성질들이 시간의 흐름에 따라 불변한다는 것이다. 시계열의 평균을 특징으로 사용하는 것은 시계열이 정상일 때만 타당하다. 평균이라는 개념이 정상 상태에서만 의미를 갖기 때문이다. 비정상 시계열에 대한 평균, 추세, 계절주기 등은 뒤엉킨 과정을 표현하기 때문에 거의 우연의 결과이며, 무의미하다고 볼 수 있다.

시계열의 길이

시계열의 최댓값이나 최솟값과 같은 특징은 시계열의 길이가 늘어남에 따라 불안정해진다. 동일한 과정에서는 길이가 긴 시계열이 짧은 시계열보다 더 극단적인 최댓값과 최솟값을 가질 가능성이 높기 대문이다.


8.2.2 도메인 지식

도메인 지식은 시계열 특징 생성의 핵심으로, 통찰을 얻을 수 있는 부분이다. 예시로 금융시장의 데이터를 작업하는 상황에서 금융의 안정성을 도모하기 위해 금융시장은 하루 중 최대 변동폭을 제한한다. 가격 변동이 너무 크면 폐쇄시키고, 특정 날짜의 최댓값을 표현하는 특징의 생성을 고려해야 한다.


8.2.3 외적 고려 사항

계산 및 스토리지 리소스의 정도도 중요하다. 동기, 특징 개수, 복잡한 계산, 데이터셋의 크기 등 여러 사항들을 고려해야 한다.


8.3 특징의 발견에 영강을 주는 장소 목록

자주 사용되는 요약 통계 방식

- 평균과 분산

- 최댓값과 최솟값

- 시작과 마지막 값의 다른 정도

시각적으로 살펴볼 수 있는 것들

- 국소적 최소와 최대의 개수

- 시계열의 평활 정도

- 시계열의 주기성과 자기상관


8.3.1 시계열 특징 생성의 오픈 소스 라이브러리

파이썬의 tsfresh 모듈은 기술 통계학, 비선형성과 복잡성 지표, 기록 압축 개수 등을 알아볼 수 있다. 뿐만 아니라 여러 패키지들이 있다.


8.3.2 특정 도메인에 특화된 특징의 예

주식시장의 기술지표

상대강도지수(RSI) : 100 - 100/(1+RS)이다. RS는 가격의 상승 기간 동안의 평균 이득을 가격의 하락 기간 동안의 평균 손실로 나눈 비율이고, 각 기간에 대한 환수 가능 기간을 입력받아 다른 환수 가능 기간에 대한 서로 다른 RSI를 얻을 수 있다. 주식 투자자들은 실제보다 저or과대평가를 나타내는 기준 RSI 값에 대해 경험 법칙을 개발해왔고, 자산의 움직임에 대한 측정에 기반하기 때문에 '모멘텀 지표'로도 알려져 있다.

이동평균 수렴발산(MACD)

체이킨 머니 플로 : 지출 추세의 방향을 측정


8.4 생성된 특징들 중 일부를 선택하는 방법

자동화된 특징 선택 알고리즘으로 FRESH가 있으며 앞서 소개한 tsfresh 패키지가 이를 구현한다. FRESH 알고리즘은 타깃 변수에 대한 각 입력 특징의 p-값을 계산하여 그 중요도를 평가한다. 특징별 p-값은 허용 오차율 같은 입력 파라미터로 보존할 특징을 결정하는 벤자민-예쿠티에리 절차로 평가된다. 이 절차는 FRESH 알고리즘 초기 단계의 p-값을 생성하는 가설 검정 도중에 발견된 거짓긍정의 개수를 제한하는 방법이다.

위와 같이 쉽게 feature 정할 수 있고

유용한 특징들이 쉽게 뽑혀 나왔다.

다른 방법으로는 재귀특징제거법(RFE)이 있다. 점진적으로 특징을 선택하고, 

위 코드처럼 FRESH 알고리즘이 기각한 특징 목록 중 10개를 무작위로 선택하여 결합하고, 총 20개 특징에 대해 RFE를 수행하면 중요도 순위를 알아낼 수 있다.

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기