Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều

Bài báo này xây dựng một giải pháp để xác định trình tự hồi qui trong

việc dự báo hệ thống dữ liệu đa chiều bằng phương pháp phân tích thành phần

chính. Phần ứng dụng dựa vào dữ liệu trên trang Web của Tổng cục Thống kê. Kết

quả cho thấy, việc sử dụng phương pháp phân tích thành phần chính đã đưa ra

trình tự hồi qui chính xác, góp phần nâng cao hiệu quả của dự báo.

pdf 10 trang kimcuc 5740
Bạn đang xem tài liệu "Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều

Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 45, 10 - 2016 99
XÁC ĐỊNH TRÌNH TỰ HỒI QUI 
TRONG VIỆC DỰ BÁO HỆ THỐNG DỮ LIỆU ĐA CHIỀU 
Hà Gia Sơn* 
Tóm tắt: Bài báo này xây dựng một giải pháp để xác định trình tự hồi qui trong 
việc dự báo hệ thống dữ liệu đa chiều bằng phương pháp phân tích thành phần 
chính. Phần ứng dụng dựa vào dữ liệu trên trang Web của Tổng cục Thống kê. Kết 
quả cho thấy, việc sử dụng phương pháp phân tích thành phần chính đã đưa ra 
trình tự hồi qui chính xác, góp phần nâng cao hiệu quả của dự báo. 
Từ khóa: Dự báo, Chuỗi thời gian, Dữ liệu đa chiều, Phân tích thành phần chính. 
1. ĐẶT VẤN ĐỀ 
“Dự báo là dự kiến, tiên đoán về những sự kiện, hiện tượng, trạng thái nào đó 
có thể hay nhất định sẽ xảy ra trong tương lai.” (từ điển Bách khoa). Ở nước 
ngoài, có nhiều công trình nghiên cứu về vấn đề này, đã có một hệ thống lý thuyết 
gồm nhiều phương pháp, qui trình cũng như nhiều mô hình để dự báo tương lai 
như tài liệu [10]. Tài liệu [8] đã phân tích và thăm dò các yếu tố của chuỗi thời 
gian, các mô hình của chuỗi thời gian, quy trình Box-Jenkins dành để dự báo. Tài 
liệu [9] nêu tổng quan về các phương pháp dự báo trong kinh doanh. Trong thời 
gian gần đây, ở trong nước, chúng ta đã quan tâm nhiều hơn tới lĩnh vực dự báo, đã 
có nhiều đề tài các cấp, với những mục đích và cách tiếp cận khác nhau về dự báo 
như các công trình [1-5], [7]. 
Hiện tại, xuất hiện nhiều mô hình dự báo có hiệu quả cao, tuy nhiên, mọi sự vật 
và hiện tượng đều không xuất hiện hay biến đổi đơn độc mà còn chịu tác động của 
những sự việc, hiện tượng khác, chúng phụ thuộc và ảnh hưởng lẫn nhau. Tổng 
hợp các công trình nghiên cứu cho thấy, khi dự báo những bộ dữ liệu thu thập 
được tập hợp thành một bảng lớn (dữ liệu đa chiều), người ta thường dùng mô hình 
phân tích hồi quy tuyến tính để phân tích quan hệ giữa biến phụ thuộc Y với một 
hay nhiều biến độc lập X để tìm sự liên quan giữa các cột (biến) của bảng dữ liệu 
này. Tuy nhiên, trong thực tế, các biến X lại không độc lập mà phụ thuộc lẫn nhau, 
chính vì vậy, cần phải xác định chính xác trình tự đề hồi qui, hay cụ thể hơn, cần 
dự báo biến X nào trước, sau đó, lấy kết quả dự báo của biến này và các biến khác 
để hồi qui ra các biến X, Y tiếp theo. 
Trong bài viết, phần đầu là cơ sở lý thuyết chung và phương pháp phân tích 
thành phần chính, ở mục tiếp theo, tác giả đưa các giải thuật về ứng dụng và phát 
triển phương pháp phân tích thành phần chính để xác định trình tự hồi qui, ứng 
dụng dựa vào dữ liệu trên trang  Kết quả cho thấy, việc sử dụng 
phương pháp phân tích thành phần chính đã đưa ra trình tự hồi qui chính xác, nâng 
cao hiệu quả của dự báo. 
2. NỘI DUNG CẦN GIẢI QUYẾT 
2.1. Xây dựng lý thuyết 
2.1.1. Giả thiết ban đầu 
Trong dự báo, số liệu trong quá khứ và hiện tại quyết định xu hướng vận động 
của các hiện tượng trong tương lai. 
Công nghệ thông tin & Cơ sở toán học cho tin học 
Hà Gia Sơn, “Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều.” 100 
2.1.2. Phương pháp thường sử dụng trong dự báo hệ thống dữ liệu đa chiều. 
 Như đã nói ở trên, dữ liệu đa chiều là một bộ số liệu dạng bảng các giá trị bằng 
