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

Luận văn thạc sĩ Khoa học máy tính: Nghiên cứu và phát triển giải pháp dự đoán thời gian đến trạm của xe buýt

61 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

Nội dung

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

_

CHÂU TRUNG HIẾU

NGHIÊN CỨU VÀ PHÁT TRIỂN GIẢI PHÁP DỰ ĐOÁN THỜI GIAN ĐẾN TRẠM CỦA XE BUÝT

Chuyên ngành: Khoa học Máy tính Mã số: 8480101

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 7 năm 2023

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠITRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCMCán bộ hướng dẫn khoa học 1: PGS TS Thoại Nam

Cán bộ hướng dẫn khoa học 2: TS Nguyễn Lê Duy Lai

Cán bộ chấm nhận xét 1: TS Lê Thanh Vân

4 Phản biện 2: PGS TS Trần Công Hùng 5 Uỷ viên: TS Lê Hoành Sử

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)

Trang 3

II NHIỆM VỤ VÀ NỘI DUNG:

Tìm hiểu tổng quan bài toán dự đoán thời gian đến trạm của xe buýt và các giải

pháp liên quan Phân tích và thiết kế giải pháp cho bài toán dự đoán thời gian đến trạm của xe buýt bao gồm: hệ thống xe buýt và các dạng dữ liệu liên quan, bài toán

dự đoán thời gian xe buýt Đánh giá giải pháp và kết luận III NGÀY GIAO NHIỆM VỤ: 05/09/2022

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 12/06/2023 V CÁN BỘ HƯỚNG DẪN:

- Cán bộ hướng dẫn 1: PGS TS Thoại Nam - Cán bộ hướng dẫn 2: TS Nguyễn Lê Duy Lai

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc

Họ tên học viên: Châu Trung Hiếu MSHV: 1970587Ngày, tháng, năm sinh: 28/06/1990 Nơi sinh: Bến TreChuyên ngành: Khoa học Máy tính Mã số: 8480101

Trang 4

LỜI CẢM ƠN

Trước hết, tôi muốn gửi lời cảm ơn đến hai thầy hướng dẫn của tôi là PGS TS Thoại Nam và TS Nguyễn Lê Duy Lai Cảm ơn hai thầy đã cho tôi có cơ hội thực hiện luận văn này và đã dành thời gian, chia sẻ những kiến thức quý giá và sự kiên nhẫn của hai thầy dành cho tôi

Tôi cũng muốn cảm ơn đến các bạn trong nhóm học tập, cùng với các bạn tạo nên một môi trường học tập thú vị, những người không ngại chia sẻ những ý tưởng và kiến thức của mình

Cuối cùng tôi xin cảm ơn gia đình vì sự động viên, hỗ trợ và tin tưởng liên tục dành cho tôi Niềm tin vững chắc từ gia đình đã cho tôi động lực vượt qua những thử thách gặp phải trong quá trình thực hiện luận văn này

Trang 5

TÓM TẮT NỘI DUNG

Giao thông công cộng đóng một vai trò quan trọng trong giao thông đô thị và dự đoán chính xác thời gian đến của xe buýt giúp tăng cường sự thuận tiện cho hành khách và cải thiện hiệu quả vận chuyển tổng thể Trong luận án này, tôi đề xuất giải pháp để dự đoán thời gian đến của xe buýt bằng cách tận dụng dữ liệu lịch sử và mô hình mạng nơron truy hồi

Mục tiêu của luận này là đưa ra một giải pháp dự đoán thời gian đến của xe buýt đáng tin cậy và hiệu quả Để đạt được điều này, dữ liệu lịch sử bao gồm tọa độ GPS và thời gian được sử dụng Các tính năng không gian, thời gian khác nhau được trích xuất từ tập dữ liệu để nắm bắt các mẫu trong dữ liệu Mô hình dự đoán dùng mạng nơron truy hồi (RNN) với cấu trúc Bộ nhớ dài hạn ngắn hạn (LSTM - Long short term memory) có khả năng nắm bắt các phụ thuộc dài hạn, mô hình này được huấn luyện bằng dữ liệu lịch sử của xe buýt Kết quả chứng minh rằng mô hình dự đoán thời gian đến của xe buýt dựa trên LSTM vượt trội so với các phương pháp truyền thống

Tóm lại, luận văn này đóng góp cho lĩnh vực kỹ thuật giao thông vận tải bằng cách đề xuất một giải pháp dự đoán thời gian đến của xe buýt, tận dụng dữ liệu lịch sử và sử dụng mạng nơron truy hồi làm mô hình cơ bản Các kết quả cho thấy tiềm năng triển khai thực tế của mô hình, cuối cùng dẫn đến nâng cao hiệu quả và sự hài lòng của người dùng trong các hệ thống xe buýt

Trang 6

ABSTRACT

Public transport plays an important role in urban transportation and accurately predicting bus arrival times enhances passenger convenience and improves overall transport efficiency In this thesis, I propose a solution to predict bus arrival time by taking advantage of historical data and recurrent neural network

