Data Science and Data Proicessing

데이터 과학,기계 학습

ROCKET : 빠르고 정확한 시계열 분류

Python을 사용한 시계열 분류를위한 최신 알고리즘

이미지OpenClipart- 벡터...에서pixabay
  • ROCKET의 작동 원리 설명
  • Python 코드 예제 제공

대안은 무엇입니까?

시계열 분류를위한 다른 방법은 일반적으로 모양, 빈도 또는 분산과 같은 특정 시리즈 표현에 의존합니다. ROCKET의 컨볼 루션 커널은이 엔지니어링 된 기능 추출을 동일한 기능을 많이 캡처 할 수있는 단일 메커니즘으로 대체합니다.

시계열 분류 조사

시계열 변환은 시계열 분류의 기본 아이디어입니다.많은 시계열 특정 알고리즘은 변환 된 시계열과 기존 분류 알고리즘의 구성입니다., scikit-learn에있는 것과 같은.

경쟁 SOTA 방법

다음 방법은에 설명 된 알고리즘의 속도와 정확성을 개선하기 위해 노력합니다.서베이위.

  • TS-CHIEF사전 기반 및 간격 기반 분할 기준을 사용하여 Proximity Forest를 확장합니다.
  • InceptionTimeInception 아키텍처를 기반으로하는 5 개의 deep CNN의 앙상블입니다.
  • 미스터 씰시계열 (SAX, SFA)의 기호 표현으로 추출 된 특징에 선형 분류기를 적용합니다.
  • cBOSS 또는 계약 가능한 BOSS는 SFA 변환을 기반으로하는 사전 기반 분류기입니다.
  • catch22분류기에 전달할 수있는 22 개의 미리 선택된 시계열 변환 집합입니다.

ROCKET은 어떻게 작동합니까?

ROCKET은 먼저 컨볼 루션 커널을 사용하여 시계열을 변환하고 두 번째는 변환 된 데이터를 선형 분류기에 전달합니다.

컨볼 루션 커널

컨벌루션 신경망에서 발견 된 것과 동일한 컨볼 루션 커널은 임의의 길이, 가중치, 편향,팽창, 패딩. 보다종이랜덤 매개 변수가 샘플링되는 방법에 대해 설명합니다. ROCKET의 일부이며 샘플링을 조정할 필요가 없습니다. 보폭은 항상 하나입니다. ROCKET은 결과 기능에 ReLU와 같은 비선형 변환을 적용하지 않습니다.

컨볼 루션 커널 변환

각 커널은 각 시계열과 컨볼 루션되어 기능 맵을 생성합니다. 커널의 기능 맵은 통합되어 커널 당 두 가지 기능을 생성합니다.최대 값양수 값의 비율.

Image for post
zi는 회선 연산의 출력입니다.

선형 분류

더 작은 데이터 세트의 경우, 저자는능선 회귀 분류기정규화 매개 변수의 빠른 교차 검증과 다른 초 매개 변수가 없기 때문입니다.

ROCKET을 Python과 함께 사용하는 방법은 무엇입니까?

ROCKET 변환은sktime파이썬 패키지.

import numpy as np
from sklearn.linear_model import RidgeClassifierCV
from sktime.datasets import load_arrow_head # univariate dataset
from sktime.transformers.series_as_features.rocket import Rocket
X_train, y_train = load_arrow_head(split="test", return_X_y=True)
X_test, y_test = load_arrow_head(split="train", return_X_y=True)
print(X_train.shape, X_test.shape)
>> (175, 1) (36, 1)
Image for post
rocket = Rocket(num_kernels=10,000, random_state=111) 
rocket.fit(X_train)
X_train_transform = rocket.transform(X_train)
X_train_transform.shape
>> (175, 20000)
classifier = RidgeClassifierCV(alphas=np.logspace(-3, 3, 10), normalize=True)
classifier.fit(X_train_transform, y_train)
X_test_transform = rocket.transform(X_test)
classifier.score(X_test_transform, y_test)
>> 0.9167

소환

Dempster, A., Petitjean, F. & Webb, G.I. ROCKET : 랜덤 컨볼 루션 커널을 사용한 매우 빠르고 정확한 시계열 분류.데이터 최소 지식 디스크 34,1454–1495 (2020).https://doi.org/10.1007/s10618-020-00701-z

+ Recent posts