Các giải pháp để giảm kẹt xe cũng được quan tâm phát triển như mở rộng cầu, đường, khuyến khích người dân sử dụng các phương tiên công cộng như xe điện, xe buýt thay vì ô tô, xe máy cho
Trang 1ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC VÀ KỸ THUẬT THÔNG TIN
NGUYÊN HOÀI PHƯƠNG UYÊN - 18521627
KHÓA LUẬN TÓT NGHIỆP
HỆ THÓNG DỰ ĐOÁN KẸT XE THỜI GIAN THỰC
SỬ DỤNG CÔNG NGHE DU LIEU LỚN
Real-time traffic congestion prediction using big data
technology
CU NHAN NGANH CONG NGHE THONG TIN
GIANG VIEN HUONG DAN
TS DO TRONG HOP
ThS PHAM THE SON
TP HO CHÍ MINH, 2022
Trang 2THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số
"—— eee eeeeeeee ees ngày của Hiệu trưởng Trường Dai hoc Công nghệ Thông tin.
Trang 3LỜI CẢM ƠN
Quá trình thực hiện luận văn tốt nghiệp là giai đoạn quan trọng nhất trong quãng đời mỗi sinh viên Luận văn tốt nghiệp là tiền đề nhằm trang bị cho chúng em những kỹ
năng nghiên cứu, những kiến thức quý báu trước khi lập nghiệp.
Trước hết, chúng em xin chân thành cảm ơn Trường Đại học Công nghệ thông tin — Đại học Quốc gia TP.HCM và Khoa Khoa học và Kỹ thuật Thông tin đã tạo điều
kiện cho phép chúng em thực hiện đề tài nghiên cứu này.
Em xin trân trọng cảm ơn thầy Đỗ Văn Hợp và thầy Phạm Thế Sơn đã tận tình giúp
đỡ, định hướng cách tư duy và cách làm việc khoa học trong quá trình làm khoá
luận Đó là những góp ý hết sức quý báu không chỉ trong quá trình thực hiện luận
văn này mà còn là hành trang tiếp bước cho em trong quá trình học tập và lập
nghiệp sau này.
Trong thời gian thực hiện khoá luận, em đã vận dụng những kiến thức nền tảng
đồng thời kết hợp với việc học hỏi và áp dụng kiến thức mới Tuy nhiên, trong quá trình thực hiện không tránh khỏi những sai sót Chính vì vậy, em rất mong nhận
được sự góp ý và hỗ trợ từ phía thầy cô Những lời góp ý hôm nay chính là hành
trang dé em khắc phục và tiếp tục niềm đam mê nghiên cứu của mình.
Trang 4Chương 2 TONG QUAN
2.1 Các nghiên cứu trong nước ‹ teeeeseetrtririiiiiiiiiiiiriririiiriiiirrrir
2.11 Utraffic /2-ufhnửn THÌToRà, oooeooeooneeeeonnsinnneee 2.2 Các nghiên cứu ngoài hưỚC -:-:++°+°+*+21212121212121212 mm 2.2.1 Congestion Pre-diction With Big Data for Real-Time Highway
Traffic 19
14 14
16 16 16
18
19
2.2.2 Short-term traffic flow prediction using seasonal ARIMA model with limited input data [ 1] . -c-ccccvcvcvzvrkrtrkrkrkrkrtrkrrriirrrer
2.2.3 Hướng tiếp cận hiện có -.-cceerrrriierriiiiririiirrirrie
Chương 3 NGHIEN CỨU THỰC NGHIỆM HOẶC LÝ THUYẾT
3.1 Cơ sở lý thuyết che
3.1.1 Chuỗi thời gian [7] -eecceeeerreereerteerrerreerreerreroe
25
27 -Ö-27
28
28
Trang 53.1.4.2 Xử lý dữ liệu eeeirererrerrrrririiirrrrrirrrirrirrrrree 3.1.4.3 Xây dựng mô hình
3.1.4.4 Đánh giá độ chính xác của mô hình .-.ceevex
3.1.5 Công nghệ dữ liệu lớn -. -c-cccccrkrkrkrriiiiiirir 3.1.5.1 Apache Spark [10] -+-:-:-+++++++++222t2t2t2t2tz.ttrtrrrrrirrrrre 3.1.5.2 Apache Kafka [11] ceeeeeeeerrrrririirrierrrirriirer 3.1.6 MO hình «ececrriierriiiHiiirriHiiiiiiiiiiiirrrrirrie 3.1.6.1 SARIMAX [2| essseeesreetrretrrrtrreirtrrrrrere 3.1.6.2 Facebook Prophet[8] e- eeeerrrrrrrreeeerrrrirrirrrer 3.1.6.3 Linear Regression[9] cceeeeeeertrrriiiiirirrrriiirrr
3.2 Phương pháp nghiên cứu đã sử dụng eeccrsrrierrorrrrie
3.2.1 Hướng tiếp cận trong bài toán cceeerrieerrririr
3.2.2 Bộ dữliệu cciriiiiiiiriiiiriiiiiriiiriirrie
3.2.3 _ Phân tích dữ liệu c.cceeerrrreeeer
3.2.4 Tiền xử lý dữ liệu iiiiiiriiiirai
3.2.5 Lấy thời gian hiện tại - ceereerririrrriririe
3.2.6 Xây dựng luồng lấy dữ liệu thời gian thực.
3.2.7 _ Thiết kế hệ thống criiiiiiiriiiiriirri
3.2.7.1 Huấn luyện mô hình
Chương 4 TRINH BAY, ĐÁNH GIA BAN LUẬN VỀ KẾT QUẢ
31 34 34
35
35
36 36 38 40 41 44
60
60
Trang 6Chương 6 HƯỚNG PHÁT TRIỂN
Trang 7DANH MỤC HÌNH
Hình 1.1: Hình ảnh kẹt xe [5] ssssssscsssssssssscsssssssssscsssssesssscsssseessnsesssseessncesssueessnseessseessnseesssess 14
Hình 1.2: Bản đồ tình trạng giao thông của cổng thông tin giao thông thành phố
HO Chi Minh 07 - ÔÔ 15 Hình 2.1: Hệ thống Utraffic [13] c -cccceccescccvveeerrerrrvreerrerrrrrerrrrrrrrree 18
Hình 2.2: Sơ đồ cấu trúc hệ thống của bài báo “Congestion Pre-diction With Big
Data for Real-Time Highway TTafÍẨÏC” «.c-ccceexkirkririiriiririiriiriiriire 19
Hinh 3.1: ChuGi thoi giam ecssssssssssssssssessssssssssssssssssssssssssssssessesessesssssssesesssssssusussssssssssssse 22 Hình 3.2: Đồ thị về chuỗi nhiệt độ trung bình theo tháng thể hiện yếu tố mùa
Z0 ÔỎ 23
Hình 3.3: Đồ thị về yếu tố xu hướng trong chuỗi thời gian của chuỗi giá 24
Hình 3.4: 5 tính chất của dữ liệu ]ớn e 2-se+++se+++xeeeE+setztseeerrsersrserrrrssree 26
Hình 3.5: Công thức tính RMSPE cccccrkkrrrkirtrriertriirrriirriirirrrirrrrirrrrrrree 27
Hình 3.6: Quy trình xây dựng mô hình dự báo chuỗi thời gian 28
Hình 3.7: Logo Apache Spar -cs-cs<ccxt th tr ng 29
Hình 3.8: Logo Apache KaffKa -ccc+crrkerrrrirrrriertrirrrrrirrriirrrirrrirrrrrrrrree 31
Hinh 3.9: M6 hinh 0720390907777 777 34
Hình 3.10: Mô hình Facebook Prophet ‹ seccrxesrxrerrrrerrrrirtrrrrrrierrrrree 35 Hình 3.11: Mô hình Linear Regr€SSỈOH cc-csrxiErtirrrriirtriirtrriiirrirrrrrirrrree 35
Hình 3.12: Hướng tiếp cận mớii -cc++c+v+vveettrrrrrtertrtrrtrrrrrtrrrrrrrrrirrrrkee 37
Hình 3.13: Bộ dữ liệu “Chicago Traffic Tracker - Historical Congestion
Estimates by Segment - 2018-CuT€TIt” -+cxserrekritrrirtiriiririiririe 38
Hình 3.14: Bộ dữ liệu “Chicago Traffic Tracker - Congestion Estimates by
S©ITILS” «(+ TH HE HH HH HH HH HH TH HH TH HH TH HH1 111001111111 11x rkkkg 38
Hình 3.15: Vị trí đoạn đường số 8, 9, 10 trên bản đồ[12] - 39
Hình 3.16: Trực quan sự phân bố dữ liệu của ba đoạn đường 8,9,10 40
Hình 3.17: Tính mùa vụ của dữ liệu -cccccccvssrekketrtserirttirriisrrrrrsree 41
Hình 3.18: Luồng lấy dữ liệu thời gian thực eeeccceeerriiiiirrrririe 45
Trang 8Hình 3.19: Dữ liệu lấy được từ việc gọi API .cccccccccvveerrerrrrrrerrrrrrrrer 46
Hình 3.20: Dữ liệu thời gian thực sau khi được lọc các trường quan trọng 46
Hình 3.21: Cấu trúc hệ thống -c -vvee+ccvvvvveeetrtEvrveertrtrrkreerirtrrrrrerrrrrrrkee 47
Hình 3.22: Trực quan dữ liệu đoạn đường sỐ 8 -cc ccccccccccrrerrrree 48 Hình 3.23: Trực quan dữ liệu đoạn đường sỐ 9 -ccccecccrreeerrerrrree 49 Hình 3.24: Trực quan dữ liệu đoạn đường $6 10 -cccccceccccceex 50 Hình 3.25: Dữ liệu đoạn đường số 8,9,10 được thu thập theo thời gian thực 55 Hình 3.26: Dữ liệu đoạn đường số 8, 9, 10 đã được lọc lấy các thông tin quan
Hình 4.1: Trực quan kết quả dự báo trên tập thử nghiệp của ba mô hình
SARIMAX, Facebook Prophet, Linear RegresSÏON -e-ccccccceeereerreerree 57
Hình 4.2: Kết qua dự báo cuối cùng theo thời gian thurC ecsssssssccssssessscssssseseessees 58
Trang 9DANH MỤC BẢNG
Bảng 3.1: Thông tin về ba đoạn đường cc -+ccccveeerrrrrrrreerrrrrrrrrrrrrrrrrrer 39 Bảng 3.2: Hình ảnh trước tiền xử lý và sau tiền xử lý của đoạn đường số 8 42
Bảng 3.3: Hình ảnh trước tiền xử lý va sau tiền xử lý của đoạn đường số 9 42
Bảng 3.4: Hình ảnh trước tiền xử lý và sau tiền xử lý của đoạn đường số 10 43
Bảng 3.5: Hình ảnh trước tiền xử lý và sau tiền xử lý thời gian của dữ liệu thời
Øian thỰC HH HH TH HH HH HH TH HH HH HH H111 111101111111 011tr 44
Bảng 3.6: Hình ảnh trước và sau xử lý hạ một bậc để lấy tốc độ ở thời điểm hiện
tại của 3 đoạn đường 8,9,10 -c-c+ke HH HH HH này 45
Bảng 3.7: Dữ liệu thời gian và tốc độ ở đoạn đường số 8 . 48
Bảng 3.8: Dữ liệu thời gian và tốc độ ở đoạn đường số 9 -+ 49
Bảng 3.9: Dữ liệu thời gian và tốc độ ở đoạn đường số 10 - 49 Bảng 3.10: Dữ liệu đoạn đường số 8 sau tiền xử lý -ccccceccccccex 50
Bảng 3.11: Dữ liệu đoạn đường số 9 sau tiền xử lý -cc ec-ccccex 51 Bảng 3.12: Dữ liệu đoạn đường số 10 sau tiền xử lý - 51
Bảng 3.13: Dữ liệu đưa vào mô hình SARIMAX -. c-ccecccceescerrerree 52 Bảng 3.14: Dữ liệu đưa vào mô hình Facebook Prophet - -‹‹ - 53 Bang 3.15: Dữ liệu đưa vào mô hình Linear Regression -. -c ee 54
Bảng 4.1: Kết quả độ đo RMSE của ba mô hình trên tập thử nghiệp 58
Trang 10DANH MỤC TỪ VIET TAT
Trang 11TÓM TẮT KHÓA LUẬN
Kẹt xe hiện đang là vấn đề nan giải ở các thành phố lớn, không chỉ Việt Nam mà
còn ở các nước khác Các giải pháp để giảm kẹt xe cũng được quan tâm phát triển
như mở rộng cầu, đường, khuyến khích người dân sử dụng các phương tiên công
cộng như xe điện, xe buýt thay vì ô tô, xe máy cho đến các giải pháp ứng dụng côngnghệ thông tin như bản đồ dự đoán tình trạng giao thông, tìm đường đi ngắn nhất
như Google Map [1], bản đồ tình trang giao thông của công thông tin giao thông
thành phố Hồ Chí Minh [2]
Trong thời đại công nghệ thông tin hiện nay cùng với sự bùng né của dữ liệu lớn,
các giải pháp giải quyết kẹt xe ứng dụng công nghệ thông tin lại được quan tâm hơn
bao giờ hết Chính vì thé mà tôi quyết định chọn đề tài 'Xây dựng hệ thống dự đoán
kẹt xe thời gian thực sử dụng công nghệ dữ liệu lớn”.
Hướng tiếp cận của tôi trong đề tài này là sử dụng công nghệ xử lý dữ liệu lớn dé
liên tục thu thập dữ liệu luồng dit liệu giao thông trực tuyến như thời gian và tốc độ
xe và ứng dụng vào bài toán dự báo chuỗi thời gian kết hop mô hình dự báo ngăn
hạn, dài hạn và tốc độ ở thời điểm hiện tại của đoạn đường dự báo và đoạn đường
lân cận dé đưa ra dự báo tốc độ đoạn đường trong tương lai
Đề thực hiện được đề tài tôi sử dụng dữ liệu tốc độ đoạn đường có sẵn được ước
tính bằng công cụ theo dõi giao thông Chicago thông qua việc liên tục theo dõi và
phân tích GPS nhận được từ xe buýt của cơ quan giao thông Chicago từ năm 2018
để huấn luyện mô hình dự báo ngắn hạn SARIMAX, dài hạn Facebook Prophet, mô
hình kết hợp Linear Regression
1 Chicago Traffic Tracker — Historical Congestion Estimates by Segment — 2018 Current [3]
-Sau đó sử dung công nghệ xử ly dữ liệu lớn Spark, Kafka dé liên tục thu thập dit
liệu luồng dit liệu giao thông trực tuyến như thời gian và tốc độ xe từ API được
12
Trang 12cung cấp của cơ quan giao thông Chicago và sử dụng mô hình đã huấn luyện bên
trên để dự báo theo thời gian thực
2 Chicago Traffic Tracker — Congestion Estimates by Segments.[4].
Két qua dat được qua sau khi két hop du báo ngan hạn, dài han, tốc độ ở thời điểm
hiện tại của đoạn đường dự báo và đoạn đường lân cận RMSE đã giảm còn 2.91.
13
Trang 13Chương 1 MỞ ĐẦU
1.1 Lí do chọn đề tài
Kẹt xe là một vấn đề không thể tránh khỏi ở các thành phố Kẹt xe ảnh hưởng rất
nhiều đến cuộc sống thường ngày của mọi người Một đoạn đường bình thường đi
chi mat 15 phút nhưng vì kẹt xe nên có thé mat đến vài tiếng Việc lưu thông chi bắtđầu thông thoáng khi có sự điều phối của cảnh sát giao thông Nhưng thường phải
mat một lúc rất lâu cảnh sát mới có thê vào được trung tâm ket xe đề điều phối giaothông Nếu có thê biết trước nơi đó vào thời điểm đó kẹt xe dé cảnh sát giao thông
ra điều phối sớm hơn thì có thé sẽ ngăn chặn hoặc giảm bớt được tình trang ket xe
Hình 1.1: Hình anh ket xe [5]
Chính vì thé mà các giải pháp dé giảm ket xe cũng được quan tâm phát triển như
mở rộng cầu, đường, khuyến khích người dân sử dụng các phương tiên công cộng
như xe điện, xe buýt thay vì ô tô, xe máy cho đến các giải pháp ứng dụng công nghệthông tin như bản đồ dự đoán tình trạng giao thông, tìm đường đi ngắn nhất như
14
Trang 14Trong thời đại công nghệ thông tin như hiện nay , mọi người có nhiều cơ hội tiếp
xúc với các sản phẩm công nghệ như điện thoại thông minh, máy tính Thêm vào đó
cùng với sự gia tăng các sản phẩm công nghệ và sự tăng trưởng nhanh chóng của
IoT — Internet Vạn vật và các thiết bị di động đã dẫn đến sự ra đời của đữ liệu lớn
Nên các giải pháp giải quyết kẹt xe ứng dụng công nghệ thông tin, công nghệ dữ
liệu lớn lại được quan tâm hơn bao giờ hết
Qua quá trình nghiên cứu, bài toán dự đoán tình trạng kẹt xe này, là một dạng của
bài toán dự báo chuỗi thời gian Dự báo chuỗi thời gian là một lĩnh vực quan trọng
trong máy học Dễ dàng tìm thấy nhiều loại đữ liệu chuỗi thời gian trong giao
2 Az
thông, y hoc, dự báo thời tiết, sinh hoc, quan ly chuỗi cung ứng và dự báo giá cỗ
phiếu Dự báo dựa trên khoảng thời gian được chia thành dự báo ngắn hạn và dự
báo dài hạn.
Dự báo ngắn hạn: là dự báo có thé nắm bắt được những tác động ngăn hạn như
nhiễu nhưng không thê dự báo thời gian dài.
15
Trang 15Dự báo dài hạn: là dự báo có thé dự báo thoi gian dai và dự báo xu hướng tổng thé
chung cua dit liệu thu được nhưng bỏ qua các tác động ngắn hạn
Bởi vi mỗi loại dự báo đêu có ưu điêm, khuyết điêm riêng nên tôi muôn kêt hợp cả
hai dự báo này lại dé tân dụng ưu điểm của cả hai dự báo
Chính vì thé mà tôi đã quyết định chon đề tài “Xây dựng hệ thống dự đoán ket xe
thời gian thực sử dụng công nghệ dữ liệu lớn”.
Trong đề tài này, tôi sẽ ứng dụng công nghệ xử lý dữ liệu lớn vào bài toán dự báo
chuỗi thời gian kết hợp dự báo ngắn hạn, dài hạn và tốc độ ở thời điểm hiện tại củađoạn đường dé xay dung hé thong dự đoán kẹt xe theo thời gian thực từ đó biết
được đoạn đường này khi nào xảy ra tình trạng kẹt xe và có thể đưa ra các cách ứng
phó sớm.
1.2 Mục đích
Mục đích của đề tài là xây dựng một hệ thống sử dụng các công nghệ xử lý dữ liệulớn để liên tục thu thập dir liệu luồng dữ liệu giao thông trực tuyến (tốc độ xe, lưu
lượng xe, hướng di chuyền, vị trí trên bản đồ) dé phân tích và xây dựng mô hình
phân tích dit liệu chuỗi thời gian kết hợp mô hình dự báo ngắn hạn, dài hạn và tốc
độ ở thời điểm hiện tại dé dự đoán các điểm ket xe trên bản đồ theo thời gian thực
1.3 Đối tượng
Đối tượng chính của đề tài này hướng đến là phương pháp dự báo kết hợp mô
hình dự báo chuỗi thời gian ngắn hạn, dài hạn, tốc độ ở thời điểm tại và công
nghệ xử lý dữ liệu lớn để cải thiện độ chính xác so với việc sử dung một mô
hình ngắn hạn hoặc mô hình dài hạn.
1.4 Phạm vi nghiên cứu
Dé thực hiện các tác vụ trên tôi tiên hành nghiên cứu các mô hình, kỹ thuật có liên
quan cho bài toán dự báo chuỗi thời gian bao gồm dự báo ngắn hạn, dài hạn như các
mô hình ARIMA, Facebook Prophet, công nghệ xử lý dữ liệu lớn như Apache
16
Trang 16Spark, Apache Kafka trên hai tập dữ liệu có sẵn của sở giao thông vận tải Chicago.
Với dit liệu tốc độ đoạn đường được ước tinh bằng công cụ theo dõi giao thông
Chicago thông qua việc liên tục theo dõi va phân tích GPS nhận được từ xe buýt
của cơ quan giao thông Chicago.
1 Chicago Traffic Tracker — Historical Congestion Estimates by Segment — 2018
-Current.
2 Chicago Traffic Tracker — Congestion Estimates by Segments
17
Trang 17Chuong 2 TONG QUAN
Trong quá trình làm đề tai, tôi đã nghiên cứu va tham khảo các hướng nghiên cứu
đã có của các tác giả trong và ngoài nước liên quan đến đề tài
2.1 Các nghiên cứu trong nước
2.1.1 Utraffic
Đôi với các nghiên cứu trong nước tôi có tham khảo hệ thông “Utraffic” của đại học
Bách Khoa.
Hinh 2.1: Hé thong Utraffic [13]
UTraffic (UTraffic: Urban Traffic Estimation System): Hé thống dự báo tình trạnggiao thông đô thị dựa vào dữ liệu từ cộng đồng nghiên cứu và đề xuất các giải pháphợp lý, vận dụng sức mạnh của công nghệ 4.0 và sức mạnh of cộng đồng giải quyết
các vấn đề cốt lõi, mới và không được giải quyết tốt bởi các phương pháp giải
quyết, góp phần giảm thiêu tối thiểu hóa giao thông (UTGT), nâng cao sự an toàn
và thuận lợi cho người tham gia giao thông Utraffic bao gồm các giải pháp nôi bật
sau:
Dữ liệu về giao thông được thu thập từ nhiều nguồn trong đó có nguồn quan trọng
là từ cộng đồng thông qua ứng dụng trên điện thoại di động và ứng dung web
18
Trang 18Ước lượng và dự báo tình trạng giao thông (TTGT) chính xác và kịp thời bằng các
kỹ thuật phân tích dữ liệu lớn và học máy.
Cảnh báo UTGT cho người dân một cách kip thời.
Hỗ trợ chức năng tìm đường (routing) hiệu quả có xét đến TTGT
Cung cấp thông tin thống kê, dự báo, hỗ trợ công tác ra quyết định của nhà quản lý
2.2 Các nghiên cứu ngoài nước
2.2.1 Congestion Pre-diction With Big Data for Real-Time Highway
Traffic
Trong quá trình làm tôi đã nghiên cứu và tham khảo bài báo “Congestion
Pre-diction With Big Data for Real-Time Highway Traffic” [6] Bài báo ứng dụng công
nghệ dữ liệu lớn vào dự đoán ùn tắc giao thông trong thời gian thực Công nghệ
được nhóm tác giả sử dụng là “Apache Storm” và mô hình “Support Vector
Machine”(SVM) Bên canh việc sử dụng dữ liệu giao thông, nhóm tác giả còn kết
hợp sử dụng dữ liệu của thời tiết va dit liệu cộng đồng
_Weather Data Bolt |
Congestion Prediction Bolt
“ae —_=
Hình 2.2: Sơ đồ cấu trúc hệ thông của bài báo “Congestion Pre-diction With Big
Data for Real-Time Highway Traffic”
19
Trang 192.2.2 Short-term traffic flow prediction using seasonal ARIMA model
with limited input data [1]
Khi nói về các bài toán chuỗi thời gian thì thường vấn đề là lượng dữ liệu phải
lớn, càng nhiều càng tốt Dữ liệu ít sẽ gây ra một số hạn chế cho dự báo Bài
toán hướng đến việc giải quyết vấn đề dự báo với lượng dữ liệu đầu vào hạn
chế Mô hình được sử dụng trong bài toán là ARIMA Bài toán cũng dự báo theo thời gian thực Cụ thể bài toán sẽ lấy dữ liệu lịch sử là 3 ngày và dự báo cho
ngày tiếp theo
Hình 2.3: Dữ liệu được quan sat trong 3 ngày
2.2.3 Hướng tiếp cận hiện có
Qua quá trình tìm hiểu tôi thấy được các hướng nghiên cứu hiện nay hoặc là tập
trung vào khai phá dữ liệu hoặc sẽ lay dữ liệu giao thông, kết hợp với các loại dữ
liệu khác như thời tiết , hoặc là dự báo nhưng không sử dụng công nghệ dữ liệu lớnhoặc, một hướng khác là sẽ dự đoán bang một trong hai mô hình ngắn hạn hoặc dài
han, vẫn chưa nhiều bài có sự kết hợp dự báo giữa mô hình dự báo ngắn hạn và dài
hạn Tôi nhận thấy được cả hai mô hình đều có thế mạnh riêng trong dự báo Đó là
lí do tôi kết hợp cả hai mô hình dé dựa vào điểm mạnh của cả hai mô hình và manglại kết quả dự báo tốt nhất
20
Trang 20Bên cạnh đó tình hình giao thông thực tế, điều kiện giao thông trên một đoạn đườngcòn phụ thuộc vào tốc độ các đoạn đường lân cận, nhưng hiện nay các bài báo chủ
yếu tập trung vào chỉ lấy tốc độ của đoạn đường cần dự báo đề dự báo Do đó trong
đề tài này tôi sẽ kết hợp thêm yếu tố tốc độ của các đoạn đường lân cận để cải thiện
độ chính xác của dự báo.
21
Trang 21Chương 3 NGHIÊN CỨU THUC NGHIỆM HOẶC LÝ THUYET
3.1 Cơ sở lý thuyết
3.1.1 Chuỗi thời gian [7]
Time Series Seasonality
Hình 3.1: Chuỗi thời gian
Dự báo chuỗi thời gian là một lớp mô hình quan trọng trong thống kê, kinh tế lượng
và machine learning Sở di chúng ta gọi lớp mô hình này là chuỗi thời gian (time
series) là vì mô hình được áp dụng trên các chuỗi đặc thù có yếu tổ thời gian Một
mô hình chuỗi thời gian thường dự báo dựa trên giả định rằng các qui luật trong quá
khứ sẽ lặp lại ở tương lai Do đó xây dựng mô hình chuỗi thời gian là chúng ta đang
mô hình hóa mối quan hệ trong quá khứ giữa biến độc lập (biến đầu vào) và biến
phụ thuộc (biến mục tiêu) Dựa vào mối quan hệ này dé dự đoán giá tri trong tươnglai của biến phụ thuộc
Do là đữ liệu chịu ảnh hưởng bởi tính chất thời gian nên chuỗi thời gian thường
xuất hiện những qui luật đặc trưng như : yếu tố chu kỳ, mùa vụ và yếu tố xu hướng.Đây là những đặc trưng thường thấy và xuất hiện ở hầu hết các chuỗi thời gian
22
Trang 22Yếu tố chu kỳ, mùa vụ là những đặc tính lặp lại theo chu kỳ Ví dụ như nhiệt độ
trung bình các tháng trong năm sẽ chịu ảnh hưởng bởi các mùa xuân, hạ, thu, đông.
Hay xuất nhập khâu của một quốc gia thường có chu kỳ theo các quí
Series Values for Temperature
Hình 3.2: Đồ thi về chuỗi nhiệt độ trung bình theo tháng thé hiện yếu tổ mùa vu
Yếu tố xu hướng (trend) thé hiện da tăng hoặc giảm của chuỗi trong tương lai
Chang hạn như lam phát là xu hướng chung của các nền kinh tế, do đó giá cả trungbình của giỏ hàng hóa cơ sở hay còn gọi là chỉ số CPI luôn có xu hướng tăng và xuhướng tăng này đại diện cho sự mắt giá của đồng tiền
23
Trang 23AR(2) Data with Time Trend
Hình 3.3: Đồ thị về yếu tô xu hướng trong chuỗi thời gian của chuỗi giá
Các dự báo chuỗi thời gian có tính ứng dụng cao và được sử dụng rất nhiều lĩnh vựcnhư tài chính ngân hang, chứng khoán, bảo hiểm, thương mại điện tử, marketing,
quản lý chính sách Bên dưới là một số ứng dụng của dự báo chuỗi thời gian:
e Dự báo nhu cau thị trường dé lập kết hoạch sản xuất kinh doanh cho hãng
e Dự báo lợi suất tài sản tài chính, ty giá, giá cả hàng hóa phái sinh dé thực hiện
trading hiệu quả trong market risk.
e Du báo giá chứng khoán, các chuỗi lợi suất danh mục dé quản trị danh mục
đầu tư
e Dự báo giá bitcoin, giá dầu mỏ, giá gas,
e Du báo nhiệt độ, lượng mua dé lập kế hoạch sản xuất nông, lâm, ngư nghiệp
e Du báo tác động của các nhân tố vĩ mô như lãi suất, cung tiền, đầu tư trực tiếp
nước ngoài, chi tiêu chính phủ, lạm phát, tác động lên tăng trưởng GDP dé
điều hành nên kinh tế.
Vai trò của chuỗi thời gian rất quan trọng đối với nền kinh tế và hoạt động của
doanh nghiệp nên trong machine learning và thống kê có những ngành học nghiên
cứu chuyên sâu về chuối thời gian như kinh tê lượng, định giá tài sản tài chính.
24
Trang 24Khác với các mô hình dự báo thông thường trong machine learning, các mô hình
trong dự báo chuỗi thời gian trong kinh tế lượng có những đặc trưng rất riêng Đòi
hỏi phải tuân thủ nghiêm ngặt các điều kiện về chuỗi dừng, nhiễu trắng và tự tươngquan Có rất nhiều lớp mô hình chuỗi thời gian khác nhau và mỗi một lớp mô hình
Khái niệm Big Data hiện nay tương đối quen thuộc với chúng ta Nó đại diện cho số
lượng đữ liệu này cảng tăng lên và các loại dữ liệu đa dạng khác nhau đang được
thu thập.
Khi ngày càng nhiều thông tin trên thế giới được trao đổi online và số hóa, các nhà
phân tích có thể bắt đầu sử dụng những thông tin đó làm dữ liệu Những thứ như
mạng xã hội, sách trực tuyến, âm nhạc, video, đã làm tang đáng kế lượng đữ liệu
sẵn có dé phân tích
Mọi thứ hiện nay chúng ta thao tác online đều được lưu trữ và theo dõi như đữ liệu
Do đó, tận dụng và khai thác những dữ liệu này một cách hợp lý sẽ giúp ích rất
nhiêu trong các lĩnh vực đời sông.
Big Data là bao gồm 5 tính chất (5Vs) như sau:
25
Trang 25Hình 3.4: 5 tính chất của dữ liệu lớn
Khối lượng (Volume): Đúng như tên gọi, khối lượng của Big Data là rất lớn, thậmchí là cực lớn Với sự phát triển mạnh mẽ của internet, thiết bị đi động, mạng xã hội
và công nghệ IoT (Internet of Things), khối lượng dữ liệu đang tạo ra tăng đáng kê
trong hàng ngày, hang gio.
Tốc độ (Velocity): Bên cạnh khối lượng dữ liệu lớn, tốc độ xử lý nhanh là điều kiệnthiết yêu Các ứng dụng phô biến trong lĩnh vực Internet, tài chính, ngân hàng, y tế -
chăm sóc sức khỏe, phần lớn dữ liệu lớn được xử lý real-time (thời gian thực) Côngnghệ quản lý dữ liệu lớn ngày một tiên tiễn cho phép chúng ta xử lý ngay lập tức
trước khi lưu trữ vào cơ sở dữ liệu.
Da dang (Variety): Trước đây, hầu hết dữ liệu có thé được thu thập gọn gàng trongbảng, đó là dữ liệu có cau trúc Hiện nay, dữ liệu chủ yếu xuất hiện dưới dạng phi
cau trúc như bài viết trên mạng xã hội, âm thanh, video, Công nghệ Big Data chophép liên kết va phân tích da dạng chủng loại dit liệu với nhau
26
Trang 26Độ chính xác (Veracity): Với sự đa dạng và số lượng lớn, độ chính xác là một
trong những tính chất phức tạp nhất của Big Data Tính chất này đề cập đến việc
khai phá chất lượng tập dữ liệu và làm sạch dữ liệu đó một cách hệ thống Từ đó
làm tăng độ tin cậy và chính xác, giúp ích cho việc phân tích Đây cũng là một bước
quan trọng của Big Data.
Giá trị thông tin (Value): Giá trị thông tin là tính chất quan trọng nhất của công
nghệ Big Data Ví dụ: Một doanh nghiệp muốn ứng dụng Big Data cho bài toán môhình hoạt động kinh doanh của mình Trước tiên, doanh nghiệp cần xác định rõ
những giá trị thông tin hữu ích Big Data có thê mang lại trong việc giải quyết nhu
cầu của doanh nghiệp
3.1.3 Độ đo
3.1.3.1 RMSE[9]
Các độ lệch root-mean-square ( RMSD ) hoặc root-mean-square lỗi ( RMSE ) là
một biện pháp thường được sử dụng trong những khác biệt giữa các giá trị (mẫu
hoặc các giá trị dân) được dự đoán bởi một mô hình hay một ước lượng và các giá
trị quan sát được RMSD đại diện cho căn bậc hai của thời điểm mẫu thứ hai về sự
khác biệt giữa các giá tri dự đoán và giá tri quan sát hoặc giá tri trung bình bậc hai
của những khác biệt này Các độ lệch này được gọi là phần dư khi các phép tính
được thực hiện trên mau dit liệu được sử dung dé ước tính và được gọi là lỗi(hoặc
lỗi dự đoán) khi tính toán ngoài mẫu RMSD phục vụ đề tổng hợp cường độ của cáclỗi trong các dự đoán trong nhiều thời điểm khác nhau thành một thước đo duy nhất
về sức mạnh dự đoán RMSD là thước đo độ chính xác , để so sánh các lỗi dự báo
của các mô hình khác nhau cho một tập dữ liệu cụ thể chứ không phải giữa các bộ
dữ liệu, vì nó phụ thuộc vao quy mô.
Trang 27Lỗi trung bình bình phương (RMSE) là độ lệch chuẩn của phan dư ( lỗi dự đoán ).
Phan dư là thước đo khoảng cách từ các điểm dữ liệu đường hồi quy; RMSE là
thước đo mức độ lan truyền của những phần dư này Nói cách khác, nó cho bạn biết
mức độ tập trung của đữ liệu xung quanh dòng phù hợp nhất Lỗi bình phương
trung bình thường được sử dụng trong khí hậu học, dự báo và phân tích hồi quy để
xác minh kết quả thí nghiệm
Lỗi trung bình bình phương gốc (RMSE) là thước đo mức độ hiệu quả của mô hình
của bạn Nó thực hiện điều này bằng cách đo sự khác biệt giữa các giá trị dự đoán
và giá trị thực tế R-MSE càng nhỏ tức là sai số càng bé thì mức độ ước lượng cho
thấy độ tin cậy của mô hình có thé đạt cao nhất
3.1.4 Các bước chính trong xây dự mô hình dự báo chuỗi thời gian
Trong quá trình xây dựng mô hình dự báo chuỗi thời gian, tôi sẽ thực hiện tuần
tự theo các bước:
Đánh giá độ chính
Phân tích dừliệu ——> Xử lý dữ liệu =»
Để có thể chọn được tham số mô hình phù hợp nhất, tôi dành phần lớn thời
gian đầu để phân tích, tìm hiểu về dữ liệu, chu kỳ của dữ liệu và những thách
thức đối với dữ liệu.
28
Trang 283.1.4.2 Xử lý dữ liệu
Sau khi đã phân tích xong dữ liệu, tôi sẽ tiến hành xử lý dữ liệu thô về dạng mà
mình mong để đưa vào các mô hình Mỗi mô hình đều yêu cầu đầu vào dữ liệu khác nhau Chính vì thế với mỗi mô hình sẽ có cách xử lý riêng Đây được xem
là một trong những bước rất quan trọng Nếu không xử lý tốt có thể dẫn đến
mô hình dự báo không chính xác
Cụ thế trong bước này tôi sẽ xử lý thời gian của dữ liệu, xử lý những dữ liệu bị
thiếu và trùng lặp
3.1.4.3 Xây dựng mô hình
Ở bước này để có thể cho ra dự báo tốt nhất, tôi sẽ chọn các mô hình dự báo
chuỗi thời gian và kết hợp với dữ liệu đã được xử lý để đưa ra dự báo
3.1.4.4 Đánh giá độ chính xác của mô hình
Dé xem xét chat lượng của mô hình dự báo, tôi sử dụng chỉ sô root mean square
Trang 29Apache Spark là một framework mã nguồn mở tính toán cụm, được phát triển sơ
khởi vào năm 2009 bởi AMPLab Sau này, Spark đã được trao cho Apache
Software Foundation vào năm 2013 và được phát triển cho đến nay Tốc độ xử lý
của Spark có được do việc tính toán được thực hiện cùng lúc trên nhiều máy khác
nhau Đồng thời việc tính toán được thực hiện ở bộ nhớ trong (in-memories) hay
thực hiện hoàn toàn trên RAM Spark cho phép xử lý dữ liệu theo thời gian thực,
vừa nhận đữ liệu từ các nguồn khác nhau đồng thời thực hiện ngay việc xử lý trên
dữ liệu vừa nhận được ( Spark Streaming) Apache Spark có thể chạy nhanh hơn 10lần so với Haddop ở trên đĩa cứng và 100 lần khi chạy trên bộ nhớ RAM Apache
Spark gồm có 5 thành phan chính : Spark Core, Spark Streaming, Spark SQL,
MLIIb và GraphX.
Thành phần trung của Spark là Spark Core: cung cấp những chức năng cơ bản nhất
của Spark như lập lịch cho các tác vụ, quản lý bộ nhớ, fault recovery, tương tác với
các hệ thống lưu trữ Đặc biệt, Spark Core cung cấp API dé định nghia RDD
(Resilient Distributed DataSet) là tập hợp của các item được phân tán trên các node
của cluster và có thê được xử lý song song.
Spark có thể chạy trên nhiều loại Cluster Managers như Hadoop YARN, Apache
Mesos hoặc trên chính cluster manager được cung cấp bởi Spark được gọi là
Standalone Scheduler.
Spark SQL cho phép truy van dữ liệu cấu trúc qua các câu lệnh SQL Spark SQL có
thé thao tác với nhiều nguồn dữ liệu như Hive tables, Parquet, và JSON
Spark Streaming cung cấp API dé dé dàng xử lý dữ liệu stream
MLIib Cung cấp rất nhiều thuật toán của học máy như: classification, regression,
clustering, collaborative filtering.
GraphX là thư viện dé xử ly đồ thị
Trong các thư viện ma Spark cung cấp thì có 69% người dùng Spark SQL, 62% sử
dụng DataFrames, Spark Streaming và MLIIb + GraphX là 58%.
30
Trang 303.1.5.2 Apache Kafka [11]
88 kafka,
Hinh 3.8: Logo Apache Kafka
Apache Kafka thường được sử dung trong các kiến trúc dữ liệu phát trực tuyến thờigian thực (real time) dé cung cấp các phân tích thời gian thực Vi Kafka là một hệ
thống nhắn tin Pub - Sub nhanh, có thé mở rộng, bền và có kha năng chịu lỗi cao,
nên nó được sử dụng trong những trường hợp xử lý khối lượng lớn dit liệu đến và
đáp ứng được khả năng phản hồi ngay lập tức Kafka có các đặc tính thông lượng,
độ tin cậy và sao chép cao hơn, có thé áp dung cho những thứ như theo dõi các cuộc
gọi dịch vụ (theo dõi mọi cuộc gọi) Mô hình cấu trúc Kafka bao gồm các thành
phân sau: Message, Broker, Topic, Partition, Producer, Consumer.
Kafka Broker
Xu ly tất cả các yêu cầu từ client (produce, consume, metadata) và giữ dữ liệu đượcsao chép trong cụm Có thể có một hoặc nhiều broker trong một cụm
Kafka Broker Clusters
Một may có thể chạy nhiều server kafka, mỗi server như vậy gọi là một broker Các
broker này cùng trỏ toi chung I zookeeper thì chúng là 1 cụm broker(Clusters).
31
Trang 31Kafka ZooKeeper
Kiểm soát trạng thái của cluster (brokers, topics, users, )
Kafka Topics
Về cơ bản, Kafka duy trì nguồn cấp tin nhắn trong các categories Và, messages
được lưu trữ cũng như được xuất bản trong một category/feed name Chúng được
gọi là topics Ngoài ra, tat cả các messages trong Kafka thường được tô chức thành
các Kafka topics.
Tóm lại, một topic là một category hoặc feed name nơi ma messages được publish.
Nhìn về mặt database thông thường thì topic giỗng như một table trong CSDL SQL.Topic là nơi chứa message Mỗi message giống như record trong table (Chỉ khác là
chúng NoSq]).
Kafka Partitions
Với mỗi broker trong Kafka, chúng được chia thành các partition Các partition trong
Kafka có thể là leader hoặc là bản sao (replica) của một topic Leader partition chịu
trách nhiệm cho tất cả các tác vụ đọc ghi của topic Nếu leader partition bi hong,
replica partition sẽ đảm nhận vai tro leader partition mới.
Tai bat kỳ thời điểm nao thì chỉ có một broker lam leader các partition còn lại Va
chỉ có leader partition mới nhận và xử ly data Giả sử như broker 101 sập In-sync
replica ở broker 102 sẽ thay thé làm leader Tiếp tục xử ly data Khi broker 101 được
khởi động lại nó lại làm replica, đồng bộ đữ liệu với leader hiện tại ở 102 Cho đến
khi trở thành lại làm leader Việc làm leader sẽ phụ thuộc vào Zookepper quyết định
Ngoài ra partion là nơi lưu trữ message của topic Một topic có thể có nhiều
partition Khi khởi tao topic cần set số partition cho topic đó Partition càng nhiều thì
khả năng làm việc song song cho đọc và ghi được thực hiện nhanh hơn Các
message trong partition được lưu theo thứ tự bất biến(offset) Một partition sẽ có tôi
thiểu 1 replica dé đề phòng trường hợp bị lỗi Số lượng replica luôn nhỏ hơn số
lượng broker.
32