The objective of this paper is to provide a reliable and efficient bus arrival time prediction solution To achieve this, historical data including GPS coordinates and time is used Different spatial and temporal features are extracted from the dataset to capture patterns in the data Predictive model using recurrent neural network (RNN) with Long short term memory (LSTM) structure is able to capture long-term dependencies, this model is trained using the historical data of the bus The results demonstrate that the bus arrival time prediction model based on LSTM is superior to traditional methods

In summary, this thesis contributes to the field of transportation engineering by proposing a solution to predict the arrival time of buses, taking advantage of historical data and using a recurrent neural network as a basic model The results show its potential for practical implementation, ultimately leading to improved efficiency and user satisfaction in bus systems

Trang 7

LỜI CAM ĐOAN

Tôi xin cam đoan rằng đây là luận văn do chính tôi thực hiện, có sự hỗ trợ từ Giáo viên hướng dẫn Các kết quả trong luận văn này là trung thực và do chính tôi thực hiện Những tài liệu liên quan phục vụ cho việc phân tích, nhận xét, đánh giá từ các nguồn khác nhau đều được trích dẫn nguồn

Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm trước Hội đồng cũng như kết quả luận văn của mình

Tp HCM, ngày 09 tháng 06 năm 2023

Học viên thực hiện luận văn

Châu Trung Hiếu

Trang 8

MỤC LỤC

LỜI CẢM ƠN i

TÓM TẮT NỘI DUNG ii

1.3 Phạm vi và giới hạn của đề tài 2

CHƯƠNG 2 TỔNG QUAN BÀI TOÁN DỰ ĐOÁN THỜI GIAN ĐẾN TRẠM DỪNG CỦA XE BUÝT 4

2.1 Bài toán dự đoán 4

2.2 Khảo sát các phương pháp cho bài đoán dự đoán 4

2.2.1 Phương pháp lập lịch 4

2.2.2 Phương pháp thống kê 4

2.2.3 Phương pháp tìm kiếm 5

2.2.4 Phương pháp học máy 5

2.3 Phương pháp tiếp cận bài toán 6

CHƯƠNG 3 CƠ SỞ LÝ THUYẾT 8

3.1 Hồi quy tuyến tính 8

3.2 Mạng nơron nhân tạo 9

3.3 Dữ liệu chuỗi 11

3.4 Mạng nơron truy hồi 12

3.4 Các phương pháp đánh giá 15

CHƯƠNG 4 TỔNG QUAN HỆ THỐNG 17

Trang 9

5.1 Dữ liệu GPS (Hệ thống định vị toàn cầu) 22

5.1.1 Tổng quan về các trường của dữ liệu GPS 22

Trang 10

7.1 Cài đặt thử nghiệm 42

7.2 Kết quả thực nghiệm 42

7.2.1 Thực nghiệm với tập 747_O 43

7.2.1 Thực nghiệm với tập 747_I 44

7.3 Đánh giá kết quả 45

CHƯƠNG 8 KẾT LUẬN 46

TÀI LIỆU THAM KHẢO 47

Trang 11

DANH MỤC HÌNH VẼ

Hình 3.1 MLP với hai tầng ẩn 10

Hình 3.2 Mô hình RNN dạng rút gọn và dạng dàn trãi 13

Hình 3.3 Sơ đồ khối của đơn vị LSTM 14

Hình 4.1 Tổng quan hệ thống quản lý xe buýt hướng dữ liệu 17

Hình 4.2 Minh họa cho thời gian đến trạm cần dự đoán 20

Hình 5.1 Quá trình trích xuất các trạm dừng của một tuyến buýt 27

Hình 5.2 Vị trí xe buýt và các trạm dừng của một chuyến buýt 747 30

Hình 5.3 Minh họa vị trí xe buýt và trạm dừng trên đường 31

Hình 6.1 Minh họa mô hình dự đoán cơ sở 36

Hình 6.2 Mô hình LSTM dạng rút gọn và dạng dàn trãi 36

Hình 6.3 Kiến trúc mô hình LSTM 39

Hình 7.1 Mô hình Baseline dự đoán trên 3 chuyến của tập 747_O_test 43

Hình 7.2 Mô hình LSTM_1 dự đoán trên 3 chuyến của tập 747_O_test 43

Hình 7.3 Mô hình LSTM_O dự đoán trên 3 chuyến của tập 747_O_test 43

Hình 7.4 Mô hình LSTM_U dự đoán trên 3 chuyến của tập 747_O_test 44

Hình 7.5 Mô hình Baseline dự đoán trên 3 chuyến của tập 747_I_test 44

Hình 7.6 Mô hình LSTM_1 dự đoán trên 3 chuyến của tập 747_I_test 44

Hình 7.7 Mô hình LSTM_O dự đoán trên 3 chuyến của tập 747_I_test 45

Hình 7.8 Mô hình LSTM_U dự đoán trên 3 chuyến của tập 747_I_test 45

Trang 12

DANH MỤC BẢNG

Bảng 5.1 Dữ liệu mẫu GPS của xe buýt 22

Bảng 5.2 Dữ liệu các trạm dừng của tuyến số 747 sau khi xử lý 27

Bảng 5.3 Dữ liệu mẫu sau khi trích xuất đặc trưng 32

Bảng 6.1 Chi tiết vector đặc trưng sau khi biến đổi 38

Bảng 6.2 Thông số của các mô hình khảo sát 40

