그래프가 피크와 고원에 도달하는 시점을 찾는 방법은 무엇입니까?


9

이것은 매우 기본적으로 들릴지 모르지만이 문제가 있습니다. 창 크기가 300 인 데이터 대기열이 있습니다. 한 쪽 끝에 새 데이터가 추가되고 다른 쪽 끝에서 오래된 값이 제거됩니다.

큐 데이터가 10,12,15,10,20과 같이 다소 일관성을 유지 한 다음 급격히 상승하기 시작합니다 : 15,10,20,22,25,26,28,30,32 ... 최대 150 정도까지 거기에서 데이터는 약간 변동 할 수 있으며, 비슷한 기울기 (120,118,116,115 ...)에서 20까지 내려갑니다.

이 데이터 시리즈의 전환점을 프로그래밍 방식으로 식별하려고하지만 코드가 원하는 것보다 더 자주 피크를 감지합니다. 그래프가 상승하는 시점, 결정적인 전환점에 도달 한 시점 및 하락하기 시작하는 시점을 어떻게 식별 할 수 있습니까? 변화율의 변화율을 보려고 노력해야합니까?


경사와 피크의 높이에 대한 합리적인 감각이 있다면, 현재 경사뿐만 아니라 높이와 등반 시간을 모두 고려할 수 있습니까? 피크에 대한 이전 데이터의 양은 어느 정도이며 모델에 맞게 사용할 수 있습니까?
Karl

2
어떤 방법을 사용하든 피크가 무엇인지, 고원이 무엇인지 올바르게 정의해야합니다. 두 개의 연속적인 '높은'값이 피크입니까 아니면 고원입니까? 어때요? 일부 방법에는이 정보가 필요하지 않은 것처럼 보일 수 있지만이 방법은 장면 뒤에 숨겨져 있습니다. 항상 그렇듯이 문제를 올바르게 정의하고 매개 변수 및 / 또는 알고리즘을 최적화하는 것이 중요합니다.
Nick Sabbe

답변:


2

이것이 예상되는 정확한 패턴이라는 것을 알고 있다면이 정확한 패턴을 찾을 수 있지만 다른 패턴을 놓치게됩니다. 그래서. 피크가 150임을 알고 있다면 2 또는 3 또는 4 또는 150의 연속 값을 찾을 수 있습니다. 그러나 "또는 그렇게"이라고 말하면 "얼마나 큰가?" 아마도 피크는 "130 이상의 3 연속 값"또는 "140 이상의 5 연속 값 중 3"으로 정의됩니다. 그것은 당신이 결정하기위한 것입니다.

반면에 피크를 감지하는 일반적인 프로그램을 찾고 있다면 잘 살펴 보았습니다. 다듬기 방법 (예 : 황토, 다양한 종류의 스플라인, 이동 평균 등)이 있습니다. 내가 전문가 인 분야는 아니지만 이에 관한 많은 문헌이 있습니다.


4

비록 그것이 시계열 도구보다 더 많은 단면이지만, SiZer (고급 ZERo 교차점 또는 슬로프, 기억하지 않습니다)를 살펴보십시오 . 서로 다른 대역폭 (약 3 배 정도)으로 데이터를 평활화하고 일부 로컬 테스트를 적용하여 로컬 회귀의 기울기가 상당히 긍정적인지 부정적인지 (또는 결정되지 않은지) 확인합니다. 어떤 기능이 있는지 확인하는 데 도움이되는 설득력있는 그림을 생성합니다. (R 구현이없고 Matlab 만 있다는 것에 놀랐습니다.)

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