1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian

76 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Tác giả Trần Đăng Khoa, Hoàng Đènh Quang
Người hướng dẫn TS. Đỗ Trọng Hợp
Trường học Trường Đại học Công nghệ Thông tin - Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Khoa học dữ liệu
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2021
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 76
Dung lượng 38,05 MB

Nội dung

Như vậy, bài toán dự báo luồng giao thông là một bài toán theo chuỗi thời gian đề ước tính lưu lượng giao thông tại một thời điểm trong tương lai dựa trên dữ liệu được thu thập trong các

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

TRÀN ĐĂNG KHOA

HOÀNG ĐÌNH QUANG

KHÓA LUẬN TÓT NGHIỆP

HE THONG DỰ BAO LUONG GIAO THONG THOT

GIAN THỰC DUA TREN PHAN TÍCH DU LIEU LON

CHUOI THỜI GIAN

REAL-TIME TRAFFIC FLOW FORECASTING SYSTEM BASED ON

TIME SERIES BIG DATA ANALYSIS

CU NHAN NGANH KHOA HOC DU LIEU

TP HO CHi MINH, 2021

Trang 2

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KHOA HOC VA KY THUAT THONG TIN

TRAN DANG KHOA - 18520936 HOANG ĐÌNH QUANG - 18521294

KHÓA LUẬN TÓT NGHIỆP

HE THONG DU BAO LUONG GIAO THONG THỜI

GIAN THỰC DUA TREN PHAN TÍCH DU LIEU LON

CHUOI THỜI GIAN

REAL-TIME TRAFFIC FLOW FORECASTING SYSTEM BASED ON

TIME SERIES BIG DATA ANALYSIS

CU NHAN NGANH KHOA HOC DU LIEU

GIANG VIEN HUONG DAN

TS ĐỖ TRỌNG HỢP

TP HÒ CHÍ MINH, 2021

Trang 3

THONG TIN HOI 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ố n8ầy của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

Trang 4

-LỜI CẢM ƠN

Chúng tôi chân thành cảm ơn Tiến sĩ Đỗ Trọng Hợp đã đồng hành và tận hình

hướng dẫn chúng tôi trong suốt quá trình học tập và nghiên cứu đề hoàn thành khóa luận Thầy đã luôn theo dõi và động viên, giúp đỡ cũng như định hướng cho chúng tôi mỗi khi gặp khó khăn trong quá trình nghiên cứu và thực hiện đề tài Thầy luôn

tạo mọi điều kiện tốt nhất để chúng tôi có thể phát triển hết khả năng của bản thân,

đặc biệt là kỹ năng nghiên cứu Thầy đã tận tình chỉ dạy và góp ý cho chúng tôi từ kiến thức chuyên môn cho đến các kỹ năng, phương pháp nghiên cứu khoa học, kỹ

năng mềm như kỹ năng thuyết trình, kỹ năng trình bay, báo cáo Ngoài ra, thầy còn định hướng và tư van thêm cho chúng tôi về lĩnh vực nghiên cứu nói chung và lĩnh

vực Khoa học dữ liệu nói riêng.

Chúng tôi cũng cảm ơn Thạc sĩ Nguyễn Van Kiệt, bạn Lê Việt Thắng, bạn

Nguyễn Thái Minh Đức đã hỗ trợ và giúp đỡ chúng tôi trong quá trình thực hiện luận

văn này Bên cạnh đó, chúng tôi cũng chân thành cảm ơn các thầy cô trong khoa Khoa

học và Kỹ thuật Thông tin và các thầy cô trong trường Đại học Công nghệ Thông tin

- Đại học Quốc gia Thành phố Hồ Chí Minh đã giảng dạy kiến thức chuyên môn và

kỹ năng cho chúng tôi trong suốt quá trình học tập đại học tại trường.

Một lần nữa, chúng tôi bày tỏ lòng biết ơn đến Tiến sĩ Đỗ Trọng Hợp, Thạc sĩ

Nguyễn Văn Kiệt, bạn Lê Việt Thắng, bạn Nguyễn Thái Minh Đức và quý thầy cô đã giảng dạy chúng tôi trong thời gian qua Chúng tôi cũng cảm ơn cha mẹ, bạn bè, những người đã theo dõi và sát cánh với chúng tôi trên mọi chặng đường học tập.

Trang 5

MỤC LỤC Chương 1 MỞ ĐẦU 2< 22ceeeesEEESEEEELdtttttttrkkrrerrtrtrrkkree 2

DD ah 2

1.2 Mục tiêu và phạm vi nghiên cứu - ¿5+ ++c+c+crxerrterxerrrkerkrrree 4

I PA an 4 1.2.2 Phạm vi nghiên CỨU ¿-¿- - 5252222 SE E1 v rry 4 Chuong 2 TONG QUAN

2.1 GiGi thiệu bài toán - «55+ tt HH re 6

2.2 Tình hình nghiên cứu trên thế giới -2¿+22+zz+22++z+tzrrrxzcrrrrx 7

2.3 Tình hình nghiên cứu trong ƯỚC ¿-¿-¿- ¿<5 2t ++£v£vEeEevsezrerexeeerseeve 8

Chương 3 CƠ SỞ LY THUYÊT -ccessevcvcvvvvvssseesrvrvsee 10

3.1 Real-time Big Data prOC€ssing - óc c cv tre 0

3.1.1 Big Data DrOC€SSINE si 0

3.1.1.1 Khái niệm Big Data.

3.1.1.2 Đặc điểm của Big Data - 22222222 2tceECEvrrertrrvrrerrrrrrrrr 1

3.1.2 Streaming Data ¿ cà St 22110121212 re 2 3.1.3 Apache Spark c-ccS + th HH 212112212111 rớt 3

3.1.3.1 Khái niệm Apache SparÍ cty 3

3.1.3.2 Các thành phần của Apache Spark -c¿e+ccsccesrz 4

3.1.3.3 Ưu điểm của Apache Spark -2¿-2222zcccccvvrrecrrrrrrrrr 6

3.2 Time series analysis

3.2.1 Giới thiệu về Time series analysis ¿-2+zc+22+zcevcrrseerrrr 7

Trang 6

3.2.2 Dự báo chuỗi thời gian sử dụng thống kê truyền thống (Traditional Statistical (TS) StyÏ€) ch HH HH HH HH it 19