Bảng 7.1 Thông số của các tập dữ liệu huấn luyện 42

Bảng 7.2 Kết quả thực nghiệm trên tập 747_O 43

Bảng 7.3 Kết quả thực nghiệm trên tập 747_I 44

Trang 13

CHƯƠNG 1 MỞ ĐẦU 1.1 Bối cảnh và động lực

Hệ thống giao thông công cộng là một thành phần quan trọng của cơ sở hạ tầng đô thị hiện đại, cung cấp khả năng di chuyển hiệu quả cho nhiều người mỗi ngày Đặc biệt, xe buýt là phương tiện giao thông công cộng phổ biến do tính linh hoạt và khả năng tiếp cận của chúng Do đó, việc cải thiện hiệu quả hoạt động của hệ thống xe buýt là một việc thiết thực, chẳng hạn như cải thiện độ tin cậy trong lịch trình di chuyển của xe buýt Độ tin cậy của các dịch vụ xe buýt có thể bị ảnh hưởng bởi nhiều yếu tố, bao gồm tắc nghẽn giao thông, điều kiện thời tiết và sự chậm trễ không mong muốn Một trong những thách thức quan trọng nhất mà hệ thống xe buýt phải đối mặt là dự đoán chính xác thời gian đến của xe buýt tại các trạm dừng được chỉ định

Dự đoán chính xác thời gian đến của xe buýt là điều cần thiết để hệ thống giao thông công cộng hoạt động hiệu quả và đáng tin cậy Hành khách cần biết khi nào xe buýt của họ sẽ đến để lên kế hoạch cho chuyến đi của mình và tránh những chậm trễ không cần thiết Các cơ quan giao thông công cộng cũng yêu cầu dự đoán chính xác để tối ưu hóa các tuyến xe buýt, lịch trình và điều phối, điều này có thể cải thiện độ tin cậy của dịch vụ và giảm chi phí vận hành Đối với các nước có hệ thống giao thông ổn định hoặc có quy hoạch tuyến đường riêng cho xe buýt thì việc dự đoán không còn nhiều thách thức.Với phần lớn còn lại, hoạt động xe buýt chịu ảnh hưởng lớn từ hệ thống giao thông chung nhiều biến động, do đó việc dự đoán chính xác thời gian đến của xe buýt còn nhiều thách thức

Các phương pháp dự đoán thời gian đến của xe buýt truyền thống, chẳng hạn như lập lịch trình cố định hoặc điều phối thủ công, có thể không tính đến hoặc không thể tính đến các yếu tố khách quan ảnh hưởng đến thời gian đến của xe buýt, chẳng hạn như tình trạng giao thông, thời tiết… Do đó, các phương pháp này có thể không đáng tin cậy Ngày nay có nhiều phương pháp được nghiên cứu để giải quyết bài

Trang 14

toán này, có thể kể đến các mô hình học máy sử dụng dữ liệu lịch sử để huấn luyện các mô hình, đưa vào các yếu tố khách quan để đưa ra các dự đoán chính xác hơn

1.2 Mục tiêu

Mục tiêu của luận văn là phát triển một giải pháp dự đoán thời gian đến trạm dừng của xe buýt, có thể đưa ra những dự đoán chính xác và đáng tin cậy, bằng cách sử dụng các kỹ thuật hiện đại và tiến bộ gần đây trong lĩnh vực học máy

Cụ thể hơn, mục tiêu của luận văn là phát triển mô hình dự đoán thời gian đến trạm dừng của xe buýt, dữ liệu lịch sử di chuyển của xe buýt huấn luyện cho mô hình mạng nơron truy hồi (RNN)

1.3 Phạm vi và giới hạn của đề tài

Phạm vi luận văn này sẽ tập trung vào việc dự đoán thời gian đến của xe buýt cho một nhóm tuyến xe buýt cụ thể trong một thành phố cụ thể, với dữ liệu là:

1 Dữ liệu lịch sử hành trình của xe buýt chứa các thông tin như: thời gian, vị trí xe buýt, tên tuyến tương ứng… từ đây gọi là dữ liệu GPS (Global Positioning System)

2 Dữ liệu tĩnh chứa thông tin của hệ thống xe buýt như tuyến đường, vị trí trạm dừng… từ đây gọi là dữ liệu GTFS (General Transit Feed Specification)

Hai tập dữ liệu trên được dùng để huấn luyện mô hình dự đoán, đồng thời dùng để so sánh với các mô hình dự đoán khác

Do tính đặc thù của từng hệ thống xe buýt mà cấu trúc dữ liệu sẽ khác nhau, mặc khác về tính riêng tư mà dữ liệu xe buýt thường không được chia sẻ công khai Đây là hai thách thức nổi bậc về dữ liệu đối với bài toán dự đoán thời gian của xe buýt

Luận văn sử dụng hai tập dữ liệu được chia sẻ công khai:

- Dữ liệu GPS tháng 1 năm 2013 của thành phố Dublin - Ireland [10] - Dữ liệu GFTS tháng 12 năm 2016 của thành phố Dublin - Ireland [11]

Trang 15

Chi tiết về các tập dữ liệu này sẽ được mô tả ở Chương 5 Dữ liệu