số cùng các thứ nguyên hoặc đơn vị đo của nó , đó là những yếu tố định lượng hay 
định tính của một hoặc nhiều biến ngẫu nhiên nào đó. Dự báo hệ thống dữ liệu đa 
chiều là việc xác định các giá trị của bảng này ở thời điểm tương lai. Việc dự báo 
này chia làm 02 giai đoạn: 
Giai đoạn 1: dự báo từng cột của bảng dự liệu này. Đề làm được việc này, 
Theo ([10]), người ta thường dùng các mô hình dự báo định lượng, nó sẽ khắc 
phục được tính chủ quan và cảm tính trong dự báo bằng cách sử dụng các công 
cụ toán học. 
Giai đoạn 2: Theo ([10]), người ta thuờng dùng mô hình hồi quy bội để tìm sự 
liên quan giữa các biến (các cột) trong bảng với nhau để xác định lại các giá trị dự 
báo, nghĩa là liên hệ biến phụ thuộc Y cho trước với nhiều biến độc lập X1, X2, ..., 
Xn. Mô hình có công thức tổng quát như sau: 
Y=  X1 X2 + X3+.nXn +n+1Yt (2.1) 
Nhược điểm của phương pháp này chính là việc coi các biến X1, X2, ..., Xn độc 
lập với nhau, tuy nhiên trong thực tế, chúng lại có sự liên quan với nhau, ví dụ Xk 
tác động vào Xi nhưng ta lại dự báo Xi trước mà không tính tới sự biến động (kết 
quả dự báo) của Xk . Vì vậy, để sử dụng tốt mô hình hồi qui trong dự báo, cần phải 
đưa ra được trình tự để hồi qui, nếu không sẽ dẫn tới việc kết quả dự báo sẽ rất 
thiếu chính xác. 
2.1.3. Phương pháp phân tích thành phần chính 
Dùng kỹ thuật “Phân tích thành phần chính” để xác định, mục đích của kỹ thuật 
này là rút ra thông tin chủ yếu chưa trong bảng dữ liệu bằng cách xây dựng một 
biểu diễn đơn giản hơn, sao cho trong biểu diễn đó, đám mây số liệu thể hiện rõ 
nhất, mà thông tin không sai lạc. Theo [6], thuật toán này như sau: 
 Cho bảng số liệu: 
pnnn
p
p
pn
xxx
xxx
xxx
X
,2,1,
,22,21,2
,12,11,1
,
............
...............
..........
..........
Trong đó, xi,j là giá trị mà biến Xj; j = p,1 ; nhận trên cá thể i; i= n,1 . Để biết 
mối quan hệ giữa các biến, giữa các cá thể cần chuyển chung qua không gian con 
với số chiều ít hơn. Các bước tiến hành như sau: 
-Bước 1: Qui tâm bảng số liệu: Mỗi giá trị thứ i trên cá thể i của Xj đều 
được trừ cho số bình quân jx của biến Xj . Ta được ma trận qui tâm X =  npjix , . 
-Bước 2: Tính ma trận phương sai- hiệp phương sai : XX
n
M '
1
0 (2.2) 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 45, 10 - 2016 101
-Bước 3: Tìm các giá trị riêng: pq  ...............321 (q< 
p) bằng cách giải phương trình: 00 IM  (2.3) 
-Bước 4: Tìm trục chính bằng cách giải phương trình 00 jj uIM  (2.4) 
uj = (u1j, u2j , .....upj )’ là véc tơ riêng (đơn vị) ứng với giá trị riêng j ( j 
= q,1 < p). Trục chính thứ nhất và thứ hai tạo nên mặt phẳng chính thứ nhất  
- Bước 5: Hình chiếu của cá thể i trên trục chính j là: zij = x’i ui (2.5) 
- Bước 6: Tìm thành phần chính: thứ j trong Rn ( qj ,1 ) theo công thức: 
j
j
j
j
j
Xu
n
Xu
v


