CÁC CÔNG TRÌNH LIÊN QUAN CHƯƠNG 3

Một phần của tài liệu Luận văn thạc sĩ Khoa học máy tính: Tự động hóa xây dựng mô hình Arima để dự báo chuỗi thời gian (Trang 34 - 51)

Nội dung của chương này trình bày về công trình tự động xây dựng mô hình ARIMA để dự báo chuỗi thời gian của Nancy Ngoc Tran cũng như phương pháp làm trơn hàm mũ Winters và công trình kết hợp mạng Neural nhân tạo với mô hình SARIMA để dự báo

Tự động xây dựng ô hình RIM để dự báo

3.1 Để tự động hóa quá trình xây dựng mô hình ARIMA, theo Nancy Ngoc Tran [9], cấu trúc của mô hình dự báo SARIMA gồm 4 thành phần chính:

 Thành phần nhận dạng mô hình (Model identification): liên quan đến việc xác định cấu trúc mô hình, số lƣợng các dữ liệu quan sát và nhiễu trong quá khứ mà có tương quan mạnh với các dữ liệu hiện tại. Hàm tự tương quan sẽ được dùng như một công cụ chính để bộc lộ sự phụ thuộc và cung cấp nhận dạng các mô hình khi vẽ đồ thị. Một phương pháp phổ biến để ước tính một mô hình cấu trúc là kiểm tra số lƣợng biến động mạnh có ý nghĩa thống kê trong đồ thị. Thành phần này nhận dạng được mô hình một cách tự động bằng cách phân tích hệ số tự tương quan và hệ số tự tương quan riêng phần theo các độ trễ khác nhau. Do đó sẽ tránh được việc

phải dựa vào các đồ thị dữ liệu để xác định mô hình.

 Thành phần ƣớc lƣợng tham số (Parameter estimator): tự động ƣớc lƣợng tham số của mô hình bằng giải thuật tối thiểu sai số đệ quy. Giải thuật này sử dụng ƣu điểm của đệ quy để giảm chi phí tính toán và kỹ thuật tối thiểu lỗi để tối thiểu tổng bình phương các ước lượng lỗi. Giải thuật này có hai giả định là: mô hình phải tuyến tính với các tham số và chuỗi lỗi phải có phân phối tự nhiên với giá trị trung bình là 0 và phương sai không đổi. Nếu hai giả định này không bị vi phạm thì mô hình ước lượng tham số tương đối chính xác.

 Thành phần khử mùa và xu hướng (Recursive differencer/integrator): dùng để chuyển đổi các chuỗi dữ liệu không tĩnh hoặc có tính mùa sang chuỗi dữ liệu tĩnh trước khi áp dụng các giải thuật để ước lượng các tham số cho mô hình. Việc chuyển đổi được thực hiện bằng phương pháp lấy hiệu. Mô hình ARIMA chỉ phù hợp với chuỗi dữ liệu tĩnh, nên ta phải khử mùa và xu hướng các thành phần bị loại

bỏ khỏi chuỗi dữ liệu trong quá trình chuyển đổi phải đƣợc tích hợp lại vào dữ liệu

khi dự báo.

 Thành phần dự báo nhiều thời đoạn (N-step ahead predictor): tạo giá trị dự báo cho các giai đoạn tiếp theo dựa vào mô hình đã ƣớc lƣợng đƣợc.

Hình 3.1 sẽ mô tả cấu trúc của mô hình dự báo SARIMA.

Hình 3. 1 Các thành phần của mô hình SARIMA Thành phần nhận dạng mô hình

3.1.1

 Nhận dạng mô hình là cần thiết và quan trọng vì nhận dạng đúng mô hình sẽ giúp chúng ta dự báo đƣợc chính xác Nhận dạng mô hình là khâu đầu tiên trong quá trình mô hình hóa SARIMA. Chúng ta cần phải xác định các tham số p, d, qP,

Q, D, s của mô hình SARIMA. Những giá trị này đƣợc suy ra bằng cách trích rút

những hệ số tương quan có ý nghĩa trong chuỗi dữ liệu quan sát được. Kỹ thuật truyền thống dùng để nhận dạng mô hình là quan sát đồ thị và trích rút các hệ số từ đồ thị. Tuy nhiên, phương pháp này có nhược điểm là phụ thuộc vào độ hiểu biết và

khả năng phân tích đồ thị của người dự báo. Do đó cần phải tìm ra một phương