Với tập dữ liệu trong một khoảng thời gian ngắn, do đó không khai thác được các ảnh hưởng có tính chu kỳ trong năm như các mùa, các kỳ nghỉ Mặc khác, mô hình dự đoán dùng dữ liệu làm cơ sở, nên chỉ đúng đắn với các tuyến đường đã được huấn luyện

Quá trình xử lý dữ liệu cũng sẽ phát triển theo hướng không phụ thuộc quá nhiều vào cấu trúc dữ liệu, trích xuất những thông tin cơ bản của hệ thống buýt, với mục đích là dễ dàng áp dụng cho những hệ thống buýt khác có cấu trúc dữ liệu khác nhau

Trang 16

CHƯƠNG 2 TỔNG QUAN BÀI TOÁN DỰ ĐOÁN THỜI GIAN ĐẾN TRẠM DỪNG CỦA XE BUÝT

2.1 Bài toán dự đoán

Dự đoán khi nào xe buýt sẽ đến trạm dừng là nhiệm vụ khó khăn do có nhiều biến ngẫu nhiên liên quan và mối quan hệ phức tạp của chúng, chẳng hạn như: thời tiết, cường độ giao thông, tai nạn, giao lộ và số lượng hành khách… là các yếu tố có thể ảnh hưởng đến thời gian di chuyển của xe buýt Có thể xem thời gian đến trạm dừng là đầu ra từ một hàm với đầu vào là các biến ảnh hưởng

Có nhiều phương pháp tiếp cận để giải quyết bài toán dự đoán thời gian đến của xe buýt, chẳng hạn như: phương pháp lập lịch, phương pháp thống kê, phương pháp tìm lân cận, phương pháp học máy

2.2 Khảo sát các phương pháp cho bài đoán dự đoán

2.2.1 Phương pháp lập lịch

Các phương pháp dựa trên lịch trình xe buýt được xác định trước và sử dụng chúng làm cơ sở để dự đoán thời gian đến Các phương pháp này giả định rằng xe buýt tuân thủ lịch trình đã công bố và tính toán thời gian đến dự kiến dựa trên thời gian khởi hành theo lịch trình Tuy nhiên, các phương pháp dựa trên lịch trình có thể không chính xác do các yếu tố không thể đoán trước như điều kiện giao thông, thời tiết và thời gian lên xuống của hành khách

2.2.2 Phương pháp thống kê

Các phương pháp thống kê nhằm mô hình hóa và dự đoán thời gian đến của xe buýt dựa trên dữ liệu lịch sử và kỹ thuật thống kê Các phương pháp này phân tích thời gian đến của xe buýt trước đây, cùng với các yếu tố ảnh hưởng khác nhau như thời gian trong ngày, ngày trong tuần, điều kiện thời tiết và mô hình giao thông Các mô hình thống kê như phân tích hồi quy, phân tích chuỗi thời gian như: ARIMA [12] sử dụng để nắm bắt mối quan hệ giữa các yếu tố này và thời gian đến của xe

Trang 17

buýt Các mô hình này có thể đưa ra các dự đoán hợp lý dựa trên các mẫu lịch sử nhưng có thể gặp khó khăn trong việc nắm bắt các biến thể động và theo thời gian thực

Phương pháp này hoạt động tốt với những hệ thống giao thông ổn định, tuy nhiên dễ bị ảnh hưởng bởi tắt nghẽn

2.2.3 Phương pháp tìm kiếm

Ý tưởng của phương pháp này là tìm các phiên bản dữ liệu gần nhất trong lịch sử của dữ liệu đang xét, chẳng hạn như: số xe, số tuyến, thời gian trong tuần, khung giờ…và dùng chúng để đưa ra dự đoán bằng cách tính trung bình chẳng hạn Có thể kể đến các kỹ thuật như k-NN [13], KR [14] (Kernel Regression) Phương pháp này hoạt động khá tốt, tuy nhiên thời gian tính toán dự đoán sẽ cao và dễ bị ảnh hưởng bởi dữ liệu xấu

2.2.4 Phương pháp học máy

Các phương pháp học máy dựa trên dữ liệu để huấn luyện mô hình dự đoán Các phương pháp này sử dụng dữ liệu lịch sử, bao gồm dữ liệu GPS của xe buýt, tốc độ xe, số lượng hành khách, tình trạng giao thông, tình trạng thời tiết… để huấn luyện mô hình dự đoán

Chẳng hạn như kỹ thuật SVM (Support Vector Machine) được sử dụng trong bài báo [15] để dự đoán thời gian đến của xe buýt ở Hồng Kông vào năm 2011, các tác giả đã sử dụng thời gian di chuyển cùng với dữ liệu thời tiết làm cơ sở cho mô hình của họ

Một công trình khai thác dữ liệu lớn (Big data) của mạng lưới giao thông ở Việt Nam [7], bằng cách sử dụng dữ liệu được tạo từ các thiết bị IoT được trang bị hệ thống định vị toàn cầu (GPS) được gắn trên các phương tiện di chuyển trên mạng lưới đường thành phố để trích xuất trạng thái giao thông hiện tại, tức là các luồng giao thông trên đường… dữ liệu trạng trạng thái giao thông thời gian thực có nhiều

