Tải bản đầy đủ (.doc) (11 trang)

Lab 2. DỰ BÁO BẰNG PHƯƠNG PHÁP HỒI QUI potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (268.52 KB, 11 trang )

Lab 2. DỰ BÁO BẰNG PHƯƠNG PHÁP HỒI QUI
Biên soạn: TS. Nguyễn Văn Ngọc
File chap5.sav chứa dữ liệu về bán hàng. Dữ liệu sẽ được phân ra làm 2 thời đoạn: luyện
tập và để kiểm tra. Dữ liệu của thời đoạn kiểm tra đôi khi còn được gọi là mẫu để dành (hold-
out sample).
1. Xây dựng đồ thị
Trong thời đoạn luyện tập xây dựng mô hình bạn hãy chọn 100 quan sát đầu tiên của chuỗi
sales. Chọn trong Menu Data:
Data
Select Cases
Hình 1. Hộp thoại “Chọn số quan sát”
Bạn hãy chọn Based on time or case range (Dựa trên thời gian hoặc số quan sát), sau đó nhấp
vào nút Range . Hộp thoại Select Cases: Range (Chọn vùng quan sát) được mở ra.
1
Hình 2. Hộp thoại “Chọn vùng quan sát”
Bây giờ xem xét chuỗi của chúng ta. Chọn trong Menu Graphs:
Graphs
Sequence…
Sequence number
96
91
86
81
76
71
66
61
56
51
46
41


36
31
26
21
16
11
6
1
SALES
260
250
240
230
220
210
200
190
2
Hình 3. Dữ liệu về bán hàng (thời đoạn luyện tập).
2. Sử dụng thủ thuật Curve Estimation
Đồ thị các giá trị của biến sales, được xây dựng cho 100 quan sát đầu tiên tăng liên tục, đặc
biệt là về cuối. Rõ ràng là chuỗi có tự tương quan dương: mỗi một giá trị gần đúng với giá trị đứng
trước đó, dường như chuỗi có “bộ nhớ”. Phương pháp dự báo đơn giản nhất cho chuỗi này là xác
định một đường cong xấp xỉ với giá trị của chuỗi.
Thủ thuật Curve Estimation dùng để làm điều đó: xác định phương pháp tốt nhất xây dựng
đường cong đi qua chuỗi dữ liệu và cho biết nó phù hợp đến mức độ nào. Thủ thuật này sẽ tạo ra 4
chuỗi thời gian mới: dự báo bằng mô hình, sai số, giới hạn trên và giới hạn dưới của độ tin cậy cho
các giá trị dự báo. Có thể xây dựng đồ thị các chuỗi này, để nhờ chúng xác định xem mô hình chạy
tốt tới mức nào.
Chọn dạng đường cong bậc hai và lập phương.

Bạn hãy thử ước lượng các hệ số cho đường bậc hai và đường lập phương cho 100 quan sát
đầu tiên của chuỗi. Sau đó làm tiếp cho thời đoạn kiểm tra và so sánh 2 mô hình.
Phân tích hồi qui được sử dụng trong thủ thuật Curve Estimation để ước lượng các tham số
của đường cong. Để chọn đường bậc hai, gần với chuỗi sales, bạn hãy chọn trong Menu Analyze:
Analyze
Regression
Curve Estimation…
3
Hình 4. Hộp thoại “Ước lượng đường cong”.
Bạn hãy chọn biến sales và đưa vào khung danh sách Dependent(s) (các biến phụ thuộc).
Trong nhóm Independent (Các biến độc lập) hãy chọn Time (Thời gian). Trong nhóm Models bạn
hãy đánh dấu chọn Linear, Quadratic và Cubic. Để có thể so sánh giá trị của các mô hình với các
giá trị quan sát của chuỗi sales, hãy nhấp vào nút Save…. Hộp thoại Curve Estimation Save được
mở ra như hình 5.
Hình 5. Hộp thoại “Curve Estimation: save”.
Đầu tiên chúng ta xem xét các giá trị dự báo, tạo ra bởi các mô hình bậc hai và lập phương,
cho nên trong nhóm Save ta chọn Predicted values (Các giá trị dự báo). Trong phần dưới của Hộp
thoại chỉ ra giai đoạn luyện tập (Estimation Period) đã chọn các quan sát từ 1 đến 100. Để dự báo tất
cả các giá trị của chuỗi (cho đến giá trị cuối cùng), hãy chọn trong nhóm Predict Cases (dự báo
quan sát) tùy chọn Predict from estimation period through last case (Dự báo từ thời đoạn luyện
tập đến quan sát cuối cùng). Nhấp lên nút Continue, để trở về Hộp thoại chính Curve Estimation.
Hãy chắc chắn rằng các tùy chọn Include constant in equation (Đưa constant vào mô hình) và Plot
models (Xây dựng đồ thị cho mô hình) đã được đánh dấu. Nhấp vào nút OK.
Chúng ta hãy xem xét các dữ liệu thống kê trình bày trong hình 6.
Dependent Mth Rsq d.f. F Sigf b0 b1 b2 b3
SALES QUA .462 97 41.73 .000 206.517 .0593 .0021
SALES CUB .877 96 227.80 .000 185.507 2.4952 0579 .0004
The following new variables are being created:
Name Label
FIT_1 Fit for SALES from CURVEFIT, MOD_2 QUADRATIC

