ÁP DỤNG CÁC KỸ THUẬT PHÂN LỚP DỮ LIỆU, HỒI QUY ĐỂ DỰ BÁO SỐ LIỆU SẢN XUẤT KINH DOANH CHO VNPT
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Hoàng Tuấn Ninh
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Hoàng Tuấn Ninh
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan nội dung bản luận văn chưa từng được công bố hay xuất bản dưới bất kỳ hình thức nào và cũng không được sao chép từ bất kỳ một công trình nghiên cứu nào
Toàn bộ ứng dụng thử nghiệm đều do tôi tự thiết kế và xây dựng
Nếu sai tôi xin hoàn toàn chịu trách nhiệm
Hà Nội, ngày tháng năm 2009
Người thực hiện đề tài
Hoàng Tuấn Ninh
Trang 4LỜI CẢM ƠN
Tôi xin chân thành cảm ơn thầy giáo TS Đỗ Văn Thành,Trung tâm Thông tin và Dự báo Kinh tế - Xã hội, Bộ Kế hoạch và Đầu tư đã tận tình hướng dẫn
và có nhiều chỉ dẫn quí báu cho tôi hoàn thành khoá luận này
Tôi xin chân thành cảm ơn các thầy, cô trong Đại học Công nghệ cũng như các thầy cô giảng dạy ở Đại học Quốc Gia Hà Nội đã truyền đạt cho tôi những kiến thức bổ ích trong thời gian học tập tại trường
Tôi cũng xin gửi lời cảm ơn tới các chuyên viên của Tập đoàn Bưu chính Viễn thông Việt Nam đã cung cấp số liệu cho tôi để thực hiện luận văn này
Cuối cùng, tôi xin bày tỏ lòng biết ơn đến gia đình và bạn bè, những người đã giúp đỡ, động viên tôi rất nhiều trong suốt quá trình học tập và làm luận văn
Do thời gian và kiến thức có hạn, khoá luận không tránh khỏi những thiếu sót nhất định Tôi rất mong nhận được sự góp ý của thầy cô giáo và các bạn
Tôi xin chân thành cảm ơn !
Trang 5TÓM TẮT NỘI DUNG LUẬN VĂN
Luận văn được trình bày làm 3 chương chính với các nội dung như sau: Chương I: Khảo cứu các phương pháp dự báo số liệu
Chương này giới thiệu các kiến thức tổng quan về dự báo và giới thiệu một số phương pháp dự báo định lượng chính như: Hồi quy tuyến tính, Hồi quy phi tuyến, phương pháp chuỗi thời gian, phương pháp phân lớp dữ liệu…
Chương II: Dự báo định lượng bằng phương pháp mạng nơron nhân tạo Chương này tập trung giới thiệu về việc dự báo định lượng bằng phương pháp mạng nơron nhân tạo, thuật toán lan truyền ngược sai số và phương pháp thiết kế mạng nơron nhân tạo
Chương III: Dự báo kết quả hoạt động SXKD của VNPT bằng phương pháp mạng nơron nhân tạo
Chương này sẽ trình bày bài toán dự báo kết quả thực hiện SXKD của VNPT, đề xuất giải pháp dự báo định lượng để giải quyết bài toán, sau đó ứng dụng phương pháp mạng nơron nhân tạo để dự báo kết quả Cuối cùng là kết quả thử nghiệm với số liệu SXKD của VNPT, đánh giá kết quả và một số đề xuất, khuyến nghị
Trang 6MỤC LỤC
MỤC LỤC iv
DANH SÁCH HÌNH VẼ vi
DANH SÁCH BẢNG BIỂU vii
BẢNG THUẬT NGỮ viii
MỞ ĐẦU ix
CHƯƠNG 1 KHẢO CỨU CÁC PHƯƠNG PHÁP DỰ BÁO VỀ HOẠT ĐỘNG SẢN XUẤT KINH DOANH DOANH NGHIỆP 11
1 Tổng quan các phương pháp dự báo 11
1.3 Dự báo định lượng bằng các phương pháp hồi quy 16
1.3.1.Hồi quy tuyến tính và hồi quy bội 16
1.1.2 Hồi quy phi tuyến tính 17
1.4 Dự báo số liệu bằng các phương pháp chuỗi thời gian 18
1.4.1 Khái niệm chuỗi thời gian 18
1.4.2 Phân tích, dự báo chuỗi thời gian 19
1.4 Dự báo bằng phương pháp phân lớp dữ liệu 21
1.4.1 Phương pháp phân lớp dữ liệu 21
1.4.2 Độ chính xác phân lớp 21
CHƯƠNG 2 DỰ BÁO ĐỊNH LƯỢNG BẰNG PHƯƠNG PHÁP MẠNG NƠRON NHÂN TẠO 24
2.1 Mạng nơron nhân tạo 24
1) Khái quát về mạng nơron 24
2.2 Mô hình của mạng nơron nhân tạo 25
2.4 Thuật toán lan truyền ngược sai số 30
2.5 Thiết kế mạng nơron 32
1) Bước 1: Lựa chọn biến 33
2) Bước 2: Thu thập dữ liệu 34
3) Bước 3: Tiền xử lý dữ liệu 34
4) Bước 4: Xác định tập huấn luyện, tập kiểm tra và đánh giá 37
5) Bước 5: Xác định mô hình mạng nơron 38
6) Bước 6: Xác định hàm đánh giá sai số 43
7) Bước 7: Huấn luyện mạng nơron 43
8) Bước 8: Thực thi 48
CHƯƠNG 3 DỰ BÁO KẾT QUẢ HOẠT ĐỘNG SXKD CHO VNPT BẰNG PHƯƠNG PHÁP MẠNG NƠRON NHÂN TẠO 50
Trang 73.1 Xác định bài toán dự báo kết quả hoạt động sản xuất kinh doanh của VNPT
50
3.2 Xác định hệ thống chỉ tiêu cần được phân tích, dự báo về kết quả SXKD 50
3.2.1 Phân tích quy trình nghiệp vụ báo cáo số liệu tại VNPT 50
3.2.2 Xác định hệ thống chỉ tiêu cần được phân tích và dự báo 52
3.3 Giải pháp dự báo định lượng kết quả SXKD của VNPT 58
3.3.1 Mô hình tổng thể hệ thống thông tin phục vụ dự báo định lượng 58
3.3.2 Giới thiệu tập số liệu và vấn đề tiền xử lý số liệu 61
3.3.3 Phương pháp mạng nơrontrong dự báo số liệu SXKD tại VNPT 62
3.3.4 Phần mềm công cụ hỗ trợ dự báo 63
3.4 Ứng dụng mạng Nơron để dự báo số liệu SXKD cho VNPT 72
3.4.1 Xác định các biến dự báo 72
3.4.2 Thu thập dữ liệu 72
3.4.3 Tiền xử lý dữ liệu 72
3.4.4 Trích chọn dữ liệu – Xây dựng tập huấn luyện 74
3.4.5 Xác định mô hình mạng nơron 76
3.4.6 Xác định hàm đánh giá sai số 79
3.4.7 Huấn luyện mạng nơ ron 79
3.4.8 Dự báo số liệu 81
3.5 Kết quả thử nghiệm 82
a Thử nghiệm với số liệu điện thoại cố định 83
b Thử nghiệm với dữ liệu mạng Internet 86
c Thử nghiệm với dữ liệu mạng di động 87
3.6 Thiết kế Phần mềm dự báo số liệu SXKD cho VNPT 88
3.6.1 Sơ đồ phân rã chức năng 88
3.6.2 Biểu đồ ngữ cảnh 88
3.6.3 Sơ đồ phân rã chức năng 89
3.6.4 Sơ đồ quan hệ 90
3.6.5 Thiết kế dữ liệu logic 91
3.6.6 Thiết kế chức năng xem số liệu 95
3.6.7 Thiết kế chức năng xây dựng mô hình 96
3.6.8 Thiết kế chức năng dự báo số liệu 96
3.6.9 Thiết kế chức năng Cập nhật tập huấn luyện 97
KẾT LUẬN 98
TÀI LIỆU THAM KHẢO 100
Trang 8DANH SÁCH HÌNH VẼ
Hình 1. Các phương pháp dự báo hoạt động SXKD doanh nghiệp 16
Hình 2. Đánh giá độ chính xác của bộ phân lớp bằng phương pháp holdout 22
Hình 3. Mô hình phi tuyến của một nơron 26
Hình 4. Kết quả biến đổi afine của ngưỡng 27
Hình 5. Hai mô hình phi tuyến của nơron 28
Hình 6. Chuyển đổi logarit của số liệu buôn bán lúa gạo theo tháng 36
Hình 7. Phương pháp kiểm tra cửa sổ trượt 38
Hình 8. Hai phương pháp chia tỉ lệ thông dụng trên tập dữ liệu S&P500 42
Hình 9. Đồ thị lỗi của quá trình huấn luyện và kiểm tra mạng nơron 45
Hình 10. Giản đồ biểu diễn một mặt phẳng lỗi của mạng nơron 47
Hình 11. Mô hình Hệ thống dự báo số liệu 58
Hình 12. Mô hình Trích chọn dữ liệu 59
Hình 13. Mô hình Làm sạch, chuẩn hóa dữ liệu 60
Hình 14. Xây dựng mô hình dữ liệu 60
Hình 15. Mô hình Dự báo giá trị mới 61
Hình 16. Màn hình chương trình YALE 64
Hình 17. Mô hình xử lý một cây toán tử của Yale 69
Hình 18. Màn hình chương trình WEKA 70
Hình 19. Cấu trúc kho dữ liệu SXKD của VNPT 73
Hình 20. Biểu đồ ngữ cảnh Hệ thống Dự báo số liệu 89
Hình 21. Sơ đồ quan hệ dữ liệu của Hệ thống Dự báo số liệu 90
Hình 22. Biểu đồ luồng dữ liệu cho chức năng xem số liệu 95
Hình 23. Biểu đồ luồng dữ liệu cho chức năng xây dựng mô hình 96
Hình 24. Biểu đồ luồng dữ liệu cho chức năng dự báo số liệu 96
Hình 25. Biểu đồ luồng dữ liệu cho chức năng Cập nhật tập huấn luyện 97
Trang 9DANH SÁCH BẢNG BIỂU
Bảng 1. So sánh YALE và WEKA 71
Bảng 2. Kết quả dự báo chỉ tiêu m420 tháng 8 từ số liệu tháng 7 83
Bảng 3. Kết quả dự báo chỉ tiêu m420 tháng 10 từ số liệu tháng 7 83
Bảng 4. Kết quả dự báo chỉ tiêu m420 tháng 9 từ số liệu tháng 7 83
Bảng 5. Kết quả dự báo chỉ tiêu m410 tháng 8 từ số liệu tháng 7 83
Bảng 6. Kết quả dự báo chỉ tiêu m410 tháng 9 từ tháng 7 84
Bảng 7. Kết quả dự báo chỉ tiêu m410 tháng 10 từ tháng 7 84
Bảng 8. Kết quả dự báo chỉ tiêu m425 tháng 8 từ tháng 7 84
Bảng 9. Kết quả dự báo chỉ tiêu m425 tháng 9 từ tháng 7 84
Bảng 10. Kết quả dự báo chỉ tiêu m425 tháng 10 từ tháng 7 85
Bảng 11. Kết quả dự báo chỉ tiêu m425 tháng 11 từ tháng 7 85
Bảng 12. Kết quả dự báo chỉ tiêu m425 tháng 12 từ tháng 7 85
Bảng 13. Độ chính xác trung bình theo chu kỳ 86
Bảng 14. Độ chính xác trung bình theo chỉ tiêu 86
Trang 10BẢNG THUẬT NGỮ
Moving Average
Tích hợp trung bình trượt tự hồi qui
Integrated Moving Average
Tích hợp trung bình trượt tự hồi qui theo mùa vụ
Telecomunications Coporation
Tập đoàn Bưu chính Viễn thông Việt Nam
Trang 11
MỞ ĐẦU
Trong nền kinh tế tri thức, ưu thế cạnh tranh luôn thuộc về những doanh nghiệp nắm bắt đầy đủ, kịp thời và khai thác có hiệu quả thông tin Các doanh nghiệp thành công trên thế giới đều đã và đang không ngừng đầu tư cho công cụ quản lý tri thức của mình ở nhiều cấp độ khác nhau, ở mức thấp là các công cụ báo cáo, phân tích tình hình tài chính… dựa vào thông tin từ phần mềm kế toán
và ở mức độ cao là ứng dụng công nghệ Khai phá dữ liệu nhằm khai thác các kho dữ liệu giúp nhà quản lý phân tích về giá thành, thị trường và khách hàng,… Công nghệ Khai phá dữ liệu có thể được triển khai nhanh chóng dựa trên nền tảng phần cứng và phần mềm sẵn có đáp ứng yêu cầu khai thác thông tin của doanh nghiệp, nâng cao hiệu quả sử dụng thông tin từ nguồn tài nguyên sẵn có
và mang lại lợi ích to lớn cho doanh nghiệp
Tại Việt Nam, hiện tại đã có nhiều tổ chức, doanh nghiệp trong nước nhận thức được tầm quan trọng và lợi ích của công nghệ Khai phá dữ liệu Một số tổ chức, doanh nghiệp đã xây dựng các kho dữ liệu lưu trữ toàn bộ thông tin của tổ chức, doanh nghiệp như: Kho dữ liệu của Kho bạc nhà nước, Kho dữ liệu Ngân sách nhà nước của Bộ Tài chính, Kho dữ liệu của Ngân hàng Nhà nước… Tuy nhiên, việc khai thác dữ liệu từ kho tài nguyên đồ sộ này vẫn chưa đạt hiệu quả mong muốn do chưa phát triển được công cụ phù hợp, chưa trích chọn và phân tích được những dữ liệu xác đáng Để đạt được những thông tin mong muốn từ những nguồn dữ liệu lớn đòi hỏi phải có những đổi mới về mặt kỹ thuật
Là một trong những doanh nghiệp đi đầu trong việc đẩy mạnh khai thác
và sử dụng thông tin hỗ trợ hoạt động quản lý điều hành và sản xuất kinh doanh, Tập đoàn Bưu chính Viễn thông Việt Nam (VNPT) đã có một số phần mềm ứng dụng hỗ trợ quản lý điều hành sản xuất kinh doanh như: Hệ thống Báo cáo nhanh, Hệ thống báo cáo tài chính, Hệ thống quản lý tài sản, Hệ thống quản lý
dự án Internet trường học… Sự ra đời của “Hệ thống phần mềm báo cáo số liệu
và thông tin phục vụ quản lý, điều hành sản xuất kinh doanh tại Cơ quan Tập đoàn” (Hệ thống VRS) đã giúp đáp ứng được nhu cầu báo cáo thông tin một cách thống nhất, hệ thống, chính xác và cập nhật, thay thế hiệu quả cho phương thức báo cáo, tổng hợp số liệu bằng giấy tờ Đồng thời Hệ thống VRS được đưa vào sử dụng đã cung cấp một khối lượng thông tin lớn khó có thể xử lý bằng những phương pháp thủ công hiện có, từ đó đặt ra nhu cầu về một hệ thống phần mềm có thể hỗ trợ xử lý hiệu quả những thông tin này
Trang 12Đề tài “Áp dụng các kỹ thuật phân lớp dữ liệu, hồi quy để dự báo số liệu SXKD cho VNPT” được phát triển nhằm mục đích hỗ trợ phân tích, tổng hợp và
xử lý kho dữ liệu, thông tin một cách tự động, chính xác và có thể được tích hợp với các ứng dụng hỗ trợ quản lý sản xuất kinh doanh đang hoạt động khác Kết quả nghiên cứu của đề tài sẽ hỗ trợ tích cực cho công tác xử lý số liệu và dự báo tình hình SXKD của Tập đoàn, đồng thời góp phần đẩy mạnh công tác ứng dụng công nghệ thông tin vào các hoạt động quản lý điều hành sản xuất kinh doanh tại
Cơ quan Tập đoàn
Hà Nội 10-2009 Người thực hiện đề tài
Trang 13CHƯƠNG 1 KHẢO CỨU CÁC PHƯƠNG PHÁP DỰ BÁO VỀ HOẠT ĐỘNG SẢN XUẤT KINH DOANH DOANH NGHIỆP
1 Tổng quan các phương pháp dự báo
Trong những năm gần đây, sự phát triển mạnh mẽ của CNTT và ngành công nghiệp phần cứng đã làm cho khả năng thu thập và lưu trữ thông tin của các hệ thống thông tin tăng lên một cách nhanh chóng Bên cạnh đó việc tin học hoá một cách mạnh mẽ các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực hoạt động khác đã tạo ra một lượng dữ liệu lưu trữ khổng lồ Hàng triệu CSDL
đã được sử dụng trong các hoạt động sản xuất, kinh doanh, quản lí , trong đó có nhiều CSDL cực lớn cỡ Gigabyte, thậm chí là Terabyte Sự bùng nổ này đã dẫn tới một yêu cầu cấp thiết là cần có những kĩ thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ kia thành các tri thức có ích Từ đó, các kĩ thuật Khai phá dữ liệu đã ra đời và trở thành một lĩnh vực thời sự của nền CNTT thế giới hiện nay
1.1 Tổng quan về dự báo
* Dự báo là gì?
Dự báo là một nhận định về tương lai Những nhận định này có thể có nền
tảng vững chắc hoặc có thể thiếu những nền tảng cơ sở thuyết phục; chúng có thể chính xác hoặc không chính xác trong từng trường hợp cá biệt hoặc tính trung bình; chúng có thể chi tiết hoặc không chi tiết; chúng có thể dựa trên mô hình hoặc mang tính thông tin Các dự báo được đưa ra bằng những phương pháp với hệ hàng trăm phương trình ước lượng kinh tế lượng được kiểm định chặt chẽ cho tới những phương pháp gần như không có một cơ sở nào để quan sát được Do vậy, dự báo là một chủ đề rất rộng Trong lịch sử, hầu hết các phương pháp mà con người nghĩ ra về hoạt động “tiên đoán” tương lai có thể mang lại điều gì đều đã được thử nghiệm
* Có thể dự báo những gì?
Bởi vì dự báo chỉ đơn giản là một nhận định về tương lai nên chúng ta có thể
dự báo bất kỳ điều gì, có thể là dự báo lạm phát chỉ số giá tiêu dùng của tháng tới, dự báo thời tiết ngày mai, mực nước biển tính trung bình dâng cao thêm bao nhiêu sau 20 năm nữa hoặc dân số của trái đất vào ngày hôm đó hay như giá trị của chỉ số VN index tại thời điểm đầu năm 2010 Chúng ta không khẳng định
rằng các kết quả dự báo nhất thiết là hữu ích
* Mức độ tin cậy của chúng ta đối với các dự báo là như thế nào?
Trang 14Mức độ tin cậy của dự báo phụ thuộc vào cơ sở xây dựng dự báo này tốt đến mức độ nào? Những dự báo đơn thuần sẽ không mang lại độ tin cậy cao, những
dự báo dựa trên các cách tiếp cận đã được kiểm định đúng đắn có thể mang lại nhiều hy vọng hơn Thật không may là ngay cả khi nó được dựa trên những cách tiếp cận này thì dường như vẫn chưa đủ Tương lai quá bất định chính là khó khăn của dự báo Có hai điều trái ngược nhau mà ta có thể vận dụng từ câu nói của Maxine Singer rằng: "Bởi vì những thứ mà chúng ta không biết rằng chúng
ta không biết nên tương lai rất khó đoán định Nhưng một vài bước phát triển có thể dự báo được, hoặc ít nhất là có thể tưởng tượng được dựa trên những gì chúng ta đã biết"
- Dự báo mang tính đa phương án: Mỗi dự báo được thực hiện dựa trên những tập hợp các giả thiết nhất định - dự báo có điều kiện Tập hợp các giả thiết như vậy gọi là phông dự báo Do vậy dự báo có thể được tiến hành trên các phông dự báo khác nhau do những nguyên nhân chủ quan và khách quan khác nhau dẫn tới có nhiều phương án dự báo khác nhau
* Chức năng của dự báo
- Chức năng tham mưu: Trên cơ sở đánh gíá thực trạng, phân tích xu hướng vận động và phát triển trong quá khứ, hiện tại và tương lai, dự báo sẽ cung cấp thông tin cần thiết, khách quan làm căn cứ cho việc ra quyết định quản lý và xây dựng chiến lược, kế hoạch phát triển sản xuất kinh doanh, Người quản lý và hoạch định chiến lược, kế hoạch có nhiệm vụ phải lựa chọn trong số các phương
án có thể có, tìm ra các phương án có tính khả thi cao nhất, có hiệu quả cao nhất
Để thực hiện tốt chức năng này dự báo phải thực sự đảm bảo tính khách quan, khoa học và tính độc lập tương đối với các cơ quan quản lý và hoạch định chính sách
- Chức năng khuyến nghị hay điều chỉnh: Với chức năng này dự báo tiên đoán các hậu quả có thể nảy sinh trong quá trình thực hiện nhằm giúp doanh
Trang 15nghiệp kịp thời điều chỉnh mục tiêu cũng như cơ chế tác động quản lý để đạt hiệu quả kinh tế - xã hội cao nhất
1.2 Phương pháp luận tổng quát về dự báo
Để thiết lập một dự báo, về cơ bản, chúng ta có các bước tiến hành sau đây: a) Xác định vấn đề dự báo và mốc thời gian xa nhất của dự báo
b) Hiểu vấn đề cần được dự báo, xây dựng hệ thống mô tả vấn đề cần được
dự báo và nhận ra những biến số then chốt của hệ thống;
c) Thu thập các số liệu cần thiết phục vụ cho dự báo và Đề xuất các giả thiết xuất phát của dự báo;
d) Tiến hành dự báo và kiểm nghiệm tính đúng đắn của dự báo
f) Ứng dụng kết quả dự báo
* Xác định vấn đề dự báo:
Công việc đầu tiên là phát biểu vấn đề cần được dự báo một cách rõ ràng và chính xác Điều này dường như là đương nhiên nhưng thật ra sự nhấn mạnh tầm quan trọng của nó là rất cần thiết vì rất có thể xảy ra tình trạng vấn đề đặt ra lúc đầu, đến một giai đoạn nào đó của quá trình dự báo, lại bắt đầu được nhận thức
là chưa đủ rõ ràng, các công việc tiếp theo do đó không thể đặt ra một cách cụ thể để có thể được giải quyết, và chúng ta lại phải quay trở lại việc xác định vấn
đề
Một vấn đề khác là cần xác định mốc thời gian xa nhất của dự báo Có nhiều nhân tố chi phối sự lựa chọn này, như thời hạn ra quyết định, khả năng quyết định và các phương tiện hành động, v.v Không có một phương pháp xác định nào có thể giúp ta làm tốt việc này Kinh nghiệm thực tiễn và sự nhạy cảm là những yếu tố có thể đóng góp vào sự lựa chọn tối ưu Các dự báo đã có về các vấn đề khác nhau rõ ràng là một nguồn tham khảo quan trọng
Xét một số dự báo lớn được đưa ra trong mấy năm gần đây, thí dụ như
"Theo dõi tương lai, nghiên cứu về các kịch bản của nền kinh tế thế giới, 2015" của Cục Kế hoạch Trung ương của Hà Lan, "Dự án 2025" do hãng Coates
1990-& Jarratt, Inc biên soạn, các báo cáo "Trạng thái tương lai" công bố hàng năm
từ 1997 của "Dự án Thiên niên kỷ" thuộc Hội đồng Đại học Liên Hợp quốc Trong các dự báo này, mốc thời gian xa nhất của dự báo được lựa chọn là khoảng 25 năm Một số dự báo khác, thí dụ như "Tương lai của nước Anh năm 2010" của hãng Applied Futures công bố năm 1989, "Nước Anh năm 2010" của Policy Studies Institute công bố năm 1991, "Nền an ninh của châu Âu năm
Trang 162010" của P Leclerc và B Gentric năm 1991, mốc thời gian xa nhất dự báo được lựa chọn là 20 năm Song lại có những dự báo có mốc thời gian hơn, tới 40 năm, thí dụ như "Nhà ở năm 2030" do Trung tâm Khoa học và Kỹ thuật về Nhà
ở và Cục Môi trường và Quản lý Năng lượng của Pháp xây dựng trong thời gian 1991-93
* Hiểu vấn đề cần được dự báo, xây dựng hệ thống và phát hiện các biến số then chốt
Công việc tiếp theo là xác định trạng thái của hệ thống mô tả vấn đề cần được dự báo, cụ thể là tìm ra tất cả các biến số có ảnh hưởng đến vấn đề được nghiên cứu hoặc chịu ảnh hưởng của vấn đề được nghiên cứu, phân tích các quan hệ giữa các biến số đó, và cuối cùng thu gọn phạm vi của hệ thống về một
số biến số có tính chất cơ bản - các biến số then chốt
Có thể giao việc lập danh mục các biến số xác định trạng thái của hệ cho một người Song để tránh sự chủ quan quá đáng, công việc này nên được tiến hành bởi một nhóm công tác có tính chất đa ngành và sử dụng các cách làm như gửi bảng câu hỏi để lấy ý kiến, phỏng vấn chuyên gia, v.v
Để phân tích các quan hệ giữa các biến số, phương pháp thường được sử dụng là phân tích cấu trúc gồm ba bước cơ bản như sau:
ˉ Thống kê các biến số;
ˉ Lập ma trận phân tích cáu trúc và đồ thị độ phát động - mức phụ thuộc;
ˉ Phát hiện các biến số then chốt
* Thu thập dữ liệu phục vụ dự báo và đề xuất các giả thiết/giả thuyết cho dự báo
Thu thập dữ liệu là một công việc rất nặng nề vì đối với mỗi biến số, ta cần phải trả lời 3 câu hỏi sau đây:
Diễn biến của biến số trong quá khứ ?
Xu hướng phát triển của biến số đó trong tương lai ?
Những điểm uốn hay gián đoạn có thể có làm thay đổi xu hướng phát triển của biến số ?
Để trả lời các câu hỏi này, ta cần xem xét 5 vấn đề sau đây:
Xác định những chỉ tiêu có thể sử dụng một cách thích hợp để mô tả diễn biến của biến số được xét Thí dụ như để mô tả mức sống của dân cư, có thể xét khả năng sử dụng chỉ tiêu tổng sản phẩm trong nước (GDP) hay tổng sản phẩm
xã hội (GNP); để đánh giá năng lực đổi mới công nghệ của một quốc gia, có thể
Trang 17sử dụng chỉ tiêu số sáng chế đăng ký; để đánh giá mức độ chuyển đổi cơ cấu lao động có thể sử dụng chỉ tiêu số lượng lao động được đào tạo nghề theo các ngành kinh tế, để đánh giá nguồn nhân lực chất lượng cao có thể sử dụng chỉ tiêu số lượng và chất lượng đào tạo từ bậc cao đẳng, đại học trở lên, v.v
Xét khả năng có được dữ liệu (định tính cũng như định lượng), độ tin cậy của chúng và, nếu có thể, mức độ cân đối cần phải có
Xác định các chuỗi thời gian (các giá trị của chỉ tiêu sắp xếp theo trình tự thời gian) cần theo dõi Điều này có ý nghĩa quan trọng vì chuỗi thời gian của một biến số kinh tế - xã hội nào đó là phản ánh quy luật biến đổi của biến số đó trong quá khứ và hiện tại, nếu chuỗi thời gian đủ dài ta mới có căn cứ để ngoại suy hay dự báo giá trị của biến số đó trong tương lai
Để hình thành các giả thiết/giả thuyết cho dự báo: cần giải thích các diễn
biến trong quá khứ; nói cách khác, tìm hiểu nguyên nhân của các hệ quả đã quan sát được Rõ ràng là sự giải thích nguyên nhân không đúng sẽ dẫn đến những dự báo vô lý Thí dụ như có rõ những nguyên nhân đã dẫn đến tốc độ tăng trưởng cao của nền kinh tế Việt Nam trong mấy năm vừa qua, chúng ta mới có thể có được những dự báo đáng tin về tốc độ này trong những năm sắp tới, chưa nói những điều chỉnh cần thiết do sự thay đổi của những nhân tố bên ngoài
Đề xuất các giả thiết về sự phát triển của các biến số trong tương lai; nói riêng, về khả năng xuất hiện những điểm uốn hay gián đoạn so với xu hướng "tự nhiên" và, nếu có thể, xác suất xuất hiện các điểm uốn hay gián đoạn đó
* Tiến hành dự báo và kiểm nghiệm kết quả dự báo
Trong phần lớn các trường hợp rất cần phải kiểm nghiệm kết quả dự báo so với thực tế Nó là cơ sở để chấp nhận dự báo và ứng dụng vào thực tiễn
* Ứng dụng dự báo
Mục đích cuối cùng của dự báo là nhằm phục vụ quá trình xây dựng chiến lược, kế hoạch sản xuất kinh doanh và phục vụ quá trình ra quyết định, điều hành, quản lý của người lãnh đạo doanh nghiệp
Hiện tại có rất nhiều pháp dự báo về hoạt động sản xuất kinh doanh khác nhau (xem hình 1) Phân tiếp theo của Chương này chỉ giới thiệu tóm tắt một số phương pháp dự báo định lượng điển hình cho doanh nghiệp
Trang 18Hình 1 Các phương pháp dự báo hoạt động SXKD doanh nghiệp
1.3 Dự báo định lượng bằng các phương pháp hồi quy
1.3.1.Hồi quy tuyến tính và hồi quy bội
Hồi quy tuyến tính: Đây là dạng đơn giản nhất trong các phương pháp hồi quy
Ở dạng này, dữ liệu được mô hình hoá theo đường thẳng Theo mô hình này, một biến ngẫu nhiên Y (biến trả lời - response variable) sẽ được tính bằng một hàm tuyến tính của một biến ngẫu nhiên X khác (biến dự báo – predictor variable) theo công thức[8]:
Y = + X
trong đó độ biến thiên của Y là không đổi, và gọi là các hệ số hồi quy Các
hệ số này có thể được tính ra bằng phương pháp bình phương tối thiểu Cho n mẫu hay điểm dữ liệu dưới dạng (x1 , y 1 ), (x 2 , y 2 ),…, (x n , y n ), các hệ số hồi quy
có thể được ước lượng bằng phương pháp trên theo phương trình:
y y x x
1
2 1
) (
) )(
Các mô hình nhân quả
Các mô hình chuỗi thời gian
- Lấy ý kiến của ban lãnh đạo
- Lấy ý kiến của bộ phận bán
Trang 19ở đây x là giá trị trung bình của x1 , x 2 ,…, x n và y là giá trị trung bình của
y 1 ,y 2 ,…,y n
Hồi quy bội: là mở rộng của hồi quy tuyến tính với nhiều hơn một biến dự báo
Nó cho phép biến trả lời được mô hình hoá như là một hàm tuyến tính của một
véc tơ nhiều chiều Một ví dụ cho hồi quy bội với 2 biến dự báo X1 và X2 là:
Y = + 1X1 + 2X2
Các hệ số , 1, 2 vẫn có thể tính được bằng phương pháp bình phương tối
thiểu
1.3.2 Hồi quy phi tuyến tính
Với hồi quy tuyến tính, chúng ta đã có thể mô hình hoá những dữ liệu tuyến tính Nhưng với dữ liệu không tuyến tính thì như thế nào ? Dưới đây là một số dạng hồi quy phi tuyến thường được sử dụng :
- Hồi quy theo hàm log: logY = a + b * X
Cho thấy xu thế tăng (hoặc giảm) theo tốc độ tăng %
- Hồi quy theo hàm parabol: Y = a + b * X + c * X2
Cho thấy xu thế lúc đầu tăng (hoặc giảm) chậm, song về sau thì mạnh hơn
Trang 20- Hồi quy theo hàm tăng trưởng (hàm logistic): Y=[a/(1+e(a-bX))]+b
Xu thế này có hình chữ S, tức là lúc đầu tăng chậm (đường cong không dốc nhiều), sau đó tăng mạnh (đường cong dốc), sau đó lại tăng chậm lại (tiến đến mức bão hoà)
Xu thế hàm vòng đời tương tự với xu thế hàm tăng trưởng ở 3 giai đoạn đầu (lúc đầu tăng chậm, sau tăng mạnh, sau tăng chậm lại), song khác với xu thế hàm tăng trưởng ở giai đoạn tiếp theo là hàm tăng trưởng tiến đến mức bão hoà,
1.4 Dự báo số liệu bằng các phương pháp chuỗi thời gian
1.4.1 Khái niệm chuỗi thời gian
Chuỗi dữ liệu phụ thuộc thời gian được chia làm hai loại [3]:
- Chuỗi dữ liệu phụ thuộc thời gian được quan sát, đo đạc trong khoảng thời gian rời rạc: Các quan sát được thực hiện tại các thời điểm tách biệt, chúng thường là các quan sát được đo tại các mốc thời gian cách đều nhau, ví dụ chuỗi thời gian được đo theo tuần, quý, tháng, năm, …
Trang 21- Chuỗi dữ liệu liên tục theo thời gian: Các quan sát được đo trong khoảng thời gian liên tục, ví dụ chuỗi dữ liệu đo nhiệt độ trong ngày (nhiệt kế)
Như vậy: Chuỗi thời gian là một tập giá trị các quan sát của biến ngẫu nhiên,
ký hiệu là {z , t} t 1, ,n là số các quan sát, đo được trong các khoảng thời gian
t như nhau (hàng năm, quý, tháng, tuần, ngày …) và được xếp theo thứ tự thời
gian
Ví dụ: Tổng giá trị sản xuất Tổng giá trị hàng tồn kho, nguyên liệu nhập về,
chi phí quản lý, …, của một doanh nghiệp theo từng tháng chính là các chuỗi thời gian như vậy
1.4.2 Phân tích, dự báo chuỗi thời gian
Quá trình phân tích, dự báo chuỗi thời gian {z là để tìm ra các mô hình, t}luật ẩn trong nó, việc này được thực hiện trên các quan sát mẫu, gồm có những bước sau[1]:
Bước 1: Nhận dạng các thành phần ẩn tồn tại trong chuỗi thời gian
- Thành phần xu thế (Trend - T): Thể hiện chiều hướng biến động tăng hoặc giảm của các hiện tượng nghiên cứu trong thời gian dài
- Thành phần chu kỳ (Period - P): Thể hiện biến động của hiện tượng được lặp lại với chu kỳ nhất định, thường kéo dài từ 2 đến 10 năm
- Thành phần mùa vụ (Seasonal - S): Biểu hiện sự tăng hoặc giảm mức độ của hiện tượng ở một số thời điểm (tháng, quý, năm) nào đó được lặp đi lặp lại qua nhiều năm
- Thành phần ngẫu nhiên (Irregular - I): Thể hiện những biến động không có qui luật và hầu như không dự báo hoặc quan sát được trong của hiện tượng đang nghiên cứu
Những thành phần này kết hợp với nhau trong chuỗi thời gian bằng nhiều cách thức khác nhau, chẳng hạn chuỗi thời gian z được mô tả là tích các thành t
phần, z t TPS I gọi là mô hình tích, hoặc z t T PS I gọi là mô hình tổng, hoặc kết hợp cả hai z t TPS I Do vậy, để phân tích và nghiên cứu hành vi cũng như dự báo biến động của chuỗi thời gian thì cần thiết phải ước lượng được các thành phần nói trên trong chuỗi thời gian và cách thức kết hợp chúng với nhau trong chuỗi
Bước 2: Làm trơn số liệu
Trang 22Tuỳ theo mô hình dự báo áp dụng mà cần thiết tiến hành bước làm trơn số liệu hay không Trong trường hợp mô hình dự báo áp dụng cần quá trình làm trơn số liệu ta tiến hành loại trừ được thành phần xu thế và mùa vụ trong chuỗi thời gian Chuỗi thu được sau cùng không còn chứa các thành phần đó (chuỗi được làm trơn) sẽ khiến cho việc phân tích, dự báo dễ dàng hơn
Bước 3: Chọn lựa, ước lượng và đánh giá mô hình
Chọn lựa mô hình trong lớp các mô hình, sao cho mô hình được lựa chọn là
“tốt nhất” trong số các mô hình ứng cử và nó cũng phải đơn giản và có thể hiểu
được dễ dàng Sau đó thực hiện ước lượng các tham số, phần dư cho mô hình vừa chọn lựa và chúng phải thỏa mãn các tiêu chí kiểm định, đánh giá Mô hình
ước lượng được đánh giá là hợp lý khi đó sẽ sinh ra chuỗi “gần giống” với
chuỗi dữ liệu quan sát thực
Bước 4: Dự báo
Dựa trên mô hình thực hiện dự báo giá trị tương lai cho chuỗi thời gian, phân tích sự phù hợp của giá trị dự báo cả về mặt thực nghiệm và lý thuyết Xác định độ chệch giữa giá trị dự báo với giá trị quan sát thực và khoảng tin cậy của
dự báo tức là giới hạn mà giá trị quan sát thực sẽ nằm trong
Bước 5: Ứng dụng mô hình dự báo vào trong thực tế
Trên cơ sở các dự báo về các giá trị tương lai của hiện tượng nghiên cứu đề
ra các quyết định kinh doanh hoặc chính sách Đồng thời gộp thêm các giá trị quan sát mới vào chuỗi dữ liệu quan sát nhằm mục đích hiệu chỉnh lại mô hình
để đưa ra dự báo tốt hơn
Chất lượng của dự báo phụ thuộc vào nhiều yếu tố chẳng hạn sự phức tạp của chuỗi thời gian khi thực hiện phân tích, tác động của nhiều yếu tố bất thường không thể lường trước được khi tiến hành dự báo, ngoài ra độ chính xác cũng còn phụ thuộc phần lớn vào khoảng cách xa gần của dự báo (dự báo gần thì cho độ chính xác của dự báo tốt hơn so với dự báo xa)
Hiện tại có nhiều mô hình phân tích và dự báo chuỗi thời gian, trong đó những mô hình điển hình là: Mô hình làm trơn hàm mũ chuỗi thời gian, bao gồm [4]:
- Mô hình làm trơn hàm mũ bậc1, bậc 2 và bậc 3 (còn gọi là mô hình Holt –Winter) Trong mô hình Holt-Winter còn có mô hình Holt-Winter mùa vụ nhân
và Holt-Winter mùa vụ cộng
Trang 23- Mô hình trung bình trượt tích hợp trung bình trượt tự hồi quy là mô hình tổ hợp của 3 quá trình: sai phân (hay tích hợp), Trung bình trượt và Tự hồi quy
Mô hình phát triển từ ARIMA để dự báo cho chuỗi thời gian có yếu tố mùa vụ được gọi là mô hình SARIMA
- Mô hình tự hồi quy véc tơ VAR, thực chất đó là tổ hợp của các mô hình Trung bình trượt và Tự hồi quy cho nhiều chuỗi thời gian, nói cách khác mô hình VAR là một hệ gồm nhiều phương trình của nhiều chuỗi thời gian có liên quan với nhau về trể, ở đó mỗi phương trình có dạng của mô hình Trung bình trượt kết hợp với mô hình Tự hồi quy
1.4 Dự báo bằng phương pháp phân lớp dữ liệu
1.4.1 Phương pháp phân lớp dữ liệu
Quá trình phân lớp dữ liệu thường gồm 2 bước: xây dựng mô hình và sử dụng mô hình để phân lớp dữ liệu [12]
Bước 1: một mô hình sẽ được xây dựng dựa trên việc phân tích các mẫu dữ liệu
Mỗi mẫu tương ứng với một lớp, được quyết định bởi một thuộc tính gọi là
thuộc tính lớp Các mẫu dữ liệu này còn được gọi là tập dữ liệu huấn luyện
(training data set) Các nhãn lớp của tập dữ liệu huấn luyện đều phải được xác
định trước khi xây dựng mô hình, vì vậy phương pháp này còn được gọi là học
có thầy (supervised learning) khác với phân cụm dữ liệu là học không có thầy (unsupervised learning)
Bước 2: sử dụng mô hình để phân lớp dữ liệu Trước hết chúng ta phải tính độ
chính xác của mô hình Nếu độ chính xác là chấp nhận được, mô hình sẽ được
sử dụng để dự báo nhãn lớp cho các mẫu dữ liệu khác trong tương lai
Các kỹ thuật phân lớp dữ liệu chủ yếu để dự báo số liệu gồm có: phân lớp theo phương pháp Bayes, phân lớp theo cây quyết định, phân lớp theo phương pháp máy vector hỗ trợ (SVM), phân lớp theo phương pháp mạng nơron, thuật toán di truyền, thuật toán người lãng riềng gần nhất, …
1.4.2 Độ chính xác phân lớp
Ước lượng độ chính xác của mô hình phân lớp là một bước quan trọng cho phép người dùng đánh giá được dữ liệu được phân lớp trong tương lai của họ sẽ chính xác đến đâu Ngoài ra độ chính xác này còn có thể dùng làm tiêu chí để so sánh các bộ phân lớp khác nhau[12]
Để ước lượng độ chính xác của mô hình phân lớp, chúng ta có 1 số phương
pháp như holdout hay k-fold cross-validation, bootstrapping, leave-one-out…
Trang 24- Phương pháp holdout: trong phương pháp này, tập dữ liệu ban đầu sẽ được
chia ngẫu nhiên ra làm 2 tập: tập huấn luyện và tập kiểm thử Tập huấn luyện được dùng để xây dựng mô hình còn tập kiểm thử được dùng để ước lượng độ
chính xác Sơ đồ phương pháp này được thể hiện trong hình dưới
Hình 2. Đánh giá độ chính xác của bộ phân lớp bằng phương pháp
holdout
- Phương pháp k-fold cross-validation: trong phương pháp này, tập dữ liệu
ban đầu sẽ được chia thành k tập con (fold), thường là với kích thước bằng nhau Bước huấn luyện và bước kiểm thử sẽ được thực hiện làm k lần Tại mỗi lần lặp
dùng làm tập huấn luyện Độ chính xác sẽ được tính bằng tổng số các trường hợp phân loại đúng trong k lần chia cho tổng số mẫu trong tập dữ liệu ban đầu
Để tăng độ chính xác của phương pháp phân lớp, người ta đưa ra một số kỹ
thuật như: Bagging và boosting Tư tưởng chính của kỹ thuật bagging là thay vì xây dựng một bộ phân lớp, chúng ta sẽ xây dựng k bộ phân lớp từ tập dữ liệu
ban đầu, với mỗi mẫu mới cần phân lớp, mỗi bộ phân lớp sẽ có 1 kết quả dự báo
và nhãn nào được dự báo nhiều nhất bởi các bộ phân lớp sẽ được gán cho mẫu
mới Kỹ thuật boosting tương tự kỹ thuật bagging nhưng mỗi mẫu học sẽ được
gán thêm 1 trọng số để giúp các bộ phân loại xây dựng sau tránh các lỗi mà các
bộ phân loại trước gặp phải
KẾT LUẬN CHƯƠNG 1
Trong chương 1, luận văn đã trình bày một cách tổng quan về dự báo và các phương pháp dự báo Các phương pháp dự báo bao gồm các phương pháp dự báo định tính và các phương pháp dự báo định lượng Trong phương pháp định lượng gồm có phương pháp (mô hình) chuỗi thời gian và mô hình nhân quả Luận văn này đã giới thiệu một cách tóm tắt quy trình các bước phân tích, dự
Tập huấn luyện
Tập kiểm thử
Dữ liệu
Bộ phân lớp
Đánh giá
độ chính xác
Trang 25báo bằng mô hình chuỗi thời gian và 3 mô hình chuỗi thời gian điển hình nhất đang được ứng dụng hiện nay là mô hình làm trơn hàm mũ chuỗi thời gian, mô hình trung bình trượt tích hợp tự hồi quy và mô hình tự hồi quy véc tơ
Trong mô hình nhân quả, luận văn đã giới thiệu nhanh các mô hình hồi quy tuyến tính và phi tuyến, và phương pháp dự báo bằng phân lớp dữ liệu Phương pháp dự báo phân lớp dữ liệu sẽ là đối tượng nghiên cứu chính của luận văn này Trong chương tiếp theo, luận văn sẽ tập trung trình bày phương pháp phân lớp dữ liệu sử dụng mạng nơron nhân tạo để dự báo định lượng
Trang 26CHƯƠNG 2 DỰ BÁO ĐỊNH LƯỢNG BẰNG PHƯƠNG PHÁP
MẠNG NƠRON NHÂN TẠO
2.1 Mạng nơron nhân tạo
1) Khái quát về mạng nơron
Về bản chất mạng nơron nhân tạo là mô hình mô phỏng đơn giản của nơron sinh học[7] Mạng nơron nhân tạo cũng thực hiện nhiệm vụ của mình thông qua các thao tác: nhận đầu vào từ các nơron trước nó, xử lý đầu vào bằng cách nhân mỗi đầu vào này với trọng số liên kết tương ứng và tích hợp các đầu vào thu được rồi đưa qua một hàm truyền, sau đó gửi kết quả cuối cùng cho các nơron tiếp theo hoặc đầu ra (output) Cứ như vậy các nơron này hoạt động phối hợp với nhau tạo thành hoạt động chính của mạng nơron
Trong mạng nơron, các nơron liên kết với nhau qua các trọng số và ngưỡng Trong quá trình huấn luyện thì giá trị các trọng số và ngưỡng được thay đổi cho phù hợp với các mẫu ở đầu vào
2) Ưu, nhược điểm của mạng Nơron nhân tạo
- Ưu điểm:
Có thể nói mạng Nơron có ưu điểm lớn nhất là khả năng học, khả năng tổng quát hóa cũng như khả năng thích ứng với rất nhiều kiểu dữ liệu khác nhau trong nhiều lĩnh vực khác nhau
Học là quá trình huấn luyện mạng nơron có khả năng nhận biết chính xác các mẫu Đó là quá trình ghi nhớ tri thức về các mẫu được học thông qua việc điều chỉnh các trọng số đầu vào và ngưỡng tương ứng
Tổng quát hóa là quá trình phân loại mẫu dựa trên các mẫu mà mạng đã được học Mạng nơron có thể giải quyết các bài toán phức tạp ở nhiều lĩnh vực khác nhau
- Nhược điểm:
Tuy mạng nơron có những rất nhiều ưu điểm nhưng vẫn có nhược điểm là thời gian huấn luyện lâu, còn hội tụ ở giá trị cực trị địa phương…
3) Các ứng dụng của mạng Nơron nhân tạo
Mạng nơron thích hợp với các ứng dụng so sánh và phân loại mẫu (pattern matching and classification), dự báo (prediction) và điều khiển (control) Chính
vì thế mạng nơron có nhiều ứng dụng trong:
Trang 27- Không gian vũ trụ: như máy bay không người lái, các chế độ bay tự động, hệ thống phát hiện sai hỏng…
- Dự thoái tài chính kinh tế: Dự báo giá cả biến động, cấp số thời gian trong thị trường tài chính, các ứng dụng về điều hành vốn, dự báo thị trường ngoại hối, đánh giá rủi ro…
2.2 Mô hình của mạng nơron nhân tạo
Một nơron là đơn vị xử lí thông tin, đó là những nguyên tắc cơ bản của quá
trình hoạt động của mạng nơron Hình 3 cho biết mô hình của một nơron
Có 3 phần tử cơ bản của mô hình nơron như được mô tả dưới đây[7]:
1) Một tập hợp các khớp thần kinh hay mối liên kết được đặc trưng bởi trọng số
khuyếch đại bởi trọng số chuyển tiếp wkj Trọng số wkj là tích cực nếu khớp liên hợp được kích thích, nó là không tích cực nếu khớp liên hợp bị kìm hãm
2) Một bộ cộng để cộng những tín hiệu đầu vào được khuyếch đại bởi các khớp thần kinh tương ứng của nơron
3) Một hàm kích hoạt để định ra giới hạn biên độ đầu ra của một nơron Hàm kích hoạt còn được coi như một hàm nén, bên trong nó nén những giới hạn biên
độ chấp nhận được của tín hiệu đầu ra đến một số giá trị hữu hạn nào đó Giá trị giới hạn đầu ra bình thường của nơron là khoảng đóng [0,1] hoặc [-1,1] Mô
hình của nơron mô tả trong hình 3 bao gồm một ngưỡng ứng dụng ngoài i do
đó có tác dụng làm hạn chế hàm kích hoạt đầu vào Mặt khác mạng lưới đầu vào của hàm kích hoạt có thể được tăng lên bởi việc dùng sự chênh lệch giới hạn hơn là dùng ngưỡng Sự chênh lệch là sự phủ nhận ngưỡng Trong giới hạn toán học chúng ta có thể mô tả một nơron k được viết bởi hệ phương trình:
Trang 28Trong đó:
x1, x2, ,xp là các tín hiệu đầu vào;
wk1,wk2, ,wkp là các trọng số chuyển tiếp của nơron k;
uk là bộ phối hợp đầu ra tuyến tính;
k là ngưỡng;
(.) là hàm kích hoạt;
yk là tín hiệu ra của nơron
Hình 3 Mô hình phi tuyến của một nơron
Sử dụng ngưỡng k có hiệu quả ứng dụng biến đổi afin tới đầu ra uk của bộ
phối hợp tuyến tính trong hình 3 được biểu diễn bởi :
Đặc biệt sự phụ thuộc vào ngưỡng k dù là tích cực hay thụ động, mối quan
và bộ phối hợp tuyến tính đầu ra uk được sửa đổi như hình 4
Lưu ý là do kết quả của biến đổi aphin, đồ thị của vk không còn đi qua gốc
k (ngưỡng)
xk
trọng số chuyển tiếp
Wk 1
wkp Wk
Trang 29Hình 4 Kết quả biến đổi afine của ngưỡng
nó như trong công thức 1.2 Tương đương chúng ta có thể kết hợp của công thức 1.1 và 1.2 thành công thức
Bởi vậy chúng ta có thể công thức hoá lại mô hình của nơron như hình 5a
Trong hình này sự ảnh hưởng của ngưỡng được thể hiện bởi hai việc :
- Thêm một tín hiệu đầu vào mới cố định tại -1
Tổng mức ngưỡng k <0 kích hoạt k =0 bên trong
v k k>0
0
đầu ra kết hợp phi tuyến, uk
Trang 30
Cách khác chúng ta có thể mô hình nơron như trong hình 5b với sự kết hợp cố
định đầu vào x0=1và trọng số wk0=bk (bk độ chênh lệch) Mặc dù mô hình 1.4 và
1.6 là khác nhau nhưng tương đương về mặt toán học
Hình 5 Hai mô hình phi tuyến của nơron
1) Các loại hàm kích hoạt
Hàm kích hoạt được biểu thị là (.), nó định nghĩa đầu ra của nơron trong giới
hạn mức hoạt động của đầu vào Nói chung người ta xác định 3 loại hàm kích
hoạt cơ bản
a Hàm ngưỡng: Hàm kích hoạt loại này được mô tả trong hình 5a, ta có công
thức
(1.8)
x3
trọng số chuyển tiếp (gồm cả ngưỡng)
Trang 31vk là mức hoạt động nội tại của nơron
v
1
Một nơron như vậy được gọi là mô hình McCulloch-Pitts do McCulloc và
Pitts là những người tiên phong trong sự phát hiện này Trong mô hình này đầu
ra của nơron nhận giá trị 1 nếu các mức nội tại là tích cực, và nhận giá trị 0 nếu
khác đi Sự phát biểu này mô tả tất cả hoặc không của mô hình McCulloc-Pitts
b) Hàm phân đoạn tuyến tính, được mô tả trong hình 5b, được tính theo công
0
2
1 2
1 ,
2 1 ,
1 )
(
v neu
v neu
v
v neu v
(1.11)
với nhân tố khuyếch đại bên trong tuyến tính được giả thiết là thống nhất Dạng
này của hàm kích hoạt được coi gần giống như một máy khuyếch đại phi tuyến
Hai thuộc tính sau là dạng đặc biệt của McCulloc - Pitts:
- Một bộ phối hợp tuyến tính được sinh ra nếu miền tuyến tính của thao tác
được duy trì mà không gặp phải sự bão hoà
- Hàm phân đoạn tuyến tính quy về hàm ngưỡng nếu nhân tố khuyếch đại của
vùng tuyến tính được làm lớn quá
x3
trọng số chuyển tiếp
Trang 32- Hàm sigma: Hàm sigma cũng được sử dụng trong xây dựng những mạng
nơron nhân tạo Nó được định nghĩa như một hàm tăng dần, được xác định
bởi công thức sau:
(1.12)
ở đây a là tham số bậc của hàm sigma Khi thay đổi tham số a chúng ta thu được
hàm sigma của những giá trị bậc khác nhau
Trong những trường hợp hạn chế nào đó, khi tham số bậc tiến tới vô cùng
thì hàm sigma trở thành hàm ngưỡng đơn giản
Trong khi hàm ngưỡng lấy giá trị 0 hoặc 1 thì một hàm sigma lấy giá trị liên
tục từ 0 tới 1, chú ý rằng hàm sigma có thể khác nhau trong khi hàm ngưỡng
không thể
Những hàm kích hoạt đã định nghĩa trong các công thức (1.8), (1,11), (1.12)
có giới hạm từ 0 tới 1 Để có hàm kích hoạt có phạm vi hoạt động từ -1 tới 1,
hàm kích hoạt giả định mẫu phản đối xứng với gốc được định nghĩa lại từ hàm
ngưỡng (1.8) như sau:
1
, 0 ,
0
, 0 ,
1
)
(
v neu
v neu
v neu v
(1.13)
Hàm này thường được gọi là hàm signum
Ngoài ra, thay cho hàm sigma chúng ta có thể dùng hàm tiếp xúc hyperbolic,
được xác định bởi công thức:
) exp(
1
) exp(
1 2 tanh )
(
v
v v
để cho một hàm kích hoạt kiểu sigma
2.4 Thuật toán lan truyền ngược sai số
Thuật toán lan truyền ngược sai số là thuật toán rất nổi tiếng và được sử dụng
phổ biến trên thế giới để xây dựng mạng nơron nhân tạo
Việc huấn luyện mạng nơron với thuật toán lan truyền ngược sai số gồm hai
pha ngược chiều nhau: quá trình truyền thẳng (lan truyền xuôi) và quá trình lan
truyền ngược [12]
)exp(
1
1)
Trang 33Chuẩn bị tập mẫu đầu vào dưới dạng {xi, di} trong đó xi là đầu vào cho mạng và di là giá trị đầu ra mong muốn tương ứng với xi (còn gọi là giá trị mục tiêu)
- Lựa chọn hàm đánh giá sai số của mạng (sai số giữa đầu ra thực tế và giá trị
mục tiêu) Chúng ta có thể dùng hàm sai số trung bình bình phương, hàm tuyến tính…
- Lan truyền xuôi tín hiệu đầu vào qua mạng: cung cấp véctơ đầu vào cho lớp
thứ nhất của mạng, sau đó tín hiệu sẽ được lan truyền lần lượt trên từng lớp mạng Cuối cùng ta sẽ thu được vector đầu ra thực sự của mạng
- Tính sai số của mạng rồi lan truyền ngược sai số lần lượt từ lớp đầu ra cho
tới lớp đầu vào để hiệu chỉnh tham số mạng tại các neuron ở các lớp (trọng số liên kết, ngưỡng) theo các luật hiệu chỉnh trọng số tương ứng với hàm đánh giá sai số
- Lặp lại hai quá trình trên sao cho đầu ra thực sự của mạng càng gần với giá
trị mục tiêu càng tốt (sai số của mạng càng nhỏ càng tốt)
Phương pháp điều chỉnh trọng số như sau:
Đặt = d – y trong đó y là đầu ra thực và d là đầu ra mong muốn
y = (net) với là hàm truyền
ta cần phải tính w i là độ sai lệch trọng số tương ứng với đầu vào i
e p
y = (net) với là hàm truyền
p i i
Quá trình học dừng lại khi thỏa mãn một trong các điều kiện sau:
÷ Mọi w i của quá trình truyền ngược là đủ bé hơn ngưỡng cho phép
Trang 34÷ Lỗi ở đầu ra nhỏ có thể chấp nhận được
÷ Sau một số bước lặp đủ lớn…
Tóm lại quá trình truyền ngược gồm các bước sau:
a Bước 1: Chọn Emax, >0 , các trọng số được gắn ngẫu nhiên bé
b Bước 2: Truyền thẳng ( Forward Propagation) truyền thẳng các tín hiệu để
thu được giá trị đầu ra
c Bước 3: Đo độ sai lệch: Tính giá trị sai lệch bình phương giữa tín hiệu thu
được và kết quả mong muốn
d Bước 4: Truyền ngược để điều chỉnh trọng số
e Bước 5: Kiểm tra tổng bình phương độ sai lệch (Total Error Checking)
÷ Nếu chấp nhận được E < EMax kết thúc quá trình điều chỉnh, ghi đầu ra
÷ Nếu không bắt đầu giai đoạn lặp mới
2.5 Thiết kế mạng nơron
Năm 1996, Icebeling Kaastra và Milton Boyd [10] đưa ra một phương pháp thiết kế mạng nơron để dự báo định lượng, chia thành 8 bước thực hiện Phương pháp luận của nó được thiết kế dựa trên các bước đã được đưa ra bởi Deboeck, Masters, Blum, Nelson và Illingworth Các bước đó như sau:
Bước 1: Lựa chọn biến
Bước 2: Thu thập dữ liệu
Bước 3: Tiền xử lý dữ liệu
Bước 4: Xác định tập huấn luyện, tập kiểm thử
Trang 35Bước 5: Xác định mô hình mạng nơron
÷ Số lượng lớp ẩn
÷ Số lượng nơron ẩn
÷ Số lượng nơron đầu ra
÷ Hàm kích hoạt
Bước 6: Xác định tiêu chí đánh giá
Bước 7: Huấn luyện mạng nơron
1) Bước 1: Lựa chọn biến
Việc thiết kế thành công một mạng nơron phụ thuộc nhiều vào việc hiểu rõ bài toán thế nào Biết rõ những biến đầu vào nào là quan trọng trong miền cần
dự báo Điều này nói thì dễ nhưng làm thì khó bởi vì lý do quan trọng để người
ta tin tưởng vào mạng nơron là ở sức mạnh của nó trong việc phát hiện ra những mối quan hệ không tuyến tính phức tạp trong số lượng lớn các biến số khác nhau Dù vậy, lý thuyết kinh tế có thể trợ giúp chúng ta trong việc lựa chọn các
biến số có vẻ như sẽ là các bộ dự báo quan trọng Nếu thiết kế theo quan điểm
này, chúng ta sẽ quan tâm tới dữ liệu thô mà từ đó rất nhiều chỉ báo sẽ được phát triển Những chỉ báo này sẽ tạo nên các đầu vào thực tế cho mạng nơron
Các nhà nghiên cứu tài chính thường quan tâm tới vấn đề liệu việc dự báo thị trường có thể sử dụng cả dữ liệu đầu vào kinh tế cơ sở và kinh tế kỹ thuật từ một hoặc nhiều thị trường hay không Các đầu vào kỹ thuật được đĩnh nghĩa là các giá trị trễ của các biến phụ thuộc hoặc các chỉ báo được tính toán ra từ các giá trị trễ Các đầu vào cơ sở là các biến số kinh tế có ảnh hưởng trực tiếp tới các biến phụ thuộc Mô hình mạng nơron đơn giản nhất sử dụng các giá trị trễ của các biến độc lập hoặc sai phân bậc nhất của chúng để làm đầu vào Mô hình đó đã thực hiện tốt hơn mô hình truyền thống Box-Jenkins trong việc dự báo giá, tất nhiên là không phải trong tất cả các trường hợp Một cách tiếp cận thông dụng
Trang 36hơn là tính ra các chỉ báo kỹ thuật dựa trên các giá trị quá khứ của thị trường cần
dự báo
Tần suất của dữ liệu phụ thuộc vào mục đích của nhà nghiên cứu Một hệ thống giao dịch chứng khóan điển hình sẽ có xu hướng sử dụng dữ liệu theo ngày để thiết kế mạng nơron như là một phần của hệ thống giao dịch tổng thể Tuy nhiên một nhà đầu tư theo chiến lược lâu dài hơn có thể sử dụng dữ liệu theo tuần hoặc theo tháng làm đầu vào cho mạng nơron Trong khi đó, để dự báo GDP, vấn đề thất nghiệp hoặc các chỉ báo kinh tế nước ngoài, các nhà kinh tế thường sử dụng dữ liệu theo tháng hoặc theo quý
2) Bước 2: Thu thập dữ liệu
Các nhà nghiên cứu cần quan tâm tới khả năng thu thập được các dữ liệu của các biến đã chọn trong bước trước Dữ liệu kỹ thuật thường dễ dàng thu thập được từ nhiều nhà cung cấp với giá thành phải chăng, trong khi đó, thông tin cơ
sở thường khó thu thập hơn Thời gian thu thập dữ liệu không thể được tính vào thời gian tiền xử lý, huấn luyện hoặc đánh giá mạng nơron Nhà cung cấp cũng nên chú trọng tới chất lượng dữ liệu; dữ liệu nên được kiểm tra lỗi bằng cách kiểm tra sự thay đổi theo thời gian, khoảng giá trị, sự thống nhất, logic, và các giá trị thiếu
Các giá trị thiếu, vấn đề thường xuyên xuất hiện, có thể được giải quyết bằng một số cách Tất cả các giá trị thiếu có thể được loại bỏ hoặc có thể thay tất
cả các giá trị thiếu bằng giá trị xuất hiện nhiều nhất hoặc giá trị trung bình cộng của các giá trị lân cận
Khi sử dụng dữ liệu cơ sở làm đầu vào cho mạng nơron, cần để ý tới bốn vấn đề sau:
- Phương pháp tính cần nhất quán trong toàn bộ quá trình
- Không nên sửa lại các giá trị dữ liệu sau khi đã khởi tạo nó vào hệ thống bởi các giá trị sửa lại sẽ không có giá trị gì cho việc dự báo thực tế
- Dữ liệu để làm đầu vào cho mạng nơron nên được làm trễ một cách hợp lý bởi vì thông tin cơ sở không thể có nhanh như thông tin thị trường chứng khóan được
- Các nhà nghiên cứu nên đảm bảo rằng các nguồn dữ liệu vẫn sẽ cung cấp được các thông tin cơ sở trong tương lai
3) Bước 3: Tiền xử lý dữ liệu
Tiền xử lý dữ liệu có thể hiểu là việc phân tích và chuyển đổi các biến đầu vào và đầu ra để giảm thiểu nhiễu, làm nổi bật các mối quan hệ quan trọng, phát hiện xu hướng và làm phẳng các phân phối biến để hỗ trợ mạng nơron trong
Trang 37việc học các mẫu tốt hơn Dữ liệu đầu vào và đầu ra sau khi được thu thập thường không được đưa ngay vào mạng nơron dưới dạng thô Ít nhất, dữ liệu thô cần được chia lại vào khoảng cận trên và cận dưới của hàm chuyển đổi (thường
là trong khoảng [0,1] hoặc [-1,1])
Hai trong số các phương pháp chuyển đổi dữ liệu thông thường nhất cả trong phương pháp dự báo thông thường và trong dự báo bằng mạng nơron là sai phân bậc nhất và lấy logarit tự nhiên của biến Sai phân bậc nhất, hoặc sử dụng sự thay đổi của biến, có thể được sử dụng để loại bỏ các xu hướng tuyến tính của
dữ liệu Phương pháp chuyển đổi logarit thường có ích cho các tập dữ liệu có cả giá trị rất lớn và rất nhỏ Sơ đồ (histogram) trong hình 2 thể hiện hiệu quả nén của chuyển đổi logarit cho số liệu buôn bán lúa gạo theo tháng Chuyển đổi logarit cũng có thể giúp chuyển đổi các mối quan hệ theo cấp số nhân về cấp số cộng, làm đơn giản và tăng hiệu quả cho việc huấn luyện mạng nơron
Trước khi chuyển đổi
Sau khi chuyển đổi qua hàm logarit
Trang 38Hình 6 Chuyển đổi logarit của số liệu buôn bán lúa gạo theo tháng
Một cách chuyển đổi thông dụng khác là sử dụng các tỷ số của biến đầu vào Các tỷ số thể hiện rõ các mối quan hệ quan trọng trong khi đó vẫn bảo tồn được mức độ tự do vì sẽ cần ít nơron hơn để mã hóa các biến độc lập
Lấy mẫu hoặc lọc dữ liệu được hiểu là loại bỏ các đối tượng dữ liệu khỏi tập huấn luyện và tập kiểm tra để tạo ra các phân bố dữ liệu vững chắc hơn Cách lọc dữ liệu nên thống nhất với mục tiêu của nhà nghiên cứu Ví dụ, biểu đồ về sự thay đổi giá của các mặt hàng hóa có thể chứa rất nhiều những thay đổi nhỏ Đối với những người buôn chứng khóan thì chúng không có tác dụng gì cả, tuy nhiên, chúng lại ảnh hưởng lớn tới việc huấn luyện mạng nơron bởi các thay đổi nhỏ này vẫn được tính vào các lần huấn luyện và mạng nơron tính sai số bình phương (hoặc các hàm sai số khác) dựa trên toàn bộ các lần huấn luyện Nếu loại bỏ những sự thay đổi nhỏ đó, khả năng thực thi của mạng sẽ được cải tiến bởi mạng sẽ tập trung hơn vào những thay đổi lớn của dữ liệu Mặt khác, những người kinh doanh nhỏ lại có xu hướng quan tâm tới những thay đổi nhỏ này Vì vậy, người nghiên cứu phải hiểu rất rõ và chính xác mạng nơron được dùng để học cái gì Một lợi ích nữa của lọc dữ liệu là làm giảm số lượng các sự kiện huấn luyện, giảm tải cho quá trình huấn luyện mạng nơron
Trong thực tế, việc tiền xử lý dữ liệu thường bao gồm nhiều dữ liệu thử và lỗi hơn Một phương pháp để chọn các biến phù hợp là thử nghiệm các kết hợp khác nhau của biến Ví dụ, với một tập 20 biến gồm nhiều chỉ báo kỹ thuật khác nhau, có thể chọn tập 10 biến một thể thử nghiệm trước và thay đổi 2, 3 biến 1
Trang 39lần Mặc dù cách này khá tốn công, tuy nhiên phương pháp này sẽ giúp tìm ra các tập biến mà có vẻ như sẽ là các bộ dự báo tuyệt vời khi kết hợp với nhau Lý thuyết hỗn độn và thống kê cũng không hỗ trợ được trong trường hợp này Dù vậy, danh sách 20 biến này có thể thay đổi theo thời gian khi nhà nghiên cứu thu được nhiều kinh nghiệm hơn trong việc tiền xử lý dữ liệu cho ứng dụng của mình Cách tiếp cận này đặc biệt hữu dụng trong trường hợp tập huấn luyện nhỏ
và gần với số lượng biến
4) Bước 4: Xác định tập huấn luyện, tập kiểm tra và đánh giá
Thông thường, người ta chia tập dữ liệu chuỗi thời gian ra làm 3 tập riêng biệt gọi là tập huấn luyện, tập kiểm tra và tập đánh giá Tập huấn luyện là tập lớn nhất và được sử dụng để huấn luyện mạng nơron, tìm ra các mẫu Tập kiểm tra, thường có kích thước từ 10% đến 30% tập huấn luyện, được dùng để đánh giá khả năng tổng quát hóa của mạng nơron Nhà nghiên cứu nên chọn mạng có kết quả thực thi tốt nhất trên tập kiểm tra Tập đánh giá được sử dụng sau cùng
để kiểm tra hiệu năng của mạng nơron sau khi đã được huấn luyện Kích thước của tập đánh giá phải tính toán để cân bằng giữa số lượng mẫu đủ để đánh giá và
số lượng mẫu còn lại cho cả tập huấn luyện và kiểm tra Thông thường, tập đánh giá nên dùng những mẫu mới nhất và phải đảm bảo không dùng tập đánh giá trong quá trình huấn luyện và kiểm tra, kể cả khi điều chỉnh lại các tham số của mạng
Tập kiểm tra có thể được chọn tùy ý trong tập huấn luyện hoặc có thể gồm những phần tử liền kề sau tập huấn luyện Việc chọn ngẫu nhiên có ưu điểm là tránh được những nguy hiểm khi sử dụng tập kiểm tra có tính chất dữ liệu giống nhau Tuy nhiên việc chọn tập kiểm tra gồm những phần tử liền kề sau tập huấn luyện cũng có ưu điểm bởi vì với cách chọn này, dữ liệu kiểm tra thường sẽ là những mẫu dữ liệu mới (gần nhất, trừ những dữ liệu trong tập đánh giá), và những dữ liệu này thường là quan trọng hơn những dữ liệu cũ
Nếu sử dụng phương pháp chọn ngẫu nhiên thì tập kiểm tra không được thay đổi trong quá trình huấn luyện, vì nó sẽ làm giảm khả năng tổng quát hóa của mạng nơron, đặc biệt trong những trường hợp tập kiểm tra khá lớn so với tập huấn luyện (ví dụ như 30%) Những phương pháp lựa chọn khác, ví dụ như chọn các mẫu thứ n trong thứ tự làm tập kiểm tra, không được khuyên dùng, bởi có thể tạo các vòng lặp trong mẫu dữ liệu
Một cách tiếp cận nghiêm ngặt hơn trong việc đánh giá mạng nơron là phương pháp kiểm tra walk-forward hay còn gọi là phương pháp kiểm tra cửa sổ
Trang 40trượt Phương pháp này sẽ tạo ra 1 dãy các tập huấn luyện-kiểm tra-đánh giá, chèn lên nhau Mỗi tập sẽ lần lượt tịnh tiến theo chuỗi thời gian như trong hình
3 Phương pháp này sẽ kiểm tra sức mạnh của mô hình thông qua việc huấn luyện lại mạng nơron với tập dữ liệu ngoài mẫu (out-of-sample) Trong phương pháp này, kích thước của tập đánh giá sẽ hướng dẫn việc huấn luyện lại mạng nơron Việc huấn luyện lại sẽ khá tốn thời gian, tuy nhiên nó sẽ cho phép mạng thích nghi nhanh hơn với những điều kiện thay đổi của thị trường
Hình 7 Phương pháp kiểm tra cửa sổ trượt
Người ta khuyến nghị rằng tập huấn luyện và tập kiểm tra nên được giữ nguyên tỉ lệ trong quá trình huấn luyện mạng, vì mục tiêu của tập kiểm tra là để xác định khả năng tổng quát hóa của mạng Tuy nhiên, tập đánh giá không nhất thiết phải cùng tỉ lệ với tập huấn luyện và tập kiểm tra vì đây là bước kiểm tra sau cùng và độc lập
5) Bước 5: Xác định mô hình mạng nơron
Có rất nhiều cách xây dựng mạng nơron Cấu trúc và kiến trúc mạng nơron
là 2 cụm từ thường được dùng để mô tả về cách tổ chức một mạng nơron Sự kết hợp của cấu trúc nơron và kiến trúc sẽ định nghĩa ra mô hình mạng nơron Cấu trúc nơron mô tả tính chất của một nơron độc lập như hàm chuyển đổi hay cách các đầu vào kết hợp với nhau Kiến trúc mạng nơron thường bao gồm các yếu tố như số lớp, số nơron trong mỗi lớp và cách thức liên kết của chúng
Số lượng nơron đầu vào là tham số dễ lựa chọn nhất nếu số lượng các biến độc lập đã được xác định, bởi mỗi biến độc lập sẽ được biểu diễn bởi một nơron