Trang 18

ứng dụng như: dự đoán thời gian đến của xe buýt tại các điểm dừng xe buýt, dự đoán thời gian đến và định tuyến cho taxi, điều hướng hành khách để tránh tắc đường, dự báo tắc đường…

Các phương pháp dùng dữ liệu trạng thái thời tiết, trạng thái luồng giao thông sẽ hiệu quả với bài toán dự đoán thời gian di chuyển do có thông tin trạng thái của đoạn đường sẽ đi đến Tuy nhiên, cách tiếp cận này cần một hệ thống thu thập rộng lớn để có thể bao phủ một mạng lưới giao thông

Một cách tiếp cận khác là dùng chính dữ liệu mà hệ thống xe buýt thu thập được, chẳng hạn như dữ liệu hành trình của xe buýt

Cách mô hình mạng nơron nhân tạo thường được dùng để khai thác mối quan hệ của dữ liệu, chẳng hạn như mô hình mạng đa tầng (Multilayer perceptron - MLP) từ bài báo [16], hoặc dùng mạng nơron truy hồi (Recurrent Neural Networks - RNN) ở bài báo [1] được sử dụng để khai thác các phụ thuộc dài hạn giữa các điểm dữ liệu

2.3 Phương pháp tiếp cận bài toán

Luận văn sẽ tiếp cận bài toán theo hướng bài toán hồi quy, bài toán dự đoán một giá trị dựa vào một tập hợp các đầu vào (chi tiết hơn về dạng bài toán này sẽ được trình bày ở phần 3.1) Về dữ liệu sẽ sử dụng dữ liệu lịch sử của chính hệ thống xe buýt để huấn luyện mô hình Với khả năng biểu diễn tốt dữ liệu, các mạng nơron nhân tạo ưu tiên được lựa chọn Mặc khác, nếu xem thời gian đến trạm của xe buýt là một chuỗi các giá trị tuần tự, thì có thể xem đây là bài toán dự đoán giá trị tương lai của một chuỗi dữ liệu tuần tự Trong các mạng nơron nhân tạo, thì mạng nơron truy hồi (recurrent neural networks - RNN) có khả năng xử lý tốt các dữ liệu dạng chuỗi [6], có khả năng nắm bắt được các phụ thuộc tuần tự trong chuỗi dữ liệu

Theo bài báo [1] đề xuất phương pháp dự đoán thời gian đến trạm của xe buýt dùng RNN cải tiến là mạng LSTM (Long short-term memory) và mô hình của họ đề xuất cho kết quả tốt trong các cuộc thử nghiệm của họ

Trang 19

Theo một bài báo khác [2], thử nghiệm các mô hình dự đoán thời gian đến của buýt, thì mô hình RNN-LSTM do [1] đề xuất cho kết quả về độ chính xác của dự đoán tốt hơn các mô hình khác mà họ đã thử nghiệm

Trên cơ sở đó, luận văn này sẽ khảo sát sử dụng mô hình mạng LSTM cho bài toán dự đoán thời gian đến của buýt, đồng thời cũng có những đề xuất để tăng hiệu quả của mô hình dự đoán trên tập dữ liệu khảo sát

Mô hình chi tiết sẽ được trình bày ở các chương sau Phần tiếp theo sẽ trình bày cơ sở lý thuyết được sử dụng trong luận văn

Trang 20

CHƯƠNG 3 CƠ SỞ LÝ THUYẾT 3.1 Hồi quy tuyến tính

Bài toán hồi quy (regression problem) [4] là một loại bài toán trong lĩnh vực học máy (machine learning) và thống kê Mục tiêu của bài toán hồi quy là dự đoán một hoặc nhiều giá trị số dựa trên một tập hợp các biến đầu vào (input variables) Các ví dụ phổ biến bao gồm dự đoán giá nhà, giá cổ phiếu, dự báo doanh thu, dự đoán thời gian bệnh nhân nằm viện…

Bài toán hồi quy trong lĩnh vực học máy, một tập dữ liệu huấn luyện gồm các mẫu, trong đó mỗi mẫu bao gồm các đặc trưng (features) và giá trị đầu ra tương ứng Mục tiêu là xây dựng một mô hình hồi quy từ dữ liệu huấn luyện, để có thể dự đoán giá trị đầu ra cho các mẫu mới chưa được quan sát trước đó

Bài toán hồi quy có ứng dụng rộng rãi trong nhiều lĩnh vực, bao gồm dự đoán giá cổ phiếu, ước tính giá nhà đất, dự báo doanh thu và nhiều ứng dụng khác trong kinh tế, tài chính, y học, và khoa học xã hội

Hồi quy tuyến tính [5] là một phương pháp dễ hiểu để bắt đầu với bài toán hồi quy Ý tưởng là mô hình hồi quy được xây dựng dựa trên mối quan hệ tuyến tính giữa các biến đầu vào và giá trị đầu ra Trong hồi quy tuyến tính, giả định rằng có một mối quan hệ tuyến tính giữa biến đầu ra và các biến đầu vào Phương trình của mô hình hồi quy tuyến tính là:

(3.1.1)

Trong đó:

là giá trị đầu ra dự đoán