FIT_2 Fit for SALES from CURVEFIT, MOD_2 CUBIC
Hình 6. Ước lượng đường cong bậc hai và đường lập phương.
Phương trình đường cong bậc 2 có dạng:
sales case case= + × + ×206 517 0 0593 0 0021
2
. ( . ) ( . )
4
Trong đó: case – số quan sát. Hệ số đứng trước số hạng bình phương có giá trị nhỏ – đường
cong gần với đường thẳng.
Với đường cong bậc 3, ngoài b0, b1 và b2, mô hình này còn có hệ số b3 đứng trước số hạng
lập phương. Hệ số b3 nhỏ.
Phương trình tốt hơn là phương trình bậc 3:
( ) ( ) ( )
sales case case case= + × + × + ×185 507 2 4925 0 0579 0 0004
2 3
. . . .
3. Xây dựng các đồ thị
Thủ thuật Curve Estimation tạo ra các giá trị dự báo bởi 2 mô hình và được ghi trong biến
mới fit_1 và fit_2. Trên hình 7 thể hiện đồ thị của chuỗi ban đầu và chuỗi dự báo. Trước khi gọi thủ
thuật Graph/Sequence để vẽ đồ thị, bạn chớ quên vào Data/Select Cases và bật tùy chọn All cases.
Sequence number
145
137
129
121
113
105
97
89
81

73
65
57
49
41
33
25
17
9
1
700
600
500
400
300
200
100
SALES
QUADR
CUBIC
Hình 7. Các giá trị ban đầu và các mô hình dự báo
4. Hồi qui với chỉ báo phòng ngừa
Thủ thuật Curve Estimation thực hiện phân tích hồi qui. Biến độc lập mà chúng ta đã sử
dụng là thời gian. Thủ thuật Curve Estimation chọn ra đường cong phù hợp nhất với dạng đồ thị
của chuỗi thời gian và không đặt ra câu hỏi tại sao nó lại có dạng như vậy. Rõ ràng là nếu chúng ta
có một chuỗi có quan hệ với chuỗi mà chúng ta đang quan tâm, thì chất lượng dự báo đôi khi có thể
được nâng lên. Đơn giản nhất là sử dụng thông tin của chuỗi tương tự, nếu nó cho phép dự báo các
5
giá trị tương lai của chuỗi mà chúng ta quan tâm, thì nghĩa là chúng ta đang sử dụng chỉ báo phòng
ngừa.

Chỉ báo phòng ngừa
Dữ liệu của chuỗi ban đầu có chứa chuỗi-chỉ báo, nhờ nó các giá trị tương lai của chuỗi sales
có thể được dự báo tốt hơn. Để sử dụng chỉ báo này trước hết phải xác định độ xa của nó gắn với
chuỗi sales như thế nào. Giả sử nói giá trị index của tháng hiện hành liên quan đến các giá trị của
sales trong 4 tháng trước, thì chỉ báo này cho chúng ta biết không quá nhiều để dự báo bán hàng cho
tháng tiếp theo.
Đôi khi sự thay đổi trước đó của một chuỗi, ảnh hưởng sớm đến sự thay đổi của chuỗi khác.
Nếu như không có thông tin như vậy, có thể sử dụng thủ thuật Cross-Correlation và khảo sát hàm
Cross-Correlation- CCF. Đây là hàm chỉ ra tương quan giữa 2 chuỗi, được tính cho những độ trễ
khác nhau. Nghiên cứu CCF của 2 chuỗi chúng ta sẽ tìm được thời đoạn trễ, mà ở đó chúng có tương
quan mạnh nhất. Thủ thuật Cross-Correlation chỉ áp dụng cho chuỗi dừng. Từ đồ thị trong hình 3 rõ
ràng chuỗi sales không dừng.
Sai phân
Phương pháp đơn giản để chuyển một chuỗi thành dừng là lấy sai phân. Trong bảng 1 trình
bày một vài giá trị của chuỗi sales và sai phân bậc 1 và 2. .
Chuỗi
sales
Sai phân bậc 1 Sai phân bậc 2
200.1 – –
199.5 -0.6 –
199.4 -0.1 0.6
198.9 -0.5 -0.4
199.0 0.1 0.6
200.2 1.2 1.1
Bảng 1. Chuỗi sales và sai phân của nó.
Thủ thuật Cross-Correlation
Thủ thuật Cross-Correlation dùng để tính hàm tương quan chéo, nghĩa là xác định tương
quan giữa các giá trị của 2 chuỗi cách nhau một khoảng thời gian nhất định (được gọi là độ trễ).
Bạn hãy chọn trong Menu Graph:
Graph