pháp tự động, sử dụng các công thức toán học để trích rút ra các hệ số.

 ARIMA sử dụng tính chất của ACF và PACF để kết hợp một chuỗi dữ liệu với một mô hình thích hợp: mô hình tự hồi quy AR(p), mô hình trung bình di động MA(q), mô hình kết hợp tự hồi quy và trung bình di động ARMA(p,q). Bảng 3.1 tóm tắt các thuộc tính quan trọng để hỗ trợ phân biệt các mô hình khác nhau. Tính chất của các hàm tương quan được chia ra làm 3 loại: giảm gián đoạn (abrupt decay), giảm theo hình sin hoặc hàm mũ, giảm chậm. Tùy theo tính chất của ACF và PACF mà chuỗi dữ liệu đƣợc kết hợp với 1 mô hình khác nhau.

o Mô hình trung bình di động MA(q): ACF gián đoạn về không sau một vài độ trễ, trong khi đó PACF với các độ trễ giảm về không theo hình sin hoặc theo hàm mũ.

o Mô hình tự hồi quy AR(p): quá trình có ACF với các độ trễ giảm về không theo hình sin hoặc theo hàm mũ, trong khi đó PACF gián đoạn về không sau một vài độ trễ.

o Mô hình kết hợp tự hồi quy và trung bình di động ARMA(p,q): quá trình có ACF và PACF giảm về không theo hình sin hoặc theo hàm mũ.

Nếu ACF giảm chậm thì chuỗi dữ liệu không tĩnh, có tính xu hướng chúng ta cần phải chuyển đổi trước khi ước lượng.

Process ACF PACF

AR(p) Giảm vể không theo

hình sin hoặc hàm mũ

Giảm gián đoạn về không sau độ trễ p

MA(q) Giảm gián đoạn về

không sau độ trễ q

Giảm về không theo hình sin hoặc hàm mũ

ARMA(p,q) Giảm về không theo

hình sin hoặc hàm mũ

Giảm về không theo hình sin hoặc hàm mũ

Bảng 3. 1 Tính chất của ACF và PACF

 Các khái niệm cơ bản lấy hiệu Có nhiều kỹ thuật đƣợc sử dụng để chuyển đổi chuỗi dữ liệu có tính xu hướng và mùa thành chuỗi dữ liệu có tính dừng. Trong đó, lấy hiệu thường được

sử dụng chuyển đổi cho chuỗi thời gian có phương sai ổn định, nhằm ổn định trung bình của chuỗi dữ liệu không có tính dừng và có tính mùa. Nancy đề xuất khoảng lấy hiệu để phân biệt hai loại lấy hiệu khác nhau trong mô hình SARIMA.

Lấy hiệu thường (regularly differenced) d lần cho chuỗi không dừng và

không có tính mùa. Khoảng lấy hiệu là một. Chúng ta quan sát liên tiếp dữ liệu chuỗi gốc đƣợc trừ để biến đổi thành chuỗi mới d(t)= y(t) - y(t-1). Ví dụ chúng ta có chuỗi dữ liệu có tính không dừng sau:

70.3, 100.5, 130.2, 160.7, 190.5, 220.2, 250.4 Sau một lần lấy hiệu thì chuỗi dữ liệu trên đã đƣợc chuyển đổi thành chuỗi dữ liệu có tính dừng dao động xung quanh mức trung bình là 30 => d=1.

100.5 130.2 160.7 189.5 220.2 250.4 - 70.3 100.5 130.2 160.7 189.5 220.2 30.2 29.7 30.5 28.8 30.7 30.2

Nếu chuỗi dữ liệu đã lấy hiệu một lần mà chƣa có tính dừng thì ta lại tiếp tục lấy hiệu cho đến khi chuỗi dữ liệu có tính dừng và số lần lấy hiệu chính là d mà ta cần xác định.

Lấy hiệu mùa s cho dữ liệu có tính mùa: Khoảng lấy hiệu s thì lớn hơn 1.

Mỗi phần tử D(t) trong chuỗi dữ liệu đƣợc chuyển đổi là hiệu giữa các cặp quan sát tách biệt nhau một khoảng s là chiều dài của mùa D(t) = y(t)- y(t-s). Ví dụ, ta xét hình 3.2 mỗi vòng tròn tách biệt nhau 5 phần tử (50; 53.1; 56.4) phác họa

một mùa. Lấy hiệu giữa các điểm dữ liệu tách biệt nhau với chiều dài mùa là 5 ta đƣợc chuỗi dữ liệu có tính dừng dao động xung quanh trung bình là 3:

6.3 9.7 12.3 15.1 53.1 9.4 12.5 15.5 18.2 56.4 - 3.2 6.3 9.5 12.1 50.0 6.3 9.7 12.3 15.1 53.1 3.1 3.4 2.8 3.0 3.1 3.1 2.8 3.2 3.1 3.3

Hình 3. 2 Lấy hiệu của chuỗi dữ liệu có tính mùa

Trong hai ví dụ ở trên, chúng ta chỉ cần lấy hiệu một lần cho toàn bộ dữ liệu để ổn định trung bình của chuỗi dữ liệu đó. Tuy nhiên, có rất nhiều chuỗi dữ liệu không dừng và mùa khác cần phải đƣợc lấy hiệu hơn một lần để đạt đƣợc tính dừng.

Chúng tôi sẽ minh họa một chuỗi thời gian phức tạp hơn yêu cầu phải có hai cấp lấy hiệu để chuyển đổi. Hình 3.3 chỉ ra các bước thực hiện lấy hiệu. Chuỗi dữ liệu đầu tiên không có tính dừng, đặc điểm là chuỗi tăng dần với các đỉnh nhọn (spikes) mùa tách biệt nhau với một khoảng có chiều dài là 5- đƣợc chỉ rõ bởi các điểm khoanh tròn.

Hai mức độ lấy hiệu đƣợc thực hiện: một lần lấy d và một lần lấy s. Sau khi lấy hiệu d (với d=1) thì chuỗi dữ liệu đƣợc chuyển đổi (dòng thứ hai trong hình 3.3) vẫn còn chứa các thành phần theo mùa (9:8; 10:2; 10:4) mặc dù dữ liệu khác bên trong mùa (1:3; 1:2; 0:9; 1:0 || 1:2; 1:1; 1:0;1:3; || ... ) đạt trạng thái cân bằng. Do đó, lấy hiệu mùa với một khoảng chiều dài bằng 5 là cần thiết. Sau lần chuyển đổi thứ hai, ta đƣợc chuỗi dữ liệu có tính dừng dao động xung quanh trung bình 0.1.

Hình 3. 3 Hai cấp lấy hiệu

 Tự động hóa phân tích hệ số tự tương quan Quy trình nhận dạng mô hình đã đƣợc mô tả là một quá trình trực quan tốn nhiều công sức, nó cần phải đƣợc tự động để phục vụ cho một loạt các ứng

dụng. Mục tiêu của chúng ta là cho phép tự động phát hiện cấu trúc tương quan mà không đòi hỏi kiến thức chuyên sâu về phân tích tương quan. Phương pháp của Nancy để tự động: a) xác định các mối tương quan đáng kể trong hàm tự tương quan bằng cách sử dụng các khoảng thống kê tin cậy, b) rút trích các mẫu dữ liệu từ các mối tương quan này.

a) xác định các mối tương quan đáng kể Trực giác, dữ liệu ở gần nhau nhiều khả năng sẽ phụ thuộc nhau hơn là các dữ liệu ở xa nhau ngoại trừ các dữ liệu mùa. Kết quả là hàm tự tương quan và hàm tự tương quan riêng phần của chuỗi dữ liệu tĩnh sẽ giảm về không tại độ trễ lớn. Bartlett phát triển một công thức để ƣớc tính độ lệch chuẩn của ACF và PACF cho các độ trễ khác nhau của chuỗi dữ liệu có tính dừng kích thước N.

̂[ ] √ ( ∑ ) √ (3.1)

̂[ ] √ (3.2)

Công thức 3.1 ƣớc lƣợng độ lệch chuẩn của ACF tại độ trễ k, liên quan đến tất cả ước lượng tự tương quan trước đây. Giá trị của nó cuối cùng hội tụ khi hàm tự tương quan nhỏ dần tại độ trễ lớn. Ngược lại, độ lệch chuẩn được ước tính trong công thức 3.2 là không đổi và tỷ lệ nghịch với kích thước của

chuỗi. Tự động tách các tương quan đáng kể bằng cách chọn những giá trị nào vƣợt quá khoảng tin cậy (95%) của ACF và PACF

Vị trí tần xuất cao 0 1 2 8 10 20 30 40 50 60 68 70 80 90 Khoảng cách mức

1

1 1 6 2 10 10 10 10 10 8 2 10 10

Bảng 3. 2 Ví dụ khoảng cách mức 1

b) Tự động phát hiện mùa thông qua ACF Để chỉ ra sự tồn tại của mùa chúng ta xây dựng hai lần kiểm tra thực hiện tại các vị trí có tương quan đáng kể. Các tương quan này được gọi là tín hiệu tần số cao (high frequency signals) và đƣợc tự động rút trích từ chuỗi đã lấy hiệu thường (regularly differenced).