1
1
 (2.6) 
-Bước 7: Tái lập các điểm – biến: hình chiếu của điểm biến Xj trên thành 
phần chính thứ k ( k = q,1 ) là X’j vk. Dưới dạng tường minh, ta có: 
kkjkj uvX ,' (2.7) 
2.1.4.Ứng dụng phương pháp phân tích thành phần chính để xác định trình tự 
hồi qui 
Giả sử ta đã có tất cả các hình chiếu của các biến trên thành phần chính, khi đó, 
theo [6] (tr 103), nếu coi biến Xi là biến cần giải thích, và biến Xk là biến giải thích 
thì Xk tác động vào Xi khi và chỉ khi góc giữa 2 véc tơ Xk, Xi nhỏ hơn hoặc bằng 
900 và iX > kX ( iX - độ dài của véc tơ Xi, và kX là độ dài của véc tơ Xk). 
Lúc này, ta đã biết được tọa độ của các véc tơ , nên có thể xác định được chúng 
theo công thức: 
 22 iii yxX (2.8) 
( xi, yi là tọa độ của Xi trên mặt phẳng tạo bởi 2 trục chính). Góc giữa 02 véc tơ 
Xk, Xi được xác định bởi công thức: 
2222 .
),(
kkii
kiki
ki
yxyx
yyxx
XXCos
 (2.9) 
Vì thế, ý tưởng của thuật toán để xác định trình tự hồi qui là dùng phương pháp 
phân tích thành phần chính để đưa các biến (các cột) về 1 mặt phẳng của 02 thành 
phần chính, sau đó sắp xếp theo độ lớn của các biến, và xem xét các góc giữa 02 
biến để phân tích sự liên quan giữa chúng, khi đó, giả sử như biến Xi là biến cần 
giải thích, ta sẽ tìm được các biến Xk1, Xk2 Xkn giải thích cho biến Xi, sử dụng 
kết quả dự báo, phương pháp bình phương tối thiểu để giải phương trình: Xi =  
Xk1 Xk2 + Xk3+.nXkn +n+1Xi . Lập lại như vậy cho tới khi hết bảng 
dữ liệu. 
Nếu j là nghiệm riêng của X’X 
Nếu j là nghiệm riêng của XX
n
M '
1
0 
Công nghệ thông tin & Cơ sở toán học cho tin học 
Hà Gia Sơn, “Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều.” 102 
2.2. Ví dụ ứng dụng 
Từ dữ liệu của tổng cục thống kê tại địa chỉ  có bảng như sau: 
Bảng 1. Biến động của thu nhập quốc dân, dân số, vốn đầu tư của Việt Nam. 
Năm 
Thu nhập Dân số Vốn đầu tư 
Năm 
Thu 
nhập 
Dân số Vốn đầu tư 
(1) (2) (3) (1) (2) (3) 
1995 228677 71996 72447 2005 897222 82392 343135 
1996 269654 73157 87394 2006 1038755 83311 404712 
1997 308600 74307 108370 2007 1211806 84219 532093 
1998 352836 75456 117134 2008 1567964 85119 616735 
1999 392693 76597 131171 2009 1731221 86025 708826 
2000 435319 77631 151183 2010 2075578 86947 830278 
2001 474855 78621 170496 2011 2660076 87860 924495 
2002 527056 79538 200145 2012 3115227 88809 1010114 
2003 603688 80467 239246 2013 3430668 89760 1094542 
2004 701906 81436 290927 2014 3745515 90729 1220724 
(ĐVT của dân số: ngàn người, ĐVT của thu nhập và vốn đầu tư: tỷ đồng). 
Ta hãy xem xét xem 3 đại lượng này tác động vào nhau như thế nào. Từ nội 
dung 2.1.2 và 2.1.3 ta sẽ xây dựng các thuật toán sau: 
2.2.1. Qui tâm bảng số liệu (bước 1 trong mục 2.1.2) - Thuật toán 1 
Ta xác định số bình quân jx của biến Xj, sau đó, xác định ma trận qui tâm bằng 
cách mỗi giá trị thứ i trên cá thể i của Xj đều được trừ cho số bình quân jx . 
 Input: mảng dữ liệu mangdl gồm 03 cột (như Bảng 1 trên) 
 Output: ma trận qui tâm matranX 
Xác định x1tb, x2tb, x3tb //x1tb, x2tb, x3tb là số bình quân của các cột 1,2,3 
Xác định matranX//matranX la ma tran qui tam 
2.2.2. Tính ma trận phương sai- hiệp phương sai theo công thức (2.2) - Thuật toán 2 
Xác định ma trận quán tính bằng tích của ma trận qui tâm và mà trận chuyển vị 
của ma trận qui tâm. Tiếp tục xác định ma trận phương sai, hiệp phương sai bằng 
thương của ma trận quán tính với n (số phần tử). 
 Input: ma trận qui tâm (matranX - đã xác định ở bước 1) 
 Output: ma trận phương sai, hiệp phương sai (matranMxx) 
for i=1 to 3 
for j=1 to n matranXcv[i,j]=matranX[j,i] //matranXcv - ma tran chuyen vi 
Tìm ma trận quán tính 
//matranXX là Ma tran quan tinh , bang tich cua matranXcv va matranX 
Tìm ma trận matranMxx 
 // matranMxx -Ma tran phuong sai, hiep phuong sai bang ma tran quan tinh chia 
cho n 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 45, 10 - 2016 103
2.2.3. Tìm các giá trị riêng bằng cách giải phương trình (2.3) – Thuật toán 3 
Sử dụng thuật toán 1 và thuật toán 2, áp dụng bảng 1, ta sẽ tìm được ma trận 
phương sai, hiệp phương sai: 
94.321353730725 .901935481159 09.624033680799 
 .901935481159 231072242.3 .615614397002 
 09.624033680799 .625614397002 090.961227055586
matranMxx 
 Từ đó, ta phải tìm giá trị riêng từ định thức : 
0
 -94.321353730725 .901935481159 09.624033680799 
 .901935481159 - 231072242.3 .615614397002 
 09.624033680799 .625614397002 - 090.961227055586



 (2.10) 
Khai triển (2.10), ta sẽ có 1 phương trình bậc 3: 
-3 + 1362459730927.615.2 -3.41154321560627E+21. + 
8.41790339265994E+27 = 0 
 Sử dụng phương pháp Cardano để tìm nghiệm phương trình này, ta sẽ có 3 
giá trị là : 1= 2469913.036 , 2=2509948729.001, 3=1359951164797.464 
 Tiếp tục, sẽ dùng thuật toán sau để xác định trục chính. 
 Input: ma trận phương sai, hiệp phương sai matranMxx ( đã có trong 
bước 2) 
 Output: trục chính l1, l2 
Giải phương trình bậc 3 bằng phương pháp Cardano để xác định x1, x2, x3 
l1=x1;l2=x2; l3=x3; max=x1+x2; 
 if max<x2+x3 begin max=x2+x3 ; l1=x2; l2=x3 end; 
if max<x1+x3 begin l1=x2; l2=x3 end 
Sử dụng thuật toán trên ta sẽ tìm được 1=2509948729.001, 
2=1359951164797.464, 3= 2469913.036 tỷ lệ đóng góp quán tính lớn nhất lên 
tới 99,99%. 
2.2.4. Tìm các vec tơ riêng - Thuật toán 4 
Thay các giá trị 1, 2 đã tìm được bằng thuật toán 3 vào công thức (2.10), lần 
lượt giải các hệ phương trình : 
0
0
0
 -94.321353730725 .901935481159 09.624033680799 
 .901935481159 - 231072242.3 .615614397002 
 09.624033680799 .625614397002 - 090.961227055586
31
21
11
u
u
u



 Input: ma trận phương sai, hiệp phương sai matranMxx ( đã có trong bước 
2), 1, 2 , 3 ( đã có trong bước 3) 
 Output: mảng vecter chứa tọa độ các vectơ riêng 
xdtrucchinh(l2) ;mangvecter[1,1]=k ; 
mangvecter[2,1]=u21;mangvecter[3,1]=u31 ; 
xdtrucchinh(l1) ;mangvecter[1,2]=k ;mangvecter[2,2]=u21 ;mangvecter[3,2]=u3
1 ; 
xdtrucchinh(l3) ;mangvecter[1,3]=k ;mangvecter[2,3]=u21 ; 
mangvecter[3,3]=u31 ; 
procedure xdtrucchinh( lamda:) 
Công nghệ thông tin & Cơ sở toán học cho tin học 
Hà Gia Sơn, “Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều.” 104 
for i=1 to 3 
for j=1 to 3 
if i=j then matrantg[i,j]=matranMxx[i,j]-lamda else matrantg[i,j]=matranMxx[i,j] 
u21=-matrantg[1,1]/matrantg[1,2]; 
u31=(matrantg[3,2]*matrantg[1,1])/(matrantg[2,1]*matrantg[3,3]) ; 
k=1/SQRT(1+u21^2+u31^2) ; u21=k*u21 ; u31=k*u31 
return 
2.2.5. Tái lập các điểm cá thể và tìm các thành phần chính - Thuật toán 5 
Hình chiếu của cá thể i trên trục chính j là zij = x’i ui , công thức (2.5), và (2.6) 
 Input: ma trận qui tâm matranX – đã xác định ở bước 1, mảng vecter chứa 
tọa độ các vectơ riêng mangvecter- đã xác định ở bước 4 
Output: xu1, xu2 là mảng chứa tọa độ của các cá thể trên 2 trục chính 
 for i=1 to n 
 for j=1 to 3 begin 
 xu1[i]=xu1[i]+MatranX[i,j]*mangvecter[j,1]/SQRT(n*l2) 
 xu2[i]=xu2[i]+MatranX[i,j]*mangvecter[j,2]/SQRT(n*l1) 
end; 
2.2.6. Tái lập các điểm biến - Thuật toán 6 
Chia mọi giá trị ma trận qui tâm matranX cho n
jX
 (trong đó, 
jX
 là độ lệch 
chuẩn của cột j) sẽ được ma trận mới, sau đó xác định ma trận chuyển vị của ma 
trận này (gọi là matranY), hình chiếu của các biến trên trục 1 sẽ bằng tích của 
matranY với ma trận xu1 đã xác định ở thuật toán 5, đây chính là ma trận kết quả 
(matrankq), làm tương tự với hình chiếu các biến trên trục 2, ta sẽ được tọa độ của 
3 biến thu nhập, dân số và vốn đầu tư, tính độ dài của 3 vectơ này theo công thức 
(2.8). Thuật toán như sau: 
 Input: matranX, mangdl (đã xác định ở thuật toán 1), xu1, xu2 (xác định ở 
thuật toán 5) 
 Output: matrankq chứa tọa độ của các biến trên 2 trục chính 
 i=1;j=1; xtb=0; do while true 
 begin 
 begin xtb=xtb+matranX[i,j]; i=i+1; if i=n+1 begin tb[j]=xtb/n; xtb=0; 
i=1; j=j+1 
end; 
 if j>3 break end; i=1; j=1; s=0; 
do while true begin 
s=s+(matranX[i,j]-tb[j])^2; i=i+1; 
if i=n+1 then begin s=s/n; dl[j]=SQRT(s); s=0; i=1; j=j+1; end; if j>3 then 
breck; 
 end 
 for i=1 to n 
 for j=1 to 3 matranX[i,j]=matranX[i,j]/(dl[j]*SQRT(n)) 
for i=1 to 3 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 45, 10 - 2016 105
for j=1 to n matranY[i,j]= matranX[j,i] 
 for i=1 to 3 
 for j=1 to n begin 
 matrankq[i,1]=matrankq[i,1]+xu1[j]*matranY[i,j]; 
 matrankq[i,2]=matrankq[i,2]+xu2[j]*matranY[i,j]; 
matrankq[i,3]=SQRT(matrankq[i,1]^2+matrankq[i,2]^2); 
 end 
2.2.7. Xác định trình tự hồi qui-thuật toán 7 
Thuật toán tìm góc và sự phụ thuộc giữa các véc tơ xác định bởi (2.9) như sau: 
 Input: ma trận kết quả (đã xác định bởi thuật toán 6) 
Output: Góc giữa các vectơ và kết quả tác động 
for i=1 to 3 
 for k=i+1 to 3 
begin 
kos=(matrankq[i,1]*matrankq[k,1]+matrankq[i,2]*matrankq[k,2])
/ 
(matrankq[i,3]+matrankq[k,2]) 
goc=ACOS(kos)*180/3.14; 
if matrankq[i,3]>matrankq[k,3] AND goc<=90 then print ("Cot ",k," tac dong 
vao cot",i); end; 
 Kết quả tính toán của bảng 1 như sau: 
Tên biến 
Các kết quả tính toán So sánh giữa các góc. 
Tọa độ x Tọa độ y Độ lớn Thu nhập Dân số Vốn đầu tư 
Thu nhập 0.044929 0.10607 0.11519 - 86.97308 86.65440 
Dân số 0.041701 0.08186 0.09187 86.97308 - 87.02170 
Vốn đầu tư 0.044685 0.10230 0.11163 86.65440 87.02170 - 
Nhìn vào bảng này, ta thấy vectơ Thu nhập có độ lớn cao nhất, các góc so với 
véc tơ Dân số, véc tơ Vốn đầu tư đểu nhỏ hơn 900, vì vậy, Thu nhập quốc gia phụ 
thuộc vào Dân số và Vốn đầu tư. Lý luận tương tự, Vốn đầu tư sẽ phụ thuộc vào 
Dân số. Trình tự của hồi qui, thì việc đầu tiên, sẽ hồi qui Vốn đầu tư theo Dân số, 
sau đó, mới hồi qui tiếp Thu nhập theo Dân số và Vốn đầu tư. 
2.3. Phát triển thuật toán phân tích thành phần chính 
Xét tiếp bảng sau (là sự mở rộng của bảng 1, trong đó, Vốn đầu tư= 
VDTNN+VDTTN+VDTkhac): 
Bảng 2. Biến động của thu nhập quốc dân (TNQD), dân số (Danso), 
vốn đầu tư nước ngoài (VDTNN), vốn đầu tư trong nước (VDTTN), 
vốn đầu tư khác (VDTK) của Việt Nam. 
Năm 
TNQG Danso VDTNN VDTTN VDTKhac 
Năm 
TNQG Danso VDTNN VDTTN VDTKhac 
(1) (2) (3) (4) (5) (1) (2) (3) (4) (5) 
1995 228.677 71.995,5 30.447 20.000 22.000 2005 897.222 82.392,1 161.635 130.398 51.102 
1996 269.654 73.156,7 42.894 21.800 22.700 2006 1.038.755 83.311,2 185.102 154.006 65.604 
Công nghệ thông tin & Cơ sở toán học cho tin học 
Hà Gia Sơn, “Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều.” 106 
1997 308.600 74.306,9 53.570 24.500 30.300 2007 1.211.806 84.218,5 197.989 204.705 129.399 
1998 352.836 75.456,3 65.034 27.800 24.300 2008 1.567.964 85.118,7 209.031 217.034 190.670 
1999 392.693 76.596,7 76.958 31.542 22.671 2009 1.731.221 86.025,0 287.534 240.109 181.183 
2000 435.319 77.630,9 89.417 34.594 27.172 2010 2.075.578 86.947,4 316.285 299.487 214.506 
2001 474.855 78.620,5 101.973 38.512 30.011 2011 2.660.076 87.860,4 341.555 356.049 226.891 
2002 527.056 79.537,7 114.738 50.612 34.795 2012 3.115.227 88.809,3 406.514 385.027 218.573 
2003 603.688 80.467,4 126.558 74.388 38.300 2013 3.430.668 89.759,5 441.924 412.506 240.112 
2004 701.906 81.436,4 139.831 109.754 41.342 2014 3.745.515 90.728,9 486.804 468.513 265.407 
Nhược điểm của phương pháp này nằm ở thuật toán 3, nếu bảng dữ liệu có n 
cột, sẽ dẫn tới việc giải phương trình đa thức n bậc (như trường hợp bảng 2-5 bậc). 
Ta sẽ qui về việc so sánh 2 vectơ xem chúng có phụ thuộc nhau hay không, các véc 
tơ khác làm tương tự. Khó khăn ở đây là các mặt phẳng chính khác nhau, nên độ 
lớn của các vectơ khác nhau, dẫn tới không thể so sánh được. Để giải quyết điều 
này, ta sẽ sử dụng 1 vectơ (ví dụ cột đầu tiên) làm đơn vị và qui đổi sang các véc tơ 
khác. Sau đó, dùng 1 mảng các bản ghi để nhập các thông số đã tính được (gồm 
các trường: cot-thứ tự của cột dữ liệu, cotpt-các cột tác động lên cột dữ liệu nay, 
dodai- độ dài của véc tơ so với véc tơ 1, stt- trình tự hồi qui). Thuật toán như sau: 
Input : bảng dữ liệu 2 -mangdl 
Output: mảng kết quả ketqua[5] 
 for i1=1 to 5 
 for k1=2 to 5 if i1<k1 then 
 begin x1tb=0; x2tb=0; 
 for i=1 to n 
begin 
 x1tb=x1tb+mangdl[i,i1]; x2tb=x2tb+mangdl[i,k1]; 
end; 
 x1tb=x1tb/n; x2tb=x2tb/n; 
for i=1 to n 
for j=1 to 2 
begin 
matranX[i,1]=mangdl[i,i1]-x1tb; matranX[i,2]=mangdl[i,k1]-x2tb; 
 end; 
//Áp dụng các thuật toán 2,3,4,5,6 ở mục 2.2 trên 
 Thuật toán 2; Thuật toán 3; Thuật toán 4; Thuật toán 5; Thuật toán 6; 
 if i1=1 then 
begin 
dodaid =matrankq[2,3]/matrankq[1,3]; ketqua[i1].cot=k1; 
ketqua[i1].dodai=dodaid; 
end else 
begin 
kos=(matrankq[1,1]*matrankq[2,1]+matrankq[1,2]*matrankq[2,2])/(sqrt(matran
kq[1,1]^2+ matrankq[1,2]^2)+sqrt(matrankq[2,1]^2+matrankq[2,2]^2)); 
goc=acos(kos)*180/3.14; 
if (gocmatrankq[2,3]) then 
Nghiên cứu khoa học công nghệ 
Tạp chí Nghiên cứu KH&CN quân sự, Số 45, 10 - 2016 107
Ketqua[i1]. cotpt =cotpt+str(k1) else Ketqua[k1]. cotpt =cotpt+str(i1) 
end; 
Sắp xếp mảng ketqua tăng dần theo dodai 
For i=1 to 5 ketqua[i].stt=i; 
Sử dụng thuật toán này, áp dụng vào bảng 2, ta có kết quả sau: 
cot dodai cotpt stt 
5 0,918866376 2 1 
4 0,951728567 2,5 2 
3 0,971769101 2,4,5 3 
2 0,999999999 4 
1 1,000000000 2,3,4,5 5 
3. KẾT LUẬN 
Trong nghiên cứu thực tế, quy trình phổ biến được các nhà phân tích chấp nhận 
là các biến độc lập với nhau. Tuy nhiên, thực tế chúng lại có sự phụ thuộc, tác 
động lên nhau. Bài báo này đã tổng hợp được các tài liệu để có cái nhìn tổng quan 
về dự báo, các phương pháp thường dùng trong dự báo, đưa ra giải pháp xây dựng 
một giải thuật áp dụng phương pháp phân tích thành phần chính để đưa ra trình tự 
hồi qui, xác định chính xác được quan hệ phụ thuộc giữa các biến, thông qua đó sẽ 
nâng cao chất lượng dự báo. Bài báo này là một hướng nghiên cứu mở, có thể tiếp 
tục phát triển các giải thuật phối hợp các mô hình bằng phương pháp khác nhau để 
nâng cao hiệu quả dự báo. 
Lời cảm ơn: Tác giả xin chân thành cám ơn tập thể cán bộ, nhân viên Viện CNTT, và đặc biệt 
là 02 TS Ngô Trọng Mại và Tôn Thiện Chiến đã giúp đỡ tận tình về mặt ý tưởng cũng như khi thực 
hiện chi tiết bài báo. 
TÀI LIỆU THAM KHẢO 
[1]. Đỗ Quang Giám, Vũ Thị Hân, “Xây dựng mô hình Arima cho dự báo khách 
du lịch quốc tế đến Việt nam”, Tạp chí Khoa học và Phát triển: Tập 10, số2: 
364 - 370, Trường ĐH Nông Nghiệp Hà Nội, 2012. 
[2]. Vũ Thị Gương, “Kỹ thuật khai phá dữ liệu chuỗi thời gian áp dụng trong dự 
báo chứng khoán”, Luận án Thạc sĩ khoa học CNTT, Học viện Bưu chính 
Viễn Thông, Hà Nội, 2012. 
[3]. Nguyễn Trung Hòa, “Một số thuật toán mô phỏng và phân tích chuỗi thời 
gian”, Luận án Tiến sỹ Toán ứng dụng, trường ĐHBK Hà Nội, Hà Nội, 2007. 
[4]. Nguyễn Khắc Hiếu, "Mô hình ARIMA và dự báo lạm phát 6 tháng cuối năm 
2014", Tạp chí Kinh Tế và Dự Báo số 16, tháng 8-2014. 
[5]. Phạm Văn Khánh, “Phân tích thống kê dự báo và mô phỏng một số chuỗi thời 
gian ”, Luận án Tiến sỹ Toán ứng dụng, ĐH Quốc gia Hà Nội, Hà Nội, 2008. 
[6]. Tô Cẩm Tú, Nguyễn Huy Hoàng, “Phân tích số liệu nhiều chiều”, Nhà xuất 
bản Khoa học và Kỹ thuật. 
[7]. Võ Văn Tài, “Dự báo sản lượng lúa Việt Nam bằng các mô hình toán học”, 
Tạp chí Khoa học 2012:23b 125-134. 
Dựa vào bảng kết quả, ta thấy cột 5 
(VDTkhac) phụ thuộc vào cột 2 (Danso), tương 
tự như vậy Thu nhập quốc dân (cột 1) phụ 
thuộc vào 2,3,4,5 - tất cả các cột. 
Vậy khi hồi qui, ta sẽ làm cột 5 trước, sau 
đó sẽ đến cột 4,3,1 còn cột 2 (Danso) không 
phải hồi qui, đó chính là trình tự hồi qui nêu 
trong cột STT. 
Công nghệ thông tin & Cơ sở toán học cho tin học 
Hà Gia Sơn, “Xác định trình tự hồi qui trong việc dự báo hệ thống dữ liệu đa chiều.” 108 
[8]. Michael Falk, Frank Marohn, “A First Course on Time Series Analysis - 
Examples with SAS”, by Chair of Statistics, University of Wurzburg, 2012. 
[9]. Michael K. Evans, “Practical Bususiness Forecasting”, Blackwell Publishers 
Ltd, a Blackwell Publishing company. Bodkkowmin, Cornwall, 2002. 
[10]. N. Gujarati, “Basic Econometrics”, Fourth Edition - The McGraw−Hill 
Companies, 2004. 
ABSTRACT 
 DETERMINING THE ORDER OF RECURSION IN FORECASTING 
THE MULTI-DIMENTIONAL DATABASE SYSTEM 
 This paper presents an algorithm to determine the order of recursion in 
forecasting the multi-dimentional database system. The algorithm applies 
the analysis method with principle parts. The application of the algorithm 
uses data in the Website of General Statistics Office (//gso.gov.vn) .The 
method brings in an exact order of recursion, and improves the effect of 
forecast problem. 
Key words: Forecast, Time series, Multidimentional data, Principe parts analysis. 
Nhận bài ngày 03 tháng 7 năm 2016 
Hoàn thiện ngày 19 tháng 10 năm 2016 
Chấp nhận đăng ngày 26 tháng 10 năm 2016 
Địa chỉ: Trường Đại học Công nghiệp Việt-Hung. 
 *Email : hagiason@gmail.com 

File đính kèm:

  • pdfxac_dinh_trinh_tu_hoi_qui_trong_viec_du_bao_he_thong_du_lieu.pdf