Time Series
Cross-Correlation…
Hộp thoại Cross-Correlation trình bày trong hình 8.
6
INDEX with SALES
Transforms: difference (1)
Lag Number
76543210-1-2-3-4-5-6-7
CCF
1.0
.5
0.0
5
-1.0
Confidence Limits
Coefficient
Hình 8. Hộp thoại Cross-Correlation
Bạn hãy chọn chuỗi index và sales và đưa chúng vào miền Varables list. Vì các chuỗi không
dừng, nên bạn hãy chọn Difference trong nhóm Transform. Chọn bậc sai phân bằng 1 và nhấp OK.
Kết quả nhận được như hình 9.
Hình 9. Tương quan chéo giữa index và sales.
7
Như bạn nhìn thấy trên đồ thị, phần lớn các hệ số tương quan là nhỏ. Chỉ có 2 hệ số tương
quan khác 0 đáng kể: tương quan âm -0.345 với độ trễ bằng 2, và tương quan dương 0.71 với độ trễ
bằng 3. Lưu ý rằng, đồ thị chỉ ra tương quan khi độ trễ âm, cũng như khi độ trễ dương. Độ trễ âm
nghĩa là chuỗi thứ nhất index xảy ra trước chuỗi sales. Độ trễ dương nghĩa là chuỗi thứ nhất “dẫn
đắt” chuỗi thứ hai. Chúng ta có thể kết luận rằng, index thật sự là chỉ báo phòng ngừa và tốt nhất là
để nó dự báo chuỗi sales trước 3 quan sát.
Tạo chỉ báo
File dữ liệu chứa các giá trị của chuỗi là sales và index được đo trong cùng một thời điểm.

Để dự báo sales, chúng ta cần tạo ra chuỗi, mà mỗi quan sát chứa giá trị index được đo với độ trễ 3
thời đoạn- đó là các giá trị dự báo tốt nhất của sales. Bạn hãy chọn trong Menu Transform:
Transform
Create Time Series…
Hộp thoại Create Time Series (Tạo chuỗi thời gian) trình bày trong hình 10.
Hình 10. Hộp thoại “Tạo chuỗi thời gian”.
Bạn hãy chọn index và nhấp vào mũi tên. Trong khung danh sách New Variables xuất hiện:
index_1 = DIFF(index,1)
Nếu bạn nhấp OK thì một biến mới có tên là index_1 sẽ được tạo ra, là sai phân bậc 1 của
chuỗi index. Để có một phép biến đổi khác, bạn hãy sử dụng nhóm Name and Function:
• Hãy xóa index_1 trong miền Name và sử dụng tên lead3ind, vì chuỗi mới là chỉ báo với độ
trễ 3 thời đoạn.
• Chọn hàm Lag trong danh sách Functions.
8
• Trong miền Order (bậc) chứa giá trị 1. Bạn hãy thay nó bằng 3, để nhận được giá trị của
chuỗi index với độ trễ 3 thời đoạn.
• Nhấp nút Change. Bây giờ trong danh sách New Variables có:
lead3ind=LAG(index,3)
• Nhấp OK và chuỗi thời gian mới sẽ được tạo ra.
5. Hồi qui đơn
Thủ thuật Linear Regression có thể sử dụng dự báo hồi qui. Vì trong giai đoạn luyện tập mọi
thứ vẫn không thay đổi, bạn hãy tiếp tục công việc. Chọn trong Menu Analyze:
Analyze
Regression
Linear…
Hình 11. Thủ thuật hồi qui tuyến tính
Đưa sales vào miền Dependent và lead3ind vào miền Independent(s). Kết quả như hình 12.
9
11238.477 1 11238.477 773.139 .000
1380.936 95 14.536

12619.413 96
Regression
Residual
Total
Model
1
Sum of
Squares df
Mean
Square F Sig.
ANOVA
54.406 5.862 9.281 .000
14.685 .528 .944 27.805 .000
(Constant)
LEAD3IND
Model
1
B Std. Error
Unstandardized
Coefficients
Beta
Standardi
z ed
Coefficien
ts
t Sig.
Coefficients
Hình 12. Hồi qui tuyến tính với Линейная регрессия с ведущим индикатором
sales lead ind= + ×54 4 14 7 3. ( . )
Dự báo nhờ thủ thuật Linear Regression

Transform
Compute…
Đặt tên biến predict vào miền Target Variable của Hộp thoại Compute Variable. Trong
Hộp thoại Numeric Expression đưa vào biểu thức 54.4 + 14.7*lead3ind. Bấm OK để tính giá trị
cho biến mới predict.
Có thể so sánh đồ thị của chuỗi mới predict và chuỗi ban đầu sales. Bạn hãy chọn trong Menu
Data:
Data
Select Cases
và nhấp vào All cases. Đồ thị như hình 13.
1 0
Sequence number
145
137
129
121
113
105
97
89
81
73
65
57
49
41
33
25
17
9

1
280
260
240
220
200
180
SALES
PREDICT
Hình 13. Dự báo bằng hồi qui đơn.
Các giá trị dự báo thể hiện không tồi một chút nào. Với thời đoạn kiểm soát (sau 100 quan sát
đầu tiên), mô hình tạo ra các giá trị nhỏ hơn giá trị thực tế, tuy nhiên dự báo bám theo các giá trị của
chuỗi tương đối tốt.
1 1

×