o Kiểm tra khoảng cách mức 1: Chúng ta tính toán khoảng cách giữa các vị trí có tần số cao liên tiếp nhau. Nếu khoảng cách nào xuất hiện nhiều lần thì khoảng cách đó sẽ đƣợc chọn là chiều dài mùa theo nguyên tắc số đông. Bảng 3.2 là một danh sách tự động phát hiện 14 vị trí có tần số cao trong ACF với khoảng tin cậy 98%.

Hình 3.4 thể hiện ACF dựa trên chuỗi dữ liệu đã đƣợc tính toán lấy hiệu từ chuỗi dữ liệu gốc có chiều dài là 700. Chúng ta có thể thấy có 7 lần xuất hiện khoảng cách mức 1 với chiều dài là 10, chiều dài 2 xuất hiện 2 lần, chiều dài 6 và 8 đều xuất hiện 1 lần. Tất cả các khoảng cách có độ dài 1 đƣợc bỏ qua. Do đó khoảng cách có chiều dài 10 đƣợc chọn làm chiều dài của mùa.

Tuy nhiên nếu kiểm tra thất bại chúng ta có thể đến với kiểm tra kế tiếp

o Kiểm tra khoảng cách mức 2: Khi kiểm tra khoảng cách mức 1 được sử dụng để xác định mùa thông thường thì kiểm tra khoảng cách mức 2 đƣợc thiết kế để xác định mùa tăng ( chiều dài của mùa sẽ tăng từng bước ví dụ lúc đầu s=1 sau đó s=2,..). Mùa tăng sẽ được xác định bằng cách lấy hiệu của khoảng cách mức 1. Bảng 3.3 cho thấy một chuỗi các địa điểm tần số cao trong ACF của một chuỗi thời gian. Sau khi đã lấy hiệu một lần, chúng ta không thể tìm đƣợc một giá trị nào trùng nhau trong khoảng cách mức 1 ngoại trừ 1. Tuy nhiên tại khoảng cách mức 2 chúng ta có thể thấy đƣợc chiều dài 15 xuất hiện với tần xuất cao. Chiều dài bắt đầu của mùa có thể đƣợc tìm thấy ở khoảng cách mức 1 tại vị trị (5) vị trí mà lần đầu tiên xuất hiện khoảng cách 15.

Nếu sau hai lần kiểm tra mà vẫn không tìm đƣợc chiều dài mùa thì chuỗi dữ liệu đó không có tính mùa

Hình 3. 4 Phát hiện mùa bằng ACF

Vị trí tần số cao 0 1 2 3 15 45 90 150 225 315 420

Khoảng mức 1 1 1 1 12 30 45 60 75 90 105

Khoảng mức 2 0 0 11 18 15 15 15 15 15

Bảng 3. 3 Ví dụ khoảng cách mức 2

 Quá trình nhận dạng mô hình SARIMA bao gồm 4 bước chính:

 Lấy hiệu d lần để loại bỏ tính xu hướng trong chuỗi dữ liệu. Khi ACF của chuỗi dữ liệu mang tính chất giảm chậm thì chuỗi dữ liệu cần đƣợc lấy hiệu nhiều lần cho đến khi ACF không mang tính chất giảm chậm. Sau khi lấy hiệu d lần – thường nhỏ hơn 2, chuỗi dữ liệu đã mất tính xu hướng. Tuy nhiên nếu chuỗi dữ liệu có tính mùa, thì ACF có giá trị lớn tại các cận của mùa. Khoảng

cách giữa các cận chính là chiều dài mùa s.

 Loại bỏ tính mùa: chuỗi dữ liệu ban đầu cần đƣợc lấy hiệu D lần với

khoảng lấy hiệu là s để loại bỏ tính mùa. Với các chuỗi dữ liệu thường gặp chỉ

qua 1 lần lấy hiệu là có thể loại trừ đƣợc tính mùa trong chuỗi dữ liệu.

 Đối với những quá trình có tính mùa, các giá trị quan sát không chỉ phụ thuộc vào những giá trị lân cận mà còn phụ thuộc vào những giá trị cách nó một bội số của chiều dài mùa. Do vậy để xác định chu kì mùa, ta cần:

o Xác định các hệ số tương quan tối ưu: các hệ số này cao hơn các hệ số lân cận và là giá trị cao nhất cục bộ.

o Tính khoảng cách giữa các hệ số tương quan tối ưu: sự sai khác về độ trễ giữa các hệ số liên tiếp.