là các giá trị đầu vào, còn gọi là vector đặc trưng là vector trọng số

̂y = w1x1+ w2x2+ ⋯ + wnxn+ b

̂y = wTx

x ∈ RwT∈ Rn

Trang 21

Mục tiêu của hồi quy tuyến tính là tìm giá trị vector để với một dữ liệu đầu vào mới, mô hình sẽ đưa ra dự đoán với sai số nhỏ nhất (theo kỳ vọng)

Với một tập dữ liệu đầu vào , một hàm mất mát đại diện cho sự sai lệch giữa giá trị dự đoán và giá trị thực như bên dưới:

3.2 Mạng nơron nhân tạo

Mạng nơron nhân tạo (Artificial neural network - ANN) [5] là một mô hình tính toán lấy cảm hứng từ cấu trúc và chức năng của bộ não sinh học Nó là một loại thuật toán học máy có thể được đào tạo để nhận dạng các mẫu từ dữ liệu huấn luyện, đưa ra dự đoán, phân loại hoặc giải quyết các vấn đề phức tạp

Một cấu trúc điển hình của ANN là Multilayer Perceptron - MLP, đây là cấu trúc nhiều lớp bao gồm một lớp đầu vào, một hoặc nhiều lớp ẩn và một lớp đầu ra Lớp đầu vào nhận dữ liệu ban đầu và lớp đầu ra cung cấp đầu ra hoặc dự đoán cuối cùng Đây là một mạng chuyển tiếp (feedforward), thông tin truyền theo một hướng, từ lớp đầu vào qua các lớp ẩn đến lớp đầu ra

wX

Trang 22

Hình 3.1 MLP với hai tầng ẩn

Mô hình tính toán cho mạng hai tầng ẩn ở trên như sau:

(3.3) (3.4) (3.5) Trong đó:

: đầu vào

: giá trị tại các tầng ẩn 1 và tầng ẩn 2 : đầu ra

: các trọng số của mô hình : là các hàm kích hoạt tại mỗi tầng

Có thể thấy mô hình tính toán của MLP tương tự như mô hình hồi quy tuyến tính, điểm khác nhau là tại mỗi tầng của MLP có thêm hàm kích hoạt, những hàm kích hoạt giúp cho mô hình có khả năng tìm hiểu các mối quan hệ phi tuyến trong dữ liệu, giúp mô hình có khả năng nhận dạng các mẫu dữ liệu tốt hơn

H1 = σ1(W1X + b1)

H2 = σ2(W2H1+ b2)

O = σ3(W3H2+ b3)

XH1, H2O

W1, W2, W3, b1, b2, b3σ1, σ2, σ3

Trang 23

Việc huấn luyện MLP liên quan đến một quá trình lặp được gọi là lan truyền ngược, trong đó hàm mất mát giữa đầu ra dự đoán và đầu ra thực được lan truyền ngược qua mạng Quá trình này điều chỉnh các trọng số bằng cách sử dụng các thuật toán tối ưu hóa, chẳng hạn như giảm độ dốc (gradient descent), để giảm thiểu lỗi và cải thiện độ chính xác của các dự đoán

MLP được sử dụng rộng rãi cho các nhiệm vụ học tập có giám sát, bao gồm các vấn đề phân loại và hồi quy Chẳng hạn như nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên, tài chính và hệ thống đề xuất

Tuy nhiên, MLP cũng có những hạn chế Chúng có thể dễ bị quá khớp (overfit - hoạt động tốt trên tập dữ liệu huấn luyện nhưng lại không tốt trên các dữ liệu thực tế) nếu mô hình trở nên quá phức tạp hoặc nếu dữ liệu huấn luyện bị hạn chế MLP có thể yêu cầu một lượng lớn dữ liệu đào tạo được dán nhãn để đạt được hiệu suất tốt Ngoài ra, mô hình MLP cũng hạn chế khả năng nắm bắt các thông tin với dạng dữ liệu chuỗi, dạng dữ liệu này sẽ được trình bày tiếp theo

3.3 Dữ liệu chuỗi

Dữ liệu chuỗi (Sequence data) là dữ liệu được tổ chức theo cách tuần tự hoặc theo thời gian, trong đó thứ tự của các phần tử có ý nghĩa Với dữ liệu truyền thống, các phần tử độc lập với nhau, còn với dữ liệu chuỗi thứ tự các thành phần trong chuỗi thường sẽ mang thông tin Dữ liệu chuỗi phổ biến phổ biến: chuỗi văn bản (tứ tự các từ trong câu), chuỗi âm thanh, phim ảnh (các khung hình xuất hiện tuần tự), dữ liệu thị trường chứng khoán, trình tự DNA và nhiều lĩnh vực khác

Dữ liệu chuỗi thời gian (time series data) là một dạng đặc biệt của dữ liệu chuỗi, khi mà ngoài thứ tự xuất hiện, mỗi điểm dữ liệu còn có thêm thông tin thời gian (timestamp)

Một đặc điểm của dữ liệu dạng chuỗi là không có kích thước cố định, chẳng hạn như một chuỗi vài từ, và có khi là cả một đoạn văn dài

Trang 24

