시계열 데이터의 실시간 정규화 알고리즘?


12

여러 센서 스트림에서 최신 데이터 포인트의 벡터를 가져 와서 유클리드 거리를 이전 벡터와 비교하는 알고리즘을 연구 중입니다. 문제는 서로 다른 데이터 스트림이 완전히 다른 센서에서 온 것이므로 간단한 유클리드 거리를 사용하면 일부 값이 크게 강조됩니다. 분명히 데이터를 정규화 할 수있는 방법이 필요합니다. 그러나 알고리즘은 실시간으로 실행되도록 설계되었으므로 정규화에서 모든 데이터 스트림에 대한 정보를 전체적으로 사용할 수 없습니다. 지금까지 시작 단계에서 각 센서에서 볼 수있는 가장 큰 값 (처음 500 개의 데이터 벡터)을 추적 한 다음 해당 센서의 모든 미래 데이터를 해당 값으로 나누었습니다. 이것은 놀랍게 잘 작동하지만 매우 우아합니다.

나는 이것에 대한 기존 알고리즘을 찾는 데 많은 운이 없었지만 아마도 올바른 장소를 찾지 않을 것입니다. 누구나 알고 있습니까? 아니면 어떤 아이디어가 있습니까? 나는 실행 평균 (아마 Wellford의 알고리즘으로 계산)을 사용하라는 제안을 보았지만, 그렇게하면 동일한 값의 여러 판독 값이 동일하게 표시되지 않을 것입니다. 뭔가 빠졌습니다. 모든 의견을 부탁드립니다! 감사!

답변:


1

귀하의 질문에 따르면 귀하는 다음을 찾고 있음을 이해합니다.

  1. 각 센서의 데이터 기여를 정규화하는 방법을 찾으십시오.
  2. 새 데이터 포인트가 이전 포인트와 매우 다른지 확인하십시오.

여기 내가 시작할 곳입니다

1. 첫 번째 질문 : 평균을 제거하고 미백은 당신이 찾고있는 것입니다. 미백 변환을 사용하면 기능이 모두 동일한 동적 범위에있게됩니다.

나는 완벽하게 관련이 있을지 모르지만 시작점으로 완벽하게 적합한 몇 가지 간단한 가정을 할 것입니다.

데이터가 단일 모달이라고 가정하면 데이터가 하나의 뚜렷한 평균을 갖습니다. 데이터의 평균을 빼고 미백 변환을 수행하는 것으로 시작합니다 (아마도 데이터에 따라 PCA, 아마도 ZCA)

실시간으로이 작업을 수행하려면 움직이는 창에서 미백을 수행하는 실행 샘플 수를 사용합니다. 미백이 정확하기에 충분한 샘플이 있는지 확인하십시오 (미백에는 공분산 매트릭스가 반전되지 않아야하며 센서보다 더 많은 시간적 샘플이 필요합니다).

이제 데이터가 단조롭지 않다면 아마도 데이터가 모여서 모드가있는 곳을 볼 것입니다. 기본적으로 도착할 때마다 새로운 지점에 대해 적절한 클러스터로 구성하고 거기서 이동합니다.

2. 지난 지점에서 효과적으로 거리를 측정하기 위해 Mahalanobis 거리를 사용합니다 . 실제로, Mahalanobis 거리는 희게 된 공간에서 거의 유클리드 거리입니다.

요약하면 미백과 마할 라 노비스 거리에 대해 읽어보십시오. 이것이 당신이 찾는 방향으로 당신을 가리킬 것이라고 생각합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.