o Nhận dạng khoảng cách đƣợc lặp lại nhiều nhất, nếu tần suất của khoảng cách này lớn thì đó chính là chu kì mùa.

 Xác định mô hình cho thành phần không mùa: trong chuỗi dữ liệu đƣợc biến đổi, ta phân tích ACF và PACF trong khoảng thời gian 1 mùa để xác định

p, q. Chúng ta sẽ xác định mô hình dựa vào bảng 3.1 tóm tắt. Bằng cách tính tỉ lệ thay đổi trung bình và so sánh chúng với các ngƣỡng, ta tính đƣợc các hệ số của

mô hình.

Với M là số hệ số tương quan có ý nghĩa, là hệ số tương quan tại độ trễ k.

Phương pháp xác định mô hình trong hệ số tương quan:

Sau khi xác định tính chất của hệ số tương quan ACF và PACF, ta xác định mô hình ARIMA phù hợp theo giải thuật sau:

 Xác định mô hình cho thành phần mùa: tương tự như xây dựng mô hình cho thành phần thường nhưng ta phân tích ACF và PACF tại các cận mùa để xác định P, Q.

if( > 65%) then pattern = abrupt cutoff else if (( < 10%) then pattern = slow decay else pattern = exponential decay

if (high frequencies exist in ACF or PACF) {

if (ACF pattern = abrupt cut-off at lag q) then Model = pure MA(q)

else if (PACF pattern = abrupt cut-off at lag p) then Model = pure AR(p)

else if (both ACF and PACF pattern = exponentila decay) then Model = ARMA(p,q)

} else {

//data has no correlation p = q =0;

Model = ARMA(0,0) }

Thành phần khử ù v xu hướng

3.1.2 Trong thực tế, các chuỗi dữ liệu rất phức tạp và thường mang tính xu hướng

hoặc tính mùa. Do đó, các chuỗi dữ liệu cần đƣợc biến đổi thành các quá trình tĩnh trước khi đưa vào thành phần nhận dạng mô hình. Lấy hiệu là kỹ thuật được sử dụng phổ biến nhất.

Các chuỗi dữ liệu sau khi quá trình lấy hiệu sẽ đƣợc chuỗi dữ liệu tĩnh mới để xây dựng mô hình. Khi dùng mô hình này để dự báo, ta cần chuyển đổi lại dữ liệu nhƣ ban đầu.

Hình 3. 5 Thành phần khử mù v u hướng trong mô hình SARIMA

Với một số chuỗi dữ liệu chỉ với một lần lấy hiệu ta có thể lấy đƣợc chuỗi dữ liệu tĩnh. Nhƣng đối với một số chuỗi dữ liệu, ta phải lấy liệu nhiều lần và kết hợp cả hai phương pháp mới có được chuỗi dữ liệu tĩnh.

Thành phần ước ượng tham s

3.1.3 Quá trình ƣớc lƣợng tham số gồm 3 giai đoạn:

 Giai đoạn 1: khởi tạo điều kiện cho quá trình hồi quy. Véc tơ tham số đƣợc khởi tạo bằng 0, . Nghịch đảo của ma trận phương sai với giá trị .

 Giai đoạn 2: giá trị mới của véctơ tham số được ước lượng dựa vào lỗi trước dự báo và hệ số khuyếch đại.

Hệ số khuyếch đại đƣợc tính hồi quy dựa vào giá trị cũ, véctơ quan sát và nghịch đảo ma trận phương sai .

Gain factor =

 Giai đoạn 3: cập nhật giá trị cho các biến liên quan để chuẩn bị cho vòng tiếp theo.

Giá trị lỗi sau dự báo đƣợc tính toán dựa vào giá trị quan sát hiện tại và véctơ tham số mới nhất

Nghịch đảo ma trận phương sai được tính dựa vào giá trị cũ và hệ số khuếch đại

Véc tơ giá trị quan sát và lỗi đƣợc cập nhật lại.

Giai đoạn 2 và 3 đƣợc lặp lại cho mỗi mẫu dữ liệu quan sát, qua mỗi lần ƣớc lƣợng nhƣ vậy véc tơ tham số sẽ đƣợc cập nhật chính xác hơn.

Hình 3. 6 Quá trình ƣớc lƣợng tham s mô hình SARIMA

Một phần của tài liệu Luận văn thạc sĩ Khoa học máy tính: Tự động hóa xây dựng mô hình Arima để dự báo chuỗi thời gian (Trang 34 - 51)

Tải bản đầy đủ (PDF)

(97 trang)