Một trong những bài toán phổ biến của dữ liệu chuỗi là bài toán dự đoán giá trị theo của một chuỗi, chẳng hạn như:

- Người dùng nhập một vài ký tự, gợi ý những từ tiếp theo

- Cho một chuỗi các thông tin thời tiết trong một tháng, dự đoán thời tiết vào ngày mai

- Cho một chuỗi thông tin sản phẩm mà khách hàng đã mua sắm trước đây, dự đoán và gợi ý những sản phẩm khách hàng sẽ mua lần tới

Có thể phân nhóm các bài toán với dữ liệu chuỗi với một số ví dụ như sau: 1 One-to-many: bài toán sinh nhạc, sinh văn bản từ một đầu vào nhất định 2 Many-to-one: bài toán phân loại, dự đoán từ một chuỗi đầu vào

3 Many-to-many (bất đối xứng): bài toán dịch máy

4 Many-to-many (đối xứng): bài toán phân loại từ trong câu

Một hạn chế của mô hình MLP khi xử lý dữ liệu chuỗi không khai thác được các thông tin tuần tự trong chuỗi dữ liệu Đặc điểm MLP là một mạng chuyển tiếp (feedforward) nhận một giá trị đầu vào và tính ra giá trị đầu ra mặt khác đầu vào của mạng MLP cố định nên sẽ không tương thích tốt với dữ liệu với độ dài không cố định của dữ liệu chuỗi

Trong nhóm các mạng nơron nhân tạo, có một loại mạng tương thích tốt với loại dữ liệu chuỗi này, đó là mạng nơron truy hồi (RNN)

3.4 Mạng nơron truy hồi

Mạng nơron truy hồi [6] là một kiến trúc mạng với đặc điểm là trạng thái của mô hình tại bước liền trước sẽ được dùng làm đầu vào của bước hiện tại Kết nối truy hồi này cho phép RNN nắm bắt và sử dụng thông tin từ các bước trước đó

Tính năng chính của RNN là khả năng duy trì bộ nhớ trong, còn được gọi là trạng thái ẩn, đóng vai trò là bộ nhớ của thông tin và đầu vào trong quá khứ Tại

Trang 25

để tạo ra đầu ra và cập nhật trạng thái ẩn Trạng thái ẩn mang thông tin từ các bước trước đó và ảnh hưởng đến tính toán ở bước hiện tại, cho phép mạng nắm bắt được các phụ thuộc dài hạn

Hình 3.2 Mô hình RNN dạng rút gọn và dạng dàn trãi

Mô hình RNN truyền thống gặp phải vấn đề là khó nắm bắt được các ảnh hưởng dài hạn, dẫn đến hiện tượng tiêu biến hoặc bùng nổ gradient trong quá trình huấn luyện (hiện tượng vanishing and exploding gradient) Để giải quyết hạn chế này, các kiến trúc RNN nâng cao, chẳng hạn như Bộ nhớ ngắn hạn dài hạn (LSTM - Long short term memory) đã được phát triển

LSTM - Long short term memory

Như đã mô tả ở phần trước, các mạng LSTM [6] là các biến thể đặc biệt của RNN, giúp kiểm soát các vấn đề về sự bùng nổ hoặc tiêu biến gradient Ý tưởng là kiểm soát trạng thái ẩn, cơ chế quyết định khi nào nên cập nhật và khi nào nên xóa trạng thái ẩn Ví dụ, nếu dữ liệu đầu tiên có mức độ quan trọng cao, mô hình sẽ học để không cập nhật trạng thái ẩn sau lần quan sát đầu tiên Tương tự, mô hình sẽ học cách bỏ qua những quan sát tạm thời không liên quan, cũng như cách xóa trạng thái ẩn khi cần thiết

Trang 26

Hình 3.3 Sơ đồ khối của đơn vị LSTM

Kiến trúc LSTM bao gồm một số thành phần hoạt động cùng nhau:

Trạng thái cell (cell state) : đóng vai trò là bộ nhớ dài hạn của mạng Nó chạy các phép biến đổi tuyến tính và hoạt động theo từng phần tử, giúp điều chỉnh luồng thông tin và ngăn chặn sự tiêu biến hoặc bùng nổ gradient

Cổng đầu vào : cổng đầu vào xác định lượng đầu vào mới sẽ được lưu trữ ở trạng thái ô Nó tính đến đầu vào hiện tại và trạng thái ẩn trước đó, đồng thời sử dụng hàm kích hoạt sigmoid để tạo giá trị từ 0 đến 1 cho từng thành phần của trạng thái ô

Cổng quên : quyết định loại bỏ thông tin nào khỏi trạng thái ô Nó xem xét đầu vào hiện tại và trạng thái ẩn trước đó, đồng thời sử dụng chức năng kích hoạt sigmoid để xuất hệ số quên cho từng thành phần của trạng thái ô Giá trị 0 nghĩa là thông tin bị quên, trong khi giá trị 1 nghĩa là thông tin được giữ lại

Cổng đầu ra : kiểm soát lượng trạng thái ô được hiển thị cho trạng thái ẩn tiếp theo Nó tính đến đầu vào hiện tại và trạng thái ẩn trước đó, đồng thời sử dụng chức năng kích hoạt sigmoid để xác định phần nào của trạng thái ô sẽ xuất ra

