Mạng nơron nhân tạo được chia ra làm nhiều loại, trong đó người ta quan tâm nhiều đến cấu trúc mạng nơron và giải thuật huấn luyện, về cấu trúc có thể chia ra các loại mạng như mạng nơro
Trang 1VŨ THỊ XUÂN QUYÊN
ỨNG DỤNG MẠNG NƠRON TRONG MÔ HÌNH DỰ BÁO MỨC ĐỘ
TĂNG TRƯỞNG PHƯƠNG TIỆN CÁ NHÂN
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên - 2015
Trang 3VŨ THỊ XUÂN QUYÊN
ỨNG DỤNG MẠNG NƠRON TRONG MÔ HÌNH DỰ BÁO MỨC ĐỘ
TĂNG TRƯỞNG PHƯƠNG TIỆN CÁ NHÂN
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01 01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: TS PHẠM THANH HÀ
Thái Nguyên - 2015
Trang 5Tôi xin cam đoan đây là công trình nghiên cứu của tôi dưới sự hướng dẫn khoa học của Tiến sĩ Phạm Thanh Hà, Trưởng khoa khoa Công nghệ thông tin, Trường Đại học Giao thông vận tải, các kiến thức trong luận văn được hệ thống từ các tài liệu đã được công bố và được trích dẫn đầy đủ
Các kết qủa nghiên cứu và chạy thử nghiệm đều là trung thực dựa trên chương trình cài đặt kèm theo nghiên cứu này
Tôi xin chi ̣u trách nhiê ̣m về lời cam đoan này
Thái Nguyên, ngày tháng năm 2015
Tác giả
Vũ Thị Xuân Quyên
Trang 7Để hoàn thành luận văn, em xin chân thành cảm ơn Trường Đại học Công nghệ Thông tin và Truyền thông, Đại học Thái Nguyên, Phòng Đào tạo, các thầy, cô giáo giảng dạy lớp cao học Khoa học máy tính K12E đã quan tâm, tạo điều kiện thuận lợi, tận tình giảng dạy và giúp đỡ em trong thời gian theo học tại trường
Đặc biệt, em xin bày tỏ lòng biết ơn sâu sắc đến TS Phạm Thanh Hà, người đã dành nhiều thời gian, tâm huyết hướng dẫn em trong suốt quá trình nghiên cứu và hoàn thành luận văn
Em cũng xin cảm ơn các cán bộ, giảng viên đồng nghiệp ở Trường Đại học Hùng Vương đã tạo điều kiện về thời gian để em có thể học tập và hoàn thành luận văn
Mă ̣c dù đã cố gắng hết sức hoàn thiê ̣n luâ ̣n văn, tuy nhiên chắc chắn vẫn còn nhiều thiếu sót, rất mong sự góp ý quý báu của qúy thầy cô và các ba ̣n
Xin trân trọng cảm ơn
Thái Nguyên, ngày tháng năm 2015
Tác giả
Vũ Thị Xuân Quyên
Trang 9MỤC LỤC
LỜI CAM ĐOAN 0
LỜI CẢM ƠN 0
MỤC LỤC i
DANH MỤC CÁC TỪ VIẾT TẮT iii
DANH MỤC BẢNG iv
DANH MỤC HÌNH v
MỞ ĐẦU 1
Chương 1 TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO 4
1.1 Các khái niệm về mạng nơron 5
1.2 Phân loại cấu trúc mạng nơron 10
1.2.1 Mạng nơron 1 lớp 10
1.2.2 Mạng nơron truyền thẳng nhiều lớp 12
1.3 Các luật học 12
1.4 Mạng nơron truyền thẳng 14
1.4.1 Mạng Perceptron một lớp đơn 14
1.4.2 Mạng truyền thẳng nhiều lớp MLP 15
Kết luận chương 1 18
Chương 2 MÔ HÌNH DỰ BÁO SỬ DỤNG MẠNG NƠRON 19
2.1 Tổng quan về dự báo và mô hình dự báo 19
2.1.1 Khái niệm về dự báo 19
2.1.2 Đặc điểm của dự báo 19
2.1.3 Các phương pháp dự báo 20
2.2 Một số kỹ thuật dự báo hiện đại 22
Trang 102.2.1 Giới thiệu 22
2.2.2 Sự ra đời của một mô hình dự báo 23
2.2.3 Các kỹ thuật mô hình hóa dự báo hiện đại 24
2.3 Mô hình dự báo sử dụng mạng nơron 31
2.3.1 Mô hình dự báo sử dụng mạng nơron BP (Back Propagation) 32
2.3.2 Mô hình dự báo sử dụng mạng nơron RBF (Radial Basic Functions) 40
Kết luận chương 2 46
Chương 3.ỨNG DỤNG MÔ HÌNH DỰ BÁO SỬ DỤNG MẠNG NƠRON TRONG DỰ BÁO MỨC ĐỘ TĂNG TRƯỞNG PHƯƠNG TIỆN GIAO THÔNG TẠI TỈNH PHÚ THỌ 47
3.1 Bài toán dự báo tăng trưởng phương tiện giao thông 47
3.2 Ứng dụng mô hình dự báo sử dụng mạng nơron BP 51
3.3 Ứng dụng mô hình dự báo sử dụng mạng nơron RBF 55
Kết luận chương 3 59
KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN 60
TÀI LIỆU THAM KHẢO 61
PHỤ LỤC 63
Trang 12DANH MỤC BẢNG
Bảng 3.1 Thống kê và dự báo quy mô dân số của tỉnh Phú Thọ đến năm 2020
47
Bảng 3.2 Thống kê và dự báo nhu cầu lao động của tỉnh Phú Thọ đến năm 2020 48
Bảng 3.3 Thống kê và dự báo nguồn cung lao động của tỉnh Phú Thọ đến năm 2020 49
Bảng 3.4 Thống kê và dự báo một số chỉ tiêu tăng trưởng GDP của tỉnh Phú Thọ đến năm 2020 49
Bảng 3.5 Thống kê và dự báo số lượng phương tiện giao thông của tỉnh Phú Thọ đến năm 2020 50
Bảng 3.6 Tổng hợp dữ liệu quá khứ và dự báo đến năm 2020 51
Bảng 3.7 Dữ liệu sử dụng cho mô hình dự báo sử dụng mạng nơron BP 52
Bảng 3.8 Dữ liệu rút gọn trong tiếp cận sử dụng dữ liệu 52
Bảng 3.9 Dữ liệu thời gian 55
Bảng 3.10 Dữ liệu quá khứ cho mô hình dự báo sử dụng mạng RBF 55
Bảng 3.11 Dữ liệu quá khứ cho mô hình dự báo sử dụng mạng RBF 56
Trang 13DANH MỤC HÌNH
Hình 1.1 Một mạng nơron đơn giản gồm hai nơron……….6
Hình 1.2 Mô hình của một nơron …… 6
Hình 1.3 Cấu trúc của một nơron……… 8
Hình 1.4 Các hàm kích hoạt 10
Hình 1.5 Mạng nơron một lớp 11
Hình 1.6 Mạng nơron hồi quy……… 11
Hình 1.7 Mạng nơron nhiều lớp 11
Hình 1.8 Học có giám sát……… 13
Hình 1.9 Học không có giám sát… 13
Hình 1.10 Mạng perceptron đơn 15
Hình 1.11 Mạng perceptron đa lớp cho bài toán XOR 16
Hình 2.1 Biểu diễn hai chiều của các vec tơ đầu vào 24
Hình 2.2 Khung nhìn hai chiều của một siêu phẳng tối ƣu chia tách dữ liệu và các vec tơ hỗ trợ 25
Hình 2.3 Khung nhìn hai chiều về kết quả của việc phân cụm một tập dữ liệu đầu vào thành hai cụm 26
Hình 2.4 Mạng nơron nhân tạo truyền thẳng 27
Hình 2.5 Biểu diễn sơ đồ của một tập hợp mô hình 28
Hình 2.6 Một cây quyết định đơn giản 30
Hình 2.7 Mô hình dự báo sử dụng mạng nơron 31
Hình 2.8 Mô hình dự báo sử dụng mạng nơron truyền thẳng 32
Hình 2.9 Mạng truyền thẳng ba lớp lan truyền ngƣợc sai số 33
Hình 2.10 Một ví dụ về mạng nơron truyền thẳng 37
Hình 2.11 Mô hình dự báo sử dụng mạng nơron RBF 40
Trang 14MỞ ĐẦU
1 Đặt vấn đề
Hiện nay ở trên thế giới đã có một số mô hình dự báo như mô hình dự báo dựa trên thống kê, mô hình dự báo chuỗi thời gian, … tuy nhiên việc tiếp tục nghiên cứu và ứng dụng các kỹ thuật mới trong dự báo là cần thiết và có ý nghĩa
Như chúng ta đã biết mạng nơron nhân tạo là sự tái tạo bằng kỹ thuật những chức năng của hệ thần kinh con người Trong quá trình tái tạo không phải tất cả các chức năng của bộ não con người đều được tái tạo, mà chỉ có những chức năng cần thiết Bên cạnh đó còn có những chức năng mới được tạo ra nhằm giải quyết một bài toán định trước
Mạng nơron bao gồm các nơron được liên kết với nhau bằng các trọng
số theo một cấu trúc xác định Mạng nơron có thể được huấn luyện để thực hiện các nhiệm vụ khác nhau Quá trình huấn luyện sẽ thiết lập bộ trọng số cho các liên kết giữa các nơron trong mạng
Mạng nơron nhân tạo được chia ra làm nhiều loại, trong đó người ta quan tâm nhiều đến cấu trúc mạng nơron và giải thuật huấn luyện, về cấu trúc
có thể chia ra các loại mạng như mạng nơron một lớp, nhiều lớp, mạng nơron hồi quy, mạng nơron truyền thẳng
Mỗi cấu trúc mạng nơron có thể sử dụng để giải quyết một số bài toán nào đó, ví dụ như mạng nơron 1 lớp có thể dùng để phân lớp dữ liệu, mạng nơron truyền thẳng nhiều lớp có thể dùng để nhận dạng hoặc dự báo
Do mạng nơron truyền thẳng có khả năng dự báo nên đề tài này sẽ tập trung nghiên cứu xây dựng mô hình dự báo sử dụng mạng nơron
Trang 15Trong những năm gần đây vấn đề ách tắc giao thông trên địa bàn, tỉnh Phú Thọ (nhất là tại các thị xã và thành phố của tỉnh) luôn là vấn đề thời sự, điều này đặt ra cho các nhà quản lý là phải có cơ chế quản lý và dự báo được mức độ tăng trưởng của các phương tiện giao thông ở mức trung hạn và dài hạn Từ đó hoạch định các chính sách về quản lý phương tiện và xây dựng cơ
sở hạ tầng cho giao thông
Đề tài này sẽ nghiên cứu, đề xuất và xây dựng mô hình dự báo sử dụng mạng nơron nhân tạo và ứng dụng giải quyết bài toán dự báo mức độ tăng trưởng phương tiện giao thông cá nhân ở trung hạn và dài hạn cho tỉnh Phú Thọ, tạo điều kiện để các nhà quản lý hoạch định chính sách quản lý phương tiện và xây dựng hạ tầng giao thông trên địa bàn tỉnh
2 Đối tượng và phạm vi nghiên cứu
Mạng nơron nhân tạo, mô hình dự báo sử dụng mạng nơron
Ứng dụng mô hình dự báo sử dụng mạng nơron trong dự báo mức độ tăng trưởng phương tiện giao thông
3 Hướng nghiên cứu của đề tài
Nghiên cứu, đề xuất và xây dựng mô hình dự báo sử dụng mạng nơron nhân tạo và ứng dụng giải quyết bài toán dự báo mức độ tăng trưởng phương tiện giao thông cá nhân ở trung hạn và dài hạn cho tỉnh Phú Thọ
4 Phương pháp nghiên cứu
- Nghiên cứu lý thuyết kết hợp với cài đặt thực nghiệm
5 Ý nghĩa khoa học của đề tài
+ Hệ thống các kiến thức về mạng nơron nhân tạo và nghiên cứu sâu về lớp mạng truyền thẳng nhiều lớp
Trang 16+ Nghiên cứu bài toán quản lý và dự báo mức độ tăng trưởng phương tiện giao thông
+ Xây dựng mô hình dự báo sử dụng mạng nơron
+ Ứng dụng mô hình dự báo sử dụng mạng nơron trong dự báo mức độ tăng trưởng phương tiện giao thông cá nhân tại tỉnh Phú Thọ
Trang 17Chương 1 TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO
Các nghiên cứu về bộ não con người đã được tiến hành từ hàng nghìn năm nay Cùng với sự phát triển của khoa học kĩ thuật đặc biệt là những tiến
bộ trong ngành điện tử hiện đại, việc con người bắt đầu nghiên cứu các nơron nhân tạo là hoàn toàn tự nhiên
Những tiến bộ của máy tính đầu những năm 1950 giúp cho việc mô hình hóa các nguyên lý của những lý thuyết liên quan tới cách thức con người suy nghĩ đã trở thành hiện thực Nathanial Rochester sau nhiều năm làm việc tại các phòng thí nghiệm nghiên cứu của IBM đã có những nỗ lực đầu tiên để mô phỏng một mạng nơron Trong thời kì này tính toán truyền thống đã đạt được những thành công rực rỡ trong khi đó những nghiên cứu về nơron còn ở giai đoạn sơ khai Mặc dù vậy những người ủng hộ triết lý “thinking machines” (các máy biết suy nghĩ) vẫn tiếp tục bảo vệ cho lập trường của mình
Năm 1956 dự án Dartmouth nghiên cứu về trí tuệ nhân tạo (Artificial Intelligence) đã mở ra thời kỳ phát triển mới cả trong lĩnh vực trí tuệ nhân tạo lẫn mạng nơron Tác động tích cực của nó là thúc đẩy hơn nữa sự quan tâm của các nhà khoa học về trí tuệ nhân tạo và quá trình xử lý ở mức đơn giản của mạng nơron trong bộ não con người [3],[4]
Ngày nay, không chỉ dừng lại ở mức nghiên cứu lý thuyết, các nghiên cứu ứng dụng mạng nơron để giải quyết các bài toán thực tế được diễn ra ở khắp mọi nơi Các ứng dụng mạng nơron ra đời ngày càng nhiều và ngày càng hoàn thiện hơn Điển hình là các ứng dụng: xử lý ngôn ngữ (Language Processing), nhận dạng kí tự (Character Recognition), nhận dạng tiếng nói (Voice Recognition), nhận dạng mẫu (Pattern Recognition), xử lý tín hiệu (Signal Processing), Lọc dữ liệu (Data Filtering),… [4],[6]
Trang 18Các mạng nơron có cách tiếp cận khác trong giải quyết vấn đề so với máy tính truyền thống Các máy tính truyền thống sử dụng cách tiếp cận theo hướng giải thuật, tức là máy tính thực hiện một tập các chỉ lệnh để giải quyết một vấn đề Vấn đề được giải quyết phải được biết và phát biểu dưới dạng một tập chỉ lệnh không nhập nhằng Những chỉ lệnh này sau đó phải được chuyển sang một chương trình ngôn ngữ bậc cao và chuyển sang mã máy để máy tính có thể hiểu được
Các mạng nơron xử lý thông tin theo cách thức giống như bộ não con người Mạng được tạo nên từ một số lượng lớn các phần tử xử lý được kết nối với nhau làm việc song song để giải quyết một vấn đề cụ thể Các mạng nơron học theo mô hình, chúng không thể được lập trình để thực hiện một nhiệm vụ
cụ thể Các mẫu phải được chọn lựa cẩn thận nếu không sẽ rất mất thời gian, thậm chí mạng sẽ hoạt động không đúng Điều hạn chế này là bởi vì mạng tự tìm ra cách giải quyết vấn đề, thao tác của nó không thể dự đoán được
Các mạng nơron và các máy tính truyền thống không cạnh tranh nhau
mà bổ sung cho nhau Có những nhiệm vụ thích hợp hơn với máy tính truyền thống, ngược lại có những nhiệm vụ lại thích hợp hơn với các mạng nơron Thậm chí rất nhiều nhiệm vụ đòi hỏi các hệ thống sử dụng tổ hợp cả hai cách tiếp cận để thực hiện được hiệu quả cao nhất (thông thường một máy tính truyền thống được sử dụng để giám sát mạng nơron)
1.1 Các khái niệm về mạng nơron
Mạng nơron là sự tái tạo bằng kỹ thuật những chức năng của hệ thần kinh con người Trong quá trình tái tạo không phải tất cả các chức năng của
bộ não con người đều được tái tạo, mà chỉ có những chức năng cần thiết Bên cạnh đó còn có những chức năng mới được tạo ra nhằm giải quyết một bài toán định trước [6],[11]
Trang 19Mạng nơron bao gồm vô số các nơron đƣợc liên kết truyền thông với nhau trong mạng, hình 1.1 là một phần của mạng nơron bao gồm hai nơron
Hình 1.1 Một mạng nơron đơn giản gồm hai nơron
Nơron còn có thể liên kết với các nơron khác qua các rễ Chính vì cách liên kết đa dạng nhƣ vậy nên mạng nơron có độ liên kết rất cao Các rễ của
nơron đƣợc chia làm hai loại: loại rễ nhận thông tin từ nơron khác qua axon,
ta gọi là rễ đầu vào và loại rễ đƣa thông tin qua axon tới nơron khác gọi là rễ
x n
Nơron
axon được nối với rễ đầu vào của nơron 2
Rễ đầu ra của nơron 1
được nối với axon
Chiều thông tin Nhân
axon
Trang 20Một tính chất rất cơ bản của mạng nơron sinh học là các đáp ứng theo kích thích có khả năng thay đổi theo thời gian Các đáp ứng có thể tăng lên, giảm đi hoặc hoàn toàn biến mất Qua các nhánh axon liên kết tế bào nơron này với các nơron khác, sự thay đổi trạng thái của một nơron cũng kéo theo
sự thay đổi trạng thái của những nơron khác và do đó làm thay đổi toàn bộ mạng nơron Việc thay đổi trạng thái của mạng nơron có thể thực hiện qua
một quá trình “dạy” hoặc do khả năng “học” tự nhiên
Mạng nơron nhân tạo, Artificial Neural Network (ANN) gọi tắt là mạng nơron (Neural Network – NN ) là một mô hình xử lý thông tin phỏng
theo cách thức xử lý thông tin của các hệ nơron sinh học Nó được tạo lên từ
một số lượng lớn các phần tử (gọi là phần tử xử lý hay nơron) kết nối với nhau thông qua các liên kết (gọi là trọng số liên kết) làm việc như một thể
thống nhất để giải quyết một vấn đề cụ thể nào đó Một mạng nơron nhân tạo được cấu hình cho một ứng dụng cụ thể (nhận dạng mẫu, phân loại dữ liệu )
thông qua một quá trình học từ tập các mẫu huấn luyện Về bản chất học
chính là quá trình hiệu chỉnh trọng số liên kết giữa các nơron
Sự thay thế những tính chất này bằng một mô hình toán học tương đương được gọi là mạng nơron nhân tạo Mạng nơron nhân tạo có thể được xây dựng theo nhiều cách khác nhau, vì vậy trong thực tế có nhiều kiểu mạng nơron
Mô hình nơron có m đầu vào x 1 , x 2 , x m và một đầu ra y (hình 2.3), mô
hình này gồm có ba thành phần cơ bản:
+ Các kích thích đầu vào của tế bào nơron có thế năng tác động vào
màng membran khác nhau được biểu diễn qua trọng số w i , i = 1, , m tương
ứng với cường độ kích thích của từng đầu vào Các kích thích đầu vào được
Trang 21thực hiện qua bộ tổng f(.), đó là giá trị đo kích thích đầu vào tác động vào tế
bào nơron
+ Đầu ra của bộ tổng được đưa đến bộ đáp ứng ặ), bộ này không chỉ có
chức năng tạo ra đáp ứng tức thời mà còn có khả năng lưu giữ các đáp ứng theo thời gian
+ Nơron bị kích thích trong thời gian thế năng của màng membran vượt
quá ngưỡng Quan hệ này được thực hiện nhờ hàm ặ), nó có chức năng xác định phụ thuộc của tín hiệu ra y vào các kích thích đầu vàọ
Cách thành lập các nơron nhân tạo như vậy tạo ra một độ tự do trong
thiết kế Việc lựa chọn phép cộng tín hiệu đầu vào và đáp ứng ặ) sẽ cho ra
các kiểu mạng nơron nhân tạo khác nhau và tương ứng là các mô hình mạng khác nhaụ
Hình 1.3 Cấu trúc của một nơron
Theo hình 1.3 thì tín hiệu đầu ra y i là:
i
w im
x m
Trang 22f khi
f khi f
1
2
Trong đó và w ij là bán kính và tâm của hình cầu
+ Hàm đa thức (Polynomial function):
i
k k x
j j x k x j x m
0 1
f if
f if f
+ Hàm dấu (Hard limiter – threshold function):
Trang 230 1
sgn
f if
f if f
1 0
1 1
f if
f if
f
f if f
+ Hàm sigmoid đơn cực (Unipolar sigmoid function):
f e f
f
Hình 1.4 là đồ thị của các hàm nói trên
1.2 Phân loại cấu trúc mạng nơron
Hình 1.4 Các hàm kích hoạt: (a) hàm bước nhẩy; (b) hàm dấu;
(c) hàm dốc; (d) hàm sigmoid đơn cực; (e) hàm lưỡng cực
Trang 24Hình 1.5- 1.7 là một loại liên kết đặc thù của mạng nơron Nơron có các mối liên hệ đến các nơron khác nhờ các trọng số Một lớp nơron là một nhóm các nơron mà chúng đều có cùng các trọng số, nhận cùng số tín hiệu đầu vào đồng thời [6]
Hình 1.7 Mạng nơron nhiều lớp
Trong ma trận trọng số, các hàng thể hiện các nơron, mỗi hàng thứ j có thể đặt nhãn nhƣ một véc tơ w j của nơron thứ j gồm m trọng số w ji
Các trọng số trong cùng một cột thứ j (j = 1, 2, , n) đồng thời cùng nhận một tín hiệu đầu vào x j:
y 2
Trang 25Tại cùng một thời điểm, véc tơ đầu vào:
có thể là một nguồn bên ngoài đưa tới mạng
1.2.2 Mạng nơron truyền thẳng nhiều lớp
Mạng nơron nhiều lớp (hình 1.7) có các lớp được phân chia thành 3 loại với các chức năng và nhiệm vụ như sau:
- Lớp vào là lớp nơron đầu tiên nhận tín hiệu vào x i Mỗi tín hiệu x i được đưa đến tất cả các nơron của lớp đầu vào, chúng được phân phối trên các trọng số đúng bằng số nơron của lớp này Thông thường, các nơron đầu vào
không làm biến đổi các tín hiệu vào x i, tức là chúng không có các trọng số hoặc không có các loại hàm chuyển đổi nào, chúng chỉ đóng vai trò phân phối các tín hiệu và không đóng vai trò sửa đổi chúng
- Lớp ẩn là lớp nơron dưới lớp vào, chúng không trực tiếp liên hệ với thế giới bên ngoài như các lớp nơron vào và ra
- Lớp ra là lớp nơron tạo các tín hiệu ra cuối cùng
1.3 Các luật học
Trong tài liệu nay chúng ta chỉ đề cập tới luật học tham số [3], [6], [11]:
là các tham số về trọng số cập nhật kết nối giữa các nơron
Giả sử ma trận trọng số bao gồm tất cả các phần tử thích ứng của mạng nơron Nhiệm vụ của việc học thông số là bằng cách nào đó, tìm được ma trận chính xác mong muốn từ ma trận giả thiết ban đầu với cấu trúc của mạng nơron có sẵn
Để làm được việc trên, mạng nơron sử dụng các trọng số điều chỉnh, với
nhiều phương pháp học khác nhau có thể tính toán gần đúng ma trận W cần
tìm đặc trưng cho mạng Có 2 phương pháp học:
Trang 26- Học có giám sát (Supervised Learning): Là quá trình học có tín hiệu chỉ đạo bên ngoài d (hình 1.8)
- Học không có giám sát (Unsupervised Learning): Là quá trình học không có tín hiệu chỉ đạo từ bên ngoài (hình 1.9)
Dạng tổng quát của luật học trọng số của mạng nơron cho biết là gia số
của véc tơ w i là wi tỷ lệ với tín hiệu học r và tín hiệu đầu vào x(t):
là một số dương còn gọi là hằng số học, xác định tốc độ học, r là tín
hiệu học, nó phụ thuộc :
r = f r (w i , x, d i ) (1.15)
Từ (1.14) ta thấy véc tơ trọng số w i = [w i1 , w i2 , , w im]T có số gia tỷ lệ
với tín hiệu vào x và tín hiệu học r Véc tơ trọng số ở thời điểm (t+1) được
tính như sau:
w i (t+1) = w i (t) + fr (w i (t), x(t), d(t)) x(t) (1.16)
Phương trình liên quan đến sự biến đổi trọng số trong mạng nơron rời rạc và tương ứng với sự thay đổi trọng số trong mạng nơron liên tục theo biểu thức:
x
y Mạng
Nơron
Tín hiệu sai lệch
Hình 1.8 Học có giám sát
ron
Hình 1.9 Học không giám sát
Trang 27
t x r dt
t
i
dw
.
với ặ) là hàm kích hoạt Tóm lại trong luật Hebb tín hiệu lỗi r đơn giản
là đầu ra của nơron hiện thờị Theo công thức 1.17 ta có 1.19
Trang 28vào là x (k) = [x 1
(k)
,x 2 (k) , …, x m (k)
]T , k = 1, …, p trong đó m là số đầu vào, n là số
đầu ra, p là số cặp mẫụ
j
k j ij k
T i
(
)
với w i T
= [w i1,x i2 , …, w im]T là véc tơ trọng số liên kết với nơron thứ i và
ặ) hàm dấu hoặc hàm sigmond
Với đầu ra mong muốn d i (k) có thể lấy các giá trị -1, +1 Khi đó công
thức (1.21) trở thành:
) ( ) ( )
(
)( i T k i k
Mạng một lớp perceptron đƣợc dùng để phân lớp và xấp xỉ các hàm, tuy
đầu ra thực tế đầu ra mong muốn
Trang 29nhiên nó phụ thuộc vào dữ liệu mẫu của bài toán, bài toán XOR là một ví dụ (không có mạng perceptron tương ứng)
Để giải quyết điều đó người ta đưa ra một cấu trúc mạng truyền thẳng nhiều lớp, ví dụ sau sẽ minh chứng điều đó:
Xét bài toán XOR, với các mẫu đầu vào và đầu ra mong muốn
2 (
4 (
d x
Rõ ràng bốn mẫu vào này không thể phân chia tuyến tính trong không gian đầu vào
Để phân chia tập mẫu này ta phải sử dụng đến hai đường thẳng như hình
Trang 30Như vậy mỗi không gian con bao gồm các mẫu của các lớp tương ứng của bài toán, hai đường thẳng được chọn là:
2 (
4 (
d
Sự thay đổi của các mẫu huấn luyện trong không gian ảnh thể hiện trong
hình 1.11(b), các mẫu x(1), x(4) trở nên trùng khớp trong không gian ảnh, nhờ
đó có thể tiến hành quá trình phân lớp tuyến tính
Đường biên chia ba mẫu trên thành 2 lớp có thể chọn tuỳ ý, ví dụ z 1 - z2 -
0.5 = 0 Đây chính là đầu vào của nơron ở tầng xuất, và đầu ra tương ứng là:
y = Sign(z 1 - z2 - 0.5)
Cuối cùng ta có mạng nơron 3 lớp (hình 1.11(c)) để giải bài toán phân lớp XOR như đã đề cập
Trang 31Kết luận chương 1
Chương 1 đã thực hiện việc hệ thống lại các kiến thức cơ bản của mạng nơron như cấu trúc nơron, mạng nơron, phân loại mạng, các phương pháp huấn luyện và ứng dụng của mạng
Các khái niệm cơ bản trên sẽ là tiền đề để chúng ta đi sâu vào 2 lớp mạng sử dụng trong mô hình dự báo trong chương 2
Trang 32Chương 2
MÔ HÌNH DỰ BÁO SỬ DỤNG MẠNG NƠRON 2.1 Tổng quan về dự báo và mô hình dự báo
2.1.1 Khái niệm về dự báo
Dự báo là một khoa học và nghệ thuật tiên đoán những sự việc sẽ xảy ra trong tương lai, trên cơ sở phân tích khoa học về các dữ liệu đã thu thập được Khi tiến hành dự báo cần căn cứ vào việc thu thập, xử lý số liệu trong quá khứ
và hiện tại để xác định xu hướng vận động của các hiện tượng trong tương lai nhờ vào một số mô hình toán học (Định lượng) Tuy nhiên dự báo cũng có thể
là một dự đoán chủ quan hoặc trực giác về tương lai (Định tính) và để dự báo định tính được chính xác hơn, người ta cố loại trừ những tính chủ quan của người dự báo [1], [2], [7]
Dù định nghĩa có sự khác biệt nào đó, nhưng đều thống nhất về cơ bản là
dự báo bàn về tương lai, nói về tương lai Dự báo trước hết là một thuộc tính không thể thiếu của tư duy của con người, con người luôn luôn nghĩ đến ngày mai, hướng về tương lai Trong thời đại công nghệ thông tin và toàn cầu hóa,
dự báo lại đóng vai trò quan trọng hơn khi nhu cầu về thông tin thị trường, tình hình phát triển tại thời điểm nào đó trong tương lai càng cao Dự báo được sử dụng trong nhiều lĩnh vực khác nhau, mỗi lĩnh vực có một yêu cầu về
dự báo riêng nên phương pháp dự báo được sử dụng cũng khác nhau
2.1.2 Đặc điểm của dự báo
Không có cách nào để xác định tương lai là gì một cách chắc chắn (tính không chính xác của dự báo) Dù phương pháp chúng ta sử dụng là gì thì luôn tồn tại yếu tố không chắc chắn cho đến khi thực tế diễn ra
Trang 33Luôn có điểm mù trong các dự báo Chúng ta không thể dự báo một cách chính xác hoàn toàn điều gì sẽ xảy ra trong tương tương lai Hay nói cách khác, không phải cái gì cũng có thể dự báo được nếu chúng ta thiếu hiểu biết
về vấn đề cần dự báo
Dự báo cung cấp kết quả đầu vào cho các nhà hoạch định chính sách trong việc đề xuất các chính sách phát triển kinh tế, xã hội Chính sách mới sẽ ảnh hưởng đến tương lai, vì thế cũng sẽ ảnh hưởng đến độ chính xác của dự báo
2.1.3 Các phương pháp dự báo
Có nhiều học giả có cách phân loại phương pháp dự báo khác nhau Tuy nhiên theo học giả Gordon, trong 2 thập kỷ gần đây, có 8 phương pháp dự báo được áp dụng rộng rãi trên thế giới [2], [10]:
1 Tiên đoán/Genius forecasting
2 Ngoại suy xu hướng/Trend extrapolation
3 Phương pháp chuyên gia/Consensus methods (có người gọi đây là phương pháp đồng thuận)
4 Phương pháp mô phỏng (mô hình hóa)/Stimulation
5 Phương pháp ma trận tác động qua lại/Cross-impact matrix method
6 Phương pháp kịch bản/Scenario
7 Phương pháp cây quyết định/Decision trees
8 Phương pháp dự báo tổng hợp/Combining methods
Sau đây ta làm rõ thêm một số phương pháp dự báo thông dụng được sử dụng nhiều trong thực tế:
Trang 34+ Phương pháp ngoại suy: Bản chất của phương pháp ngoại suy là kéo
dài quy luật đã hình thành trong quá khứ để làm dự báo cho tương lai Giả thiết cơ bản của phương pháp này là sự bảo toàn nhịp điệu, quan hệ và những quy luật phát triển của đối tượng dự báo trong quá khứ cho tương lai Thông tin cung cấp cho phương pháp ngoại suy là số liệu về động thái của đối tượng
dự báo trong quá khứ qua một số năm nhất định, thông thường yêu cầu thời khoảng quá khứ có số liệu phải lớn hơn nhiều lần thời khoảng làm dự báo Phương pháp này thích hợp để dự báo những đối tượng phát triển theo kiểu tiệm tiến Phương pháp ngoại suy có ưu điểm là đơn giản, tuy nhiên, nhược điểm chính là không tính được ảnh hưởng của các yếu tố khách quan đến kết quả dự báo
+ Phương pháp chuyên gia: Bản chất của phương pháp chuyên gia là
lấy ý kiến đánh giá của các chuyên gia để làm kết quả dự báo Phương pháp này được triển khai theo một quy trình chặt chẽ bao gồm nhiều khâu: thành lập nhóm chuyên gia, đánh giá năng lực chuyên gia, lập biểu câu hỏi và xử lý toán học kết quả thu được từ ý kiến chuyên gia Khó khăn của phương pháp này là việc tuyển chọn và đánh giá khả năng của các chuyên gia Phương pháp này được áp dụng có hiệu quả cho những đối tượng thiếu (hoặc chưa đủ)
số liệu thống kê, phát triển có độ bất ổn lớn hoặc đối tượng của dự báo phức tạp không có số liệu nền Kết quả của phương pháp dự báo này chủ yếu phục
vụ cho nhu cầu định hướng, quản lý vì thế cần kết hợp (trong trường hợp có thể) với các phương pháp định lượng khác
+ Phương pháp mô hình hoá: Bản chất của phương pháp này là kế thừa
hai phương pháp nói trên Cách thức tiếp cận của phương pháp này là dùng hệ thức toán học để mô tả mối liên hệ giữa đối tượng dự báo với các yếu tố có liên quan Khó khăn của phương pháp này là phải viết được chính xác hệ thức toán học nói trên Phương pháp mô hình hoá áp dụng cho nghiên cứu kinh tế,
Trang 35tài nguyên - môi trường sẽ phải sử dụng nhiều phương trình của mô hình kinh
tế lượng vì đối tượng dự báo (mối liên hệ giữa hoạt động kinh tế và chất lượng môi trường, sử dụng tài nguyên) có liên quan đến nhiều yếu tố kinh tế
ví dụ GDP, giá cả,… Phương pháp này yêu cầu số liệu của nhiều yếu tố hữu quan trong quá khứ trong khi đó, phương pháp ngoại suy chỉ yêu cầu một loại
số liệu Tuy nhiên, phương pháp này cũng có ưu điểm, đó là có thể giải thích được kết quả dự báo và có thể phân tích ảnh hưởng của các yếu tố liên quan
nó đã học được và áp dụng mô hình đó cho một tình huống mới Do các kỹ thuật mô hình hóa dự báo có thể học từ quá khứ để dự báo tương lai, chúng đang được áp dụng cho vô số các vấn đề như các hệ thống tư vấn, phát hiện gian lận và lạm dụng và phòng ngừa các bệnh tật và tai nạn Tính sẵn có của
"dữ liệu lớn" và công suất xử lý hiệu quả về chi phí, đang mở rộng khả năng
áp dụng các kỹ thuật dự báo dựa vào dữ liệu trong các ngành nghề khác nhau Theo cách làm đó, toán học thông minh đang giúp cho càng ngày càng có nhiều công ty nhận ra tiềm năng thực sự ẩn giấu trong dữ liệu của họ
Trang 362.2.2 Sự ra đời của một mô hình dự báo
Các mô hình dự báo được sinh ra bất cứ khi nào sử dụng dữ liệu để huấn luyện một kỹ thuật mô hình hóa dự báo Chính thức mà nói, dữ liệu + kỹ thuật
mô hình hóa dự báo = mô hình
Một mô hình dự báo là kết quả của việc kết hợp dữ liệu và toán học, nơi việc học tập có thể được chuyển dịch thành việc tạo ra một hàm ánh xạ giữa một tập hợp các trường dữ liệu đầu vào và một biến đáp ứng hay biến đích
Để xây dựng một mô hình dự báo, trước tiên bạn cần phải lắp ráp tập dữ liệu sẽ được sử dụng để huấn luyện Để làm điều đó, một tập hợp các trường đầu vào đại diện cho một khách hàng, chẳng hạn, được lắp ráp lại với nhau thành một bản ghi Bản ghi này có thể có các đặc tính như là tuổi tác, giới tính, mã bưu điện, số lượng các mặt hàng đã mua trong sáu tháng qua và số lượng các mặt hàng đã trả lại, kết hợp với một biến đích có thể được sử dụng
để thông báo cho chúng ta biết liệu khách hàng này đã bỏ đi hay không trong quá khứ Sau đó một bản ghi khách hàng có thể được mô tả bằng toán học như là một vec tơ trong một không gian nhiều chiều các đặc tính, do nhiều đặc tính đang được sử dụng để xác định đối tượng kiểu khách hàng Khi tất cả các bản ghi khách hàng được lắp ráp với nhau, chúng trở thành một tập dữ liệu có thể chứa hàng triệu bản ghi
Hình 2.1 cho thấy một biểu diễn hai chiều (sử dụng đặc tính "tuổi" và
"số lượng các mặt hàng đã mua") của một vài vec tơ đầu vào hay là của một vài đối tượng khách hàng, trong đó mỗi vec tơ hoặc các đối tượng khách hàng được biểu diễn bằng một ngôi sao màu vàng
Trang 37Hình 2.1 Biểu diễn hai chiều của các vec tơ đầu vào
Các kỹ thuật mô hình hóa dự báo cho phép xây dựng các mô hình dự báo chính xác, miễn là có đủ dữ liệu và chất lượng dữ liệu không đáng lo ngại Dữ liệu xấu cung cấp các mô hình xấu, bất kể các các kỹ thuật dự báo tốt thế nào chăng nữa Và do đó có câu nói là, chất lượng đầu ra là một hàm của chất lượng đầu vào
2.2.3 Các kỹ thuật mô hình hóa dự báo hiện đại
Hiện nay, có vô số các kỹ thuật dự báo để xây dựng mô hình Các hệ thống và các nhà cung cấp khác nhau hỗ trợ các kỹ thuật khác nhau, nhưng các môi trường xây dựng mô hình nguồn mở và thương mại cũng hỗ trợ nửa
tá các kỹ thuật hay tương tự như vậy Mặc dù một số kỹ thuật dành riêng cho một lớp vấn đề đơn lẻ, một số là tổng quát và có thể được sử dụng cho một loạt các ứng dụng Ví dụ, các máy vec tơ hỗ trợ (các SVM) nằm trong thể loại này
Một máy vec tơ hỗ trợ (SVM) ánh xạ các vec tơ dữ liệu đầu vào tới một không gian có số chiều cao hơn, ở đó một "siêu phẳng tối ưu" chia tách các
dữ liệu được xây dựng Có hai siêu phẳng (hyperplane) song song được xây dựng trên mỗi bên của siêu phẳng này
Hình 2.2 cho thấy một ví dụ trong đó một siêu phẳng tối ưu được hiển thị đang chia tách hai thể loại dữ liệu (các hình tam giác và các hình vuông) Siêu
Trang 38phẳng chia tách tối ưu là một siêu phẳng làm tăng tối đa khoảng cách giữa hai siêu phẳng song song Khoảng cách giữa hai siêu phẳng càng lớn hơn thì mô hình được giả định càng chính xác hơn Các điểm dữ liệu nằm trên một trong hai siêu phẳng song song xác định khoảng cách lớn nhất được biết đến như là các vec tơ hỗ trợ
Các máy vec tơ hỗ trợ, cũng như các mạng nơron và các mô hình hồi quy logic ký hiệu, là các kỹ thuật tổng quát rất mạnh, mặc dù khác nhau về toán học, nhưng đều tạo ra các kết quả tương đương nhau ở mức độ nào đó Các cây quyết định là một kỹ thuật mô hình hóa dự báo tổng quát nữa nổi bật
về khả năng của nó trong việc giải thích lý do cơ bản đằng sau kết quả đầu ra
đã tạo ra Vì chúng dễ sử dụng và dễ hiểu, nên cây quyết định là kỹ thuật mô hình hóa dự báo được sử dụng phổ biến nhất
Hình 2.2 Khung nhìn hai chiều của một siêu phẳng tối ưu chia tách dữ liệu
và các vec tơ hỗ trợ
Mặt khác, các kỹ thuật phân cụm rất phổ biến bất cứ khi nào biến đích hoặc biến đáp ứng không quan trọng hoặc không có sẵn Như tên gọi đã gợi ý, các kỹ thuật phân cụm có khả năng phân cụm dữ liệu đầu vào theo mức độ giống nhau
Trang 39Hình 2.3 cho thấy một ví dụ trong đó dữ liệu đầu vào đã được chia thành hai cụm Trong khi dữ liệu trong cụm đầu tiên được mô tả bằng cách sử dụng các hình tam giác màu xanh lá cây, thì dữ liệu trong cụm thứ hai được mô tả bằng cách sử dụng các hình vuông màu đỏ
Hình 2.3 Khung nhìn hai chiều về kết quả của việc phân cụm một tập dữ liệu
đầu vào thành hai cụm
Khi một biến đích hay số đo tương tự là không quan trọng, mà các cách kết hợp giữa các mục đầu vào là quan trọng, có thể sử dụng một kỹ thuật được gọi là các quy tắc kết hợp để tìm ra chúng Ví dụ, có thể sử dụng các quy tắc kết hợp để phát hiện ra là những người mua tã lót và sữa, cũng mua bia
Mặc dù tất cả các kỹ thuật dự báo có các điểm mạnh và các điểm yếu khác nhau, độ chính xác của mô hình phụ thuộc rất nhiều vào dữ liệu thô đầu vào và các đặc tính được sử dụng để huấn luyện mô hình dự báo Như đã đề cập ở trên, việc xây dựng mô hình đòi hỏi rất nhiều việc phân tích dữ liệu và
xử lý dữ liệu
Thông thường, từ hàng trăm trường dữ liệu thô có sẵn, chỉ chọn ra một tập con các trường và thực hiện xử lý trước các trường trước khi cung cấp cho
Trang 40một kỹ thuật mô hình hóa dự báo Theo cách này, bí mật đằng sau một mô hình dự báo tốt thường phụ thuộc nhiều hơn vào việc xử lý tốt dữ liệu so với
kỹ thuật được sử dụng để huấn luyện mô hình Điều đó không có nghĩa là kỹ thuật dự báo không quan trọng Nếu sử dụng sai kỹ thuật hoặc chọn tập các tham số đầu vào sai, dữ liệu tốt cũng sẽ chẳng giúp được gì
Các mạng nơron (NN) chẳng hạn, dùng được với tất cả các hình dạng và các biểu mẫu Việc lựa chọn một cấu trúc mạng đúng rất quan trọng để xây dựng một mô hình dự báo tốt Như thể hiện trong hình 2.4, các mạng nơron truyền thẳng (feed-forward) có một tầng đầu vào, với số nút đúng bằng số lượng các trường đầu vào và các đặc tính đang được xem xét và một tầng đầu
ra, mà trong trường hợp một hàm hồi quy thì tầng đầu ra này được tạo nên bởi chỉ một nút duy nhất đại diện cho trường cần dự báo
Mặc dù ở giữa các tầng đầu vào và đầu ra, mạng nơron có thể được cấu hình với số lượng các tầng ẩn và các nút ẩn tùy ý, vấn đề ở đây là nếu bạn chọn cung cấp cho mạng nơron quá ít các nút ẩn, thì nó có thể không học được hàm ánh xạ giữa các trường đầu vào và đích Nếu có quá nhiều nút ẩn thì nó sẽ bị quá khớp (over fit), có nghĩa là, nó sẽ học toàn bộ dữ liệu đầu vào, nhưng sẽ không thể dự báo các sự kiện trong tương lai
Hình 2.4 Mạng nơron nhân tạo truyền thẳng