ĐẠI HỌC THÁI NGUYÊN
TR¦êNG §¹I HäC C¤NG NGHÖ TH¤NG TIN Vµ TRUYÒN TH¤NG
NGUYỄN THỊ THƠ
NGHIÊN CỨU MẠNG NƠ RON VÀ ỨNG DỤNG
TRONG BÀI TOÁN DỰ BÁO TUYỂN SINH
TRƯỜNG THPT LÊ QUÝ ĐÔN
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
THÁI NGUYÊN - 2020
ĐẠI HỌC THÁI NGUYÊN
TR¦êNG §¹I HäC C¤NG NGHÖ TH¤NG TIN Vµ TRUYÒN TH¤NG
NGUYỄN THỊ THƠ
NGHIÊN CỨU MẠNG NƠ RON VÀ ỨNG DỤNG
TRONG BÀI TOÁN DỰ BÁO TUYỂN SINH
TRƯỜNG THPT LÊ QUÝ ĐÔN
Chuyên ngành: Khoa học máy tính
Mã số: 8.48.01.01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Giáo viên hướng dẫn: TS.Nguyễn Đình Dũng
THÁI NGUYÊN - 2020
i
LỜI CẢM ƠN
Luận văn này được hoàn thành tại Trường Đại học Công nghệ Thông tin
và Truyền thông dưới sự hướng dẫn của TS. Nguyễn Đình Dũng. Tác giả xin
bày tỏ lòng biết ơn tới các thầy cô giáo thuộc Trường Đại học Công nghệ
Thông tin và Truyền thông, các thầy cô giáo thuộc Viện Công nghệ Thông tin
– Viện Hàn lâm Khoa học và Công nghệ Việt Nam đã tạo điều kiện, giúp đỡ
tác giả trong quá trình học tập và làm luận văn tại Trường, đặc biệt tác giả xin
bày tỏ lòng biết ơn tới TS. Nguyễn Đình Dũng đã tận tình hướng dẫn và cung
cấp nhiều tài liệu cần thiết để tác giả có thể hoàn thành luận văn đúng thời
hạn.
Xin chân thành cảm ơn anh chị em học viên cao học và bạn bè đồng nghiệp
đã trao đổi, khích lệ tác giả trong quá trình học tập và làm luận văn tại Trường Đại
học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên.
Cuối cùng tác giả xin gửi lời cảm ơn đến gia đình, những người đã luôn
bên cạnh, động viên và khuyến khích tôi trong quá trình thực hiện đề tài.
Thái Nguyên, ngày 10 tháng 04 năm 2020
Học viên cao học
Nguyễn Thị Thơ
ii
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này do chính tôi thực hiện, dưới sự hướng
dẫn khoa học của TS. Nguyễn Đình Dũng, các kết quả lý thuyết được trình
bày trong luận văn là sự tổng hợp từ các kết quả đã được công bố và có trích
dẫn đầy đủ, kết quả của chương trình thực nghiệm trong luận văn này được
tác giả thực hiện là hoàn toàn trung thực, nếu sai tôi hoàn toàn chịu trách
nhiệm.
Thái Nguyên, ngày 10 tháng 04 năm 2020
Học viên
Nguyễn Thị Thơ
iii
MỤC LỤC
LỜI CẢM ƠN ............................................................................................................ i
LỜI CAM ĐOAN ..................................................................................................... ii
MỤC LỤC ................................................................................................................ iii
DANH MỤC CÁC TỪ VIẾT TẮT .......................................................................... v
DANH MỤC CÁC HÌNH ẢNH ............................................................................. vi
DANH MỤC BẢNG BIỂU .................................................................................... vii
MỞ ĐẦU .................................................................................................................... 1
1. Tính khoa học và cấp thiết của đề tài ...................................................................... 1
2. Đối tượng và phạm vi nghiên cứu của đề tài .......................................................... 1
3. Phương pháp luận nghiên cứu ................................................................................. 2
4. Nội dung và bố cục của luận văn ............................................................................ 2
CHƯƠNG 1. TỔNG QUAN BÀI TOÁN DỰ BÁO TUYỂN SINH...................... 4
1.1 Tổng quan về dự báo ............................................................................................. 4
1.1.1 Khái niệm về dự báo .......................................................................................... 4
1.1.2 Mục đích của dự báo .......................................................................................... 5
1.1.3 Những thách thức trong phân tích dự báo .......................................................... 5
1.1.4 Phân loại các dự báo........................................................................................... 6
1.1.5 Đánh giá mô hình dự báo ................................................................................... 9
1.2 Dự báo dữ liệu chuỗi thời gian .............................................................................. 9
1.2.1 Giới thiệu ............................................................................................................ 9
1.2.2 Một số phương pháp dự báo chuỗi thời gian ................................................... 10
1.3 Bài toán dự báo tuyển sinh .................................................................................. 17
1.4 Kết luận chương ................................................................................................. 18
CHƯƠNG 2. MẠNG NƠ RON NHÂN TẠO VÀ BÀI TOÁN DỰ BÁO ........... 19
2.1 Các khái niệm chung về mạng nơron .................................................................. 19
2.1.1 Mạng nơron sinh học ........................................................................................ 19
2.1.2 Mạng nơron nhân tạo ....................................................................................... 20
2.1.3 Mô hình toán học và kiến trúc mạng nơron ..................................................... 22
iv
2.1.4 Phân loại mạng nơ ron ..................................................................................... 25
2.1.5 Huấn luyện mạng nơron ................................................................................... 26
2.2 Mạng nơron MLP và ứng dụng trong bài toán dự báo ....................................... 28
2.2.1 Kiến trúc mạng ................................................................................................. 28
2.2.2 Huấn luyện mạng ............................................................................................. 29
2.2.3 Các yếu tố ảnh hưởng đến hoạt động của mạng MLP ..................................... 32
2.2.4 Ưu nhược điểm và một số vấn đề của mạng nơron nhiều lớp ......................... 34
2.3 Một số hướng nghiên cứu về bài toán dự báo tuyển sinh sử dụng mạng nơ ron 34
2.3.1 Các nghiên cứu trên thế giới ............................................................................ 35
2.3.2 Các nghiên cứu trong nước .............................................................................. 36
2.4 Xây dựng mô hình dự báo tuyển sinh sử dụng mạng nơ ron MLP ..................... 37
2.4.1 Mô tả bài toán ................................................................................................... 37
2.4.2 Các bước thực hiện ........................................................................................... 37
2.5 Kết luận chương .................................................................................................. 38
CHƯƠNG 3. XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG DỰ BÁO
TUYỂN SINH ỨNG DỤNG MẠNG NƠ RON MLP .................................. 39
3.1 Giới thiệu về Trường THPT Lê Quý Đôn ........................................................... 39
3.2 Phát biểu bài toán ................................................................................................ 40
3.3 Xây dựng phần mềm mô phỏng .......................................................................... 43
3.3.1 Môi trường cài đặt ............................................................................................ 43
3.3.2 Cài đặt các chức năng con ................................................................................ 43
3.3.3 Kết quả hoạt động ............................................................................................ 44
3.4 Một số kết quả kiểm thử ...................................................................................... 46
3.5 Đánh giá hoạt động của mô hình dự báo sử dụng mạng MLP với một số mô
hình khác .......................................................................................................... 48
3.6 Kết luận chương .................................................................................................. 50
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ............................................................. 51
TÀI LIỆU THAM KHẢO ...................................................................................... 52
v
DANH MỤC CÁC TỪ VIẾT TẮT
Từ hoặc Từ tiếng Anh Từ tiếng Việt cụm từ
ANN Artificial Neural Network Mạng nơron nhân tạo
Autoregressive Tự hồi quy AR
Back Propagation Lan truyền ngược BP
Moving Average Đường trung bình di động MA
MAE Mean Absolute Error Sai số tuyệt đối
Mean Square Error Sai số trung bình MSE
Multilayer Neural Network Mạng nơron nhiều lớp MLP
NƠRON Neural Tế bào thần kinh
OUTPUTNODE Output Node Số nơron lớp ra
Genetic Algorithm Giải thuật di truyền GA
Evolutionary Programming Lập trình tiến hóa EP
vi
DANH MỤC CÁC HÌNH ẢNH
Hình 1.1. Dự báo định tính và định lượng .................................................................. 7
Hình 1.2. Phân loại các phương pháp dự báo chuỗi thời gian .................................. 10
Hình 2.1. Cấu trúc cơ bản của nơron sinh học .......................................................... 19
Hình 2.2. Nơron nhân tạo .......................................................................................... 21
Hình 2.3. Mô hình toán học mạng nơron nhân tạo ................................................... 22
Hình 2.4. Nơron 1 đầu vào với hàm hoạt hoá là hàm hardlimit ............................... 24
Hình 2.5. Phân loại mạng nơ ron [18] ....................................................................... 26
Hình 2.6. Học có giám sát ......................................................................................... 26
Hình 2.7. Học không có giám sát .............................................................................. 27
Hình 2.8. Học tăng cường ......................................................................................... 27
Hình 2.9. Mạng Perceptron đa lớp (MLP) ................................................................ 28
Hình 2.10. Cực trị địa phương và toàn cục ............................................................... 33
Hình 3.1. Giao diện chương trình chính.................................................................... 44
Hình 3.2. Nhập dữ liệu dự báo .................................................................................. 44
Hình 3.3. Nhập tham số dự báo ................................................................................. 45
Hình 3.4. Luyện mạng nơ ron ................................................................................... 45
Hình 3.5. Chạy kết quả dự báo .................................................................................. 46
Hình 3.6. Một số kết quả dự báo với các phương pháp dự báo khác nhau ............... 48
vii
DANH MỤC BẢNG BIỂU
Bảng 2.1. Một số dạng hàm hoạt hóa trong mạng nơron nhân tạo ........................... 25
Bảng 3.1. Cơ sở vật chất của Trường THPT Lê Quý Đôn ........................................ 39
Bảng 3.2. Dữ liệu tuyển sinh của Trường THPT Lê Quý Đôn ................................. 40
Bảng 3.3. Bảng dữ liệu học (với n=6, s=3) ............................................................... 42
Bảng 3.4. Các module chính của chương trình ......................................................... 43
Bảng 3.5. Kết quả thử nghiệm khi số nơ ron lớp ẩn thay đổi ................................... 47
Bảng 3.6. Kết quả thử nghiệm khi thời gian quan sát trước thay đổi ....................... 47
Bảng 3.7. Kết quả thử nghiệm một số phương pháp dự báo ..................................... 49
1
MỞ ĐẦU
1. Tính khoa học và cấp thiết của đề tài
Trong bối cảnh ứng dụng công nghệ thông tin ngày càng tăng, dữ liệu phát
sinh từ hoạt động quản lý, kinh doanh, sản xuất của các công ty, tổ chức ngày càng
nhiều. Các công ty, tổ chức cần phải nhanh chóng đưa ra các quyết định bằng cách
xử lý nhiều yếu tố với quy mô và tính phức tạp ngày càng tăng. Để có quyết định
chính xác nhất, người quản lý thường thực hiện việc dự đoán hay phân loại vấn đề
cần giải quyết trước khi ra quyết định. Ngoài việc dựa trên các yếu tố liên quan trực
tiếp đến vấn đề, người ra quyết định còn dựa trên kinh nghiệm bản thân và thông tin
có được từ các hoạt động trước đó. Dẫn đến một nhu cầu thực tế là cần có các phương
pháp khai phá dữ liệu thu thập được để làm căn cứ ra quyết định [4] .
Trong thực tế cuộc sống, công tác dự báo được ứng dụng rộng rãi ở hầu hết
các lĩnh vực như: Dự báo giá xăng dầu, dự báo chứng khoán, dự báo thời tiết… Công
tác dự báo nhằm mục đích dự báo trước sự thay đổi của đối tượng được dự báo dựa
trên cơ sở nghiên cứu các quy luật của đối tượng dự báo [9] .
Những năm gần đây ngành giáo dục cũng bắt đầu chú trọng đến công tác dự
báo nhằm đưa ra được những chính sách đúng đắn nhất. Có rất nhiều tác giả đã đi
vào nghiên cứu dự báo các lĩnh vực khác nhau của giáo dục như: Dự báo nhu cầu
giáo viên, dự báo tỉ lệ học sinh đỗ tốt nghiệp, dự báo tỉ lệ học sinh đỗ Đại học…
Chính vì thấy được lợi ích của việc dự báo trong giáo dục nên em chọn đề tài:
“Nghiên cứu mạng nơ ron và ứng dụng trong bài toán dự báo tuyển sinh Trường
THPT Lê Quý Đôn” để giúp đưa ra được những chính sách đúng đắn nhất trong thời
gian tới cho trường của mình.
2. Mục tiêu, đối tượng và phạm vi nghiên cứu của đề tài
Mục tiêu của đề tài là ứng dụng thử nghiệm phương pháp dự báo dùng mạng
nơ ron trong bài toán tuyển sinh tại trường THPT Lê Quý Đôn.
2
Đối tượng nghiên cứu là mạng nơ ron nhân tạo, mạng nơ ron lan truyền thẳng
và thuật toán lan truyền ngược. Phạm vi nghiên cứu là ứng dụng mạng nơ ron nhân
tạo cho bài toán dự báo nói chung và dự báo tuyển sinh trường THPT Lê Quý Đôn
nói riêng.
3. Phương pháp luận nghiên cứu
- Phương pháp nghiên cứu lý thuyết: Tổng hợp, nghiên cứu các tài liệu về bài
toán dự báo, mạng nơ ron nhân tạo; Tìm hiểu các kiến thức liên quan. Ứng dụng mạng
nơ ron nhân tạo, mạng nơ ron lan truyền thẳng và thuật toán lan truyền ngược vào bài
toán dự báo tuyển sinh trường THPT Lê Quý Đôn
- Phương pháp nghiên cứu thực nghiệm: Sau khi nghiên cứu lý thuyết, luận
văn sẽ tập trung vào xây dựng phần mềm mô phỏng mạng nơ ron: phân tích, thiết
kế phần mềm hướng đối tượng với các tính năng cho phép người sử dụng thực hiện
giải bài toán tuyển sinh bằng mạng nơ ron nhân tạo; Đánh giá kết quả sau khi thử
nghiệm
- Phương pháp trao đổi khoa học: Thảo luận, seminar, lấy ý kiến chuyên gia.
4. Nội dung và bố cục của luận văn
Ngoài phần mở đầu, kết luận và hướng phát triển, luận văn được bố cục thành
ba chương chính như sau:
Chương 1: Tổng quan về bài toán dự báo tuyển sinh
- Nghiên cứu về bài toán dự báo, các phương pháp dự báo. Đi sâu vào các
phương pháp dự báo chuỗi thời gian và khả năng áp dụng cho bài toán dự báo tuyển
sinh
Chương 2. Mạng nơ ron nhân tạo và bài toán dự báo
- Nghiên cứu về mạng nơron nhân tạo, tập trung vào mạng nơron truyền thẳng
nhiều lớp (MLP), chương này cung cấp chi tiết các vấn đề về quá trình huấn luyện và
thuật toán học của mạng MLP với trọng tâm là thuật toán lan truyền ngược sai số.
Nghiên cứu về việc ứng dụng mạng MLP trong dự báo chuỗi thời gian, xây dựng mô
hình mạng nơ ron MLP cho bài toán dự báo tuyển sinh
3
Chương 3. Xây dựng chương trình mô phỏng dự báo tuyển sinh ứng dụng
mạng nơ ron MLP
- Chương này giới thiệu về số liệu thu thập được, xây dựng chương trình thử
nghiệm dự báo số học sinh tuyển sinh vào trường THPT Lê Quý Đôn. Đối sánh kết
quả đạt được với một số phương pháp truyền thống. Từ đó chứng minh khả năng ứng
dụng phương pháp sử dụng mạng nơ ron MLP vào dự báo chuỗi thời gian.
4
-
CHƯƠNG 1
TỔNG QUAN BÀI TOÁN DỰ BÁO TUYỂN SINH
1.1 Tổng quan về dự báo
1.1.1 Khái niệm về dự báo
Trong thực tế, nhiều khi chúng ta thường phải đưa ra các quyết định liên quan
đến những sự việc sẽ xảy ra trong tương lai. Để cho các quyết định này có độ tin cậy
và đạt hiệu quả cao, cần thiết phải tiến hành công tác dự báo. Điều này sẽ càng quan
trọng hơn đối với một nền kinh tế thị trường, mang tính chất cạnh tranh cao. Dự báo
là khoa học và là nghệ thuật tiên đoán những sự việc sẽ xảy ra trong tương lai [4]
Tính khoa học của dự báo thể hiện ở chỗ khi tiến hành dự báo ta căn cứ trên
các số liệu phản ảnh tình hình thực tế ở hiện tại, quá khứ, căn cứ vào xu thế phát triển
của tình hình, dựa vào các mô hình toán học để dự đoán tình hình cơ bản sẽ xảy ra
trong tương lai. Nhưng các dự đoán này thường sai lệch hoặc thay đổi nếu xuất hiện
các tình huống kinh tế, tình huống quản trị không hoàn toàn phù hợp với mô hình dự
báo.
Tính nghệ thuật của dự báo là dựa trên những kinh nghiệm thực tế và khả năng
phán đoán của các chuyên gia để đưa ra được những dự đoán với độ chính xác cao
nhất.
Vì vậy, cần kết hợp chặt chẽ giữa các kết quả dự báo với kinh nghiệm và tài
nghệ phán đoán của các chuyên gia, các nhà quản trị mới có thể đạt được các quyết
định có độ tin cậy cao hơn. Mặt khác các kỹ thuật dự báo khác nhau thường cho ta
các kết quả dự báo có khi khác xa nhau. Chưa có một kỹ thuật nào tổng quát có thể
dùng cho mọi trường hợp cần dự báo. Vì vậy đối với một số vấn đề quan trọng và
phức tạp, nhất là khi dự báo dài hạn người ta thường dùng một số kỹ thuật dự báo rồi
căn cứ vào độ lệch chuẩn để chọn lấy kết quả thích hợp.
5
1.1.2 Mục đích của dự báo
Đưa ra được quyết định chính xác, nhất quán: Phân tích dự báo sẽ cung cấp
thông tin chi tiết về đối tượng dự báo từ đó sẽ đưa ra được các hành động chiến lược.
Phân tích dự báo được thực hiện liên tục và cho kết quả đáng tin cậy nhờ có sự hỗ trợ
của kỹ thuật. Các quyết định sẽ được đưa ra một cách nhất quán, công bằng chứ không
phải dựa trên tính chủ quan của con người [11] .
Giải quyết công việc nhanh hơn: Dự báo sẽ trả lời các câu hỏi phức tạp và xử
lý chúng với độ chính xác cao trong khoảng thời gian ngắn. Có những quyết định
trước đây phải mất hàng giờ hoặc vài ngày thì nhờ có sự hỗ trợ của khoa học chỉ còn
vài phút hoặc vài giây.
Giảm chi phí do giảm rủi ro: Với sự hiểu biết về đối tượng giúp các nhà lãnh
đạo đánh giá được chính xác những rủi ro và giảm tổn thất.
1.1.3 Những thách thức trong phân tích dự báo
Mục đích của dự báo là để giúp cải tiến về hiệu quả, hỗ trợ ra quyết định của
các nhà lãnh đạo. Tuy nhiên, không phải lúc nào dự báo cũng chính xác, một số yếu
tố ảnh hưởng đế độ chính xác của dự báo là: Trở ngại trong quản lý, dữ liệu, xây dựng
mô hình và quá trình triển khai [9] .
Những trở ngại trong quản lý: Thông thường để triển khai mô hình dự báo đòi
hỏi có sự chuyển đổi về các nguồn lực cho tổ chức nên cần có sự hỗ trợ từ các nhà
lãnh đạo để chuyển các mô hình từ nghiên cứu sang vận hành.
Những trở ngại về dữ liệu: Các mô hình thường yêu cầu dữ liệu dưới dạng một
bảng hoặc bảng có chứa hàng và cột (dữ liệu hai chiều). Nếu dữ liệu được lưu trữ
trong các cơ sở dữ liệu thì cần phải kết nối các cơ sở dữ liệu để tạo ra một bảng.
Trở ngại trong việc xây dựng mô hình: Trở ngại lớn nhất là quá tải, tức là mô
hình quá phức tạp và yêu cầu phải ghi nhớ dữ liệu huấn luyện. Hai trở ngại với mô
hình là: Thứ nhất mô hình thực hiện kém với dữ liệu mới và việc giải thích mô hình
không đáng tin cậy. Thứ hai, các nhà xây dựng mô hình quá tham vọng vào mô hình
6
được xây dựng trên dữ liệu có sẵn trong khoảng thời gian nhất định. Cách tốt nhất để
khắc phục là xây dựng một mô hình đơn giản sau đó có thể được cải tiến sau khi chạy
thử nghiệm.
Trở ngại trong triển khai mô hình:Thông thường các mô hình không quá phức
tạp về mặt tính toán. Tuy nhiên, các mô hình phải được kiểm tra bởi hệ thống hoạt
động và đưa ra dự đoán phù hợp với hệ thống đó.
1.1.4 Phân loại các dự báo
1.1.4.1 Căn cứ vào thời đoạn dự báo
- Dự báo ngắn hạn thời đoạn dự báo thường không quá 3 tháng, ít khi đến 1
năm. Loại dự báo này cần cho việc mua sắm, điều độ công việc, phân giao nhiệm vụ,
cân đối các mặt trong quản trị tác nghiệp.
- Dự báo trung hạn thời đoạn dự báo thường từ 3 tháng đến 3 năm, loại dự báo
này cần thiết cho việc lập kế hoạch bán hàng, kế hoạch sản xuất, dự trù tài chính tiền
mặt và làm căn cứ cho các loại kế hoạch khác.
- Dự báo dài hạn thời đoạn dự báo từ 3 năm trở lên. Loại dự báo này cần cho
việc lập các dự án sản xuất sản phẩm mới, các định điểm cho các cơ sở mới, lựa chọn
các dây chuyền công nghệ, thiết bị mới, mở rộng doanh nghiệp hiện có hoặc thành
lập doanh nghiệp mới.
1.1.4.2 Căn cứ vào nội dung công việc cần dự báo
- Dự báo kinh tế: Dự báo kinh tế cho các cơ quan nghiên cứu, cơ quan dịch vụ
thông tin, các bộ phận tư vấn kinh tế nhà nước thực hiện. Những chỉ tiêu này có giá
trị lớn trong việc hỗ trợ, tạo tiền đề cho công tác dự báo trung hạn, dài hạn của các
doanh nghiệp.
- Dự báo kỹ thuật công nghệ: Dự báo này đề cập đến mức độ phát triển khoa
học kỹ thuật công nghệ trong tương lai. Loại này rất quan trọng đối với các ngành có
hàm lượng kỹ thuật cao như năng lượng nguyên tử, tàu vũ trụ, dầu lửa, máy tính,
7
nghiên cứu không gian, điện tử… Dự báo kỹ thuật, công nghệ thường do các chuyên
gia trong các lĩnh vực đặc biệt thực hiện.
- Dự báo nhu cầu sản phẩm: Thực chất của dự báo nhu cầu là dự kiến, tiên
đoán về doanh số bán ra của doanh nghiệp. Loại dự báo này rất được các nhà quản trị
sản xuất quan tâm. Dự báo nhu cầu giúp cho các doanh nghiệp xác định được chủng
loại và số lượng sản phẩm, dich vụ mà họ cần tạo ra trong tương lai. Thông qua dự
báo nhu cầu các doanh nghiệp sẽ quyết định được quy mô sản xuất, hoạt động của
công ty, là cơ sở để dự kiến về tài chính, tiếp thị, nhân sự.
1.1.4.3 Căn cứ theo các phương pháp dự báo
Hình 1.1.Dự báo định tính và định lượng
Các phương pháp dự báo được chia thành 2 phương pháp là phương pháp định
tính và phương pháp định lượng [6] .
Phương pháp định tính: Hay còn gọi là phương pháp dự báo chuyên gia
(phương pháp Delphi) là phương pháp thu thập và xử lý những đánh giá dự báo bằng
cách tập hợp và hỏi ý kiến các chuyên gia giỏi thuộc một lĩnh vực hẹp của khoa học
- kỹ thuật hoặc sản xuất.
Phương pháp chuyên gia dựa trên cơ sở đánh giá tổng kết kinh nghiệm, khả
năng phản ánh tương lai một cách tự nhiên của các chuyên gia giỏi và xử lý thống kê
các câu trả lời một cách khoa học. Nhiệm vụ của phương pháp là đưa ra những dự
báo khách quan về tương lai phát triển của khoa học kỹ thuật hoặc sản xuất dựa trên
việc xử lý có hệ thống các đánh giá dự báo của các chuyên gia.
8
Phương pháp chuyên gia được áp dụng đặc biệt có hiệu quả trong các trường
hợp sau đây:
- Khi đối tượng dự báo có tầm bao quát lớn phụ thuộc nhiều yếu tố mà hiện tại
còn chưa có hoặc thiếu những cơ sở lý luận chắc chắn để xác định.
- Trong điều kiện còn thiếu thông tin và những thống kê đầy đủ, đáng tin cậy
về đặc tính của đối tượng dự báo.
- Trong điều kiện có độ bất định lớn của đối tượng dự báo, độ tin cậy thấp về
hình thức thể hiện, về chiều hướng biến thiên về phạm vi cũng như quy mô và cơ
cấu.
- Khi dự báo trung hạn và dài hạn đối tượng dự báo chịu ảnh hưởng của nhiều
nhân tố, phần lớn là các nhân tố rất khó lượng hoá đặc biệt là các nhân tố thuộc về
tâm lý xã hội (thị hiếu, thói quen, lối sống, đặc điểm dân cư...) hoặc tiến bộ khoa học
kỹ thuật. Vì vậy trong quá trình phát triển của mình đối tượng dự báo có nhiều đột
biến về quy mô và cơ cấu mà nếu không nhờ đến tài nghệ của chuyên gia thì mọi sự
trở nên vô nghĩa.
Trong điều kiện thiếu thời gian, hoàn cảnh cấp bách phương pháp chuyên gia
cũng được áp dụng để đưa ra các dự báo kịp thời.Quá trình áp dụng phương pháp
chuyên gia có thể chia làm ba giai đoạn lớn:
- Lựa chọn chuyên gia
- Trưng cầu ý kiến chuyên gia;
- Thu thập và xử lý các đánh giá dự báo.
Chuyên gia giỏi là người thấy rõ nhất những mâu thuẫn và những vấn đề tồn
tại trong lĩnh vực hoạt động của mình, đồng thời về mặt tâm lý họ luôn luôn hướng
về tương lai để giải quyết những vấn đề đó dựa trên những hiểu biết sâu sắc, kinh
nghiệm sản xuất phong phú và linh cảm nghề nghiệp nhạy bén.
Phương pháp định lượng: Các phương pháp dự báo định lượng đều dựa trên
cơ sở Toán học, Thống kê. Hình 1.1 mô tả việc phân loại các phương pháp dự báo
định lượng theo các tiêu chí sau:
9
- Để dự báo nhu cầu tương lai, không xét đến các nhân tố ảnh hưởng khác ta
có thể dùng các phương pháp dự báo theo dãy số thời gian.
- Khi cần xét đến các nhân tố khác ảnh hưởng đến nhu cầu (ngoài thời gian) ta
có thể dùng các phương pháp dự báo dựa trên mối liên hệ tương quan.
1.1.5 Đánh giá mô hình dự báo
Để đánh giá độ chính xác của mô hình dự báo luận văn sử dụng hai đánh giá
sau: Sai số bình phương trung bình (Mean Square Error):
(1.1)
Sai số phần trăm tuyệt đối trung bình (Mean Absolute Error)
(1.2)
Trong đó:
Giá trị dự báo sinh ra bởi mô hình tại mẫu dữ liệu thứ i
: Giá trị quan sát tại mẫu dữ liệu thứ i
n: chiều dài chuỗi dự đoán
1.2 Dự báo dữ liệu chuỗi thời gian
1.2.1 Giới thiệu
Để thực hiện bài toán dự báo tuyển sinh, việc lựa chọn các mô hình dự báo
dựa trên dự báo số liệu chuỗi thời gian được cho là phù hợp hơn cả. Vì vậy, phần này
của chương sẽ tập trung phân tích một số phương pháp dự báo chuỗi thời gian cơ bản
để làm căn cứ lựa chọn thiết kế hệ thống dự báo tuyển sinh.
Phương pháp dự báo theo dãy số thời gian được xây dựng trên một giả thiết
về sự tồn tại và lưu lại các nhân tố quyết định đại lượng dự báo từ quá khứ đến tương
lai. Trong phương pháp này đại lượng cần dự báo được xác định trên cơ sở phân tích
chuỗi các số liệu thống kê được trong quá khứ.
10
Như vậy thực chất của phương pháp dự báo theo dãy số thời gian là kéo dài
quy luật phát triển của đối tượng dự báo đã có trong quá khứ và hiện tại sang tương
lai với giả thiết quy luật đó vẫn còn phát huy tác dụng.
Các yếu tố đặc trưng của dãy số theo thời gian gồm:
- Tính xu hướng: Tính xu hướng của dòng nhu cầu thể hiện sự thay đổi của
các dữ liệu theo thời gian (tăng, giảm...)
- Tính mùa vụ: Thể hiện sự dao động hay biến đổi dữ liệu theo thời gian được
lặp đi lặp lại theo những chu kỳ đều đặn do sự tác động của một hay nhiều nhân tố môi
trường xung quanh như tập quán sinh hoạt, hoạt động kinh tế xã hội... Ví dụ: Nhu cầu
dịch vụ bưu chính viễn thông không đồng đều theo các tháng trong năm.
- Biến đổi có chu kỳ: Chu kỳ là yếu tố lặp đi lặp lại sau một giai đoạn thời
gian. Ví dụ: Chu kỳ sinh học, chu kỳ phục hồi kinh tế...
- Biến đổi ngẫu nhiên: Biến đổi ngẫu nhiên là sự dao động của dòng nhu cầu
do các yếu tố ngẫu nhiên gây ra, không có quy luật.
Hình 1.2.Phân loại các phương pháp dự báo chuỗi thời gian
1.2.2 Một số phương pháp dự báo chuỗi thời gian
Các mô hình dựa báo chuỗi thời gian được mô tả trong Hình 1.2. Trong thời
điểm ban đầu, việc giải bài toán dự báo chuỗi thời gian, dự báo được thực hiện bằng
phương pháp làm trơn và ngoại suy chuỗi dữ liệu thời gian thông qua việc làm khớp
11
toàn cục (global fit) trên miền thời gian. Sau này, phương pháp nói trên được thay thế
bởi sự xuất hiện các mô hình chuỗi thời gian tuyến tính (linear) với các đặc điểm tích
cực dễ hiểu để phân tích dữ liệu và rất dễ để thực hiện. Điểm chưa tốt là chúng làm
việc không hiệu quả với các chuỗi thời gian phi tuyến (non-linear). Do vậy, nhờ có
những tiến bộ trong học máy, các mô hình phi tuyến dần được nghiên cứu và áp dụng
đối với các chuỗi thời gian phi tuyến tính, với mức độ phức tạp cao
1.2.2.1 Một số phương pháp dự báo chuỗi thời gian đơn giản
Phương pháp trung bình giản đơn (Simple Average)
Phương pháp trung bình giản đơn là phương pháp dự báo trên cơ sở lấy trung
bình của các dữ liệu đã qua, trong đó các nhu cầu của các giai đoạn trước đều có trọng
số như nhau, nó được thể hiện bằng công thức:
(1.3)
Trong đó: - Nhu cầu dự báo cho thời điểm t
- Giá trị thực ở thời điểm t-i
n- Số thời điểm quan sát
Phương pháp này san bằng được tất cả mọi sự biến động ngẫu nhiên của đại
lượng dự báo, vì vậy nó là mô hình dự báo rất kém nhạy bén với sự biến động của đại
lượng dự báo. Phương pháp này phù hợp với đại lượng dự báo đều, ổn định, sai số sẽ
rất lớn nếu ta gặp đại lượng dự báo có tính chất thời vụ hoặc đại lượng dự báo có tính
xu hướng.
Phương pháp trung bình động
Trong trường hợp khi nhu cầu có sự biến động, trong đó thời gian gần nhất có
ảnh hưởng nhiều nhất đến kết quả dự báo, thời gian càng xa thì ảnh hưởng càng nhỏ
ta dùng phương pháp trung bình động sẽ thích hợp hơn.
Phương pháp trung bình động dùng kết quả trên cơ sở thay đổi liên tục khoảng
thời gian trước đây cho dự báo giai đoạn tiếp theo:
12
Khi sử dụng phương pháp trung bình động đòi hỏi phải xác định n sao cho sai
số dự báo là nhỏ nhất, đó chính là công việc của người dự báo, n phải điều chỉnh
thường xuyên tuỳ theo sự thay đổi tính chất của đại lượng dự báo. Để chọn n hợp lý
cũng như để đánh giá mức độ chính xác của dự báo người ta căn cứ vào sai lệch tuyệt
đối trung bình (MAE).
Phương pháp trung bình động có trọng số
Đây là phương pháp bình quân nhưng có tính đến ảnh hưởng của từng giai
đoạn khác nhau đến nhu cầu, thông qua việc sử dụng các trọng số.
(1.4)
Trong đó: - Nhu cầu dự báo cho thời điểm t
- Mức nhu cầu thực ở thời điểm t-i
n- Số thời điểm quan sát
- Trọng số ở thời điểm t-i
được lựa chọn bởi người dự báo dựa trên cơ sở phân tích tính chất của dòng
nhu cầu, thoả mãn điều kiện:
và (1.5)
Trong phương pháp trung bình động có trọng số, độ chính xác của dự báo phụ
thuộc vào khả năng xác định được các trọng số phù hợp. Thực tế chỉ ra rằng, nhờ điều
chỉnh thường xuyên hệ số của mô hình dự báo, phương pháp trung bình động có
trọng số mang lại kết quả dự báo chính xác hơn phương pháp trung bình động.
Các phương pháp trung bình giản đơn, trung bình động, trung bình động có
trọng số đều có các đặc điểm sau:
- Khi số quan sát n tăng lên, khả năng san bằng các giao động tốt hơn, nhưng
kết quả dự báo ít nhạy cảm hơn với những biến đổi thực tế của nhu cầu.
13
- Dự báo thường không bắt kịp nhu cầu, không bắt kịp xu hướng thay đổi nhu
cầu.
- Đòi hỏi phải ghi chép số liệu đã qua rất chính xác và phải đủ lớn.
- Để dự báo nhu cầu ở kỳ t chỉ sử dụng n mức nhu cầu thực gần nhất từ kỳ
t-1 trở về trước còn các số liệu từ kỳ n+1 trở đi trong quá khứ bị cắt bỏ, nhưng
thực tế và lý luận không ai chứng minh được rằng các số liệu từ kỳ n +1 trở về trước
hoàn toàn không ảnh hưởng gì đến đại lượng cần dự báo.
Phương pháp san bằng hàm mũ giản đơn
Để khắc phục những hạn chế của các phương pháp trên, người ta đề xuất sử
dụng phương pháp san bằng hàm mũ giản đơn để dự báo. Đây là phương pháp dễ sử
dụng nhất, nó cần ít số liệu trong quá khứ. Theo phương pháp này:
(1.6)
Trong đó: - Nhu cầu dự báo cho thời điểm t
- Nhu cầu dự báo cho thời điểm t-1
- Mức nhu cầu thực ở thời điểm t-1
- Hệ số san bằng mũ
Thực chất là dự báo mới bằng dự báo cũ cộng với khoảng chênh lệch giữa nhu
cầu thực và dự báo của kỳ đã qua, có điều chỉnh cho phù hợp.
Hệ số trong mô hình dự báo thể hiện tầm quan trọng hay mức độ ảnh hưởng
của số liệu hiện tại đến đại lượng dự báo. Hệ số càng lớn mô hình càng nhạy bén
với sự biến động của dòng nhu cầu. Nếu chọn α = 0,7, thì chỉ cần 3 số liệu đầu tiên
đã tham gia 97,3% vào kết quả dự báo.
Hệ số chọn càng nhỏ mô hình dự báo càng kém nhạy bén hơn với sự biến
đổi của dòng nhu cầu. Nếu chọn α = 0,2 thì giá trị hiện tại chỉ tham gia 20% vào kết
quả dự báo, tiếp đó là 16%... và 5 số liệu mới nhất chiếm khoảng 67%, dãy số còn lại
từ kỳ thứ 6 trong quá khứ về vô cùng chiếm 33% kết quả dự báo.
14
1.2.2.2 Dự báo chuỗi thời gian sử dụng mô hình hồi quy tuyến tính
Mô hình tự hồi quy (AR)
Trong mô hình tự hồi quy, chuỗi thời gian được mô tả bởi phương trình sau:
(1.7)
Trong đó:
là các tham số của mô hình
:nhiễu trắng (white noise)
Phương trình (1.7) được gọi là phương trình biểu diễn của mô hình tự hồi quy
bậc p (Ký hiệu là AR(p)).
Mô hình trung bình di động (MA)
Chuỗi thời gian được gọi là quá trình trung bình di động bậc q (ký hiệu là
MA(q)) nếu như mỗi quan sát của quá trình MA(q) được viết dưới dạng như sau:
(1.8)
Với là một quá trình nhiễu trắng (white noise) với trung bình bằng 0,
là các tham số của mô hình. Phương trình (1.8) trên cho thấy mô hình MA
hoạt động mà không cần thông tin phản hồi. Có nhiều chuỗi thời gian được làm khớp
dựa hoàn toàn trên các thông tin phản hồi, điều này được thực hiện thông qua mô
hình tự hồi quy AR.
Mô hình tự hồi quy và trung bình trượt (ARMA)
Các chuỗi thời gian đôi khi không thể mô hình hóa được bằng MA hay AR do
chúng có đặc tính của cả hai quá trình này. Khi đó, để biểu diễn, người ta sử dụng mô
hình ARMA, là pha trộn của cả hai mô hình MA và AR.
Khi đó, quá trình ARMA(p,q) được mô tả như sau:
15
(1.9)
Lúc này, việc dự báo có thể thực hiện được nhờ xác định p và q. Việc xác định
này được thực hiện bởi người thực hiện dự báo thông qua kinh nghiệm. Trong đó, p
được xác định dựa trên việc vẽ các hàm tự tương quan một phần (partial
autocorrelation functions), đồng thời q được xác định thông qua các hàm tự tương
quan (autocorrelation functions). Điều quan trọng là các mô hình này có thể giải thích
được kết quả dự báo thông qua các công cụ trình diễn trên máy tính.
1.2.2.3 Dự báo chuỗi thời gian sử dụng mô hình phi tuyến tính
Để mô tả các quá trình phi tuyến tính, các mô hình này giả thiết dữ liệu chuỗi
thời gian là phi tuyến tính. Điều này phù hợp với thực tế rằng các chuỗi thời gian
không thể biết trước chúng có đặc tính là tuyến tính hay phi tuyến tính. Tuy nhiên,
đặc điểm của mô hình này là sử dụng rất nhiều tham số xây dựng mô hình và do đó,
rất khó giải thích quá trình xác định các tham số của mô hình. Vì đặc tính này, các
mô hình phi tuyến tính được coi như quá trình hộp đen.
Dưới đây trình bày một số mô hình tiêu biểu sử dụng để dự báo dữ liệu chuỗi
thời gian, theo [3] .
Mô hình Markov ẩn (Hidden Markov Model)
Mô hình Markov ẩn (HMM) cũng được sử dụng để dự báo dữ liệu chuỗi thời
gian. Tuy vậy, mô hình này không thích hợp để giải quyết các vấn đề liên quan đến
dữ liệu liên tục. Do vậy, các mô hình HMM đã được hiệu chỉnh để sử dụng trong giải
quyết bài toán dự báo chuỗi thời gian. Theo đó, mô hình toán học của nó trở nên quá
phức tạp để áp dụng thuật toán forward-backward xác định các tham số, độ phức tạp
của giải thuật này là O(N2), nên rất khó mở rộng cho các tập dữ liệu kích thước lớn.
Cũng có vài phương pháp khác không thông dụng để dự báo phi tuyến. Một
trong số đó được gọi phương pháp Analogues. Cách tiếp cận này khá đơn giản và chỉ
có vài tham số tự do nhưng chỉ áp dụng cho các chu kỳ thời gian ngắn.
Dự báo chuỗi thời gian mờ
16
Để vượt qua được những khó khăn của mô hình tuyến tính, gần đây nhiều tác
giả đã sử dụng mô hình chuỗi thời gian mờ. Khái niệm tập mờ được Zadeh đưa ra từ
năm 1965 và ngày càng tìm được ứng dụng trong nhiều lĩnh vực khác nhau nhất là
trong điều khiển và trí tuệ nhân tạo. Trong lĩnh vực phân tích chuỗi thời gian, Song
và Chissom đã đưa ra khái niệm chuỗi thời gian mờ không phụ thuộc vào thời gian
(chuỗi thời gian dừng) và phụ thuộc vào thời gian (không dừng) để dự báo. Chen đã
cải tiến và đưa ra phương pháp mới đơn giản và hữu hiệu hơn so với phương pháp
của Song và Chissom. Trong phương pháp của mình, thay vì sử dụng các phép tính
tổ hợp Max-Min phức tạp, Chen đã tính toán bằng các phép tính số học đơn giản để
thiết lập các mối quan hệ mờ. Phương pháp của Chen cho hiệu quả cao hơn về mặt
sai số dự báo và giảm độ phức tạp của thuật toán.
Từ các công trình ban đầu về chuỗi thời gian mờ được xuất hiện năm 1993,
hiện nay mô hình này đang được sử dụng để dự báo trong rất nhiều lĩnh vực của kinh
tế hay xã hội như giáo dục để dự báo số sinh viên nhập trường hay trong lĩnh vực dự
báo thất nghiệp, dân số, chứng khoán và trong đời sống như dự báo mức tiêu thụ điện,
hay dự báo nhiệt độ của thời tiết...
Tuy nhiên xét về độ chính xác của dự báo, các thuật toán trên cho kết quả chưa
cao. Để nâng cao độ chính xác của dự báo, một số thuật toán cho mô hình chuỗi thời
gian mờ liên tiếp được đưa ra. Chen cũng đã sử dụng mô hình bậc cao của chuỗi thời
gian mờ để tính toán. Sah và Degtiarev thay vì dự báo chuỗi thời gian đã sử dụng
chuỗi thời gian là hiệu số bậc nhất để nâng cao độ chính xác và làm giảm độ phi
tuyến. Đây cũng là một phương pháp hay được sử dụng trong mô hình Box-Jenkins
để loại bỏ tính không dừng của chuỗi thời gian. Huarng đã sử dụng các thông tin có
trước trong tính chất của chuỗi thời gian như mức độ tăng giảm để đưa ra mô hình
heuristic chuỗi thời gian mờ.
Dự báo chuỗi thời gian sử dụng mạng nơron nhân tạo
Mô hình mạng nơron là mô hình có khả năng “học” từ các dữ liệu quá khứ, có
thể cập nhật các tham số. Vì vậy nếu lựa chọn được các tham số tối ưu thì nó sẽ là
17
mô hình xấp xỉ rất tốt đường cong dịch chuyển của đối tượng cần dự báo. Kết quả dự
báo cũng có độ chính xác cao [12] [13] [16] .
Có nhiều vấn đề trong việc xây dựng mạng nơron nhân tạo áp dụng trong dự
báo dữ liệu [8] . Luận văn sẽ mô tả cách xây dựng mô hình sử dụng mạng nơron để
thực hiện dự báo chuỗi thời gian trong các chương kế tiếp.
1.3 Bài toán dự báo tuyển sinh
Dự báo tuyển sinh là nhân tố cơ bản trong việc lập kế hoạch và ngân sách tại
bất kỳ cơ sở giáo dục đào tạo nào phụ thuộc vào tuyển sinh hoặc tại bất kỳ cơ quan
hoặc tổ chức nào có trách nhiệm hỗ trợ các tổ chức đó. Nhiều vấn đề chính sách của
tổ chức có liên quan đến dự báo tuyển sinh như chính sách học phí, dự báo ngân sách,
nhân sự giáo viên, đóng cửa hoặc hợp nhất tổ chức, và tối ưu hóa các mục tiêu liên
quan đến quy mô và thành phần của tuyển sinh [14]
Bản chất của việc dự báo tuyển sinh là ước lượng số lượng đầu vào tại cơ sở
giáo dục theo đúng năm dựa trên một số các thông số ảnh hưởng như: các yếu tố về
kinh tế, văn hóa và xã hội, chính sách cộng đồng, nỗ lực tuyển sinh, thủ tục hỗ trợ
học tập… Các tham số này chính là đầu vào của bài toán dự báo tuyển sinh [17] .
Để lựa chọn dữ liệu đầu vào cho bài toán tuyển sinh có rất nhiều phương án.
Phương án 1: Dựa vào các yếu tố đặc trưng ảnh hưởng đến đầu vào như: Số
học sinh đỗ tốt nghiệp hàng năm; số học sinh thi đỗ cao đẳng, đại học.
Số lượng học sinh thi đỗ tốt nghiệp và cao đẳng, đại học thể hiện danh tiếng
hay chất lượng đào tạo của một cơ sở giáo dục. Danh tiếng của cơ sở đó càng lớn thì
số lượng học sinh đăng ký vào học sẽ càng cao.
Tuy nhiên với đặc thù của một trường THPT thì phương án này không được
chọn vì số đặc trưng quá ít có quan hệ không rõ với mục đích nhập học của học sinh.
Ngoài ra, số các đặc trưng ảnh hưởng đến số liệu tuyển sinh quá ít.
Phương án 2: Chọn 1 đặc trưng đó là số học sinh tuyển vào trong một số
năm của cơ sở đào tạo.
18
Số lượng học sinh tuyển vào cơ sở đào tạo trong một số năm có nhiều biến
động, có ảnh hưởng đến số liệu trong những năm tiếp theo. Ngoài ra, do số liệu trải
dài trong nhiều năm nên số đặc trưng là tương đối đủ để dự báo.
Sử dụng 1 đặc trưng theo thời gian làm cấu trúc dữ liệu cho bài toán nên
phương án giải bài toán sẽ là dự báo chuỗi thời gian. Tức là sử dụng dữ liệu của những
năm trước để dự báo cho những năm tiếp theo. Đây cũng là hướng tiếp cận được lựa
chọn trong luận văn.
1.4 Kết luận chương 1
Dự báo tuyển sinh một nhu cầu thiết yếu đối với công tác quản lý đào tạo vì
nó mang tính định hướng cho tương lai, giúp đưa ra được những quyết định đúng đắn
nhất.
Có rất nhiều cách thức tiếp cận khác nhau cho bài toán dự báo tuyển sinh.
Trong đó, tiếp cận theo chuỗi thời gian là phù hợp hơn cả. Tuy nhiên, trong dự báo
chuỗi thời gian cũng tồn tại rất nhiều giải pháp. Từ việc sử dụng các phương pháp
đơn giản như phương pháp trung bình đơn giản, trung bình động, làm trơn có trọng
số, hay các mô hình tuyến tính AR, MA cho đến việc sử dụng các mô hình phi tuyến
có ứng dụng các phương pháp trong học máy. Do đó, cần phải cân nhắc, lựa chọn
phương pháp phù hợp cho bài toán dự báo tuyển sinh.
Qua khảo sát các phương pháp dự báo chuỗi thời gian, mạng nơ ron được xem
là công cụ phù hợp nhất cho bài toán dự báo tuyển sinh. Các kiến thức cụ thể về mạng
nơ ron cũng như cách thức sử dụng mạng nơ ron cho bài toán tuyển sinh sẽ được trình
bày rõ hơn trong các chương tiếp theo của luận văn.
19
CHƯƠNG 2
MẠNG NƠ RON NHÂN TẠO VÀ BÀI TOÁN DỰ BÁO
2.1 Các khái niệm chung về mạng nơron
2.1.1 Mạng nơron sinh học
Não bộ con người là một mạng lưới khoảng 1011 tế bào thần kinh hay còn gọi
là nơron. Chúng có cấu trúc và chức năng tương đối đồng nhất. Các nhà nghiên cứu
sinh học về bộ não con người đã đưa ra kết luận rằng các nơron là đơn vị đảm nhiệm
những chức năng nhất định trong hệ thần kinh bao gồm não, tuỷ sống và các dây thần
Nhân (body)
Sợi trục (axon)
kinh. Hình 2.1 chỉ ra cấu tạo của hệ thống tế bào sinh học này [1] .
Khớp (Synapse)
Nhánh hình cây (dendrites)
Thân nơron thần kinh
Hình 2.1.Cấu trúc cơ bản của nơron sinh học
Cấu trúc của một nơron được chia thành 3 phần chính: Phần thân, hệ thống dây
thần kinh tiếp nhận và sợi trục thần kinh ra. Hệ thống dây thần kinh tiếp nhận tạo
thành một mạng lưới dày đặc xung quanh thân tế bào (chiếm diện tích khoảng 0.25
mm2). Chúng là đầu vào để đưa các tín hiệu điện đến thân tế bào.Thân tế bào có nhân
bên trong sẽ tổng hợp các tín hiệu vào và sẽ làm thay đổi điện thế của bản thân nó.
Khi điện thế này vượt quá một mức ngưỡng thì nhân tế bào sẽ kích thích đưa một
20
xung điện ra sợi trục thần kinh ra. Sợi trục thần kinh ra có thể dài một vài centimet
đến vài met. Nó có thể phân thành nhiều nhánh theo dạng hình cây để nối với các dây
thần kinh vào của nhiều tế bào khác hoặc có thể nối trực tiếp đến thân tế bào của duy
nhất một nơron. Việc kết nối này được thực hiện nhờ các khớp nối. Số khớp nối của
mỗi nơron có thể lên tới hàng trăm ngàn. Người ta tính toán rằng mạng lưới dây thần
kinh ra và các khớp nối chiếm khoảng 90% diện tích bề mặt nơron. Các tín hiệu điện
truyền trên các sợi dây thần kinh cũng như hiệu điện thế của nhân tế bào là kết quả
của quá trình phản ứng và giải phóng của các chất hữu cơ được đưa ra từ các khớp
nối dẫn đến dây thần kinh vào. Xung điện đưa ra sợi trục axon sẽ truyền tới các khớp
nối với đầu vào của các nơron khác và sẽ kích thích giải phóng các chất truyền điện.
Tuỳ theo việc tăng hay giảm hiệu điện thế mà người ta chia thành hai loại khớp nối
là khớp nối kích thích và khớp nối ức chế. Cường độ tín hiệu mà một tế bào thần kinh
nhận được phụ thuộc chủ yếu vào mức độ liên kết của khớp nối. Các nghiên cứu chỉ
ra rằng quá trình học của mạng nơron sinh học chính là việc thay đổi mức độ liên kết
của các khớp nối. Chính cấu trúc mạng nơron và mức độ liên kết của các khớp nối đã
tạo nên chức năng của hệ thần kinh con người. Quá trình phát triển của hệ thần kinh
là một quá trình “học” liên tục. Ngay từ khi chúng ta sinh ra, một số cấu trúc thần
kinh đơn giản đã được hình thành. Sau đó các cấu trúc khác lần lượt được xây dựng
thêm nhờ quá trình học. Do đó cấu trúc mạng nơron liên tục biến đổi để ngày càng
phát triển hoàn thiện.
Một vấn đề đặt ra là dựa trên những kết quả nghiên cứu về hệ thần kinh con
người chúng ta có thể mô phỏng, xây dựng lên các hệ thần kinh nhân tạo nhằm phục
vụ cho một chức năng nào đó không. Nghiên cứu trả lời câu hỏi này đã đưa ra một
hướng phát triển mới: Mạng nơron nhân tạo.
2.1.2 Mạng nơron nhân tạo
2.1.2.1 Nơron nhân tạo
Nơron nhân tạo là sự rút gọn hết sức đơn giản của nơron sinh học. Nó có thể
thực hiện nhờ chương trình máy tính hoặc bằng mạch phần cứng. Mỗi nơron thực
21
hiện hai chức năng là chức năng đầu vào và chức năng kích hoạt đầu ra. Do đó ta có
thể coi mỗi nơron như là một đơn vị xử lý. Nó được xây dựng mô phỏng theo cấu
trúc của các nơron sinh học. Mỗi nơron có một số đầu vào giống như các dây thần
kinh tiếp nhận. Các đầu vào này làm nhiệm vụ tiếp nhận thông tin từ các nơron khác
hoặc từ tập số liệu gốc vào. Tương tự như nơron sinh học, mỗi đầu vào của nơron
nhân tạo có ảnh hưởng khác nhau đối với tín hiệu ra của nơron (còn gọi là kết xuất
của nơron). Điều này được thực hiện nhờ các hệ số được gán cho từng đầu vào -wi:
trọng số của đầu vào thứ i. Giá trị của wi có thể dương hay âm tương tự như việc có
hai loại khớp nối trong mạng nơron sinh học. Nếu wi có giá trị dương thì tương đương
với khớp nối kích thích còn nếu wi âm thì tương đương với khớp nối ức chế. Thân
nơron sẽ làm nhiệm vụ tổng hợp các tín hiệu đầu vào xử lý để đưa một tín hiệu ra đầu
ra của nơron. Quá trình xử lý, tính toán này sẽ được đề cập cụ thể ở phần sau. Đầu ra
của nơron nhân tạo tương tự như sợi trục axon của nơron sinh học. Tín hiệu ra cũng
có thể tách ra thành nhiều nhánh theo cấu trúc hình cây để đưa đến đầu vào của các
x1
x2
xm
w1
wm
w2
nơron khác.
bias
Out
Hình 2.2.Nơron nhân tạo
2.1.2.2 Mạng nơron nhân tạo
Các nơron nhân tạo được tổ chức thành mạng nơron nhân tạo. Các nơron thường
được sắp xếp trong mạng thành từng lớp. Đầu ra của mỗi nơron sẽ được nối đến đầu
vào của một số nơron khác theo một cấu trúc phù hợp. Tuy nhiên cấu trúc mạng nơron
nhân tạo chưa thể đạt được độ phức tạp như mạng nơron sinh học. Mạng nơron nhân
tạo hiện chỉ mới là sự mô phỏng hết sức đơn giản cấu trúc của mạng nơron sinh học.
22
Giữa mạng nơron nhân tạo và mạng nơron sinh học có 3 điểm chung là
1) Mạng được xây dựng bằng các phần tử tính toán đơn giản liên kết lại với
nhau một cách phức tạp và hoạt động theo nguyên tắc song song.
2) Chức năng của mạng được xác định qua cấu trúc mạng, quá trình xử lý bên
trong các phần tử và mức độ liên kết giữa các phần tử.
3) Mức độ liên kết giữa các phần tử được xác định thông qua quá trình học của
mạng (hay còn gọi là quá trình huấn luyện mạng).
Điểm khác nhau về căn bản giữa Mạng nơron nhân tạo và mạng nơron sinh học
là ở tốc độ tính toán, độ phức tạp và tính song song. Tuy xét về tốc độ xử lý của các
máy tính hiện đại là cao hơn rất nhiều so với tốc độ xử lý của não bộ con người nhưng
bộ não lại có thể đồng thời kích hoạt toàn bộ các nơron để làm nhiều công việc khác
nhau. Điều này mạng nơron nhân tạo không thể thực hiện được. Với sự phát triển
nhanh chóng của khoa học như hiện nay thì ta có thể hi vọng sẽ có những bước đột
phá mới trong lĩnh vực mô phỏng mạng nơron sinh học.
2.1.3 Mô hình toán học và kiến trúc mạng nơron
2.1.3.1 Mô hình toán học của một nơron nhân tạo
Dựa trên những kiến thức cơ bản về nơron nhân tạo như đã trình bày ở phần
trên, ta có thể xây dựng một mô hình toán học của nơron nhân tạo như Hình 2.3 dưới
đây
p1 wS,1
nnet wS,2 p2 a f
p3 wS,R
b (bias)
Hình 2.3 Mô hình toán học mạng nơron nhân tạo
Các tín hiệu vào (còn gọi là mẫu vào) pi (i=1..R) được đưa tới đầu vào của nơron
S tạo thành ma trận tín hiệu vào P. Mỗi đầu vào của nơron S sẽ có một trọng số kí
23
hiệu là ws,i (i=1..R) và các trọng số này tạo thành một ma trận trọng số đầu vào W
của nơron. Mức ngưỡng của nơron có thể được biễu diễn trong mô hình toán học
bằng hệ số bias b (gọi là thế hiệu dịch). Ta có b=-. Hàm thế sau khớp nối (Post
Synaptic Potential function - PSP) là tổng của các tín hiệu vào có trọng số và hệ số
bias. Như vậy tín hiệu vào là nnet sẽ được tính theo công thức sau:
(2.1)
Viết dưới dạng ma trận sẽ là:
(2.2)
Xem các biểu thức trên thì ta có thể coi hệ số bias như trọng số của một đầu vào
với tín hiệu bằng 1. Có một số loại nơron có thể bỏ qua hệ số bias này.
Hàm hoạt hoá (hay còn gọi là hàm truyền đạt) được kí hiệu là f sẽ biến đổi tín
hiệu đầu vào net thành tín hiệu đầu ra nơron a Ta có biểu thức:
a=f(nnet)=f(WP+b) (2.3)
Thông thường thì hàm đầu ra sẽ được chọn bởi người thiết kế tuỳ theo mục đích
của mạng. Các trọng số và hệ số bias là các thông số điều chỉnh được của mạng nơron.
Chúng được điều chỉnh bởi một số luật học. Như vậy quan hệ giữa đầu ra và các đầu
vào của nơron sẽ tuỳ thuộc vào việc nơron đó được dùng cho các mục đích cụ thể
nào.
2.1.3.2 Cấu trúc mạng nhân tạo
Mạng nơron thường được cấu tạo thành các lớp gồm lớp vào, lớp ra và các lớp
ẩn. Các nơron trong một lớp chỉ nối với các nơron lớp tiếp theo, không cho phép có
các liên kết giữa các nơron trong cùng một lớp
Lớp vào là lớp nhận thông tin từ số liệu gốc. Thông tin này được đưa đến đầu
vào của một số hay toàn bộ các nơron của lớp tiếp theo (lớp ẩn). Như vậy mỗi nút
24
của lớp ẩn sẽ nhận được tín hiệu của một số các nút lớp vào. Các giá trị này sẽ được
nhân với hệ số nhân (trọng số) của các nút ẩn và đưa vào hàm thế sau khớp nối thực
hiện chức năng đầu vào để tạo tín hiệu duy nhất net. Chức năng kích hoạt đầu ra được
thực hiện bằng hàm hoạt hoá. Hàm này sẽ nhận tín hiệu đầu vào net để tạo ra tín hiệu
đầu ra của nơron (kết xuất của nơron lớp ẩn). Tín hiệu ra của các nút ẩn lại được đưa
đến các nút của lớp tiếp theo. Quá trình xử lý tương tự cho đến khi tín hiệu được đưa
ra tại các nút lớp ra. Đây chính là tín hiệu đầu ra của mạng. Nó chính là giá trị của
các biến cần tìm.
Mạng nơron có thể tổ chức theo kiểu liên kết đầy đủ tức là đầu ra của các nơron
lớp trước sẽ có liên kết với tất cả các nơron ở lớp tiếp theo hoặc ngược lại theo kiểu
không đầy đủ-mỗi đầu ra chỉ liên kết với một số nơron của lớp tiếp theo tuỳ theo chức
năng của mạng.
2.1.3.3 Hàm truyền (Hàm hoạt hoá)
Hàm hoạt hoá có thể là một hàm tuyến tính hoặc phi tuyến của tín hiệu đầu vào
net-nnet, nó được chọn để thoả mãn một số đặc điểm kỹ thuật của bài toán mà mạng
nơron cần giải quyết [7] . Hình 2.4 cho thấy quan hệ giữa tín hiệu vào p và tín hiệu
a
ra a của nơron một đầu vào với hàm kích hoạt là hàm Hardlimit.
Nơron 1 đầu vào +1
nnet w a f p p -b/w
a=hardlimit(wp+b) b (bias)
Hình 2.4. Nơron 1 đầu vào với hàm hoạt hoá là hàm hardlimit
25
Bảng 2.1. Một số dạng hàm hoạt hóa trong mạng nơron nhân tạo
Quan hệ đầu vào đầu ra Tên hàm
a=0 net<0 Hard-limit
(Hardlimit) a=1 net 0
a=-1 net<0 Hard-limit đối xứng
( Symmetrical Hardlimit) a=1 net 0
Đường thẳng a=net Linear
Hàm logistic
(log-sigmoid)
Hàm Hypecbol xích ma
(Hyperloic Tangent Sigmoid)
a=1 nơron có net lớn nhất Cạnh tranh
a=0 còn lại (Competitive)
2.1.4 Phân loại mạng nơ ron
Có rất nhiều cách phân loại mạng nơron nhân tạo. Dựa vào các đặc trưng mạng
nơron nhân tạo được phân loại như Hình 2.5 sau:
2.1.4.1 Phân loại mạng theo số lớp trong mạng
- Mạng một lớp: Là tập hợp các phần tử nơron có đầu vào và đầu ra trên cùng
một phần tử. Nếu mạng nối đầu ra của các phần tử này với đầu vào của phần tử kia
gọi là mạng tự liên kết (Auto associative).
- Mạng nhiều lớp: Gồm một lớp đầu vào và một lớp đầu ra riêng biệt. Các lớp
nằm giữa lớp đầu vào và lớp đầu ra gọi là lớp ẩn (Hidden Layer).
26
Hình 2.5.Phân loại mạng nơ ron [18]
2.1.4.2 Phân loại theo đường truyền tín hiệu
- Mạng truyền thẳng: Là mạng hai hay nhiều lớp mà quá trình truyền tín hiệu từ
đầu ra lớp này đến đầu vào lớp kia theo một hướng.
- Mạng phản hồi: Là mạng mà trong đó một hoặc nhiều đầu ra của các phần tử
lớp sau truyền ngược tới đầu vào của lớp trước.
- Mạng tự tổ chức: Là mạng có khả năng sử dụng những kinh nghiệm của quá
khứ để thích ứng với những biến đổi của môi trường (không dự báo trước). Loại mạng
này thuộc nhóm hệ học, thích nghi không cần có tín hiệu chỉ đạo từ bên ngoài.
2.1.5 Huấn luyện mạng nơron
Mạng ANN
Đầu ra thực tế
tín hiệu lỗi
Tạo tín hiệu lỗi
Đầu ra mong muốn
2.1.5.1 Học có giám sát
Hình 2.6.Học có giám sát
27
Với học có giám sát, mạng được cung cấp một tập K mẫu học { (PK,TK)} với
PK là vectơ tín hiệu vào sẽ được đưa vào mạng và theo yêu cầu thì vectơ tín hiệu ra
tương ứng sẽ phải là TK. Thực tế thì vectơ đầu ra lại là ZK và sẽ có một sai số so với
TK. Sai số này được giám sát và truyền trở lại hệ thống để hiệu chỉnh các trọng số liên
kết và các hệ số bias của mạng. Quá trình đưa các mẫu học vào mạng được lặp đi lặp
lại và mỗi lần như vậy các trọng số và hệ số bias luôn được hiệu chỉnh, cho đến khi
mạng đạt một tiêu chuẩn nào đó thì dừng lại [1] .
2.1.5.2 Học không có giám sát
Khác với kiểu huấn luyện có giám sát, ở đây tập huấn luyện chỉ bao gồm các
vectơ tín hiệu đầu vào {PK}. Huấn luyện là quá trình hệ thống tự tìm ra các nhóm họp
Đầu ra thực tế
đầu vào
Mạng ANN
của số liệu vào. Điều này thường được gọi là sự tự tổ chức hay sự thích ứng.
Hình 2.7.Học không có giám sát
Huấn luyện không được giám sát khá phức tạp. Việc huấn luyện cho mạng
Kohonel là một ví dụ. Các tín hiệu đầu ra không được biết chính xác và việc hiệu
chỉnh trọng số ứng với một mẫu tín hiệu vào để đầu ra của nơron “chiến thắng” lớn
hơn hoặc gần giá trị mong muốn, còn tín hiệu đầu ra của các nơron lân cận sẽ được
giảm đi.
Mạng ANN
Đầu ra thực tế
Tạo tín hiệu phê bình
tín hiệu phê bình
tín hiệu tăng cường
2.1.5.3 Học tăng cường
Hình 2.8.Học tăng cường
28
Học tăng cường là một biến thể của học có giám sát. Nó là quá trình học dựa
trên việc cập nhật trọng số dựa vào một tín hiệu phê bình nào đó gọi là tín hiệu tăng
cường. Tín hiệu này được đưa đến từ môi trường bên ngoài và được sử dụng như là
một đại lượng ước lượng từ đó đưa đến cho mạng những chỉ dẫn yêu cầu để mạng
cập nhật điều chỉnh tập trọng số cho thích hợp nhất.
2.2 Mạng nơron MLP và ứng dụng trong bài toán dự báo
2.2.1 Kiến trúc mạng
Một mạng truyền thẳng nhiều lớp bao gồm một lớp vào (Input Layer), một lớp
ra (OutputLayer) và một hoặc nhiều lớp ẩn (Hidden Layers) nằm giữa lớp vào và lớp
ra [1] . Kiến trúc này được minh họa trong Hình 2.9.
Hình 2.9.Mạng Perceptron đa lớp (MLP)
Các lớp đầu vào nhận tín hiệu vào và tái phân phối cho các nơron trong lớp ẩn.
Các nơron đầu vào không thực hiện bất kỳ một tính toán nào. Các nơron lớp ẩn sẽ
phát hiện các tính năng và trọng của các nơron đại diện cho các tính năng ẩn của lớp
đầu vào. Những tính năng này sẽ được sử dụng bởi các lớp ra để xác định mô hình
đầu ra. Luồng thông tin trong mạng nơron truyền thẳng sẽ đi từ trái qua phải, các giá
29
trị đầu vào x được truyền tới các nơron lớp ẩn thông qua trọng số kết nối sau đó đưa
tới lớp ra. Trọng số kết nối từ phần tử vào thứ i tới nơron ẩn thứ j được ký hiệu là wij,
trọng số kết nối từ nơron ẩn thứ j tới các nơron ra thứ k được ký hiệu là vjk.
2.2.2 Huấn luyện mạng
Khi mạng MLP mới được đề xuất, Rosenblatt đã không giải quyết được vấn đề
hiệu chỉnh ma trận trọng số của các lớp ẩn trong mạng Perceptron đa lớp MLP. Cho
đến năm 1986, một thuật toán khá hiệu quả để huấn luyện cho mạng MLP mới được
đưa ra bởi Rumehart và McCelland. Đó chính là luật học lan truyền ngược dùng cho
mạng MLP [7] .
Nguyên lý của luật học này là việc lan truyền ngược sai số (còn gọi là lan truyền
ngược độ nhạy-Backpropagating the sensitivitives) từ lớp ra trở lại các lớp ẩn và đến
đầu vào mạng và từ đó tìm ra cách hiệu chỉnh ma trận trọng số và các hệ số bias để
tối thiểu hoá sai số trung bình bình phương. Để tính toán cho việc lan truyền ngược
sai số ở đây phải sử dụng đạo hàm hàm hoạt hoá, và việc tính toán phải thực hiện lần
lượt qua từng lớp từ đầu ra trở lại đầu vào. Trước hết ta có các khái niệm .
Sai số trung bình bình phương (mean squared error)
Cho tập mẫu vào huấn luyện mạng {(PK,TK)} gồm có các mẫu pi đã được xác
định trước tín hiệu ra yêu cầu ti. Khi mẫu ti được lan truyền qua mạng và cho tín hiệu
đầu ra là ai ta có thể định nghĩa sai số trung bình bình phương là như sau:
(2.4)
Trong đó x là vectơ trọng số và hệ số bias của mạng được viết như sau:
(2.5)
30
Mục tiêu của huấn luyện mạng là nhằm điều chỉnh Wi và b sao cho F(x) đạt giá
trị nhỏ nhất. Đây chính là nguyên tắc huấn luyện mạng MLP. Nguyên tắc này được
thực hiện bằng cách lấy đạo hàm riêng của F(x) theo các trọng số w và hệ số bias và
hiệu chỉnh trọng số và hệ số bias tại bước lặp thứ k+1 theo công thức sau:
(2.6)
(2.7)
Với m là chỉ số lớp của mạng, còn là hệ số học (learning rate). Đây cũng
chính là nguyên tắc hiệu chỉnh trọng số gần giống luật delta, tức là trị số hiệu chỉnh
tỷ lệ thuận với vi phân từng phần của hàm sai số trung bình bình phương theo các
trọng số để tối thiểu hoá hàm này.
Luật dây chuyền :
Vấn đề chính trong công thức trên là tính đạo hàm riêng của hàm F như thế nào.
Trong các lớp ẩn, F không phải là một hàm hiện mà là hàm gián tiếp của các trọng
số, chính vì vậy mà ta phải sử dụng đến luật dây chuyền để tính các đạo hàm riêng.
Với luật dây chuyền, ta giả thiết hàm F là hàm hiện duy nhất của một biến n, khi đó
có thể tính đạo hàm của hàm F theo một biến thứ 3 là w như sau:
(2.8)
Sử dụng công thức 2.8 ta có thể tính đạo hàm riêng của F trong các công thức
2.6 và 2.7 Ta có tín hiệu nnet của nơron thứ i của lớp m được tính như sau:
(2.9)
Đây là một hàm hiện của các trọng số và hệ số bias. Theo đó ta có:
31
và (2.10)
Sử dụng luật dây chuyền 2.8 ta có:
(2.11)
Luật học lan truyền ngược (Back-propagation)
Thuật học lan truyền ngược với mạng MLP được mô tả như sau:
- Bước 1: Cung cấp tập mẫu huấn luyện gồm K cặp mẫu vào và kết quả ra đích
- Bước 2: Khởi tạo giá trị ban đầu cho các trọng số và thiết lập các tham số của
mạng
- Bước 3: Lần lượt cho K mẫu lan truyền qua mạng từ lớp vào tới lớp ra. Ta có
thể diễn tả việc tính toán tín hiệu ra ở từng lớp như sau:
(mẫu vào) a0=PK
am+1=fm+1(Wm+1am+bm+1) với chỉ số lớp m=0,1,2…M-1
a=aM (a-tín hiệu ra của mạng)
- Bước 4: Tính sai số trung bình bình phương và lan truyền ngược sai số này
về các lớp trước.
- Bước 5: Cập nhật các trọng số liên kết theo hướng giảm dốc nhất Gradient.
Quá trình lặp lại từ bước 3 cho đến khi giá trị sai số trung bình bình phương là
nhỏ ở mức chấp nhận được.
Sự hội tụ:
Thuật toán lan truyền ngược hội tụ đến một giải pháp mà nó tối thiểu hoá được
sai số trung bình bình phương vì cách thức hiệu chỉnh trọng số và hệ số bias của thuật
toán là ngược hướng với vectơ Gradient của hàm sai số trung bình bình phương đối
với trọng số. Tuy nhiên, đối với mạng MLP thì hàm sai số trung bình bình phương
32
thường phức tạp và có nhiều cực trị cục bộ, vì thế các phép lặp huấn luyện mạng có
thể chỉ đạt được đến cực trị cục bộ của hàm sai số trung bình bình phương mà không
đạt đến được cực trị tổng thể.
Vấn đề quá trình huấn luyện sẽ hội tụ như thế nào sẽ phụ thuộc vào các điều
kiện ban đầu của quá trình huấn luyện. Đặc biệt là việc chọn hệ số học như thế nào
để tăng khả năng hội tụ của mạng. Với mỗi bài toán ta lại có phương án chọn hệ số
học khác nhau.
Như vậy khi một quá trình huấn luyện theo thuật toán lan truyền ngược hội tụ,
ta chưa thể khẳng định được nó đã hội tụ đến phương án tối ưu. Ta cần phải thử với
một số điều kiện ban đầu để đảm bảo thu được phương án tối ưu.
2.2.3 Các yếu tố ảnh hưởng đến hoạt động của mạng MLP
Số lớp ẩn
Với mạng có một lớp ẩn có thể biểu diễn cho bất kỳ một tín hiệu đầu vào nào
đó của lớp vào. Với mạng có hai lớp ẩn có thể thể hiện các hàm với các dáng điệu bất
kỳ [17].
Phần lớn các thuật toán huấn luyện mạng cho các nơron truyền thẳng đều dựa
trên phương pháp Gradient. Các lớp thêm vào sẽ tăng thêm việc lan truyền các lỗi
làm cho vector Gradient không ổn định.
Với thuật toán tối ưu dựa trên Gradient chỉ có thể tìm ra tối thiểu cục bộ và rất
khó để tìm ra tối thiểu toàn cục vì xác suất bị tắc tại tối thiểu cục bộ là khá lớn [17].
Số nơron trong mỗi lớp ẩn
Nếu số nơron trong lớp ẩn quá ít có thể dẫn đến việc không thể nhận dạng
được đầy đủ các tín hiệu trong một tập dữ liệu phức tạp, hay thiếu ăn khớp
(Underfitting). Nhưng nếu có quá nhiều lại làm tăng thời gian huấn luyện mạng và
có thể dẫn đến tình trạng thừa ăn khớp (Overfitting). Tức là mạng có quá nhiều thông
tin, hoặc lượng thông tin trong tập dữ liệu mẫu (Training Set) không đủ các dữ liệu
đặc trưng để huấn luyện mạng. Số lượng các đơn vị trong lớp ẩn phụ thuộc vào rất
33
nhiều yếu tố như số đầu vào, đầu ra của mạng, số trường hợp trong tập mẫu, độ nhiễu
của dữ liệu đích, độ phức tạp của hàm lỗi, kiến trúc mạng và thuật toán huấn luyện
mạng.
Thông thường để xác định được số đơn vị tối ưu trong lớp ẩn cần phải thông
qua huấn luyện mạng với một bộ số các đơn vị trong lớp ẩn và dự báo lỗi tổng quát
hóa của từng lựa chọn. Cách tốt nhất để tìm ra số đơn vị tối ưu là sử dụng phương
pháp thử sai (Trial – and – Error).
Các trọng số khởi tạo ban đầu
Hình 2.10. Cực trị địa phương và toàn cục
Các trọng số khởi tạo ban đầu có thể làm cho quá trình cập nhật trọng số rơi
vào vùng cự trị địa phương thay vì cực trị toàn cục. Như mô tả trong Hình 2.10, nếu
trọng số được khởi tạo bắt đầu từ bên trái, quá trình luyện mạng sẽ hội tụ tại điểm W1
mà không phải là Wg. Điểm W1 được gọi là điểm tối thiểu cục bộ (Local Minimum).
Điểm Wg được gọi là điểm tối thiểu toàn cục. Mô hình chỉ có thể đạt đến điểm tối
thiểu toàn cục là điểm Wg khi và chỉ khi mô hình thoát khỏi điểm W1. Giải thuật BP
có nhược điểm lớn là mô hình mạng có thể rơi vào điểm tối thiểu cục bộ mà không
phải là tối thiểu toàn cục. Để khắc phục nhược điểm này, người ta đưa thêm vào một
khái niệm là Momentum. Momentum là hệ số góp phần giúp cho quá trình chỉnh sửa
trọng số giảm khả năng rơi vào các điểm tối thiểu cục bộ, đồng thời làm giảm thời
gian huấn luyện.
Hằng số học
34
Hằng số học có mối quan hệ mật thiết với độ chính xác và tốc độ học của mạng
MLP. Với hằng số học càng lớn thì tốc độ học càng nhanh nhưng độ chính xác lại
thấp. Ngược lại hằng số học càng nhỏ thì tốc độ học càng lâu nhưng độ chính xác
cao.
2.2.4 Ưu nhược điểm và một số vấn đề của mạng nơron nhiều lớp
Ưu điểm:
- Hỗ trợ tính toán song song ở mức rất cao.
- Có khả năng chịu nhiều lỗi, nhờ các tính toán song song.
- Có thể được thiết kế để tự thích nghi (Các trọng số, cấu trúc mạng).
Nhược điểm:
- Không có quy tắc tổng quát để xác định cấu trúc mạng và các tham số học
tối ưu cho một lớp, một bài toán xác định.
- Không có phương pháp tổng quát để đánh giá hoạt động bên trong của ANN
(vì vậy hệ thống ANN được xem như là một “hộp đen”).
Mạng nơron nhiều lớp có một số vấn đề cần được quan tâm như sau:
- Thời gian huấn luyện lâu và không phải luôn hội tụ.
- Không biết trước được sự ràng buộc giữa lỗi huấn luyện và cấu trúc mạng.
- Không biết trước hiệu suất huấn luyện (thời gian huấn luyện, độ lỗi).
- Khó xác định độ lỗi của mạng từ tập huấn luyện.
- Khó xác định độ lớn của tập huấn luyện.
2.3 Một số hướng nghiên cứu về bài toán dự báo tuyển sinh sử dụng mạng nơ
ron
Bài toán dự báo có nhiệm vụ phân tích và sử dụng số liệu đã có trong quá khứ
để dự đoán giá trị tương lai. Hiện nay, có rất nhiều phương pháp dự báo đã được sử
dụng trên mô hình vật lý và mô hình toán học. Trong nhiều trường hợp, kết quả nghiên
35
cứu dự báo theo các mô hình trên đã đạt được những thành công nhất định. Tuy nhiên,
phương pháp nào cũng có những hạn chế, do vậy bài toán dự báo vẫn là nội dung
được nghiên cứu hiện nay. Trên thế giới, cũng như trong nước, các phương pháp khai
phá dữ liệu (đặc biệt là các phương pháp học máy mạng nơron) cũng được áp dụng
nhiều vào dự báo
2.3.1 Các nghiên cứu trên thế giới
Trên thế giới, các nghiên cứu về việc xây dựng mô hình dự báo tuyển sinh sử
dụng kỹ thuật học máy đã bắt đầu từ cách đây rất lâu (1993) và hiện tại vẫn còn đang
được nghiên cứu phát triển để giảm thiểu sai số dự báo. Riêng trong lĩnh vực sâu là
ứng dụng mạng nơ ron cho dự báo tuyển sinh có thể kể đến một số công trình dưới
đây [15]
Trong nghiên cứu về dự báo tuyển sinh tại Đại học Sebha ở Libya năm 2009,
các tác giải so sánh một loạt các kỹ thuật của học máy như phân cụm, hồi quy, cây
quyết định và mạng nơ ron trong việc dự báo. Kết quả của nghiên cứu này cho thấy
mạng lưới thần kinh đã cho độ chính xác dự đoán tốt về dự báo tuyển sinh [15] .
Borah và các cộng sự (2011) đã đề xuất một hàm đo lường lựa chọn thuộc tính
mới (heuristic) trên thuật toán cây quyết định C4.5 hiện có. C4.5 đưa ra giải pháp đầy
hứa hẹn về thông tin phân tách của quá trình tuyển sinh tại trường cao đẳng kỹ thuật
ở Ấn Độ. Cách tiếp cận khác trong các nghiên cứu này là so sánh độ chính xác giữa
thuật toán Cây quyết định C5.0 và thuật toán lan truyền ngược của mạng nơ ron MPL.
Kết quả cho thấy mạng MPL đã đưa ra độ chính xác dự báo cao nhất [15] .
Gần đây, năm 2018, Desmond Chekwube Bartholomew [10] cũng công bố
công trình nghiên cứu về dự báo sinh viên nhập học tại Đại học Công nghệ Liên bang,
Owerri (FUTO), bang Imo, Nigeria. Mục tiêu xây dựng một mạng MLP dự báo sinh
viên đăng ký vào FUTO và so sánh độ chính xác dự đoán mô hình. Kết quả cũng
được khẳng định là tốt hơn khi mô hình mạng MLP này được so sánh với các phương
pháp truyền thống.
36
2.3.2 Các nghiên cứu trong nước
Trong những năm gần đây, đã có rất nhiều công trình một số công trình công
bố về các phương pháp dự báo áp dụng trong giáo dục sử dụng mạng nơron như: Dự
báo tỉ lệ nghỉ học của sinh viên, dự báo tỉ lệ đỗ tốt nghiệp, tỉ lệ đỗ đại học, số học sinh
tuyển sinh vào của những năm tiếp theo…Tiêu biểu có thể liệt kê một số công trình
nghiên cứu sau đây:
Luận văn “Dự báo kết quả đậu đại học” của tác giả Thái Trung Hải đã sử dụng
mạng MLP với thuật toán lan truyền ngược. Trong luận văn sử dụng mạng 3 lớp (1
lớp vào, 1 lớp ẩn, 1 lớp ra) với số nơron đầu vào là 13, lớp ẩn là 13 và đầu ra là 3.
Đầu vào của luận văn là 13 yếu tố ảnh hưởng đến dự báo đó là kết quả học tập của
13 môn học. 3 đầu ra là điểm thi đại học, điểm thi tốt nghiệp và nhóm trường đậu đại
học [2] .
Trong đồ án tốt nghiệp [5] của tác giả Nguyễn Văn Trịnh về “Ứng dụng mạng
nơron trong dự báo tỷ lệ nghỉ học” lại xây dựng mô hình mạng nơron khác với luận
văn trên. Đồ án xây dựng ba mô hình là: Mô hình dự báo tình trạng nghỉ học của học
viên với đầu vào của mạng là hồ sơ của những học viên đã tốt nghiệp và những học
viên nghỉ học và đầu ra là trạng thái học viên đó là: Nghỉ học và tốt nghiệp. Mô hình
thứ hai là: Dự báo tình trạng học tập của học viên qua 1 kỳ xác định (ký hiệu là kỳ
x=2, 3, 4) có đầu vào là hồ sơ của những học viên đã học qua kỳ x và những học viên
đã nghỉ học trước kỳ x và đầu ra là trạng thái học viên là nghỉ học và học vượt qua
kỳ x. Mô hình thứ 3 là: Dự báo tiềm năng nghỉ học của học viên trong quá trình học
có đầu vào là kỳ x, hồ sơ học viên, quy mô lớp, điểm tích lũy trung bình, số lần đăng
nhập diễn đàn, tỉ lệ nghỉ học kỳ trước và đầu ra là trạng thái học viên với màu xanh
là học thêm được ít nhất 2 kỳ nữa, màu vàng là kỳ tới sẽ nghỉ học và màu đỏ là kỳ
này nghỉ học. Đồ án luyện mạng sử dụng các quy tắc học là Delta, momen và delta-
bar-delta.
Trong [4] , tác giả Dương Thu Trang cũng xây dựng mô hình dự báo kết quả
tuyển sinh sử dụng một mạng MLP gồm 3 lớp. Đầu vào gồm 10 nơ ron ứng với kết
37
quả tuyển sinh của 10 năm trước đó. Lớp ẩn gồm 10 nơ ron được chọn dựa trên quy
tắc “thử và sai”. Lớp ra chỉ có 1 đầu ra là kết quả dự báo tuyển sinh ở thời điểm
tương lai.
Trong thực tế còn rất nhiều nghiên cứu khác nữa về vấn đề dự báo tuyển sinh
sử dụng mô hình mạng MLP. Tuy nhiên, qua các công trình khảo sát ở trong và
ngoài nước trên cho thấy việc áp dụng mạng MLP cho việc xây dựng mô hình dự
báo tuyển sinh tại trường THPT Lê Quý Đôn là khả thi và sẽ cho kết quả tốt hơn các
phương pháp truyền thống.
2.4 Xây dựng mô hình dự báo tuyển sinh sử dụng mạng nơ ron MLP
2.4.1 Mô tả bài toán
Giả sử ta có chuỗi thời gian {x[t]), x[t-1],…, x[t-n-1],} tính đến thời điểm t ,
nhiệm vụ của chúng ta là dự báo giá trị của x tại một thời điểm trong tương lai.
xdb[t+s] =f(x[t], x[t−1],···)
Trong đó n là khoảng thời gian quan sát trước, s là cửa sổ dự báo (horizon of
prediction).
Trong trường hợp n=1, s = 1, nghĩa là ta chỉ dự báo 01 giá trị tại tương lai dựa
theo kết quả của 01 năm trước đó. Khi đó, bài toán rơi vào trường hợp tìm ra một
hàm xấp xỉ (function approximation) biểu diễn chuỗi thời gian, nói cách khác là dự
đoán giá trị tương lai từ các giá trị đã thu thập trước đó trong chuỗi thời gian.
Để giải quyết bài toán dự báo chuỗi thời gian nói chung và sử dụng mạng
nơron MLP nói riêng, cần thực hiện các bước tổng quát sau:
1) Chọn mô hình tổng quát, chọn khoảng thời gian quan sát trước n, cửa sổ dự
báo s
2) Với mỗi x[ti] trong quá khứ, huấn luyện mô hình với đầu vào là n giá trị trước
đó và s đầu ra mong muốn, là chính ti.
3) Sau khi huấn luyện mô hình, chạy mô hình với chuỗi {x[t], x[t−1],···
,x[t−n−1]} để thu được giá trị dự đoán { xdb [t+1], xdb [t+2],··· , xdb[t+s] }
38
2.4.2 Các bước thực hiện
Các bước xây dựng mô hình dự báo tuyển sinh bằng phương pháp sử dụng
mạng nơ ron MLP như sau:
- Chuẩn hóa dữ liệu, Xác định khoảng thời gian quan sát trước n, cửa sổ dự báo s
- Chia tập dữ liệu ban đầu thành các tập: huấn luyện (training) (> 50% số mẫu),
kiểm tra (test) (100% -> 30% số mẫu) và tập kiểm định (validation).
- Xây dựng tập dữ liệu với mẫu đầu tiên có đầu ra là y[s], y[s-1], y[s-2],…, y[1]
các đầu vào là các x[1], x[2],…, x[n].
- Xây dựng mô hình mạng nơ ron MLP áp dụng cho dự báo (số lớp ẩn, số nơ ron
trong mỗi lớp ẩn, trọng số ban đầu, hệ số học). Việc xác định cấu trúc tối ưu cần
quá trình thử-sai.
- Huấn luyện mạng với các thông số khởi tạo trên các tập dữ liệu training, xác định
lỗi với tập dữ liệu test để xác định khả năng tổng quát hóa.
- Sau khi huấn luyện, thực hiện kiểm định độ chính xác của mô hình với tập
validation.
2.5 Kết luận chương
Có thể thấy rằng, mạng nơ ron là một công cụ hữu hiệu trong việc xử lý các
lớp bài toán phi tuyến phức tạp. Đặc biệt là trong bài toán dự báo. Chính vì vậy, nội
dung chương 2 đã trình bày các kiến thức tổng quan cho việc xây dựng các loại mạng
nơ ron và thực hiện các thuật toán học nhằm điều chỉnh trọng số của các node mạng
sao cho sai số đầu ra là nhỏ nhất. Bên cạnh đó, để đưa ra quyết định hợp lý cho ứng
dụng mạng nơ ron giải quyết bài toán dự báo thí sinh, nội dung chương cũng đã cập
nhật các công trình công bố gần đây nhất trong và ngoài nước, đề xuất mô hình mạng
nơ ron lan truyền ngược sai số. Hiệu quả của mô hình này sẽ được kiểm chứng thông
qua phần mềm ứng dụng được xây dựng trên nền Matlab R2019a sẽ được trình bày
chi tiết trong chương 3 kế tiếp.
39
CHƯƠNG 3
XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG DỰ BÁO TUYỂN SINH
ỨNG DỤNG MẠNG NƠ RON MLP
3.1 Giới thiệu về Trường THPT Lê Quý Đôn
Trường THPT Lê Quý Đôn nguyên là trường THPT cấp II-III Lê Quý Đôn
được thành lập năm 1991. Năm học 1994-1995, nhà trường tách riêng khối cấp III và
lấy tên Trường THPT Lê Quý Đôn. Trường được xây dựng trên địa bàn phường
Quang Hanh – Thành phố Cẩm Phả - một phường miền núi ven thị xã công nghiệp
của tỉnh Quảng Ninh. Từ khi thành lập đến nay, trường THPT Lê Quý Đôn trải qua
29 năm xây dựng và phát triển, khẳng định vị trí của một cơ sở giáo dục có uy tín
chất lượng, là một trong những địa chỉ góp phần đào tạo nhân lực của thành phố Cẩm
Phả và tỉnh Quảng Ninh. Cơ sở vật chất của trường được mô tả trong Bảng 3.1
Bảng 3.1. Cơ sở vật chất của Trường THPT Lê Quý Đôn
Nội dung Đơn vị tính Số lượng STT
1 Tổng diện tích m2 5.200 m2
2 Số phòng học phòng 20
3 Số phòng thí nghiệm, đa năng phòng 03
4 Phòng làm việc phòng 12
5 Phòng Tin hoc phòng 02
Trong 29 năm xây dựng và phát triển, trường THPT Lê Quý Đôn không ngừng
lớn mạnh về số lượng và chất lượng. Bằng những nỗ lực liên tục, toàn diện và sự tích
cực vận động của chính mình, với sự chỉ đạo, hướng dẫn và hỗ trợ của UBND tỉnh,
Thành Phố Cẩm Phả, của Sở GD-ĐT, nhất là trong việc triển khai các dự án xây dựng
cơ sở vật chất, thực hiện nhiệm vụ các năm học, bằng tinh thần kiên trì vượt khó,
bằng thái độ tích cực và sáng tạo trong tìm tòi học hỏi bạn bè, nhà trường đã hoàn
thiện về mọi mặt trong lộ trình phấn đấu thực hiện kế hoạch đạt chuẩn đã đề ra và
40
được UBND tỉnh Quảng Ninh ra quyết định công nhận trường THPT đạt Chuẩn Quốc
gia vào tháng 8 năm 2010.
Hiện tại, đội ngũ cán bộ, giáo viên, nhân viên gồm 44 đồng chí với 4 tổ: Xã
hội, Tự nhiên I, Tự nhiên II, Hành chính – Tổng hợp; 100% đạt chuẩn, 20 đồng chí
trên chuẩn (thạc sỹ).
Tỷ lệ học sinh lên lớp và thi đỗ tốt nghiệp luôn đạt kết quả cao. Hàng năm tỷ
lệ tốt nghiệp THPT là trên 98% . Học sinh giỏi cấp tỉnh hàng năm có từ 25 ->40 em
đạt giải. Mặc dù trường đóng trên địa bàn nông thôn, miền núi, xa trung tâm thị xã,
thành phố nhưng hàng năm trường thường có tỷ lệ học sinh thi đỗ vào các trường Đại
học và Cao đẳng rất cao: từ 50% đến trên 60 % mỗi năm. Trường được xếp Top 10
về học sinh đỗ đại học trong các trường THPT trên địa bàn tỉnh Quảng Ninh. Chính
vì vậy, hằng năm trường thu hút rất nhiều học sinh nhập học trên địa bàn thành phố
Cẩm Phả
3.2 Phát biểu bài toán
Qua phân tích trong chương 1 và chương 2, để xây dựng mô hình dự báo tuyển
sinh cho Trường THPT Lê Quý Đôn, luận văn sẽ lựa chọn dựa trên số học sinh tuyển
vào trường trong một số năm của cơ sở đào tạo.
Dữ liệu tuyển sinh của trường từ năm 2000 đến năm 2019 được thống kê trong
Bảng 3.2 như sau:
Bảng 3.2. Dữ liệu tuyển sinh của Trường PTTH Lê Quý Đôn
TT
1
2
3
4
5
6
7
Năm Số HS tuyển sinh
2000 2001 2002 2003 2004 2005 2006 307 248 247 310 421 342 242
8
9
10
11
12
13
14
15
16
17
18
19
20
41
2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 354 277 465 387 387 354 287 250 348 308 300 368 349
Dựa trên số liệu thống kê này, ta cần thiết kế phần mềm để xây dựng mô hình
dự báo tuyển sinh ứng dụng mạng nơ ron MLP.
Như đã phân tích trong các phần trước, sẽ là rất khó để xác định các tham số
nhằm xây dựng mô hình dự báo chính xác nhất. Phương pháp thông thường nhất là
dựa trên “thử và sai”. Chính vì vậy, phần mềm thiết kế phải linh hoạt để cho người
dùng chọn lựa một số các tham số sau:
Về tham số của dự báo:
- Lựa chọn khoảng thời gian quan sát trước (n), là số mẫu cần thiết thu thập
trước khi đưa ra kết quả dự báo hiện tại. Ví dụ, nếu n=10 thì để cho kết quả dự báo
tuyển sinh của năm 2020 cần 10 mẫu của các năm trước từ 2010 đến 2019
- Lựa chọn cửa số dự báo (s). Đây chính là số thời điểm dự báo trong tương
lai. Ví dụ, nếu s=3 thì tại thời điểm có số liệu thực về tuyển sinh cập nhật đến năm
2020 cho phép ta dự báo kết quả của ba năm 2021, 2022 và 2023.
Về tham số của mạng nơ ron:
- Bao gồm các tham số được trình bày trong phần 2.2.3 như: số nơ ron lớp ẩn,
hệ số học, hệ số mô men, số chu kỳ luyện mạng tối đa.
- Bài toán dựa báo sẽ gồm 2 pha như sau:
42
Pha 1: Pha học
Dữ liệu dùng để học sẽ lấy từ năm 2000 đến năm 2015. Tùy theo việc lựa chọn
khoảng thời gian quan sát trước (n) và cửa số dự báo (s), ta sẽ chuẩn bị một tập các
mẫu cho việc luyện mạng. Giả sử với n=6, s=3, từ cơ sở dữ liệu ta sẽ tạo ra 14 mẫu
mỗi mẫu gồm 6 đầu vào là số học sinh của 6 năm và 3 đầu ra là số học sinh của 3
năm dự báo. Mẫu 1 là số học sinh từ năm 2000 đến năm 2005 và đầu ra là số học sinh
năm 2006, 2007, 2008. Mẫu 2 lấy tiến lên 1 năm là số học sinh từ năm 2001 đến năm
2006 và đầu ra là số học sinh của ba năm 2007, 2008, 2009. Cứ như vậy ta sẽ có đến
mẫu dữ liệu 14 là số học sinh từ năm 2001 đến năm 2011. Dữ liệu từ năm 2012 đến
năm 2017 sẽ được sử dụng để làm dữ liệu kiểm tra độ chính xác của dự báo. Ta có
bảng dữ liệu học như sau:
Bảng 3.3. Bảng dữ liệu học (với n=6, s=3)
Đầu vào Đầu ra
x1 x2 x3 x4 x5 x6 y1 y2 y3
307 248 247 421 310 342 242 k=1 354 277
248 247 310 342 421 242 354 k=2 277 465
247 310 421 242 342 354 277 k=3 465 387
310 421 342 354 242 277 465 k=4 387 387
421 342 242 277 354 465 387 k=5 387 354
277 342 242 354 465 387 387 k=6 354 287
242 354 277 465 387 387 354 k=7 287 250
354 277 465 387 387 354 287 k=8 250 348
Pha 2: Pha chạy đánh giá
Từ kết quả của pha 1, sau khi luyện mạng ta tìm được cấu trúc mạng với các
trong số W = [wij] phù hợp.
Cho tập dữ liệu năm [2000 … 2019].
Cho tập dữ liệu số học sinh [307…349].
43
Bài toán xác định y1, y2, y3 là số học sinh dự kiến của các từ năm 2016 đến
2019. Kiểm tra sai số so với số liệu thực tế. Nếu sai số là chấp nhận được thì đưa ra
dự báo cho các năm 2020, 2021, 2022 dựa trên các số liệu từ 2014 đến 2019.
3.3 Xây dựng phần mềm mô phỏng
3.3.1 Môi trường cài đặt
Chương trình ứng dụng được xây dựng trên giao diện GUI của phần mềm
Matlab 2019a. Sở dĩ học viên lựa chọn xây dựng phần mềm mô phỏng trên Matlab vì
đây là phần mềm chuyên dụng cho tính toán số liệu dưới dạng ma trận. Ngoài ra,
Matlab cũng tích hợp công cụ hỗ trợ cho tạo và luyện mạng nơ ron. Các công bố về
các phương pháp dự báo đa phần sử dụng Matlab nên rất tiện cho việc so sánh và
đánh giá hiệu quả của các phương pháp.
3.3.2 Cài đặt các chức năng con
Mã nguồn của chương trình bao gồm một số module chính như mô tả trong
Bảng 3.4.
Bảng 3.4. Các module chính của chương trình
Module Giải thích
Cài đặt giao diện chính của chương trình mô Predict.m
phỏng dự báo tuyển sinh sử dụng mạng MLP Predict.fig
Tạo mẫu dữ liệu chuẩn cho luyện và kiểm thử Database.m
mô hình Database.fig
Khai báo các tham số luyện mạng nơ ron, tiến Neural.m
hành luyện mạng (pha 1) Neural.fig
Khai báo các tham số của mô hình dự báo (s Predict_para.m
và n) Predict_para.fig
MPL_Predict.m Chạy chạy các kết quả dự báo MPL_Predict.m
44
3.3.3 Kết quả hoạt động
Hình 3.1. Giao diện chương trình chính
Hình 3.1 minh họa giao diện của chương trình chính với các chức năng con
tương ứng được mô tả trong Bảng 3.4. Để thực hiện chương trình, trước tiên, người
dùng chọn chức năng Tạo mẫu dữ liệu để nhập các dữ liệu tuyển sinh trong Bảng 3.2
theo file hoặc nhập từng năm (Hình 3.2).
Hình 3.2. Nhập dữ liệu dự báo
Các mẫu dữ liệu dựa báo sẽ được lưu lại trong file data.mat. Trong quá trình luyện
mạng nơ ron, 80% dự liệu sẽ được dành cho huấn luyện, còn lại 20% dữ liệu được sử dụng cho kiểm tra.
45
Sau khi tạo xong mẫu dữ liệu, chương trình tự động quay về giao diện chương trình chính và cho phép người dùng nhập các tham số dự báo bằng cách chọn chức năng Nhập
tham số dự báo. Kết quả được thể hiện trên Hình 3.3 (bao gồm khoảng thời gian quan sát
trước và cửa sổ dự báo). Các tham số này sẽ quyết định tới đầu vào và ra trong cấu trúc
của mạng nơ ron sau này. Ví dụ với số liệu được mô tả ở Hình 3.3, mạng MLP sẽ phải có 3 đầu vào và một đầu ra.
Hình 3.3.Nhập tham số dự báo
Sau khi nhập tham số dự báo, giao diện chương trình chính xuất hiện cho phép
người dùng có thể cấu hình các tham số cho việc luyện mạng nơ ron.
Hình 3.4.Luyện mạng nơ ron
46
Hình 3.4 minh họa quá trình luyện và đánh giá hoạt động của mạng nơ ron cho
bài toán dự báo tuyển sinh với tham số dự báo như Hình 3.3. Ở đây, người dùng tùy
chọn số nơ ron cho lớp ẩn và dựa vào kết quả đánh giá (các tham số MSE và MAPE)
để từ đó xác định cấu trúc mạng nơ ron phù hợp.
Hình 3.5.Chạy kết quả dự báo
Sau khi luyện mạng nơ ron để xác định cấu trúc mạng cũng như các tham số của
mạng, người dùng có thể sử dụng chức năng. Chạy kết quả dự báo trên giao diện chương
trình chính để kiểm thử. Kết quả dữ báo cũng như đồ thị dự báo sẽ cho người dùng đánh
giá được tính chính xác của việc dự báo.
3.4 Một số kết quả kiểm thử
Trong quá trình xây dựng cấu trúc mạng nơ ron cho bài toán dự báo,việc xác
định số nơ ron lớp ẩn là rất quan trọng. Số nơ ron lớp ẩn nhỏ sẽ dần đến sai số dự
báo lớn. ngược lại, nếu số nơ ron lớp ẩn mà lớn sẽ làm cho thời gian tính toán lâu
hơn. Sau khi xây dựng phần mềm mô phỏng, học viên đã thử nghiệm thay đổi một
số giá trị số nơ ron lớp ẩn. Các kết quả được thể hiện trong Bảng 3.5. Từ kết quả
này, học viên lựa chọn được mạng nơ ron có cấu trúc phù hợp với số nơ ron lớp ẩn
là 20.
47
Bảng 3.5. Kết quả thử nghiệm khi số nơ ron lớp ẩn thay đổi
Số nơron Tổng thời gian Tổng số vòng Stt Lỗi MSE lớp ẩn huấn luyện huấn luyện
1 5 12.752 giây 1000 3.83
2 10 12.875 giây 1000 3.79
3 15 12.818 giây 1000 3.43
4 20 12.825 giây 1000 2.32
5 25 12.986 giây 1000 2.41
6 30 12.953 giây 1000 2.52
Khi chạy thử nghiệm trên cùng một cấu trúc mạng nơ ron và thay đổi tham số
dự báo, học viên nhận thấy tham số dự báo cũng có ảnh hưởng lớn đến kết quả dự
báo, đặc biệt là tham số thời gian quan sát trước. Bảng 3.6 cho thấy khi thời gian quan
sát trước nhỏ, sai số dự báo MSE và MAPE là lớn hơn nhiều so với khi thời gian quan
sát lớn. Về mặt bản chất, nếu thời gian quan sát bằng trước bằng 1, việc xây dựng
một đường tuyến tính minh họa cho số lượng thí sinh là không thể, vì đây là đại lượng
phi tuyến. Do vậy, kết quả sẽ cho sai số lớn (MSE=19.04, MAPE=1.05%). Với N=3
ta có thể xem như bài toán cần tìm một đường cong bậc 3 để xấp xỉ các mẫu dự báo.
Vì vậy, sai số dự báo sẽ thấp hơn rất nhiều. Đường cong dự báo trong Hình 3.5 minh
chứng cho phân tích trên.
Bảng 3.6. Kết quả thử nghiệm khi thời gian quan sát trước thay đổi
Năm Số thí sinh thực Thời gian quan sát trước (N)
N=1 N=2 N=3
2000 307 Không dự báo Không dự báo Không dự báo
2001 248 Không dự báo Không dự báo 248
2002 247 Không dự báo 248 249
2003 310 307 312 309
2004 421 420 421 421
2005 342 342 341 342
2006 242 247 248 241
2007 354 343 355 352
48
275 277 276 277 2008
463 465 465 465 2009
386 386 387 387 2010
387 387 388 387 2011
363 355 351 354 2012
283 287 287 287 2013
248 248 250 250 2014
342 348 352 348 2015
306 310 308 308 2016
294 299 300 300 2017
371 367 368 368 2018
346 347 351 349 2019
349 363 350 N/A 2020
19.04 3.45 2.12 MSE
1.05% 0.43% 0.32% MAPE
3.5 Đánh giá hoạt động của mô hình dự báo sử dụng mạng MLP với một số mô
hình khác
Hình 3.6.Một số kết quả dự báo với các phương pháp dự báo khác nhau
49
Để kiểm thử khả năng hoạt động của phương pháp dự báo dùng mạng nơ ron, học viên đã tiến hành so sánh kết quả dự báo của phương pháp này với phương pháp
trung bình dài hạn và phương pháp trung bình động. Ở phương pháp trung bình động,
thời gian quan sát trước vẫn được lấy là n=3 như khi dùng mạng nơ ron. Kết quả kiểm
chứng trên Bảng 3.7 và Hình 3.6 cho thấy phương pháp dự báo sử dụng mạng nơ ron cho kết quả chính xác hơn rất nhiều lần so với các phương pháp truyền thống.
Bảng 3.7. Kết quả thử nghiệm một số phương pháp dự báo
Năm Số thí sinh thực Mạng nơ ron
Phương pháp dự báo Trung bình dài hạn Không dự báo 307 278 267 278 307 313 302 309 305 321 327 332 334 331 325 327 326 324 326 328 Trung bình động Không dự báo Không dự báo Không dự báo 267 268 326 358 335 313 291 365 376 413 376 343 297 295 302 319 325 339 Không dự báo Không dự báo Không dự báo 309 421 342 241 352 276 465 387 388 351 287 250 352 308 300 368 351 350 307 248 247 310 421 342 242 354 277 465 387 387 354 287 250 348 308 300 368 349 N/A 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020
2.12 0.32% 4373 16.33% 5707 17.12% MSE MAPE
50
3.6 Kết luận chương
Trong chương 3, trên cơ sở các kiến thức lý thuyết về dự báo chuỗi thời gian
và mạng nơ ron MLP đã trình bày trong các chương trước, học viên đã tiến hành xây
dựng thử nghiệm chương trình mô phỏng minh họa dự báo tuyển sinh cho trường
THPT Lê Quý Đôn sử dụng mạng nơ ron MLP. Từ đó, học viên đã thử nghiệm để tìm ra các tham số về cấu trúc mạng nơ ron cũng như tham số thời gian quan sát trước
phù hợp (cho sai số dự báo nhỏ nhất). Kết quả của dự báo tuyển sinh dùng mạng nơ
ron cũng được so sánh với một số phương pháp thông thường như trung bình dài hạn,
trung bình động để thấy được dự báo sử dụng mạng nơ ron là phương pháp ưu việt hơn cả và cần được sử dụng nhiều hơn, thay thế cho các phương pháp dự báo cũ trong
các lớp bài toán dự báo tương tự.
51
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Qua nghiên cứu cho thấy rằng dự báo dữ liệu chuỗi thời gian sử dụng mạng
nơ ron là một bài toán gặp rất nhiều trong thực tế. Làm chủ các kỹ thuật phân tích và
giải quyết các bài toán dự báo chuỗi thời gian sử dụng mạng MLP là một phương
pháp tốt để triển khai bài toán dự báo tuyển sinh.
Sau một thời gian tìm hiểu nghiên cứu, luận văn đã trình bày được các
vấn đề sau:
- Nghiên cứu lý thuyết chung, cập nhật các nghiên cứu mới nhất về bài toán
dự báo, kỹ thuật dự báo theo chuỗi thời gian. Đặc biệt tập trung vào phương pháp dự
báo tuyển sinh sử dụng mô hình mạng nơ ron MLP.
- Phát biểu bài toán dự báo tuyển sinh cho trường THPT Lê Quý Đôn – TP
Cẩm Phả - Tỉnh Quảng Ninh; Xây dựng chương trình minh họa dự báo tuyển sinh sử
dụng mô hình mạng nơ ron MLP. Xác định các tham số phù hợp. So sánh đánh giá
kết quả đạt được với một số thuật toán dự báo khác
Trong quá trình thử nghiệm chương trình, các kết quả dựa báo là tương đối
tốt. Tuy nhiên, bài toán dự báo vẫn còn nhiều điểm cần khắc phục, đề tài còn có một
số hướng phát triển sau:
- Nghiên cứu các phương pháp dò tìm thông số tốt nhất cho quá trình luyện
mạng MLP
- Nghiên cứu các kiến trúc mạng DeepLearning hiệu quả hơn cho bài toán dự
báo tuyển sinh theo tiếp cận dự báo chuỗi thời gian
- Lựa chọn thêm một số các tiêu chí ảnh hưởng đến kết quả dự báo. Xây dựng
mạng nơ ron phù hợp cho bài toán dự báo với nhiều đầu vào
Do giới hạn về thời gian nghiên cứu và kiến thức của bản thân, luận văn khó
có thể tránh khỏi một số sai sót nhất định. Học viên rất mong nhận được sự đóng góp
ý kiến của các thầy cô, các bạn đọc quan tâm để luận văn được hoàn thiện hơn.
Một lần nữa học viên xin được cảm ơn Thầy giáo TS. Nguyễn Đình Dũng đã
tận tình giúp đỡ, hướng dẫn trong thời gian thực hiện đề tài, cảm ơn sự giúp đỡ của
gia đình, bạn bè và các đồng nghiệp trong thời gian qua.
52
TÀI LIỆU THAM KHẢO
I. Tài liệu tiếng Việt
[1] Trần Hoài Linh (2015), Giáo trình mạng neuron và ứng dụng xử lý tín hiệu số,
Nhà XB Bách Khoa.
[2] Thái Trung Hải (2014), Sử dụng mạng nơron trong việc dự đoán kết quả đậu
đại học, Luận văn Thạc sỹ, Đại học Lạc Hồng.
[3] Trần Đức Minh, Trần Huy Dương, Vũ Đức Thi (2015), Một số vấn đề về dự
báo dữ liệu chuỗi thời gian, Kỷ yếu Hội nghị Quốc gia lần thứ VIII về Nghiên
cứu cơ bản và ứng dụng Công nghệ thông tin, DOI:
10.15625/vap.2015.000182, pp. 467-470
[4] Dương Thu Trang (2017), Ứng dụng mạng nơron nhân tạo dự báo số học sinh
tuyển vào Trung tâm GDNNGDTX quận Đống Đa, Luận văn thạc sỹ,khoa
Công nghệ thông tin – Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội
[5] Nguyễn Văn Trịnh (2012), Ứng dụng mạng nơron trong dự báo tỷ lệ nghỉ học,
Luận văn thạc sỹ ,Viện Toán Ứng dụng và Tin học – Đại học Bách khoa Hà
Nội
II. Tài liệu tiếng Anh
[6] Chen, Yu & Li, Ran & Hagedorn, Linda. (2019). Undergraduate International
Student Enrollment Forecasting Model: An Application of Time Series
Analysis.
[7] C. T. S. E. M. Jyh Shing Roger Jang, Neuro fuzzy and Soft Computing, Prientice
Hall International, Inc, 2002.
[8] Datilo, Philemon & Ismail, Zuhaimy & Jayeola, Dare. (2019). A Review of
Epidemic Forecasting Using Artificial Neural Networks. International Journal
of Epidemiologic Research. 6. 132-143. 10.15171/ijer.2019.24.
[9] Dean Abbott (2014), Applied Predictive Analytics: Principles and Techniques
for the Professional Data Analyst, Wiley
53
[10] Egbo, M.N &Bartholomew, Desmond. (2018). Forecasting Students’
Enrollment Using Neural Networks and Ordinary Least Squares Regression
Models. Journal of Advanced Statistics. 3. 10.22606/jas.2018.34001.
[11] Fico Corporation (2009), Understanding Predictive Analytics
[12] Hewamalage, Hansika & Bergmeir, Christoph & Bandara, Kasun. (2019).
Recurrent Neural Networks for Time Series Forecasting: Current Status and
Future Directions.
[13] Hill, Tim & O'Connor, Marcus & Remus, William. (1996). Neural Network
Models for Time Series Forecasts. Management Science. 42. 1082-1092.
10.1287/mnsc.42.7.1082.
[14] Lavilles, Rabby. (2012). Enrollment Forecasting for School Management
System. International Journal of Modeling and Optimization. 2. 563-566.
10.7763/IJMO.2012.V2.183.
[15] Norhaidah Abu Haris,Munaisyah Abdullah, Abu Talib Othman, Fauziah Abdul
Rahman (2015), Application of Forecasting Technique for Students
Enrollment, Knowledge Management International Conference (KMICe)
2014, 12 – 15 August 2014, Malaysia, pp. 655-662.
[16] Oancea, Bogdan & Ciucu, Stefan. (2013). Time series forecasting using neural
networks.
[17] Rufai, Fuadeen & Folorunso, Olusegun & Lateef, Usman. (2015). Predicting
Students' Enrollment Using Generalized Feed-Forward Neural Network.
Journal of Natural Science, Engineering and Technology. 14. 58-70.
[18] Verma, Kritika & Singh, Pradeep. (2015). An Insight to Soft Computing based
Defect Prediction Techniques in Software. International Journal of Modern
Education and Computer Science. 7. 52-58. 10.5815/ijmecs.2015.09.07.