Trạng thái ẩn : đại diện cho bộ nhớ ngắn hạn của mạng Nó được tính toán dựa trên trạng thái ô và đầu vào hiện tại, được lọc bởi cổng đầu ra Trạng thái ẩn mang

Trang 27

thông tin liên quan từ các bước thời gian trước đó và ảnh hưởng đến dự đoán hiện tại

Thông qua sự kết hợp của các cổng này và các thành phần bộ nhớ, LSTM có thể nắm bắt hiệu quả các phụ thuộc dài hạn trong dữ liệu chuỗi, học cách giữ lại thông tin quan trọng qua nhiều bước thời gian và loại bỏ thông tin không liên quan

3.4 Các phương pháp đánh giá

Để đánh giá mô hình hồi quy hoạt động như thế nào, cần có một số kỹ thuật đánh giá Phần này sẽ giới thiệu một số kỹ thuật đánh giá phổ biến thường sử dụng trong bài toán hồi quy, làm cơ sở so sánh và đánh giá giữa các mô hình

Một tập dữ liệu có mẫu, với là giá trị thực sự, là giá trị dự đoán từ mô hình, bên dưới là các phương pháp đánh giá:

1 MSE - Mean Square Error

Trang 28

Mỗi phương pháp có đặc trưng riêng, chẳng hạn MSE sẽ nhạy cảm với các lỗi lớn (do bình phương), MAE cung cấp thước đo cân bằng về trung bình lỗi, còn MAPE cho biết hiệu suất trung bình của lỗi Các phương pháp này thường được dùng kết hợp khi so sánh các mô hình dự đoán với nhau

Trang 29

CHƯƠNG 4 TỔNG QUAN HỆ THỐNG

Phần này mô tả một hệ thống quản lý buýt theo hướng dữ liệu, từ thu thập dữ liệu đến các thành phần chức năng trong hệ thống Vị trí của mô đun dự đoán thời gian buýt trong tổng thể hệ thống và phần này cũng đặc tả chi tiết về bài toán mục tiêu

4.1 Hệ thống quản lý buýt

Hệ thống quản lý buýt bao gồm một số mô đun được kết nối với nhau cho phép thu thập dữ liệu, tiền xử lý, phân tích, dự đoán… Bên dưới là một hệ thống quản lý buýt:

Hình 4.1 Tổng quan hệ thống quản lý xe buýt hướng dữ liệu

Tổng quan về các mô đun chính của hệ thống:

1 Data collection - Thu thập dữ liệu: Thu thập và lưu trữ dữ liệu xe buýt thô, bao gồm dữ liệu GPS và dữ liệu cảm biến được gửi định kỳ từ xe buýt về Đây cũng là nơi cập nhật các dữ liệu tĩnh của hệ thống xe buýt Các dữ liệu này sẽ được lưu trữ, đồng thời cũng được phát cho các mô đun khác sử dụng

Trang 30

2 Data Preprocessing - Tiền xử lý dữ liệu: đầu vào là dữ liệu thô của xe buýt và các dữ liệu tĩnh của hệ thống buýt, thực hiện các tính năng như: làm sạch dữ liệu, tích hợp các dữ liệu lại, trích xuất đặc trưng (cho các mô hình huấn luyện sử dụng) Dữ liệu sau khi xử lý sẽ được lưu trữ lại

3 BAT Prediction Training - Huấn luyện mô hình dự đoán: đầu vào là dữ liệu đã được tiền xử lý, tại đây sẽ thực hiện lựa chọn mô hình, huấn luyện và kiểm định mô hình Đầu ra là một mô hình khả dụng, và được lưu trữ lại

4 BAT Prediction Runtime - Thực thi mô hình dự đoán Mô đun này sẽ lấy đầu vào là là mô hình đã được huấn luyện, và dữ liệu hiện hành của xe buýt, mục tiêu là đưa ra các dự đoán Tại đây cũng cung cấp thông tin qua API (Application programming interface) cho các nơi khác sử dụng

5 Data Analysis - Phân tích dữ liệu: đầu vào là dữ liệu buýt bao gồm dữ liệu lưu trữ và dữ liệu tức thời Mô đun này sẽ phân tích dữ liệu lịch sử của buýt, phân tích khả năng dự đoán của mô đun dự đoán, có thể xuất lên giao diện người dùng hoặc ghi vào tệp log (log file)

Trong khuôn khổ luận văn này, sẽ tập trung vào hai khối: Data Preprocessing, BAT Prediction Training để giải quyết cho bài toán dự đoán Hai mô đun này sẽ được trình bày chi tiết ở các chương tiếp theo

4.2 Các thuật ngữ của hệ thống buýt

4.2.1 Tuyến (Route)

Một hệ thống buýt có nhiều tuyến đường, một tuyến là một đoạn đường cụ thể Tuyến đặc trưng bởi trạm xuất phát, trạm đến và các trạm dừng để đón trả hành khách Có thể xem tuyến như một bản phát thảo trình tự các trạm dừng mà xe buýt sẽ đi qua

Ngày đăng: 30/07/2024, 17:17

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

TÀI LIỆU LIÊN QUAN