3.2.3 Dự báo chuỗi thời gian sử dụng hồi quy thông thường (Regular

4.1 Kiến trúc tổng quát hệ thống -22++++222E©vvrvrrrrtrrrrrrrrrrrrrrrrr 44

4.2 Thu nhận và tiền xử lý dữ liệu

4.2.1 Thu nhận dit liệu ¿2522223322 S*ESyEErErrsetrrrrrrrrrrrrrrrrrrrrerre 45

4.2.2 Tiền xử lý dữ liệu -2-¿+22E+2z2EEE12222711E 22111 cty 41

4.3 Mô hình dự báo tốc độ giao thông -¿ ©2+++222vvveeevvrvrrerrrsrrrrrg 48

4.3.1 Mô hình Prophet 5-5252 5++++++2St2x2xekekerekeketrkerrkervee 48

4.3.2 Mô hình ARIMA ccceesesssesseeseeseeseeseessesseeseesesseesseesseseesesseesssanseseeseesed 49 4.3.3 Mô hình LSTM ¿525tr 50

4.3.4 Mô hình TCN

4.4 Huấn luyện phân tan trong BigDL -2222522c+z+2222cvvvccrerrrrrr 52

4.5 Phat triển hệ thống dự báo giao thông thời gian thực - 54

Trang 7

Chương 5 THỰC NGHIỆM VÀ THẢO LUẬN s- -<<< 56

5.1 Môi trường và quy trình thực nghiệm - - - ¿55+ 56 5.1.1 Môi trường thực nghiệm ¿52 5cSxc>terrtererrrrerirreerrrie 56 5.1.2 Quy trình thực nghiệm - - - + +5 +x+x£xvEvEEEkeketrkerrkrkerrrrrerkree 57 5.2 BO dit LiGU 59 5.3 Kết quả thực nghiệm và thao WAM eccccssscessssssesccssssescsssseccsssussesssenseesssessed 61

5.3.1 Kha năng dy báo ngắn han (short term) va dai han (long term)

5.3.2 Hiệu suất của các mô hình tại các mốc thời gian khác nhau trong ngày63 5.3.3 Hiệu suất của các mô hình tại các ngày trong tuần - 64 5.3.4 Thời gian huấn luyện .-¿-2+:z+222++++22E+++tzEEEkzrrrrrrxerrrrrrecrrr 65

5.3.5 Hiệu suất của mô hình LSTM và TCN với các khoảng độ trễ đầu vào khác nhau /Z 6 - , Q¬Đ—2<e<c se Ẩc 5< s< se se kereseseseeermserersesesre 66 5.3.6 So sánh kết quả dự báo của mô hình TCN với tốc độ thực tế 67

5.3.7 Đánh giá hiệu suất mô hình TCN trên những dữ liệu hoàn toàn mới 69

5.3.8 Trực quan hóa kết quả thực nghiệm ¿zz+222cczz 70 Chương 6 KET LUẬN VÀ HƯỚNG PHAT TRIÊN -«« 71 6.1 Kết luận 2cccccc222222 2222222211111 121.1111.111 re 71

Trang 8

DANH MỤC HÌNH

Hình 2.1: Kiến trúc Stacked AutoEncodr :ccvvvvvrvvrvvrrrrrrrrrrirrrrrrrrre §

Hình 2.2: Kết quả thực nghiệm của Quang Hung Do và các cộng sự - 9 Hình 2.3: Kết quả thực nghiệm của Trinh Dinh Toan và Viet Hung Truong 9 Hình 3.1: 5 đặc điểm của Dữ liệu lớn.

Hình 3.7: Danh sách ngày lễ trong mô hình Prophet .-: :+c+c+2 24

Hình 3.8: Vòng lặp trong mạng hồi quy LSTM ¿¿©c++22+cc+czsscee 27

Hình 3.9: Ví dụ quá trình vòng lặp của mạng hồi quy LSTM - 28 Hình 3.10: Trạng thái tế bào (BI — 28

Hình 3.11: Quá trình trích lọc thông tin ở lớp Sigmoid và cổng quên (Forget Gate).

— 29

Hình 3.12: Quá trình xác định thông tin được lưu vào trạng thái tế bào hiện tại tại lớp

Sigmoid va l6p Tanh Ưäaặăa 30 Hình 3.13: Quá trình cập nhật trạng thái tế bào mới ©-ccccsecxteEEeExerrrerrre 31

Hình 3.14: Quá trình tính toán từ tensor đầu vào thành tensor đầu ra 3⁄2 Hình 3.15: Ví dụ về thêm các vùng đệm có giá trị bằng 0 . -ccccce+ 33

Hình 3.16: Ví dụ về SỰ SiG HỞ hàn HH HH HH Huệ 34 Hình 3.17: Ví dụ về vấn đề lỗ hổng ở trường tiếp nhận . -. - 35 Hình 3.18: Sự thay đổi từ khối tích chập 1 chiều thành khối dư - 37

Hình 3.19: Kiến trúc tổng quát của mô hình TCN - - ¿++2+zz++z+scez 38

Hình 3.20: Song song mô hình va Song song hóa dữ liệu -.-. - ¿5+ 39

Trang 9

Chương2 TONG QUAN

Trong chương này, luận văn sẽ giới thiệu bài toán “Dự báo luồng giao thông” cũng như trình bày tổng quan các nghiên cứu liên quan đến bài toán ở Việt Nam và

trên thé giới.

2.1 Giới thiệu bài toán

Dy báo luồng giao thông thuật ngữ tiếng Anh là Traffic Flow Forecasting hay Traffic Flow Prediction là một thành phần quan trọng của mô hình hóa, vận hành và

quản lý lưu lượng Mục tiêu của dự báo luồng giao thông là cung cấp các thông tin

về lưu lượng giao thông trong tương lai Như vậy, bài toán dự báo luồng giao thông

là một bài toán theo chuỗi thời gian đề ước tính lưu lượng giao thông tại một thời

điểm trong tương lai dựa trên dữ liệu được thu thập trong các khoảng thời gian trước

đó từ một hoặc nhiều vị trí quan sát Dữ liệu giao thông lịch sử có thể được thu thập

từ nhiều nguồn khác nhau như các nguồn cảm biến, ra đa, máy ảnh, hệ thống định vị toàn cầu di động, các nguồn cung cấp cộng đồng hay phương tiện truyền thông xã

hội, v.v Với sự phát triên phát triển của khoa học công nghệ, các hệ thống cảm biến được sử dụng rộng rãi trong giao thông đã khiến cho dữ liệu giao thông đang bùng

nô và chúng ta đang bước vào kỉ nguyên của Dữ liệu lớn Quản lý và kiểm soát giao

thông vận tải đang dựa trên dữ liệu ngày một nhiều hơn Đặc biệt, với sự phát triển

và triển khai nhanh chóng của hệ thống giao thông thông minh (Intelligent

Transportation System - ITS), bài toán dự báo luồng giao thông lại càng được chú ý hơn.

Mặc dù đã có rất nhiều hệ thống và mô hình dự báo lưu lượng giao thông được

đề xuất, nhưng hau hết chúng đều sử dụng các mô hình lưu lượng nông hoặc các mô

hình thống kê, xác suất truyền thông như AutoRegressive Integrated Moving Average (ARIMA) [1] và vẫn chưa thực sự hữu ích cho bài toán Trong những năm gan đây,

hướng tiếp cận bằng học sâu, một lĩnh vực trong máy học, đã thu hút rất nhiều sự

quan tâm của giới học thuật và công nghiệp Nó đã được áp dụng thành công trong

Trang 10

các nhiệm vụ phân loại, xử lý ngôn ngữ tự nhiên, giảm chiều dữ liệu, phát hiện đối tượng, mô hình chuyển động, v.v Các thuật toán học sâu sử dụng kiến trúc nhiều lớp

hoặc kiến trúc sâu đề trích xuất các đặc trưng vốn có trong dữ liệu từ cấp thấp nhất

đến cấp cao nhất và chúng có thé khám phá lượng lớn cấu trúc trong dữ liệu Ngoài

ra, để các thuật toán học sâu này phát huy hiệu quả tối đa cả về hiệu suất, thời gian

huấn luyện lẫn tài nguyên hệ thống trong thời đại Dữ liệu lớn, nhiều phương pháp,

kỹ thuật xử lý, huấn luyện mô hình mới cũng được nghiên cứu và đề xuất điển hình như các nền tảng xử lý Dữ liệu lớn như Apache Spark, Apache Kafka, v.v.

2.2 Tình hình nghiên cứu trên thế giới

Bài toán dự báo lưu lượng luồng giao thông hay dự báo tốc độ giao thông là một bài toán luôn được giới nghiên cứu khoa học trong và ngoài nước quan tâm Năm

2014, Yisheng Lv và các cộng sự đã đề xuất một mô hình Stacked Autoencoders (SAEs) cho bài toán dự báo luồng giao thông [4] Day là một mô hình được huấn

luyện theo kiểu tham lam bằng cách sử dụng nhiều lớp autoencoder xếp chồng lên

nhau tạo thành một mạng học sâu như Hình 2.1 Mô hình cho kết quả tốt hơn các mô inh máy học tại thời điểm đó với MAE tại các thời điểm dự báo 15 phút - 30 phút -

45 phút - 60 phút tiếp theo lần lượt là 34,1 - 64,1 - 92,0 - 122,8 Tiếp theo đó, vào

năm 2016, Rui Fu [3] và các cộng sự đã công bố một công trình nghiên cứu sử dụng

phương pháp mạng nơ ron nhân tạo Long Short-Term Memory (LSTM) và Gated

Recurrent Units (GRU) cho bài toán dự báo luồng giao thông Mô hình sử dụng dữ

liệu quá khứ trong 30 phút trước đó để dự báo lưu lượng luồng giao thông trong 5

phút tiếp theo với kết quả MAE là 18,1 đối với mô hình LSTM và 17,2 đối với mô

‘inh GRU Ca 2 công trình giới thiệu trên đều được thực hiện trên bộ dữ liệu PeMS với dit liệu được thu thập từ hơn 15000 cảm biến được đặt ở California Các cảm biến

này thu thập dữ liệu mỗi 30 giây Gần đây hon, Yi Liu và các cộng sự đã giới thiệu một kỹ thuật máy học có tên là Federated Learning và đề xuất một phương pháp kết

hợp giữa Federated Learning và mạng nơ ron nhân tạo Gated Recurrent Unit

(FedGRU) vào năm 2020 cho bài toán dự báo luồng giao thông [Š] Phương pháp đề

Trang 11

xuất này mang lại độ chính xác lên tới 90,96% và MAE 6,84 Cao hơn so với các mô

hình học sâu nâng cao Phương pháp này cũng được thử nghiệm trên bộ dữ liệu PeMS nhưng đã mở rộng quy mô dữ liệu với số lương cảm biến lên đến hơn 39000 cảm biến.

Predictor

Stacked Autoencoder

Hình 2.1: Kiến trúc Stacked AutoEncoder.

2.3 Tình hình nghiên cứu trong nước

Ở Việt Nam cũng có một số công trình nghiên cứu đáng chú ý liên quan đến

bài toán dự báo lưu lượng luồng giao thông Năm 2018, Quang Hung Do và các cộng

sự đã công bố một nghiên cứu về việc sử dung mạng nơ ron wavelet mờ (FWNN) dé

dự báo lưu lượng giao thông ngắn hạn [6] Mô hình này được đào tạo bằng thuật toán tối ưu dựa trên địa lý sinh học cải tiến (BBO) Kết quả được thé hiện ở Hình 2.2 cho

thấy thuật toán đề xuất tương đối tốt với RMSE là 20,4034.

Trang 12

Hình 2.2: Kết quả thực nghiệm của Quang Hung Do và các cộng sự.

Một nghiên cứu khác vừa được công bố vào năm 2021 của Trinh Dinh Toan

và Viet Hung Truong sử dụng phương pháp học máy kết hợp với thuật toán tối ưu.

Mô hình đề xuất sử dụng một mô hình học máy kinh điển là Support Vector Machine

(SVM) và cải thiện mô hình này bằng cách sử dụng Nearest Neighbor [7] Kết quả mang lại cho thấy mô hình hoạt động tốt với những dự báo ngắn hạn với trung MAPE (Mean Absolute Percentage of Error) tốt nhất là 2,39 ở móc dự báo là 5 phút tiếp

theo Kết quả được thé hiện cụ thé hơn ở Hình 2.3.

A (min) 27 Oct 28 Oct 29 Oct 30 Oct 31 Oct Average

Trang 13

Chương3 CƠ SỞ LÝ THUYÉT

3.1 Real-time Big Data processing

3.1.1 Big Data processing

3.1.1.1 Khái niệm Big Data

Big Data (Dữ liệu lớn) là thuật ngữ chỉ các tập dữ liệu có khối lượng rất lớn

và phức tạp bao gồm cả dữ liệu có cấu trúc, bán câu trúc hay phi cấu trúc, khiến cho

các phần mềm xử lý dữ liệu truyền thống không có khả năng thu thập, quản lý và xử

lý xử liệu trong một khoảng thời gian hợp lý Big Data rat quan trọng với các tổ chức, doanh nghiệp vì dữ liệu càng lớn và càng đa dạng sẽ giúp các phân tích càng chính xác hơn Việc phân tích chính xác này sẽ giúp doanh nghiệp đưa ra các quyết định

giúp tăng hiệu quả sản xuất, giảm rủi ro và chỉ phí Những dữ liệu này tới từ nhiều

nguôồn khác nhau như từ những cảm biến thu thập thông tin giao thông, dự báo thời tiết, các thông tin cập nhật, hình ảnh, video trên các trang mạng xã hội, các giao dịch trên các sàn thương mại điện tử, v.v.

Bằng việc tổng hợp một lượng thông tin lớn từ nhiều nguồn khác nhau khiến

cho Big Data trở thành một công cụ rất mạnh cho việc ra các quyết định kinh doanh, nhận diện hành vi nhanh hơn và tốt hơn rất nhiều so với cách thức truyền thống Big

Data được cập nhật theo từng giờ, từng phút, từng giây và từ nhiều nguồn khác nhau

nên nó thường được đo lường theo đơn vị Terabytes (TB), Petabytes (PB) va Exabytes

(EB) Ví dụ điển hình với hơn 1,84 tỷ người dùng Facebook hoạt động hằng ngày, cứ

mỗi giây lại có 5 tài khoản Facebook được tạo ra, hơn 300.000.000 bức ảnh được

đăng lên mỗi ngày, mỗi phút có 510.000 bình luận được đăng lên và 293.000 trạng thái được cập nhật.

10

Trang 14

3.1.1.2 Dac điểm của Big Data

VOLUME

VERACITY VELOCITY

Hình 3.1: 5 đặc điểm của Dữ liệu lớn.

Hiện nay vẫn chưa có câu trả lời chính xác cho câu hỏi dữ liệu thế nảo gọi là

Big Data Người ta thường đánh giá dữ liệu có phải là Big Data hay không dựa vào 5

đặc điểm chính như Hình 3.1 là Khối lượng (volume), Tốc độ (velocity), Tính đa

dạng (variety), Tính xác thực (veracity) và giá trị (value).

e Khối lượng (volume): Đây là đặc điểm tiêu biểu nhất của Big Data, khối

lượng di liệu rat lớn Kích cỡ dữ liệu của Big Data tăng lên từng ngày, vào

năm 2016, lưu lượng di động toàn cầu ước tính là 6,2 Exabyte (6,2 tỷ GB) và đến năm 2020 thì con số đó đã tăng lên gần 40.000 Exabyte dữ liệu Với dữ

liệu truyền thống chúng ta có thê lưu trữ trên đĩa mềm, đĩa cứng nhưng với

11

Trang 15

Big Data, chúng ta phải sử dụng đến công nghệ “đám mây” mới đáp ứng được

khả năng lưu trữ.

e Tốc độ (velocity): là sự tăng trưởng của dữ liệu về mặt tốc độ Khối lượng dữ

liệu gia tăng một cách chóng mặt Mỗi giây có tới khoảng 72,9 triệu các lượt

yêu cầu truy cập tìm kiếm trên web bán hàng của Amazon Tốc độ xử lý dữ

liệu cũng dat tới mức thời gian thực (real-time) Công nghệ xử lý dữ liệu lớn ngày nay cho phép chúng ta xử lý tức thì trước khi chúng được lưu trữ vào cơ

sở dữ liệu.

e Tính đa dạng (variety): là tính đa dang của dit liệu Dữ liệu truyền thống

chúng ta thường được tô chức đưới dang dit liệu có cấu trúc thì ngày nay, đa

số dữ liệu được lưu trữ được tạo ra là phi cau trúc (video, hình anh, âm thanh,

dữ liệu từ thiết bị cảm biến, v.v.) Big Data cho phép liên kết, xử lý và phântích nhiều dạng dữ liệu khác nhau

e Tính xác thực (veracity): là một trong những đặc điểm phức tạp nhất của Big

Data - Độ tin cậy hay tinh độ chính xác của dit liệu Với sự phát triển và cácphương tiện truyền thông xã hội, việc xác định tính độ tin cậy hay độ chính

xác cua dir liệu trở nên khó khăn va phức tạp hơn Bài toán làm sạch dữ liệu

(phân tích và loại bỏ dữ liệu thiếu chính xác và dữ liệu nhiễu) đang là bài toán

quan trọng của Big Data.

e Giá trị (value): giá trị là đặc điểm quan trọng nhất của Big Data Có thé nói

việc đầu tiên trước khi bắt tay vào làm Big Data chính là xác định được giá trị

của dit liệu Các tổ chức, doanh nghiệp phải hoạch định được giá trị thông tinhữu ích của dữ liệu cho vấn đề, bài toán hoặc mô hình kinh doanh của mình

3.1.2 Streaming Data

Dữ liệu truyền trực tuyến là dữ liệu được sinh ra liên tục thường với kích

thước, số lượng nhỏ từ một hoặc nhiều nguồn dtr liệu Giống với đữ liệu thông thường,

12

Trang 16

dữ liệu truyền trực tuyến cũng rat đa dạng, có thé là đữ liệu kinh doanh, ban hang, dữ

liệu từ cảm biên, v.v dưới dạng bảng, hình ảnh, văn bản, v.v.

Dữ liệu truyền trực tuyến cần được xử lý tuần tự và tăng dần trên cơ sở điểm

dữ liệu hoặc qua cửa số thời gian trượt, và được sử dụng cho nhiều loại phân tích baogồm tương quan, tổng hợp, loc và lay mẫu Việc phân tích dữ liệu truyền truyền trựctuyến mang lại nhiều lợi ích cho các doanh nghiệp tổ chức khi nắm bắt những thôngtin quan trọng kịp thời Ví dụ, các doanh nghiệp có thé theo dõi những thay đổi trong

quan điểm, ý kiến của công chúng đối với thương hiệu và sản phẩm của họ bằng cách

liên tục phân tích các luéng truyền thông xã hội và phản hồi kip thời khi cần thiết

Quá trình xử lý di liệu truyền trực tuyến thường gồm có 2 lớp:

e Lớp lưu trữ: hỗ trợ lưu trữ dữ liệu theo đúng thứ tự, nhất quán và cho phép

đọc, ghi các luồng dữ liệu này một cách nhanh chóng và hiệu quả nhất.

© Lớp xử lý: có nhiệm vụ xử lý dữ liệu được lưu ở lớp lưu trữ, thực hiện các

tính toán, biến đôi, xử lý dữ liệu và thông báo cho lớp lưu trữ xóa dữ liệu

không còn can thiêt nữa.

Vì nhu cầu và tầm quan trọng của phân tích, xử lý dữ liệu truyền tuyến màhiện nay, nhiều nền tảng đã được ra đời cho phép xử lý loại đữ liệu này một cách hiệu

quả như Apache Spark, Apache Kafka, Apache Storm, Apache Flume,v.v.

3.1.3 Apache Spark

3.1.3.1 Khai niệm Apache Spark

Apache Spark là một khung làm việc (framework) nguồn mở được sử dung

chủ yếu dé phân tích dữ liệu lớn (Big Data), học máy (Machine Learning) và xử lý

thời gian thực (Real-time) dựa trên cơ chế xử lý phân tán Apache Spark giúp tăng

tốc độ xử lý, dé sử dụng và linh hoạt hơn so với các nên tảng truyền thống như

Hadoop Bằng cách thực hiện hiện tính toán trên cụm giúp tạo ra khả năng phân tích

13

Trang 17

Spark Core: là thành phần cốt lõi của Apache Spark Tất cả các chức năng

khác được xây dựng dựa trên nền tảng là Spark Core Spark Core có vai trò

thực hiện tính toán và xử lý trong bộ nhớ (In-memory computing) Đồng thời

cũng tham chiếu đến các dữ liệu được lưu trữ tại các hệ thống lưu trữ bên

ngoài.

GraphX: là một framework đi kèm với các lựa chọn thuật toán phân tán để

xử lý cau trúc đồ thị Nó cung cấp một API dé thực hiện tính toán biéu đồ cóthê mô hình hóa các biểu đồ do người dùng xác định bằng cách sử dụng API

đã được tối ưu sẵn Các thuật toán này sử dụng phương pháp tiếp cận RDD

của Spark Core dé lập mô hình dữ liệu

Spark Streaming: là một bổ sung ban đầu của Apache Spark giúp nó đáp ứng

các yêu cầu xử lý thời gian thực, tận dụng khả năng lập lịch memory-base củaSpark Core dé thực hiện streaming analytics Nó lay dit liệu theo mini-batches

và thực hiện các phép biến đổi RDD (Bộ dữ liệu phân tán có khả năng phục

hôi) trên các mini-batches dữ liệu đó.

MLIib (Machine Learning Library): là một framework học may phân tan

trên Apache Spark tận dụng kha năng tinh toán tốc độ cao nhờ kiến trúc dựa

trên bộ nhớ của Spark.

Spark SQL: là một thành phần nằm trên Spark Core, tập trung xử lý đữ liệu

có cau trúc, sử dụng phương pháp tiếp cận dựa trên khung dữ liệu (DataFrame)Ngoài cung cấp giao diện truy van dữ liệu với cú pháp SQL, Spark SQL cũngcung cấp một giao điện tiêu chuẩn dé đọc và ghi dit liệu vào các kho dit liệu

khác như HDFS, JSON, Apache Hive, v.v Các cơ sở dữ liệu phô biến như

MongoDB, Apache Cassandra, Apache Hbase cũng được hé trợ từ hệ sinh thái

của Spark.

15

Trang 18

3.1.3.3 Ưu điểm của Apache Spark

Tốc độ xử lý của Spark trên Disk nhanh hơn 10 lần và trên trên bộ nhớ nhanh

hơn 100 lần so với Hadoop Spark đạt được tốc độ này thông qua việc phân

vùng có kiểm soát Nó quản ly dit liệu bang cách sử dụng các phân vùng giúp

xử lý dữ liệu phân tán song song với lưu lượng mạng tối thiểu

Spark-RDD có khả năng chịu lỗi (Fault Tolerance) tốt đảm bảo không mắt dữ

liệu.

Khả năng xử lý trong bộ nhớ (In-memory Processing) làm tăng tốc độ tínhtoán và luồng đữ liệu tuần hoàn

Có khả năng xử lý dữ liệu thời gian thực với Spark Streaming.

Spark linh hoạt, có khả năng chạy độc lập và có thé được tích hợp vào trìnhquản lý cụm Hadoop Yarn Apache Spark tương thích tốt với Hadoop Spark

là một sự thay thế tiềm năng cho các chức năng MapReduce của Hadoop, trongkhi Spark có khả năng chạy trên một cụm Hadoop hiện có băng cách sử dụngYARN để lập lịch tài nguyên

Tiết kiệm chỉ phí lưu trữ cho dữ liệu lớn

Spark hỗ trợ nhiều nguồn đữ liệu như Parquet, JSON, Hive và Cassandra ngoài

các định dạng thông thường như tệp văn bản, bảng CSV và RDBMS API

nguồn dit liệu cung cấp một cơ chế có thé cắm thêm dé truy cập dữ liệu có cau

trúc thông qua Spark SQL.

Đơn giản hóa việc xử lý và phân tích đồ thị với GraphX

Đảm bảo quá trình xử lý đữ liệu luôn được diễn ra nhờ vào khả năng xử lý

song song trên các cụm.

Hỗ trợ đầy đủ các thư viện cho học máy, truy vấn đữ liệu

16

Trang 19

3.2 Time series analysis

3.2.1 Giới thiệu về Time series analysis

Total Cases

(Linear Scale) 300M

200M

100M

Total Coronavirus Cases

Hình 3.3: Biéu đồ minh hoa dit liệu chuối thời gian về Tổng số ca mắc Covid-19

trên thé giới

Time Series (chuỗi thời gian) là dãy các giá trị của một hiện tượng (doanh SỐ,

tốc độ giao thông, lượng mưa, v.v.) được sắp xếp theo thứ tự thời gian Hình 3.3 thé

hiện một ví dụ về dit liệu chuỗi thời gian được thé hiện dưới dạng một biểu đồ đường,

dữ liệu thể hiện Tổng số ca mắc Covid-19 trên thé giới Một chuỗi thời gian có haithành phần đó là thời gian và giá trị của hiện tượng nghiên cứu Thời gian có thể làthời kì hoặc thời điểm Độ dài giữa hai thời gian liền nhau gọi là khoảng cách thời

gian Giá trị của hiện tượng nghiên cứu có thé là tuyệt đối, tương đối hoặc trung bình.

e Chuỗi tuyệt đối: khi các mức độ (level) của day số là số tuyệt đối, vi dụ như

bảng doanh thu (ty đồng) quan các năm

17

Trang 20

e Chuỗi số tương đôi: khi các mức độ của dãy sô là sô tương đôi, ví dụ như tôc

độ tăng doanh thu qua các năm.

e Chuỗi số trung bình: khi các mức độ của dãy số là sô trung bình, ví dụ như tốc

độ trung bình của phương tiện giao thông qua các mốc thời gian

Một chuỗi thời gian thường có ba thành phần chính là Xu hướng (Trend), Thời

vụ (Seasonal) và Chu ky (Cyclic) Xu hướng (Trend) của chuỗi thời gian được thé

hiện khi khi có một sự tăng hoặc giảm trong dài hạn của dữ liệu Thời vụ (Seasonal)

của chuỗi thời gian xuất hiện dữ liệu bị ảnh hưởng bởi các yếu tô liên quan đến mùa

vụ như các quý trong năm, các ngày trong tuần, v.v Chu kỳ (Cyclic) của chuỗi thời

gian là sự tăng hoặc giảm cua dir liệu lặp lại trong một giai đoạn không cô định

Hình 3.4: Biểu đô minh họa Phân tích chuỗi thời gian trong lĩnh vực chứng khoán

Time series analysis (phân tích chuỗi thời gian) cho phép nghiên cứu xu hướng

biến động của hiện tượng qua thời gian Từ đó, tìm ra tính quy luật của sự thay đôi,

đồng thời dự đoán được các mức độ của hiện tượng trong tương lai Hình 3.4 là một

18

Trang 21

ví dụ minh họa về phân tích chuỗi thời gian đữ liệu chứng khoán trong quá khứ đểtìm ra quy luật và dự đoán chỉ số chứng khoán trong tương lai.

Hiện nay, có nhiều kỹ thuật, phương pháp được sử dụng để phân tích chuỗithời gian như các mô hình thống kê xác suất, các thuật toán Máy học, Học sâu Cácphần tiếp theo sẽ giới thiệu một kỹ thuật phân tích chuỗi thời gian phô hiện nay

3.2.2 Dự báo chuỗi thời gian sử dụng thống kê truyền thống (Traditional

Statistical (TS) Style)

Theo kiểu thống kê truyền thống, bài toán dự báo chuỗi thời gian được xây

dựng với các mô hình thống kê

Traditional Statistical(TS) Style:

Last observed timestamp

Time 2S +

1H Farm | fA

.-Input(x) Output(y)

Hình 3.5: Dự báo chuỗi thời gian kiều thong kê truyền thống

Từ Hình 3.5, có thể nhận thay răng thông thường, một mô hình chỉ có thé xử

lý một chuỗi thời gian và huấn luyện với toàn bộ chuỗi thời gian trước mốc thời gian

cuối cùng va dự đoán một vài bước tiếp theo Thông thường khi thay đổi mốc thời

gian dự báo cuối cùng thì phải huấn luyện mô hình lại từ đầu

Đối với thống kê truyền thống, chỉ có thể dự báo nhiều bước (Multi-Step) vàkhông thể dự báo nhiều biến đầu ra (Multivariate) Ví dụ, cùng một khoảng thời gian,

thống kê truyền thống không thé vừa dự báo lượng mưa, vừa dự báo tốc độ gió, nhiệt

độ.

19

Trang 22

3.2.3 Dự báo chuỗi thời gian sử dụng hồi quy thông thường (Regular

Regression (RR) Style)

Những năm gan đây, các kiến trúc học sâu phổ biến (ví dụ: RNN, CNN,Transformer, v.v.) đang được áp dụng thành công cho vấn đề dự báo Dự báo được

chuyền đổi thành một bài toán hồi quy học có giám sát

Regular Regression(RR) Style: next sample x next sample y

|-Extra Feature2| | | | Bãnnninninnninninn

sampled input(x) sampled output(y)

trị trước đó Ví dụ, khi dự báo vận tốc của 30 phút tiếp theo thì cần phải đưa vào mô

hình vận tốc của một ngày trước đó Vì vậy, hồi quy thông thường có thê dự đoán cácmốc thời gian khác nhau mà không nhất thiết phải huấn luyện lại Cùng với đó cũngthé dự báo nhiều bước (Multi-Step) và đa biến (Multivariate)

3.2.4 M6 hình Prophet

Prophet là mô hình dự báo chuỗi thời gian được Facebook nghiên cứu và công

bố vào năm 2017 [8] Prophet dựa trên mô hình xu hướng phi tuyến tính gọi làAdditive Model, phù hợp với các tác vụ dự báo chuỗi thời gian có hiệu ứng theo mùa

20

Trang 23

hay theo dữ liệu lịch sử có xu hướng Đặc biệt, Prophet được thiết kế với các thông

sô mà chúng ta có thê điêu chỉnh mà không cân biét chi tiét mô hình bên dưới.

Mô hình Prophet được xây dựng dựa trên 3 thành phần chính là xu hướng(trend), tính thời vụ (seasonality) và ngày lễ (holidays) Chúng được kết hợp với nhau

theo phương trình sau:

y(t) = g(t) + sự) + A(t) + e(Œ), (2)

Trong đó g(t) là hàm xu hướng của mô hình, đó là một hàm không theo chu

kỳ và có giá trị thay đổi theo chuỗi thời gian, s(t) là hàm thể hiện sự thay đối theochu kỳ (ví dụ như theo chu kỳ hàng tuần, hàng tháng, hàng năm, v.v.) và h(£) là hàm

thể hiện sự ảnh hưởng của các ngày lễ hay những sự kiện, thé hiện những thay đổibat thường tiềm ân trong chuỗi thời gian Thuật ngữ e(£) thé hiện cho những lỗi batthường xảy ra trong mô hình và được giả thiết rằng hàm lỗi này tuân theo phân phối

chuẩn

3.2.4.1 The Trend Model

Facebook đã dựa vào tinh chat của xu hướng và xây dựng 2 mô hình xu hướng

là Saturating Growth Model và Piecewise Linear Model.

Saturating Growth Model là một mô hình phi tuyến tính, lấy ý tưởng dựatrên sự tăng trưởng dân số trong các hệ sinh thái tự nhiên, nơi mà các sự tăng tưởngnày là phi tuyến và bão hòa ở một sức chứa nào đó Ví dụ như lượng người dùngFacebook là một thành phần tăng trưởng phi tuyến, tuy nhiên lượng người dùng này

không thê tăng trưởng nhiều hơn (bão hòa) số người truy cập Internet Đối với loại

tăng trưởng này, Facebook đã dùng mô hình tăng trưởng logistic, dạng cơ bản của

mô hình này như sau:

Cc 1+ exp(-k(t—m)”

g(t) = (2)

21

Trang 24

Trong đó, C là sức chứa (carrying capacity), klà tỉ lệ tăng trưởng và m là một

có sự thay đổi, s;là thời điểm thay đổi thứ j với j = 1, ,S Định nghĩa một vectơ

tỷ lệ điều chỉnh ổ € RŠvà ổ;là tỷ lệ điều chỉnh tại thời điểm s;, tỷ lệ tại bất kỳ thờiđiểm £ nào cũng đều phụ thuộc vào k có giá trị bằng k + a(f)Tổ với a(t) €{0,1}5theo điều kiện a(t) = 1,nếu t = sj vaa(t) = 0 nếu t < s; Khi tỷ lệ tăngtrưởng k đã được điều chỉnh thì tham số m cũng cần được điều chỉnh cho phù hợp

bởi công thức:?n = m + a(£)Ty, với y được tính như sau:

k + 3¡<jÖi

=(s -m—» y,) (1 -—s~(5; 3» ( k + Mie; 61

i<j

Thay các điều chỉnh vào phương trình (2), mô hình tăng trưởng bão hòa

(Saturating Growth Model) có dang sau:

C(t)

IO = Ty exp(—(k + a(T8)Œ — ứn + a@) 7)

Piecewise Linear Model là mô hình xu hướng tuyến tính dành cho các bàitoán dự báo không cho thấy tốc độ tăng trưởng bão hòa, mô hình xu hướng phù hợp

trong trường hợp nay là:

g(t) = ( + a()”ô)t + (t — (m + a() y),

trong đó k là tỷ lệ tăng trưởng, Sty lệ điều chỉnh, m là tham số bù đắp và được thiếtlập lại bang mà

22

Trang 25

3.2.4.2 Seasonality

Mô hình tinh thời vụ phù hợp cho các vấn đề dự báo mang tính thời vụ, tuầnhoàn như dữ liệu chuỗi thời gian kinh doanh Ví dụ, công nhân viên làm việc 5ngày/tuần và lặp lại mỗi tuần, các ngày lễ tết là có định và lặp lại theo năm, v.v Đểphù hợp với các dạng dữ liệu kê trên, người ta cần xác định một mô hình mang tínhthời vụ đặc biệt dựa trên các hàm tuần hoàn theo thời gian t

Những nhà nghiên cứu của Facebook đã dựa trên chuỗi Fourier dé tao ra một

mô hình mang tính tuần hoàn linh hoạt Mô hình có dạng:

s = UNL, (a,cos (=) + b,sin (=)) ;

với P là chu kỳ đều đặn với P = 365,25 cho chu ky là năm hay P = 7 cho chu kymỗi tuần, v.v N là tham số có thé thay đổi tùy theo bài toán, các nhà nghiên cứu của

Facebook cũng cho biết với chu kỳ theo năm và theo tuần thì N = 10 và N = 3

hoạt động tốt cho nhiều bài toán Và việc tăng giá trị N cũng cho phép việc điều chỉnhcác mẫu thay đôi nhanh hơn, nhưng đồng thời cũng dễ dẫn đến vấn đề quá khớp dữ

liệu (Overfitting).

3.2.4.3 Holidays and Events Model

Các ngày lễ và những sự kiện là những yếu tô có thé làm thay đôi đột ngột một

chuỗi thời gian và thường chúng không tuân theo bat ky chu kỳ nào Ví du Giáng sinh

sẽ diễn ra vào ngày 25 tháng 12 nhưng sẽ rơi vào những thứ khác nhau vào nhữngnăm khác nhau, một số nước thì không có lễ giáng sinh Một số nước khác thì lại cónhững ngày lễ tuần theo lịch âm như Tết Nguyên Đán ở Việt Nam Các sự kiện lớn

như World Cup, Black Friday cũng không phải là sự kiện tuần hoàn Điển hình nhất

đó là đại địch Covid-19 đã làm thay đổi thế giới rất nhiều mà không thé nào đoántrước được Vì vậy việc mô hình hóa tác động của các sự kiện này là điều không thể

thực hiện một cách trơn tru.

23

Trang 26

Holiday | Country | Year | Date Thanksgiving | US 2015 | 26 Nov 2015 Thanksgiving | US 2016 | 24 Nov 2016 Thanksgiving | US 2017 | 23 Nov 2017

Hình 3.7: Danh sách ngày lễ trong mô hình Prophet

Dé giải quyết van dé này, Facebook đã tạo ra một danh sách các ngày lễ nhưHình 3.7 Danh sách này bao gồm tên ngày lễ, thời gian diễn ra trong quá khứ (năm,ngày) và tên quốc gia có ngày lễ đó dé phân biệt với các ngày lễ toàn cầu Với mỗi

ngày lễ ¡ , đặt D; là tập hợp các ngày lễ đó trong quá khứ và tương lai Một ham chi

thi (Indicator Function) dé kiểm tra xem một thời gian £ có nằm trong ngày nghỉ ihay không và cấp cho mỗi ngày nghỉ một tham số x; dé chỉ sự thay đổi tương ứngtrong dự báo, x; tuân theo phân phối chuan N(0, v?) Một ma trận các bộ hồi quy

được tạo thành:

Z(t) = [1Œ € Dị), ,1(£ € DỤ].

và mô hình ngày lễ và sự kiện sẽ được tính bang:

h(t) = Z(t)k

3.2.5 Mô hình Autoregressive Integrated Moving Average (ARIMA)

Mô hình ARIMA, viết tắt của AutoRegressive Integrated Moving Average làmột mô hình phân tích chuỗi thời gian truyền thống Mô hình ARIMA sử dụng dữ

24

Trang 27

liệu chuỗi thời gian và phân tích thống kê dé giải thích dữ liệu và đưa ra các dự đoántrong tương lai Mô hình ARIMA giải thích dữ liệu bang cách sử dụng dữ liệu chuỗi

thời gian về các giá trị trong quá khứ của nó và sử dụng hồi quy tuyến tinh dé đưa ra

dự đoán Phương trình hồi quy ARIMA(p, đ, q) có dạng như sau:

3.2.5.1 AutoRegression (AR)

Đây là thành phần tự hồi quy bao gồm tập hợp độ trễ của các biến hiện tại.Quá trình tự hồi quy bậc p của một chuỗi x, được biéu diễn như sau:

AR(p) = Go + J‡#¿_¡ + P2Xp-2t +hpXt—p

Độ trễ bậc p là giá trị lùi về quá khứ p bước thời gian của chuỗi

3.2.5.2 Moving Average (MA)

Quá trình trung bình trượt là quá trình dich chuyền giá trị trung bình của chuỗitheo thời gian Quá trình này sẽ tìm mối liên hệ về mặt tuyến tính giữa các phần tửngẫu nhiên €, Quá trình trung bình trượt được biểu diễn như sau:

q

MA) = u+ » 6:€:—¡

i=1

25

Trang 28

3.2.5.3 Integrated (I)

Đây là quá trình đồng tích hợp hay còn gọi là lay sai phân Sai phân là phươngpháp dùng dé biến đổi một chuỗi thành chuỗi dừng nhằm loại bỏ các nhân tố ảnhhưởng thời gian và làm cho chuỗi dễ dự báo hơn Quá trình sai phân bậc đ của chuỗi

được tính như sau:

I(d) = A*(x;)

Nhu vậy có thé nhận thấy, về tổng quát, mô hình ARIMA là mô hình kết hợpcủa 2 quá trình tự hồi quy và trung bình trượt Dữ liệu trong quá khứ được sử dụng

dé dự báo dữ liệu trong tương lai và các chuỗi cần chuyên hóa sang chuỗi dừng trước

khi huấn luyện mô hình bằng cách lấy sai phân

3.2.5.4 Chỉ số AIC - Akaike Information Criteria

Một trong những tiêu chi thường được su dung dé lựa chọn mô hình đó là chỉ

số AIC (Akaike Information Criteria) Tiêu chí thông tin này là một công cụ ước tính

lỗi dự báo và do đó đánh giá chất lượng tương đối của các mô hình thống kê trên mộttập hop dir liệu nhất định Gia sử có một tập hợp các mô hình được xây dựng trên

cùng một bộ đữ liệu, AIC ước tính chất lượng của từng mô hình trong mối liên quanđến từng mô hình khác Do đó, AIC cung cấp một phương tiện dé lựa chọn mô hình.Khi một mô hình thống kê được sử dụng dé dự báo, kết quả sẽ gần như không baogiờ chính xác hoàn toàn Vì vậy một số thông tin sẽ bị mất do không thê dự báo từ

mô hình AIC ước tính lượng thông tin tương đối bị mat bởi một mô hình nhất định:

mô hình mat càng ít thông tin thì chất lượng của mô hình đó càng cao

Tóm lại rang giá trị của AIC càng nhỏ thì mô hình của chúng ta càng phù hợp

26

Trang 29

3.2.6 Mô hình Long-Short Term Memory (LSTM)

Ở phan này, luận văn sẽ giới thiệu các kiến thức liên quan đến mang hồi quy

Long Short-Term Memory hay còn được viết tắt là mạng hồi quy LSTM Đây là một

dạng đặc biệt của mạng hồi quy RNN, khắc phục được các vấn đề phụ thuộc xa ở

RNN Mạng hồi quy LSTM hoạt động hiệu quả trên nhiều bài toán khác nhau trong

đó có các bài toán về chuỗi thời gian.

Mạng hồi quy LSTM vẫn dựa trên ý tưởng cốt lõi của RNN là sử dụng mộtvòng lặp cho phép truyền thông tin từ bước này qua các bước tiếp theo để giữ cácthông tin ngữ cảnh của các giá trị đầu vào Hình 3.8 thể hiện một đoạn mạng hồi quy

A với đầu vào là X, và đầu ra là H, Một vòng lặp được sử dụng dé lưu trữ và truyềnthông tin từ bước này sang các bước tiếp theo

)

©

Hình 3.8: Vòng lặp trong mạng hồi quy LSTM

Một mạng hồi quy có thể được xem như là nhiều bản sao chép của cùng một

mạng như Hình 3.9 Dau ra của mạng này sé là dau vào của một mạng sao chép khác.

27

Trang 30

Như đã nói, mạng hồi quy LSTM được thiết kế dé tránh việc phụ thuộc xa(long-term dependency) Các dự đoán của mạng LSTM luôn được điều chỉnh nhờvào kinh nghiệm học được trong quá khứ Mạng hồi quy LSTM có thể biết được khinào cần ghi nhớ và khi nào cần quên các thông tin trọng số nhờ vào công quên (forget

gate).

Hình 3.10: Trạng thái tế bào (Cell State)

Thanh phan cốt lõi của mô hình LSTM là các trạng thái tế bào (Cell State).Các trạng thái tế bào này có dạng như một băng chuyền như Hình 3.10, chạy qua cácnút trong mạng hồi quy và chỉ tương tác tuyến tính một ít nên các thông tin có thê dễdàng truyền đi thông suốt Mô hình LSTM có khả năng bỏ đi hoặc thêm vào các thông

28

Trang 31

tin cần thiết cho trạng thái tế bào Nhiệm vụ điều khiển các luồng thông tin trong

mang được thực hiện bởi các cổng (gates), mô hình LSTM gồm có 3 công:

e Công cập nhật (update gate): điều khiến việc lay thông tin của lớp (hay unit)

trước đó.

e Công đầu ra (output gate): quyết định xem lay bao nhiêu thông tin dé xuất

ra đầu ra (output)

e Cổng quên (forget gate): quyết định thông tin nào cần giữ lại và thông tin

nao gan bỏ qua.

Sau đây chúng ta sẽ tìm hiểu chỉ tiết cách hoạt động của mô hình hồi quy

LSTM.

Bước đầu tiên là quyết định xem cần giữ lại những thông tin nào và bỏ quanhững thông tin nào Quyết định này được thực hiện bởi lớp sigmoid và công quên.Đầu vào x, và đầu ra của h,_;của trạng thái Œ¿_;trước đó sẽ được đưa vào lớpsigmoid, kết quả là một số nằm trong khoảng [0; 1] cho biết cần giữ lại bao nhiêuthông tin Kết quả bang 1 thé hiện rằng giữ lại toàn bộ thông tin và toàn bộ thông tin

sẽ bị bỏ đi nếu kết quả băng 0

fe = OW, -[h;_+,x:| + de

Hình 3.11: Quá trình trích lọc thông tin ở lớp Sigmoid và cổng quên (Forget Gate)

29

Trang 32

Bước tiếp theo là xác định thông tin nào sẽ được lưu vào trạng thái tế bào hiện

tại Một lớp sigmoid được gọi từ công quên nhằm xác định giá trị thông tin nào sẽđược cập nhật, đồng thời lớp tanh cũng tạo ra một vectơ giá tri mới ễ, dé thêm vàotrạng thái Bước tiếp theo, kết hợp 2 giá trị đó lại tạo ra một cập nhật cho trạng thái

ig = đ(M, - [Agi xt] + bị

É, = tanh(W, - [hy-1, Xe] + be

Hình 3.12: Quả trình xác định thông tin được lưu vào trạng thái tế bào hiện tại tại

lớp Sigmoid và lop Tanh.

Tiếp theo, trạng thái tế bào mới C, sẽ được cập nhật từ trạng thai tế bào cũŒ¿_¡ trước đó Trang thái tế bào cũ Œ,_¡ sẽ nhân với f, để loại bỏ các thông tin đã

xác định quên trước đó va cộng với giá trị mới i, * Ế, dé tạo ra trạng thái mới C,

Ce = fe * Coa + ip xẾ,

30

Trang 33

Hình 3.13: Quá trình cập nhật trạng thái tế bào mới.

Cuối cùng, chúng ta cần xác định đầu ra của trạng thái hiện tế bào hiện tại Giá trịnày phụ thuộc vào trạng thái tế bào hiện tại và sẽ phải lọc lại Đầu tiên, một lớpsigmoid được dùng dé quyét dinh phan cua trang thai tế bào hiện tại sẽ được xuất ra.Sau đó chúng sẽ được đưa qua một hàm tanh dé đưa về khoảng giá trị [—1, 1] vànhân với giá trị đầu ra của công sigmoid dé được giá trị đầu ra mà ta mong muốn

0, = ơ(W,[h¿ +,xr| + bạ

h, = 0, * tanh(C;)

3.2.7 Mô hình Temporal Convolutional Network (TCN)

Mang tích chap tam thoi (Temporal Convolutional Network - TCN) là một mô

hình hoc sâu được phat triển dựa trên mang nơ ron tích chập (Convolutional NeuralNetwork - CNN) Đây là một biến thé của mô hình CNN có thé giải quyết được cácbài toán bài toán liên quan đến dự báo tuần tự Mô hình TCN được thiết kế dựa trên

2 ý tưởng cơ bản:

e Một là, các tích chập có mối quan hệ nhân quả (causal), có nghĩa là không có

thông tin rò rỉ từ tương lai đến quá khứ

31

Trang 34

e Hai là, kiến trúc có thé nhận một chuỗi tuần tự (sequence) có độ dai bat kỳ và

ánh xạ nó tới một chuỗi đầu ra có cùng độ dài giống như một mạng hôi quy

3 chiều gồm batch size, input length, nr_input_channels và đầu ra cũng là một tensor

3 chiều gồm batch size, input lenpth, nr output channels Quá trình tính toán từ

tensor đầu vào thành tensor đầu ra được thé hiện ở Hình 3.14

output tensor

input tensor

input_length

Hình 3.14: Quá trình tinh toán từ tensor dau vào thành tensor dau ra

Dé don giản hóa việc tinh toán, giả sử nr_input_channel va

nr_output_channels bằng một Khi đó, đầu vào và đầu ra của lớp tích chập sẽ là tensor

32

Trang 35

1 chiều hay vector 1 chiéu Mot hat nhan (kernel) có kích thước được định nghĩa trước

là kernel_size, một cửa số trượt có cùng kích thước với hạt nhân sẽ bắt đầu ở vị trí

phan tử đầu tiên của vector đầu vào Dé có được phan tử ở vị trí trong ứng của vector

đầu ra, một phép tích vô hướng được thực hiện giữa đoạn vector đầu vào tại vị trí cửa

số trượt và hạt nhân Sau đó, cửa số trượt sẽ trượt đến vị trí kế tiếp một đơn vi va tiếptục thực hiện tính toán như trên đến hết vector đầu vào Nếu nr_input_channels và

nr_output_channels là lớn hơn 1 thì quá trình tính toán trên sẽ được thực hiện tương

tự cho các channel còn lại với các hạt nhân có giá trị khác nhau.

3.2.7.2 Causal Convolution

Đối với tích chập có quan hệ nhân quả, moi phan tử trong chuỗi dau ra phải

được tính toán dựa trên các phần tử trước nó ở chuỗi đầu vào Do đó, để đảm bảo cho

kích thước tensor đâu ra luôn băng kích thước tensor đâu vào, một vùng đệm có giá

trị bằng 0 (zero-padding) sẽ được thêm tensor đầu vào như Hình 3.15

= Ld

input_length zero-padding

Hình 3.15: Ví dụ về thêm các vùng đệm có giá trị bằng 0

Số lượng giá trị đệm băng 0 được thêm vao trong trường hợp không có sự giãn

nở có giá tri băng kernel_ size - 1.

33

Trang 36

3.2.7.3 Dilated Convolution

Tích chập giãn nở ra đời với mong muốn dau ra của mô hình có thé hoc đượcdựa trên tất cả đầu vào trước nó Điều này đạt được khi trường tiếp nhận (receptivefield) của đầu ra là tập hợp bao gồm tất cả phần tử đầu vào trước nó, còn được gọi là

“full history coverage” Trong trường hợp không có sự giãn nở, một mạng tích chập

1 chiều với n lớp và kernel_size là k sẽ có trường tiếp nhận r được tính như sau:

r=1+n(k-1)

và số lượng lớp mà một mang tích chập 1 chiều cần có dé đạt được “full historycoverage” với chiều dai tensor đầu vào input_length | được tính bằng công thức:

n= [@ =1)/@ — 1)]

Từ công thức trên có thé thay, gia sử kích thước hạt nhân k là không đối, số

lượng lớp của mạng tích chập 1 chiều thay đổi tuyến tính phụ thuộc vào chiều daitensor đầu vào và điều này sẽ làm cho mô hình trở nên rất nhiều lớp và số lượng tham

số mô hình rất lớn Do đó, để có thê tăng kích thước trường tiếp nhận trong khi vẫngiữ được số lượng lớp của mô hình tương đối nhỏ, sự giãn nở được áp dụng cho mạng

tích chập hay còn gọi là tích chập giãn nở (Dilated Convolution).

Hình 3.16: Ví dụ về sự giãn nở

34

Trang 37

Ý tưởng cốt lõi của sự giãn nở là việc tăng khoảng cách đ giữa các phần tử ởtensor đầu vào được dùng để tính toán tensor đầu ra Vấn đề này được giải quyết băng

cách tăng khoảng cách đ sau mỗi lớp của mô hình như Hình 3.16 và hệ số khoảngcách d của mô hình tại một lớp bat kỳ được tinh theo công thức:

d = bxxi

với b là hằng số giãn nở và i là số lớp bên dưới lớp hiện tai

Khi áp dụng sự giãn nở, mỗi một lớp được thêm vào mô hình sẽ làm tăng độ

rộng trường tiếp nhận thêm một giá tri bằng đ * (k — 1) và độ rộng của trường tiếp

nhận w của một mô hình TCN n lớp với kích thước hạt nhân k được tính như sau:

Hình 3.17: Ví dụ về van dé lỗ hồng ở trường tiếp nhận

Một điều lưu ý rằng, dé tránh việc trường tiếp nhận có lỗ hồng (các 6 màu đỏ)

như Hình 3.17 thì kích thước hạt nhân phải lớn hơn hoặc bằng hằng số giãn nở Khi

35

Trang 38

đó, số lớp tối thiểu của mô hình dé đạt được “full history coverage” và số lượng giá

trị đệm 0 tại một lớp bat kỳ có thể được tính như sau:

của mô hình, chuân hóa đâu vao cho các lớp và tránh được hiện tượng qua.

36

Ngày đăng: 23/10/2024, 10:14

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Lee, Yi-Shian, and Lee-Ing Tong, "Forecasting time series using a methodology based on autoregressive integrated moving average and genetic programming.”Knowledge-Based Systems 24.1,66-72, 2011 Sách, tạp chí
Tiêu đề: Forecasting time series using a methodologybased on autoregressive integrated moving average and genetic programming
[2] Tian, Yongxue, and Li Pan, "Predicting short-term traffic flow by long short-term memory recurrent neural network.", 20/5 IEEE international conference on smart city/SocialCom/SustainCom (SmartCity). TEEE, 2015 Sách, tạp chí
Tiêu đề: Predicting short-term traffic flow by long short-termmemory recurrent neural network
[3] Fu, Rui, Zuo Zhang, and Li Li, "Using LSTM and GRU neural network methods for traffic flow prediction.", 2016 31st Youth Academic Annual Conference ofChinese Association of Automation (YAC). IEEE, 2016 Sách, tạp chí
Tiêu đề: Using LSTM and GRU neural network methodsfor traffic flow prediction
[4] Lv, Yisheng, et al., "Traffic flow prediction with big data: a deep learning approach.", IEEE Transactions on Intelligent Transportation Systems 16.2, 865-873, 2014 Sách, tạp chí
Tiêu đề: Traffic flow prediction with big data: a deep learningapproach
[5] Liu, Yi, et al. "Privacy-preserving traffic flow prediction: A federated learning approach." IEEE Internet of Things Journal 7.8, 7751-7763, 2020 Sách, tạp chí
Tiêu đề: Privacy-preserving traffic flow prediction: A federated learningapproach
[6] Chen, Jeng-Fung, Shih-Kuei Lo, and Quang Hung Do, "Forecasting short-term traffic flow by fuzzy wavelet neural network with parameters optimized by biogeography-based optimization algorithm.", Computational intelligence andneuroscience 2018, 2018 Sách, tạp chí
Tiêu đề: Forecasting short-termtraffic flow by fuzzy wavelet neural network with parameters optimized bybiogeography-based optimization algorithm
[7] Toan, Trinh Dinh, and Viet-Hung Truong, "Support vector machine for short-term traffic flow prediction and improvement of its model training using nearest neighbor approach.", Transportation research record 2675.4, 362-373, 2021 Sách, tạp chí
Tiêu đề: Support vector machine for short-termtraffic flow prediction and improvement of its model training using nearest neighborapproach
[8] Taylor SJ, Letham B. 2017. Forecasting at scale. PeerJ Preprints 5:e3190v2 https://doi.org/10.7287/peerj.preprints.3 190v2 Link

HÌNH ẢNH LIÊN QUAN

Hình học sâu nâng cao. Phương pháp này cũng được thử nghiệm trên bộ dữ liệu PeMS - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình h ọc sâu nâng cao. Phương pháp này cũng được thử nghiệm trên bộ dữ liệu PeMS (Trang 11)
Hình 3.1: 5 đặc điểm của Dữ liệu lớn. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.1 5 đặc điểm của Dữ liệu lớn (Trang 14)
Hình 3.3: Biéu đồ minh hoa dit liệu chuối thời gian về Tổng số ca mắc Covid-19 - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.3 Biéu đồ minh hoa dit liệu chuối thời gian về Tổng số ca mắc Covid-19 (Trang 19)
Hình 3.4: Biểu đô minh họa Phân tích chuỗi thời gian trong lĩnh vực chứng khoán. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.4 Biểu đô minh họa Phân tích chuỗi thời gian trong lĩnh vực chứng khoán (Trang 20)
Hình 3.7: Danh sách ngày lễ trong mô hình Prophet. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.7 Danh sách ngày lễ trong mô hình Prophet (Trang 26)
Hình 3.10: Trạng thái tế bào (Cell State) - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.10 Trạng thái tế bào (Cell State) (Trang 30)
Hình 3.13: Quá trình cập nhật trạng thái tế bào mới. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.13 Quá trình cập nhật trạng thái tế bào mới (Trang 33)
Hình 3.16: Ví dụ về sự giãn nở. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.16 Ví dụ về sự giãn nở (Trang 36)
Hình 3.17: Ví dụ về van dé lỗ hồng ở trường tiếp nhận. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.17 Ví dụ về van dé lỗ hồng ở trường tiếp nhận (Trang 37)
Hình 3.18: Sự thay đổi từ khối tích chập 1 chiều thành khói dư. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.18 Sự thay đổi từ khối tích chập 1 chiều thành khói dư (Trang 39)
Hình 3.19: Kiến trúc tổng quát của mô hình TCN. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.19 Kiến trúc tổng quát của mô hình TCN (Trang 40)
Hình 3.22: Quy trình huấn luyện mô hình theo phương thức Parameter Averaging. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.22 Quy trình huấn luyện mô hình theo phương thức Parameter Averaging (Trang 42)
Hình 3.23: Quy trình huấn luyện mô hình theo phương thức Update (Gradient) - - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.23 Quy trình huấn luyện mô hình theo phương thức Update (Gradient) - (Trang 43)
Hình 3.24: Song song hóa mô hình. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 3.24 Song song hóa mô hình (Trang 44)
Hình 4.1: Kiến trúc tong quát của Hệ thống dự báo luông giao thông thời gian thực. - Khóa luận tốt nghiệp Khoa học dữ liệu: Hệ thống dự báo luồng giao thông thời gian thực dựa trên phân tích dữ liệu lớn chuỗi thời gian
Hình 4.1 Kiến trúc tong quát của Hệ thống dự báo luông giao thông thời gian thực (Trang 46)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w