Làm thế nào để xác định Dự báo của chuỗi thời gian?


10

Một trong những vấn đề quan trọng đang được các nhà dự báo phải đối mặt là liệu loạt bài đã cho có thể được dự báo hay không?

Tôi tình cờ đọc được một bài báo có tựa đề " Entropy như một chỉ số dự báo ưu tiên " của Peter Catt sử dụng Entropy Entropy (ApEn) như một thước đo tương đối để xác định chuỗi thời gian nhất định có thể dự báo được.

Bài báo nói rằng,

"Các giá trị ApEn nhỏ hơn cho thấy nhiều khả năng một tập hợp dữ liệu sẽ được theo sau bởi dữ liệu tương tự (tính đều đặn). Ngược lại, giá trị ApEn lớn hơn cho thấy khả năng dữ liệu tương tự được lặp lại (không đều) thấp hơn. , tính ngẫu nhiên và độ phức tạp của hệ thống. "

Và được theo sau bởi các công thức toán học để tính ApEn. Đây là một cách tiếp cận thú vị bởi vì nó cung cấp một giá trị số có thể được sử dụng để đánh giá tính dự báo theo nghĩa tương đối. Tôi không biết Entropy Entropy nghĩa là gì, tôi đang đọc thêm về nó.

Có một gói gọi là pracma trong Rđó cho phép bạn tính toán ApEn. Với mục đích minh họa, tôi đã sử dụng 3 chuỗi thời gian khác nhau và tính các số ApEn.

  1. Sê-ri 1: Chuỗi thời gian nổi tiếng của AirPasbah - có tính quyết định cao và chúng tôi sẽ có thể dự báo dễ dàng.
  2. Sê-ri 2: Sê-ri thời gian mặt trời - được xác định rất rõ nhưng nên ít dự báo hơn sê-ri 1.
  3. Sê-ri 3: Số ngẫu nhiên Không có cách nào để dự báo chuỗi này.

Vì vậy, nếu chúng ta tính ApEn, Series 1 nên nhỏ hơn Series 2 nên rất ít Series 3.

Dưới đây là đoạn R tính toán ApEn cho cả ba chuỗi.

library("pracma")
> series1 <- approx_entropy(AirPassengers)
> series1
[1] 0.5157758
> series2 <- approx_entropy(sunspot.year)
> series2
[1] 0.762243
> series3 <- approx_entropy(rnorm(1:30))
> series3
[1] 0.1529609

Đây không phải là những gì tôi mong đợi. Sê-ri ngẫu nhiên có số lượng thấp hơn sê-ri AirPasbah được xác định rõ. Ngay cả khi tôi tăng số ngẫu nhiên lên 100, tôi vẫn nhận được số sau ít hơn chuỗi 2 / Sunspot.yealry được xác định rõ.

> series3 <- approx_entropy(rnorm(1:100))
> series3
[1] 0.747275

Dưới đây là những câu hỏi của tôi:

  1. Có 2 tham số khi tính ApEn ( mr)? Làm thế nào để xác định chúng. Tôi đã sử dụng mặc định trong Rmã ở trên.
  2. Những gì tôi đang làm không chính xác đang cho thấy rằng ApEn không chính xác thấp hơn cho các số ngẫu nhiên so với một chuỗi được xác định rõ như sunspot.yearly.
  3. Tôi có nên giải thích / loại bỏ loạt phim và sau đó ước tính ApEn. Tuy nhiên, tác giả đã áp dụng ApEn trực tiếp vào bộ truyện.
  4. Có cách nào khác để xác định xem loạt phim có thể dự báo được không?

Như đã nêu trong bài viết entropy gần đúng không nên được sử dụng trên chuỗi thời gian ngắn, N <200. Quan trọng hơn, bài viết sử dụng entropy mẫu chứ không phải entropy gần đúng. Pracma chứa cả hai. Cảm ơn

Nó chiếm tài khoản cho các biến giải thích? Ví dụ: nếu bạn dự báo sự suy giảm tài khoản của một công ty, nó có thể tương quan với chi tiêu tiếp thị và chi tiêu có thể dự báo cao, trên thực tế, đó là kế hoạch trong nhiều tháng tới. Làm thế nào điều này sẽ được tính trong phương pháp đề xuất?
Aksakal

@Aksakal, không có biến giải thích. Tôi đang tìm kiếm dự báo chuỗi thời gian quy mô lớn (không có biến giải thích) trong đó chúng ta cần một thước đo khách quan để đánh giá khả năng dự báo. Ngoài ra, trong nhiều trường hợp, dự báo đơn biến chính xác hơn nhiều so với các mô hình được xây dựng với các biến giải thích.
dự báo

1
Bản sao có thể có của Đánh giá
Tim

1
Ý thức của tôi là đây là một câu hỏi hẹp hơn nhiều so với đề xuất trùng lặp. Bỏ phiếu để ngỏ, nhưng đề nghị OP xem xét một tiêu đề cụ thể hơn để tránh nhầm lẫn giữa hai. Nói, "Làm thế nào để xác định khả năng dự báo của chuỗi thời gian bằng cách sử dụng entropy gần đúng ?"
Sean Easter ngày

