0

Python에서 기계 학습을 통해 (신경망을 사용하지만 중요하지는 않지만) 예측하고 싶은 시계열이 있습니다.Python 기계 학습 : 클래스 사이의 상관 관계를 반영하기 위해 사이클의 클래스 레이블

이전 값 ($ t-1 $, $ t-2 $, ... 등)의 정보 위에는의 시간의 다른 변수를 사용하고 싶습니다.

바보 같은 방법

한 가지 방법은지도를하는 것입니다 :

$ 00 : 00 \ 우측으로 향하는 화살표 0 $

$ 01 : 00 \ 우측으로 향하는 화살표 1 $

. ... 등등. 그래서 나는 $ 24 $ 클래스 $ {0,1,2, ..., 23} $을 가지고 있습니다. 그러나 문제가 있습니다 : $ 23 $와 $ 0 $는 비슷하지만 동시에 여기에 반영되지 않습니다.

두 번째 방법 : 핫 인코딩 하나?

또 다른 방법은 우리가보고있는 클래스를 제외하고 모든 요소가 0 인 $ 24 $ 항목이있는 벡터를 만드는 것입니다. 이는 더미 변수를 생성하는 것과 동일합니다.

$ 00 : 예를 들어 00 \ 향하는 화살표 [1,0,0,0, ..., 0] $

$ 01 : 00 \ 향하는 화살표 [0,1,0,0 ,. .., 0] $

... 등등. 그러나 문제가 있습니다. 이것은 상관 관계를 전혀 반영하지 않습니다!

방법 기타

나는 $ $ 왜냐하면 아니면 극좌표, 인스턴스 $의 죄 $를 들어, 일부 순환 구조를 사용하여 생각하고 있었어요?

나는 아직 해결책을 발견하지 않은,하지만 내 진행입니다 :

  1. 그들
  2. 규모를 정상화 $ [0,1] $에 바보 같은 방법의 클래스 레이블을지도 $ 0 $에서 $ 2 \ pi $의 범위에 있어야합니다.
  3. $ cos $ 또는 $ sin $을 사용하십시오.

이 방법은 효과가 없지만 약간의 빛을 볼 수 있습니다. 어떤 아이디어입니까?

답변

0

나는 해결책을 찾았습니다. 클래스 레이블 [0,1,2,3,4,5]에서 우리는 첫 번째 열로 클래스 레이블을 사용하여이 생성 된 다음

array([[ 0, 15, 24, 33, 42, 51], 
     [ 1, 10, 25, 34, 43, 52], 
     [ 2, 11, 20, 35, 44, 53], 
     [ 3, 12, 21, 30, 45, 54], 
     [ 4, 13, 22, 31, 40, 55], 
     [ 5, 14, 23, 32, 41, 50]]) 

를 구축합니다. 그런 다음 두 번째 열은 10에서 시작하여 15로 이동하지만 마지막과 첫 번째 레이블 대신 첫 번째 레이블과 두 번째 레이블 사이에 "간격"이 오도록 이동됩니다. 너는 이것을 반복한다.

는 그러면

0 --> [ 0, 15, 24, 33, 42, 51] 
1 --> [ 1, 10, 25, 34, 43, 52] 

등등 .. 그렇다면 어떤 두 개의 "인접한"벡터 클래스 차이 fo를 규범 같은 촬영을 할당한다. 따라서 우리는 어떤 격차도 없습니다. ,

나는 작품의 힘 정렬을 생각하지만, 나는 우리가 제품에게 가중치 벡터 (또는 매트릭스)이 매트릭스 도트 것처럼

+0

실제로이 작동하지 않는 기능으로이 먹이를 수 있는지 확실하지 않다 결과 항목이 "친밀감"을 잃었습니다. –