Câu trả lời:


7

Các tham số mr, liên quan đến việc tính toán entropy gần đúng (ApEn) của chuỗi thời gian , tương ứng là chiều dài (chuỗi)dung sai (giá trị bộ lọc) . Trên thực tế, về mặt m, rcũng như N(số điểm dữ liệu), ApEn được định nghĩa là "logarit tự nhiên về mức độ phổ biến tương đối của các mẫu có độ dài lặp đi lặp lại mso với chiều dài m + 1" (Balocation, Daglis, Anastasiadis & Eftaxias, 2011 , trang 215):

ApEn(m,r,N)=Φm(r)Φm+1(r),

where 

Φm(r)=ΣilnCim(r)/(Nm+1)

Do đó, dường như việc thay đổi dung sai rcho phép kiểm soát mức độ chi tiết (tạm thời) của việc xác định entropy của chuỗi thời gian. Tuy nhiên, sử dụng các giá trị mặc định cho cả hai mrtham số trong pracmacác lệnh gọi hàm entropy của gói hoạt động tốt. Khắc phục duy nhất cần được thực hiện để xem mối quan hệ giá trị entropy chính xác cho cả ba chuỗi thời gian (entropy thấp hơn cho chuỗi được xác định rõ hơn, entropy cao hơn cho dữ liệu ngẫu nhiên hơn) là tăng độ dài của vectơ dữ liệu ngẫu nhiên :

 library(pracma)
 set.seed(10)
 all.series <- list(series1 = AirPassengers,
                    series2 = sunspot.year,
                    series3 = rnorm(500)) # <== size increased
 sapply(all.series, approx_entropy)
  series1   series2   series3 
  0.5157758 0.7622430 1.4741971 

Các kết quả như mong đợi - vì khả năng dự đoán biến động giảm từ hầu hết được xác định series1đến ngẫu nhiên nhất series 3, do đó, entropy của chúng tăng : ApEn(series1) < ApEn(series2) < ApEn(series3).

Về vấn đề để khác các biện pháp của forecastability , bạn có thể muốn kiểm tra trung bình lỗi quy mô tuyệt đối (Mase) - xem thảo luận này để biết thêm chi tiết. Phân tích thành phần dự báo dường như cũng là một cách tiếp cận thú vị và mới để xác định khả năng dự báo của chuỗi thời gian. Và, dự kiến, cũng có một Rgói cho điều đó - ForeCA .

library(ForeCA)
sapply(all.series,
       Omega, spectrum.control = list(method = "wosa"))
 series1   series2   series3 
 41.239218 25.333105  1.171738 

Ω[0,1]Ω(whitenoise)=0%Ω(sinusoid)=100%

Người giới thiệu

Balocation, G., Daglis, IA, Anastasiadis, A., & Eftaxias, K. (2011). Phát hiện các thay đổi phức tạp động trong sSeries thời gian D bằng cách sử dụng các khái niệm entropy và phân tích phạm vi thay đổi. Trong W. Liu và M. Fujimoto (Eds.), The Magnetosphere, IAGA Special Sopron Book, Series 3, 211. doi: 10.1007 / 978-94-007-0501-2_12. Mùa xuân. Lấy từ http://members.noa.gr/anastasi/ con / B29.pdf

Georg M. Goerg (2013): Phân tích thành phần dự báo. JMLR, W & CP (2) 2013: 64-72. http://machinelearning.wustl.edu/ml con / con / goerg13


Tôi cũng đã kiểm tra pracma::sample_entropy()chức năng và các mối quan hệ kết quả chính xác trong chuỗi thời gian cũng được giữ trong kịch bản đó.
Alexanderr Blekh

@forecaster: Bạn được chào đón.
Alexanderr Blekh

1
Xem thêm bài viết này notsoirrational.files.wordpress.com/2015/04/schulz15.pdf sử dụng dữ liệu thử nghiệm để chứng minh các biện pháp dự đoán của họ. Nó cũng liên quan đến một số công việc với công việc của PremCA được đề cập trong bài đăng này
Georg M. Goerg

@ GeorgM.Goerg: Cảm ơn bạn đã gợi ý, liên kết và chỉnh sửa.
Alexanderr Blekh

@forecaster: Niềm vui của tôi.
Alexanderr Blekh 18/07/2016

0

Mỗi chuỗi thời gian được tạo thành từ 3 thành phần: Xu hướng, Thời vụ và Ngẫu nhiên. Nếu dữ liệu thể hiện một xu hướng mạnh mẽ và có tính thời vụ cao, thì dự đoán sẽ tương đối dễ dàng. Nếu dữ liệu chủ yếu là ngẫu nhiên, thì theo định nghĩa, bạn không thể dự đoán bất cứ điều gì.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.