Tải bản đầy đủ (.pdf) (58 trang)

Tìm hiểu mô hình học máy giải quyết bài toán dự đoán dự báo ứng dụng trong phân tích hành vi giao thông sử dụng dữ liệu cảm biến

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.12 MB, 58 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

VŨ VĂN VỸ

TÌM HIỂU MÔ HÌNH HỌC MÁY GIẢI QUYẾT BÀI TOÁN DỰ
ĐOÁN DỰ BÁO ỨNG DỤNG TRONG PHÂN TÍCH HÀNH VI
GIAO THÔNG SỬ DỤNG DỮ LIỆU CẢM BIẾN

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Hà Nội – 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

VŨ VĂN VỸ

TÌM HIỂU MÔ HÌNH HỌC MÁY GIẢI QUYẾT BÀI TOÁN DỰ
ĐOÁN DỰ BÁO ỨNG DỤNG TRONG PHÂN TÍCH HÀNH VI
GIAO THÔNG SỬ DỤNG DỮ LIỆU CẢM BIẾN

Ngành
Chuyên ngành
Mã số

: Công nghệ thông tin
: Hệ thống thông tin
: 60.48.05


LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN HÀ NAM

Hà Nội – 2015


LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi, với sự hỗ trợ từ
người hướng dẫn khoa học PGS.TS Nguyễn Hà Nam.
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai
công bố trong bất kỳ công trình nào khác. Việc sử dụng những dữ liệu có trong luận
văn được thu thập từ các nguồn thông tin khác nhau có ghi trong phần tài liệu tham
khảo.
Nếu phát hiện bất kỳ sự gian lận nào, tôi xin 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.
Hà Nội, tháng 11 năm 2015
Học viên

Vũ Văn Vỹ

i


LỜI CẢM ƠN
Tôi muốn bày tỏ lòng biết ơn sâu sắc tới những người đã giúp đỡ tôi trong
quá trình làm luận văn, đặc biệt tôi xin cám ơn PGS.TS Nguyễn Hà Nam, với lòng
kiên trì, thầy đã chỉ bảo tôi chi tiết và cho tôi những định hướng quí báu trong quá
trình từng bước làm luận văn. Đồng thời tôi cũng xin gửi lời cảm ơn tới các thầy cô
giáo khoa Công nghệ thông tin – Trường Đại học Công nghệ - Đại học Quốc gia Hà

Nội đã truyền đạt các kiến thức cho tôi trong suốt thời gian học tập và nghiên cứu
vừa qua.
Tôi cũng xin chân thành cảm ơn cơ quan, bạn bè, đồng nghiệp, gia đình và
những người thân đã cùng chia sẻ, giúp đỡ, động viên, tạo mọi điều kiện thuận lợi
để tôi hoàn thành nhiệm vụ học tập và cuốn luận văn này

Hà Nội, tháng 11 năm 2015

ii


MỤC LỤC
MỤC LỤC ................................................................................................................ iii
DANH MỤC HÌNH VẼ .......................................................................................... iv
DANH MỤC BẢNG BIỂU .......................................................................................v
DANH MỤC CHỮ VIẾT TẮT .............................................................................. vi
PHẦN MỞ ĐẦU ........................................................................................................1
CHƢƠNG 1 - TỔNG QUAN VỀ LĨNH VỰC NGHIÊN CỨU PHÁT HIỆN
HÀNH VI THAM GIA GIAO THÔNG ..................................................................2
1.1 Hành vi tham gia giao thông và phát hiện hành vi tham gia giao thông ...2
1.2 Các nghiên cứu liên quan ...............................................................................3
1.3 Một số thách thức trong nghiên cứu ..............................................................6
1.4 Đề xuất phƣơng pháp tiếp cận .......................................................................7
CHƢƠNG 2 - KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU VÀ GIỚI THIỆU MỘT
SỐ KỸ THUẬT ÁP DỤNG TRONG ĐỀ TÀI ........................................................9
2.1 Giới thiệu về khai phá dữ liệu (Data Mining) ..............................................9
2.2 Phân lớp ........................................................................................................10
2.3 Giới thiệu về WEKA. ...................................................................................19
CHƢƠNG 3 - PHƢƠNG PHÁP PHÁT HIỆN HÀNH VI THAM GIA GIAO
THÔNG DỰA TRÊN DỮ LIỆU CẢM BIẾN ĐIỆN THOẠI DI ĐỘNG ...........21

3.1 Sơ đồ hệ thống phát hiện hành vi tham gia giao thông ............................21
3.2 Dữ liệu cảm biến ...........................................................................................22
3.3 Lọc nhiễu .......................................................................................................27
3.4 Chuyển hệ trục tọa độ trong không gian ...................................................30
3.5 Trích chọn đặc trƣng ....................................................................................34
CHƢƠNG 4 - THỰC NGHIỆM VÀ ĐÁNH GIÁ ................................................37
4.1 Thu thập dữ liệu huấn luyện mô hình .........................................................38
4.2 Xây dựng bộ dữ liệu huấn luyện ..................................................................40
4.4 Thực nghiệm phát hiện hành vi tham gia giao thông thời gian thực .......45
4.5 Phân tích, đánh giá quá trình thực nghiệm ...............................................46
KẾT LUẬN ..........................................................................................................49
TÀI LIỆU THAM KHẢO ......................................................................................50

iii


DANH MỤC HÌNH VẼ

Hình 1.1: Xu hƣớng dùng điện thoại di động .........................................................2
Hình 1.2: Sự bùng nổ của smartphone và máy tính bảng trong những năm gần
đây ...............................................................................................................................3
Hình 2.1: Quá trình khám phá tri thức.................................................................10
Hình 2.2: (a) Bƣớc xây dựng mô hình phân lớp ...................................................11
Hình 2.3: (b1)Ƣớc lƣợng độ chính xác của mô hình ............................................12
Hình 2.4: (b2) Phân lớp dữ liệu mới ......................................................................12
Hình 2.5: Phƣơng pháp phân lớp Random Rorest ..............................................15
Hình 3.1: Sơ đồ hệ thống phát hiện hành vi giao thông từ dữ liệu cảm biến ....21
Hình 3.2 : Cảm biến gia tốc kế ...............................................................................24
Hình 3.3: Cảm biến từ trƣờng ...............................................................................25
Hình 3.4: Cảm biến trọng lực.................................................................................26

Hình 3.5: Dữ liệu gia tốc trục X qua bộ lọc thông thấp .......................................27
Hình 3.6: Dữ liệu gia tốc đã qua lọc nhiễu(trên) và chƣa qua lọc nhiễu(dƣới) .28
Hình 3.7: Sự khác nhau giữa cảm biến gia tốc của 2 điện thoại khác nhau ......29
Hình 3.8: Hệ trục tọa độ điện thoại và Hệ trục tọa độ Trái Đất ........................30
Hình 3.9: Các trạng thái xoay điện thoại ..............................................................30
Hình 3.10: Sự khác nhau giữa đổi trục và không đổi trục ..................................31
Hình 3.11 Chuyển từ trục điện thoại về trục Trái Đất ........................................32
Hình 3.12: Hệ tọa độ không gian ...........................................................................32
Hình 4.1: Quá trình thực nghiệm phát hiện hành vi tham gia giao thông ........37
Hình 4.2: Giao diện thu dữ liệu mẫu .....................................................................38
Hình 4.3: Dữ liệu lƣu trữ trong điện thoại............................................................39
Hình 4.4: Mẫu dữ liệu của hành vi Tăng tốc ........................................................40
Hình 4.5: Mô tả quá trình tính toán 6 thông số đặc trƣng ..................................41
Hình 4.6: Các tham số huấn luyện mô hình k-NN ...............................................42
Hình 4.7: Các tham số huấn luyện mô hình Naïve Bayes....................................43
Hình 4.8: Các tham số huấn luyện mô hình Random forest ...............................44
Hình 4.9: Giao diện chƣơng trình phát hiện hành vi thời gian thực..................45

iv


DANH MỤC BẢNG BIỂU

Bảng 2.1: Ma trận thống kê ....................................................................................13
Bảng 3.1: Các loại cảm biến trên các phiên bản hệ điều hành Android ............23
Bảng 3.2: Các thông số gia tốc kế ..........................................................................25
Bảng 3.3: Các thông số từ trƣờng kế .....................................................................25
Bảng 3.4: Các thông số gia tốc trọng lực ...............................................................26
Bảng 4.1: Kết quả huấn luyện của mô hình k-NN ...............................................42
Bảng 4.2: Kết quả huấn luyện của mô hình Naïve Bayes ....................................43

Bảng 4.3: Kết quả huấn luyện của mô hình Random forest ...............................44
Bảng 4.4: Kết quả thực nghiệm phát hiện hành vi bằng k-NN ..........................46
Bảng 4.5 : Kết quả thực nghiệm phát hiện hành vi bằng Naïve Bayes ..............47
Bảng 4.6: Kết quả huấn luyện phát hiện hành vi bằng Random forest .............47

v


DANH MỤC CHỮ VIẾT TẮT

ANN

Artificial Neural Network

FN

False Negatives

FP

False Positives

HAR

Human Activity Recognition

HMM

Hidden Markov Model


k-NN

k - Nearest Neighbor

TN

True Negatives

TP

True Positives

CSDL

Cơ sở dữ liệu

KDD

Knowledge Discovery in Database

vi


PHẦN MỞ ĐẦU
Trong thập kỷ gân đây, sự phát triển vượt bậc của khoa học công nghệ đã đem
lại cho con người những tiện ích thiết thực thông qua các thiết bị di động. Thiết bị di
động giờ đây đã trở thành công cụ hỗ trợ đắc lực cho con người trong mọi hoạt động
trong cuộc sống ngày nay. Cùng với những ứng dụng hỗ trợ công việc hàng ngày thì
các ứng dụng mang tính tiên đoán, nhắc nhở, điều hướng người dùng ngày càng trở
nên phổ biến.

Bên cạnh đó việc tham gia giao thông của con người là một hoạt động tất yếu
hàng ngày. Việc tham gia giao thông luôn tiềm ẩn nhiều rủi ro do các tác nhân có ý
thức hoặc vô thức của con người. Việc có một ứng dụng có thể nhắc nhở, điều hướng
người tham gia giao thông sao cho an toàn trở thành nhu cầu thiết thực, cần có trong
một xã hội các thiết bị di động đã trở nên phổ dụng với mỗi người.
Nội dung của luận văn tập trung nghiên cứu về mặt thuật toán, kết hợp giữa lý
thuyết và áp dụng thực tiến để đánh giá các phương pháp nhận diện hành vi của người
tham gia giao thông bằng xe gắn máy, từ đó chọn ra phương pháp tối ưu nhất gắn liền
với thực tế của người sử dụng điện thoại thông minh. Đề tài có tính ứng dụng cao
trong cuộc sống, làm tiền đề cho sự phát triển, nghiên cứu sâu về các hành vi của con
người khi tham gia giao thông ở nhiều khía cạnh khác nhau. Từ đó, nghiên cứu luận
văn hướng tới các mục tiêu sau:
-

-

Phát hiện được một số hành vi giao thông cơ bản của người tham gia giao
thông bằng xe gắn máy: Dừng, Đang di chuyển, Tăng tốc, giảm tốc và đưa ra
cảnh báo
So sánh một số kỹ thuật học máy nhằm đưa ra kỹ thuật tối ưu nhất.

Cấu trúc luận văn nhƣ sau:
Chƣơng 1: Tổng quan về lĩnh vực nghiên cứu phát hiện hành vi tham gia giao
thông dựa trên những điều kiện khác nhau, các phương pháp nghiên cứu trước đó và
đề xuất phương pháp tiếp cận vấn đề tối ưu nhất trong thực tiễn
Chƣơng 2: Khái quát về khai phá dữ liệu và giới thiệu một số kỹ thuật áp dụng
trong đề tài.
Chƣơng 3: Phương pháp phát hiện hành vi tham gia giao thông dựa vào dữ liệu
cảm biến của điện thoại di động với các mô hình học máy.
Chƣơng 4: Thực nghiệm và đánh giá.

Kết luận

1


CHƢƠNG 1 - TỔNG QUAN VỀ LĨNH VỰC NGHIÊN CỨU PHÁT HIỆN
HÀNH VI THAM GIA GIAO THÔNG
Trong chương này trình bày về mục đích của phát hiện hành vi tham gia giao
thông, các nghiên cứu trước đây về cách tiếp cận giải quyết bài toán phát hiện hành vi
tham gia giao thông.
1.1 Hành vi tham gia giao thông và phát hiện hành vi tham gia giao thông
Trong suốt thập kỷ vừa qua đã có sự phát triển vượt bậc của hệ thống vi điện tử
và máy tính, các cảm biến và các thiết bị di động với các tính năng hiện đại. Chúng có
khả năng tính toán cao, kích thước nhỏ và chi phí thấp, cho phép con người tương tác
với các thiết bị như một phần của cuộc sống hàng ngày. Hình 1.1 cho thấy một kết quả
đáng kinh ngạc, dân số thế giới ước tính khoảng 7 tỷ người, thì hơn 5 tỷ người sử
dụng điện thoại di động. Số lượng người dùng điện thoại thông minh cũng rất cao so
với số lượng người dùng điện thoại di động (1.5 tỷ người sử dụng điện thoại thông
minh).

Hình 1.1: Xu hướng dùng điện thoại di động
Sự bùng nổ của người sử dụng điện thoại thông minh trong những năm gần đây
đã dẫn đến sự bùng nổ của các ứng dụng cho điện thoại thông minh. Hình 1.2 cho thấy
số lượng đáng kinh ngạc của các thiết bị di động thông minh tăng nhanh qua các năm.
Vì vậy, việc phát triển ứng dụng trên điện thoại di động là xu hướng nóng hiện nay và
có khả năng áp dụng cao vào đời sống.

2



Hình 1.2: Sự bùng nổ của smartphone và máy tính bảng trong những năm gần đây
Trong cuộc sống ngày nay, mọi người đều vội vàng để đi đến đích của họ càng
nhanh càng tốt. Vì vậy, các hành vi cố ý hoặc vô ý khi tham gia giao thông như tăng
tốc đột ngột, giảm tốc đột ngột hay phanh đột ngột có thể dẫn dắt họ đến tai nạn hoặc
thậm chí mất cả cuộc đời của họ. Và nếu có một hệ thống theo dõi hành vi người của
người tham gia giao thông thì sẽ là tương đối an toàn hơn khi hành vi đó được ghi
chép, phản hồi đến người điều khiển, góp phần đáng kể hạn chế những tai nạn giao
thông. Để theo dõi hành vi, các điều khiển cảm biến khác nhau đang được sử dụng
hoặc được triển khai bên trong xe, bên lề đường hoặc sẵn có trong điện thoại thông
minh.
Với các lý do trên, phát hiện hành vi tham gia giao thông, đặc biệt là hệ thống
phát hiện hành vi tham gia giao thông dựa trên điện thoại di động là một lĩnh vực
nghiên cứu rất hấp dẫn và thích hợp với thời điểm hiện tại.
1.2 Các nghiên cứu liên quan
Đã có nhiều nghiên cứu trước đây sử dụng cảm biến điện thoại để phân tích
phát hiện hành vi tham gia giao thông.
Trong [1] P. Singh et al. phát triển một ứng dụng trên android, ứng dụng này
thu thập dữ liệu từ các cảm biến gia tốc, GPS và cũng ghi lại âm thanh với sự giúp đỡ
của microphone, và sau đó dữ liệu được kết hợp và phân tích để phát hiện các hành vi
lái xe không an toàn. Các mẫu khác nhau như phanh gấp, chuyển làn đường, rẽ trái /
phải, giảm tốc đột ngột, tăng tốc đột ngột được phân tích và xác nhận bằng cách sử
dụng "Ground Truth “. Sự tương quan của dữ liệu âm thanh và gia tốc được thực hiện
3


để tìm mô hình mới. Ví dụ: nếu một thay đổi làn đường không đi kèm với âm thanh
chỉ báo, thì điều này có nghĩa là hành vi lái xe không an toàn. Các giới hạn của công
trình này là kỹ thuật học máy không được sử dụng để phân loại các mẫu hành vi.
Trong [2], Fazeen et al. đã đề xuất một ứng dụng cải tiến bằng cách sử dụng
một điện thoại di động thông minh được tích hợp bên trong một chiếc ô tô để đánh giá

phong cách lái xe. Họ đã sử dụng ba trục cảm biến gia tốc của một điện thoại thông
minh Android để ghi lại và phân tích hành vi lái xe khác nhau và điều kiện đường xá
bên ngoài có khả năng có thể nguy hại đến sức khỏe của người lái xe. Họ đã sử dụng
trục x và trục y của dữ liệu gia tốc để làm thước đo kiểm soát trực tiếp người lái xe khi
họ điều khiển, tăng tốc, và phanh. Tăng tốc an toàn hoặc giảm tốc độ thì G-Force
không bao giờ vượt ngưỡng ± 0,3 g, và tăng tốc đột ngột hoặc giảm tốc độ đột ngột có
lực g-force đạt ± 0,5 g. Với sự so sánh này, nó rất dễ dàng để định lượng sự khác biệt
giữa khả năng tăng tốc hoặc giảm tốc an toàn và đột ngột. Rẽ phải / trái an toàn có một
g-force trung bình ít hơn ± 0,1 g và không an toàn hoặc đột ngột rẽ phải / trái có một
g-force hơn ± 0,5 g. Người ta quan sát thấy rằng thời gian trung bình để hoàn thành
một sự thay đổi làn đường an toàn là dài hơn một sự thay đổi làn đường đột ngột 75%.
Địa điểm đặt điện thoại trong xe là ở bảng điều khiển trung tâm, đã đưa ra các dữ liệu
tương đối tốt. Hạn chế của công trình này là kết quả tốt nhất của dự đoán hành vi lái xe
đã được tìm thấy khi điện thoại được đặt cố định trên bảng điều khiển trung tâm.
Trong thực tế vị trí điện thoại không luôn được đặt cố định ở bảng điều khiển trung
tâm, nó có thể ở bất cứ nơi nào trong xe, do đó nên có cơ chế cho việc định hướng lại
các gia tốc theo một chuẩn.
Trong [3] Chigurupa et al. phát triển một ứng dụng android trong đó sử dụng dữ
liệu từ các cảm biến gia tốc, cảm biến GPS và quay video được thực hiện với sự giúp
đỡ của máy ảnh để đánh giá việc lái xe. Các thông tin phản hồi có thể được sử dụng để
nhận biết người lái xe và cải thiện hiệu suất. Phạm vi của các tăng tốc hoặc giảm tốc
các giá trị được đưa ra cho việc lái xe an toàn. Bất cứ khi nào các giá trị gia tốc vượt
quá giới hạn an toàn nó sẽ được coi như là một sự kiện. Trục X hướng phía trước và
phía sau, lái xe Tăng tốc / phanh, có giá trị g an toàn từ -3 đến +3. Trục Y, hướng trái
/ phải, lái xe rẽ phải/trái chuyển làn có giá trị g an toàn là từ -3 đến +3. Trục Z hướng
trên / dưới, lái xe va đập / đường không bình thường, có giá trị g an toàn là từ -11 đến
-8. Giới hạn của công trình này là toàn bộ hệ thống không phải là hoàn toàn tự động,
do đó, là sự cần thiết của quản trị viên để phân tích các đoạn video.
Trong [4] Johnson et al. đề xuất một phương pháp để dự đoán phong cách lái
xe. Họ phân loại phong cách lái xe theo mức bình thường, hung hăng và rất hung hăng.

Họ thu thập dữ liệu từ các cảm biến khác nhau (gia tốc, con quay hồi chuyển, từ kế,
GPS, video) và dữ liệu liên quan đến hợp nhất thành một bộ phân loại duy nhất dựa
trên Dynamic Time Warping (DTW) 700 Nidhi Kalra và thuật toán Divya Bansal. Hệ
thống này được gọi là MIROAD: A Mobile-Sensor-Platform for Intelligent
4


Recognition of Driving Aggressive, hệ thống có thể cung cấp thông tin phản hồi nghe
được nếu phong cách của một người lái xe trở nên hung hăng cũng như các thông tin
dẫn đến một sự kiện không tích cực. Họ đã sử dụng iPhone 4, và phát hiện các sự kiện
như rẽ phải, rẽ trái hung hăng, rẽ phải, trái, tăng tốc mạnh mẽ, phanh … Nhược điểm
của công trình này là chỉ có sự kiện tích cực được phát hiện, thay đổi làn đường chuẩn
(không tích cực) hiện chưa được phát hiện, bởi vì chuyển động thay đổi làn đường tự
nhiên không gây đủ lực hoặc quay về gia tốc để phân biệt.
Trong [5] Dai et al. đã đề xuất một hệ thống có hiệu quả cao để phát hiện và
cảnh báo các hoạt động xe nguy hiểm (lạng lách, trôi trượt, khi chuyển hướng, quay
đầu với một bán kính rộng, tăng tốc hoặc giảm tốc đột ngột, phanh thất thường, lái xe
với lốp xe vào trung tâm trên đường đánh dấu, lái xe không có đèn vào ban đêm) về cơ
bản liên quan đến lái xe say rượu. Họ thực hiện các hệ thống phát hiện trên điện thoại
G1 Android. Họ đã sử dụng gia tốc và cảm biến định hướng. Phát hiện mẫu say rượu
lái xe được thực hiện thông qua cửa sổ và biến ngưỡng, giải pháp của họ cho thấy 0%
tỷ lệ sai âm và tỷ lệ sai dương 0,49% cho cung đường cong bất thường hoặc chuyển
làn và 0% tỷ lệ sai dương và sai âm 2,39% cho vấn đề kiểm soát tốc độ. Smartphone
của chúng ta hoạt động dựa vào năng lượng của pin,và hệ thống của họ cho thấy mức
tiêu thụ năng lượng chấp nhận được. Giới hạn của công trình này là tập hợp các mẫu
say rượu lái xe bị hạn chế và khó khăn để phân biệt với các mẫu xe bình thường như
lạng lách và thay đổi làn có mẫu giống nhau.
Trong [6] Zhang et al. đề xuất một phương pháp nhận dạng mẫu để đặc trưng
cho các lái xe dựa trên mức độ kỹ năng của họ. Trình độ kỹ năng đã được xác định là
thấp, trung bình, hoặc cấp độ chuyên gia, hay đơn giản mức độ từ 1 tới 10. Sử dụng

một chiếc xe cao cấp mô phỏng, họ so sánh hành vi điều khiển như điều khiển tay lái,
thay đổi làn đường, và mức độ giao thông với một lái xe chuyên gia để giúp đỡ phân
tích các loại. Các giá trị đầu vào mà họ đã thực hiện là hệ số DFT của góc tay lái và
bàn đạp ga. Họ đã sử dụng học máy và các thuật toán học trong đó bao gồm mạng
nơron đa tầng (MLP-ANNs), cây quyết định, và máy vector hỗ trợ (SVMs). Các SVM
với hạt nhân đa thức cho thấy hiệu suất tốt hơn so với cả MLP-ANN và cây quyết
định.
Trong [7] Gazali theo dõi hành vi lái xe thất thường gây ra do vượt xe khi sử
dụng Off the-shelf Technologies. Cảm biến định hướng được sử dụng để phát hiện các
chuyển động của xe ở bên trái, bên phải và hướng về phía trước. GPS được sử dụng để
định vị trí của xe và tốc độ của nó khi nó di chuyển và chuyển tiếp thông tin này đến
máy chủ ứng dụng để có được thông tin thời gian thực của vị trí này. Họ đề xuất
mộtkỹ thuật mà xác định hình thức vượt, phân biệt với các mô hình khác thông qua
việc sử dụng mạng nơron. Họ trình bày một kỹ thuật phù hợp với bản đồ như thế nào
để phù hợp và xác nhận các mô hình vượt trên một mạng lưới đường thực tế. Hạn chế
5


của công trình này là hệ thống hoàn toàn phụ thuộc vào cảm biến GPS, nhưng GPS
không thể có mặt ở khắp mọi nơi trong mọi điều kiện.
Trong [8] tác giả Nguyễn Thắng Ngọc đã nhận dạng hoạt động của người bằng
điện thoại di động có tích hợp gia tốc ba chiều. Tác giả đã nghiên cứu bài toán nhận
dạng hoạt động của người và tiến hành nhận dạng hoạt động của người bằng điện thoại
di động qua 2 bước chính: trích chọn đặc trưng và phương pháp nhận dạng. Từ bộ dữ
liệu vào là gia tốc thô x, y, z trích chọn ra 6 đặc trưng để phân biệt tốt các hoạt động
khác nhau. Thuật toán cây quyết định được sử dụng để phân loại bằng cách so sánh
các giá trị thuộc tính của tập dữ liệu với cây quyết định đã được xây dựng. Một con
đường được bắt đầu từ gốc đến một nút lá, sẽ trả về dự đoán cho tập dữ liệu đó. Để
đánh giá kết quả đạt được tác giả đã thực hiện 4 bước: thu thập dữ liệu, phát triển và
cài đặt, phân tích và đánh giá kết quả. Việc thu thập dữ liệu thực hiện trên 17 người

với độ tuổi, nghề nghiệp khác nhau. Mỗi người thực hiện 6 hoạt động khác nhay (chạy,
đi bộ, ngồi, nhảy, đứng yên và một hoạt động khác với 5 hoạt động trước). Dữ liệu
được ghi lại bởi một thiết bị Android có tích hợp cảm biến gia tốc từ -2.0g đến +2.0g.
Các tín hiệu đầu ra của gia tốc được lấy mẫu tại 100Hz. Các đối tượng đặt điện thoại
di động có tích hợp gia tốc 3 chiều trong túi quần của họ. 17 đối tượng đã thực hiện
từng hoạt động, mỗi hoạt động khoảng một phút. Kết quả thu được dữ liệu thô gồm có
4 thuộc tính: ngày giờ diễn ra hoạt động,các giá trị gia tốc của trục x, trục y, trục z
tương ứng. Tác giả đã sử dụng thuật toán Cây quyết định (Desicion Tree) để phân loại
hoạt động đạt được độ chính xác là 82,43%.
Năm 2002, Randel [11] giới thiệu một hệ thống để nhận ra các hoạt động đi lại
khi tính toán bình phương trung bình (Root Mean Square) từ tín hiệu gia tốc và sử
dụng một mạng nơron lan truyền ngược để phân loại. Độ chính xác tổng thể là 95%
được sử dụng huấn luyện với người dùng cụ thể nhưng không có thông tin chi tiết liên
quan đến các đặc điểm của các đối tượng được cung cấp, giao thức thu thập dữ liệu, và
ma trận nhầm lẫn. He và các cộng sự [11], [12], đạt được lên tới 97% độ chính xác
nhưng chỉ xem xét bốn hoạt động: đứng yên, chạy, nhảy, và đi bộ. Các hoạt động này
là khá khác nhau trong tự nhiên, cũng làm giảm mức độ sai đáng kể qua đó cho phép
độ chính xác cao hơn. Chen [13] giới thiệu một cách tiếp cận phân tích nhận dạng trực
tuyến để thêm hoặc loại bỏ các lớp hoạt động và dữ liệu huấn luyện trực tuyến. Với
một phân loại Fuzzy Basis Function, đạt độ chínhxác đến 93% cho tám hoạt động đi
lại và sinh hoạt hàng ngày. Tuy nhiên, tất cả các dữ liệu được thu thập trong các phòng
thí nghiệm và trong điều kiện có kiểm soát.
1.3 Một số thách thức trong nghiên cứu
Mặc dù các nhà nghiên cứu khác nhau đã góp phần trong việc theo dõi hành vi
của lái xe khi tham gia giao thông nhưng vẫn có một số thách thức nghiên cứu mà các
nhà nghiên cứu có thể khám phá.
6


-


-

-

-

-

Yếu tố môi trường như mưa, gió cần phải được đưa vào tiêu chí trong khi dự
đoán hành vi của lái xe.
Các dữ liệu từ nhiều phương tiện có thể xác định xem điều kiện điều khiển của
lái xe. Ví dụ lái xe áp dụng hệ thống phanh thường do tắc nghẽn hoặc thói quen
riêng của mình.
Điều kiện đường xá cũng phải được xem xét một cách chính xác trong việc xác
định phong cách lái xe.
Kỹ thuật học máy nên được sử dụng để xác định các sự kiện lái xe thay vì chỉ
đơn giản là xác định phạm vi hoặc ngưỡng giá trị.
Ẩn danh: Hầu hết các tài liệu nghiên cứu sử dụng cảm biến GPS để dự đoán
phong cách lái xe. Nhưng bằng cách xác định vị trí, những cái riêng tư là vi
phạm. Vì vậy, phải có một số kỹ thuật để ẩn tên các giá trị.
Sensor fusion: Phối hợp nhiều cảm biến nên được sử dụng thay vì sử dụng một
cảm biến để phát hiện hành vi của lái xe là nó sẽ làm tăng hiệu quả của hệ
thống. Như bằng cách sử dụng gia tốc kế, từ kế và con quay hồi chuyển kết hợp
chúng ta có thể có được kết quả chính xác hơn về định hướng thiết bị.
Virtual Reorientation : Điện thoại có thể được ở bất kỳ vị trí bên trong xe, do
đó phải có một số cơ chế để định hướng lại các thiết bị căn chỉnh các trục thiết
bịcùng với trục xe.
Các nghiên cứu từ trước đến nay đều thực hiện trên ô tô, nếu có thể thực hiện
trên phương tiện khác sẽ đem lại tiện ích rất tốt cho người điều khiển phương

tiện không phải là ô tô

1.4 Đề xuất phƣơng pháp tiếp cận
Trong điều kiện hiện tại ở nước ta, phương tiện di chuyển chủ yếu là xe máy, để
có thể áp dụng các nghiên cứu trên vào việc phát hiện hành vi tham gia giao thông trên
xe máy là tương đối khó khăn. Các điều kiện về hạ tầng giao thông, chất lượng cảm
biến, GPS không tốt cùng với vị trí đặt điện thoại của người khi tham gia giao thông.
Các nghiên cứu ở trên đều thực hiện nhằm phát hiện các hành vi của con người.
Các hành vi khi tham gia giao thông cũng tương tự như những hành vi của con người.
Việc chạy, nhảy, đi bộ, đứng nguyên cũng gần giống các hành vi tăng tốc, giảm tốc,
dừng hay chuyển động…. Từ đó tôi xin đề xuất kỹ thuật phát hiện hành vi tham gia
giao thông dựa trên 6 đặc trưng trích chọn ra từ cảm biến gia tốc. Vì chỉ là các đặc
trưng của cảm biến gia tốc nên trong lần nghiên cứu này sẽ tập trung vào việc phát
hiện ra các hành vi tham gia giao thông cơ bản: Dừng, Di chuyển, Tăng tốc, Giảm tốc.
Cách thức thực hiện nghiên cứu như sau:
- Thu dữ liệu cảm biến từ 3 trục của gia tốc kế
- Lọc nhiễu
- Đổi hệ tọa độ Điện thoại sang Trái Đất.
7


-

Tính các thông số đặc trưng từ giá trị gia tốc kế sau khi đổi trục.
Xây dựng bộ dữ liệu huấn luyện cho hệ thống.
Sử dụng một số mô hình học máy huấn luyện mô hình.
Sử dụng mô hình đã huấn luyện phát hiện hành vi theo thời gian thực khi đang
tham gia giao thông.
Việc sử dụng cảm biến gia tốc trên thiết bị di động sẽ bị ảnh hưởng kết quả nếu
dữ liệu được lấy trên các thiết bị di động khác loại. Vì các thiết bị khác nhau có độ

nhạy của của cảm biến khác nhau, do đó trong nghiên cứu này dữ liệu tôi chỉ thực hiện
thu thập và thực nghiệm trên một thiết bị điện thoại là Samsung Galaxy S3 sử dụng hệ
điều hành Android 4.3.
Trong một số nghiên cứu phát hiện hành vi tham gia giao thông trước đây đều
thực hiện trên phương tiện là ô tô. Trong nghiên cứu này tôi đề xuất thực hiện trên xe
máy nhằm mục đích phù hợp với điều kiện giao thông của Việt Nam hiện tại đa phần
là xe máy, đề tài có thể dễ dàng tiếp cận với nhiều đối tượng.

8


CHƢƠNG 2 - KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU VÀ GIỚI THIỆU
MỘT SỐ KỸ THUẬT ÁP DỤNG TRONG ĐỀ TÀI
Trong những năm gần đây, sự phát triển mạnh mẽ của CNTT đã làm cho khả
năng thu thập và lưu trữ thông tin của các hệ thống thông tin tăng nhanh một cách
chóng mặt. Bên cạnh đó, việc tin học hoá một cách ồ ạt và nhanh chóng các hoạt động
sản xuất, kinh doanh cũng như nhiều lĩnh vực hoạt động khác đã tạo ra cho chúng ta
một lượng dữ liệu lưu trữ khổng lồ. Hàng triệu CSDL đã được sử dụng trong các hoạt
động sản xuất, kinh doanh, quản lý..., trong đó có nhiều CSDL cực lớn cỡ Gigabyte,
thậm chí là Terabyte. Sự bùng nổ này đã dẫn tới một yêu cầu cấp thiết là cần có những
kỹ thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ kia thành các
tri thức có ích. Từ đó, các kỹ thuật khai phá dữ liệu đã trở thành một lĩnh vực thời sự
của nền CNTT thế giới hiện nay nói chung và Việt Nam nói riêng.
2.1 Giới thiệu về khai phá dữ liệu (Data Mining)
Khai phá dữ liệu đang được áp dụng một cách rộng rãi trong nhiều lĩnh vực
kinh doanh và đời sống khác nhau: marketing, tài chính, ngân hàng và bảo hiểm, khoa
học, y tế, an ninh, internet, giao thông thông minh… Rất nhiều tổ chức và công ty lớn
trên thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh
doanh của mình và thu được những lợi ích to lớn.
Khai phá dữ liệu được định nghĩa là quá trình trích xuất các thông tin có giá trị

tiềm ẩn bên trong lượng lớn dữ liệu được lưu trữ trong các cơ sở dữ liệu, kho dữ liệu.
Hiện nay, ngoài thuật ngữ khai phá dữ liệu, người ta còn dùng một số thuật ngữ khác
có ý nghĩa tương tự như: Khai phá tri thức từ CSDL, trích lọc dữ liệu
(Konwlegdeextraction), phân tích dữ liệu/mẫu (data/pattern analysis), khảo cổ dữ liệu
(dataarchaeology), nạo vét dữ liệu (data dredging). Nhiều người coi khai phá dữ liệu
và một số thuật ngữ thông dụng khác là khám phá tri thức trong CSDL
(KnowledgeDiscovery in Databases-KDD) là như nhau. Tuy nhiên trên thực tế khai
phá dữ liệu chỉ là một bước thiết yếu trong quá trình Khám phá tri thức trong CSDL.
Trong vài chục năm gần đây cùng với sự phát triển mạnh mẽ của kỹ thuật công
nghệ cũng như nhu cầu lưu trữ thông tin dẫn đến trữ lượng dữ liệu được lưu trữ không
ngừng tăng theo. Những cơ sở dữ liệu rất lớn ra đời, có những cơ sở dữ liệu lên đến cỡ
Gigabyte và thậm chí cả Terabyte. Nếu bạn có trong tay một kho cơ sở dữ liệu cũng có
nghĩa bạn có trong tay một kho tri thức. Nhưng vấn đề đặt ra là làm thế nào bạn có thể
trích lọc được những thông tin, tri thức từ một kho dữ liệu với rất nhiều thông tin về
các lĩnh vực khác nhau. Để giải quyết vấn đề đó thì kỹ thuật khám phá tri thức trong
cơ sở dữ liệu (Knowledge Discovery in Databases- KDD) đã ra đời. Khám phá tri thức
trong cơ sở dữ liệu (KDD) là lĩnh vực liên quan đến các ngành như: xác suất thống kê,
9


học máy, trực quan hóa dữ liệu, tính toán song song,…Trong đó quá trình KDD có thể
chia thành các bước thực hiện như hình 2.1
Trình diễn
Khai phá dữ liệu
Tri thức

Chuyển đổi dữ liệu
Mô hình

Tiền xử lý dữ liệu

Trích lọc
Thu thập

Dữ liệu
Đã tiền xử


Dữ liệu
đã chuyển
đổi

Dữ liệu
đích
Dữ liệu

Hình 2.1: Quá trình khám phá tri thức
2.2 Phân lớp
2.2.1 Giới thiệu về phân lớp
Phân lớp dữ liệu (classification) là một trong những hướng nghiên cứu chính
của khai phá dữ liệu. Thực tế đặt ra nhu cầu là từ một cơ sở dữ liệu với nhiều thông tin
ẩn con người có thể trích rút ra các quyết định nghiệp vụ thông minh. Phân lớp và dự
đoán là hai dạng của phân tích dữ liệu nhằm trích rút ra một mô hình mô tả các lớp dữ
liệu quan trọng hay dự đoán xu hướng dữ liệu tương lai. Phân lớp dự đoán giá trị của
những nhãn xác định (categorical label) hay những giá trị rời rạc(discrete value), có
nghĩa là phân lớp thao tác với những đối tượng dữ liệu mà có bộ giá trị là biết trước.
Trong khi đó, dự đoán lại xây dựng mô hình với các hàm nhận giá trị liên tục. Ví dụ
mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là mưa, hay nắng
dựa vào những thông số về độ ẩm, sức gió, nhiệt độ,… của ngày hôm nay và các ngày
trước đó. Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các
nhân viên kinh doanh có thể ra những quyết sách đúng đắn về lượng mặt hàng cũng

như chủng loại bày bán… Một mô hình dự đoán có thể dự đoán được lượng tiền tiêu
dùng của các khách hàng tiềm năng dựa trên những thông tin về thu nhập và nghề
nghiệp của khách hàng. Trong những năm qua, phân lớp dữ liệu đã thu hút sự quan
tâm các nhà nghiên cứu trong nhiều lĩnh vực khác nhau như học máy(machine
learning), hệ chuyên gia (expert system), thống kê (statistics)... Công nghệ này cũng
10


ứng dụng trong nhiều lĩnh vực khác nhau như: thương mại, nhà băng, maketing,
nghiên cứu thị trường, bảo hiểm, y tế, giáo dục... Phần lớn các thuật toán ra đời trước
đều sử dụng cơ chế dữ liệu cư trú trong bộ nhớ (memory resident), thường thao tác với
lượng dữ liệu nhỏ. Một số thuật toán ra đời sau này đã sử dụng kỹ thuật cư trú trên đĩa
cải thiện đáng kể khả năng mở rộng của thuật toán với những tập dữ liệu lớn lên tới
hàng tỉ bản ghi.Quá trình phân lớp dữ liệu gồm hai bước :
• Bước thứ nhất (learning)
Quá trình học nhằm xây dựng một mô hình mô tả một tập các lớp dữ liệu hay
các khái niệm định trước. Đầu vào của quá trình này là một tập dữ liệu có cấu trúc
được mô tả bằng các thuộc tính và được tạo ra từ tập các bộ giá trị của các thuộc tính
đó. Mỗi bộ giá trị được gọi chung là một phần tử dữ liệu (data tuple), có thể là các
mẫu (sample), ví dụ (example), đối tượng (object), bản ghi (record) hay trường
hợp(case). Khoá luận sử dụng các thuật ngữ này với nghĩa tương đương. Trong tập dữ
liệu này, mỗi phần tử dữ liệu được giả sử thuộc về một lớp định trước, lớp ở đây là giá
trị của một thuộc tính được chọn làm thuộc tính gán nhãn lớp hay thuộc tính phân
lớp(class label attribute). Đầu ra của bước này thường là các quy tắc phân lớp dưới
dạng

Hình 2.2: (a) Bước xây dựng mô hình phân lớp

 Bước thứ hai (classification)
Bước thứ hai dùng mô hình đã xây dựng ở bước trước để phân lớp dữ liệu mới.

Trước tiên độ chính xác mang tính chất dự đoán của mô hình phân lớp vừa tạo ra được
ước lượng. Holdout là một kỹ thuật đơn giản để ước lượng độ chính xác đó. Kỹ thuật
này sử dụng một tập dữ liệu kiểm tra với các mẫu đã được gán nhãn lớp. Các mẫu này
được chọn ngẫu nhiên và độc lập với các mẫu trong tập dữ liệu đào tạo. Độ chính xác
của mô hình trên tập dữ liệu kiểm tra đã đưa là tỉ lệ phần trăm các các mẫu trong tập
dữ liệu kiểm tra được mô hình phân lớp đúng (so với thực tế). Nếu độ chính xác của
mô hình được ước lượng dựa trên tập dữ liệu đào tạo thì kết quả thu được là rất khả
11


quan vì mô hình luôn có xu hướng “quá vừa” dữ liệu. Quá vừa dữ liệu là hiện tượng
kết quả phân lớp trùng khít với dữ liệu thực tế vì quá trình xây dựng mô hình phân lớp
từ tập dữ liệu đào tạo có thể đã kết hợp những đặc điểm riêng biệt của tập dữ liệu đó.
Do vậy cần sử dụng một tập dữ liệu kiểm tra độc lập với tập dữ liệu đào tạo. Nếu độ
chính xác của mô hình là chấp nhận được, thì mô hình được sử dụng để phân lớp
những dữ liệu tương lai, hoặc những dữ liệu mà giá trị của thuộc tính phân lớp là chưa
biết.

Hình 2.3: (b1)Ước lượng độ chính xác của mô hình

Hình 2.4: (b2) Phân lớp dữ liệu mới
Trong mô hình phân lớp, thuật toán phân lớp giữ vai trò trung tâm, quyết định tới
sự thành công của mô hình phân lớp. Do vậy chìa khóa của vấn đề phân lớp dữ liệu là
tìm ra được một thuật toán phân lớp nhanh, hiệu quả, có độ chính xác cao và có khả
năng mở rộng được. Trong đó khả năng mở rộng được của thuật toán được đặc biệt trú
trọng và phát triển.
2.2.3 Phƣơng pháp đánh giá độ chính xác của mô hình phân lớp
Nhìn chung, việc lựa chọn thuật toán phân loại cho bài toán phát hiện hành vi
giao thông vẫn đơn thuần được hỗ trợ bởi bằng chứng thực nghiệm. Phần lớn các
nghiên cứu đã sử dụng xác thực chéo để thống kê và đánh giá hiệu suất của các thuật

toán phân loại với một bộ dữ liệu cụ thể. Kết quả phân loại với một phương pháp cụ
thể được thể hiện trong một ma trận cụ thể Mnxn (n là số hành vi được phát hiện).
Trong đó Mixj là số hoạt động thực tế trong lớp i được phân loại thành lớp j. Các giá trị
sau có thể thu được từ ma trận Mnxn trong vấn đề phân loại:
12


Bảng 2.1: Ma trận thống kê
Thực tế
True

False

True Positives

False Positives

Dự

Positives

đoán

Negatives True Negatives

False Negatives

- TP (True Positives): là số lượng các hành vi được phân loại đúng giống như
hành vi thực hiện (số lượng hành vi Tăng tốc được hệ thống phân loại là Tăng
tốc khi xe đang Tăng tốc).

- TN (True Negatives): là số lượng các hành vi được phân loại đúng không
giống như hành vi thực hiện (số lượng hành vi Tăng tốc được hệ thống phân
loại là Tăng tốc khi một người đang Di chuyển).
- FP (False Positives): là số lượng các hành vi được phân loại sai giống như
hành vi thực hiện (số lượng hành vi Tăng tốc được hệ thống phân loại là Di
chuyển khi một người đang Di chuyển).
- FN (False Negatives): là số lượng các hành vi được phân loại sai không giống
như hành vi thực hiện (số lượng hành vi Tăng tốc được hệ thống phân loại là Di
chuyển khi một người đang Tăng tốc).
Kết quả nhận dạng của hệ thống được tính theo công thức sau:
Accuracy =

TP +TN
TP +TN +FP +FN

(2.1)

Giá trị class precision là tỷ lệ phân loại đúng một hành vi giống như hành vi
đang thực hiện với tổng số các hành vi thực hiện:
Precision =

TP
TP +FP

(2.2)

Giá trị class recall là tỷ lệ phân loại đúng một hành vi giống như hành vi đang
thực hiện với tổng số các hành vi được nhận dạng là hành vi đó:
Recall =


TP
TP +FN

(2.3)

2.2.4 Một số phƣơng pháp phân lớp
Có rất nhiều phương pháp phân lớp, mỗi phương pháp phân lớp đều có cách
tính toán khác nhau. Sự khác nhau cơ bản của các phương pháp này là ở thuật toán học
quy nạp. Tuy nhiên, nhìn một cách tổng quan thì các phương pháp đó đều phải thực
hiện một số bước chung như sau: đầu tiên, mỗi phương pháp sẽ dựa trên các thông tin
của các mẫu để biểu diễn mẫu thành dạng vector, sau đó, tuỳ từng phương pháp mà ta
13


sẽ áp dụng công thức và phương thức tính toán khác nhau để thực hiện việc phân loại.
Sau đây là một số cách tiếp cận mà theo thực nghiệm thì có hiệu quả phân loại cao
cũng như những thuận lợi và bất tiện của mỗi cách.
Phƣơng pháp k láng giềng gần nhất (k-NN Algorithm):
Ý tưởng:
Là phương pháp nổi tiếng về hướng tiếp cận dựa trên xác suất thống kê. Khi
cần phân loại mẫu mới, thuật toán sẽ tính khoảng cách (khoảng cách Euclide,Cosine...)
của tất cả các mẫu trong tập huấn luyện đến mẫu mới này để tìm ra k mẫu gần nhất
(gọi là k “láng giềng”) sau đó dùng các khoảng cách này đánh trọng số cho tất cả các
mẫu. Trọng số của một mẫu chính là tổng tất cả các khoảng cách ở trên của mẫu trong
k láng giềng có cùng đặc trưng, đặc trưng nào không xuất hiện trong k láng giềng sẽ có
trọng số bằng không. Sau đó các đặc trưng được sắp xếp theo mức độ trọng số giảm
dần và các đặc trưng có trọng số cao sẽ được chọn là đặc trưng của mẫu cần phân loại.
Mô tả thuật toán:
Một đối tượng được phân lớp dựa vào K láng giềng của nó. K là số nguyên
dương được xác định trước khi thực hiện thuật toán. Người ta thường dùng khoảng

cách Euclidean để tính khoảng cách giữa các đối tượng. Các bước thực hiện như sau:
Bước 1: Xác định giá trị tham số K (số láng giềng gần nhất)
Bước 2: Tính khoảng cách giữa đối tượng cần phân lớp với tất cả các đối tượng
trong tập dữ liệu huấn luyện (thường sử dụng khoảng các Euclidean)
Bước 3: Sắp xếp khoảng cách theo thứ tự tăng dần và xác định K láng giềng gần
nhất với đối tượng cần phân lớp
Bước 4: Lấy tất cả các lớp của K láng giềng gần nhất đã xác định
Bước 5: Dựa vào phần lớn lớp của láng giềng gần nhất để xác định lớp cho đối
tượng cần phân lớp
Ưu điểm:
Có một vài thuận lợi khi thực thi giải pháp này. Giải thuật này được xem như
giải thuật tốt nhất để bắt đầu việc phân loại mẫu và là một giải thuật mạnh.
Một trong những thuận lợi của giải thuật này chính là sự rõ ràng và dễ dàng,
đơn giản và dễ thực hiện. Được dựa trên phương pháp trực tuyến với cách xử lý một số
hỗn hợp các mẫu. Đặc biệt, giải thuật này còn kiểm tra các mẫu kề các mẫu mới, và
cần vài thông số để làm việc này, nói cách khác giải thuật này hầu như không giới hạn.
Dựa vào các nhân tố này, giải thuật này hoàn toàn hiệu quả thông qua thực nghiệm và
dễ dàng áp dụng.

14


Một lợi ích nữa của k-NN là giải thuật này có thể được vận dụng để cải tiến
hơn. Nói cách khác, giải thuật này nhanh chóng chỉnh sửa và phù hợp với các trường
hợp khác. Ví dụ, giải thuật có thể được áp dụng cho bất kỳ khoảng cách đo lường nào
khi nhập vào và các mẫu huấn luyện vì khoảng cách của các mẫu nhập vào có thể được
giảm đi để cải tiến hiệu quả của giải thuật, do vậy k-NN có thể được áp dụng cho mẫu
với bất kì khoảng cách nào trong mẫu đào tạo. Cũng vì thế mà hầu hết thời gian huấn
luyện đòi hỏi cho phân loại mẫu trong giải thuật k-NN, giải thuật này được đánh giá là
kỹ thuật chi phí trong các kỹ thuật cuối cùng, k-NN là giải thuật mạnh có thể giám sát

các nguồn tiềm năng lỗi.
Nhược điểm:
Rất khó có thể tìm ra k tối ưu. Hơn nữa với trường hợp mẫu có nhiễu thì việc
phân loại là không tốt.
Phƣơng pháp Random Forest
Random Forest (rừng ngẫu nhiên) là phương phân lớp thuộc tính được phát
triển bởi Leo Breiman tại đại học California, Berkeley. Breiman cũng đồng thời là
đồng tác giả của phương pháp CART (Classification and Regression Trees) được
đánh giá là một trong 10 phương pháp khai phá dữ liệu kinh điển. Random
Forest được xây dựng dựa trên 3 thành phần chính là: (1) CART, (2) học toàn bộ,
hội đồng các chuyên gia, kết hợp các mô hình, và(3) tổng hợp bootstrap (bagging).
Hình 2.2 dưới đây thể hiện phương pháp phân lớp random forest.

Phân lớp dự báo

Kết hợp
Phân lớp dự báo
Phân lớp 1

Phân lớp 2

Phân lớp N

Các thuộc tính
Hình 2.5: Phương pháp phân lớp Random Rorest
15


Bootstrap và Bagging
Bootstrap :Là một phương pháp rất nổi tiếng trong thống kê được giới thiệu bởi

Bradley Efronvào năm 1979. Phương pháp này chủ yếu dùng để ước lượng lỗi chuẩn
(standarderrors), độ lệch (bias) và tính toán khoảng tin cậy (confidence interval) cho
các tham số. Phương pháp này được thực hiện như sau: Từ một quần thể ban đầu lấy
ra một mẫu L = (x1, x2,..xn) gồm n thành phần, tính toán các tham số mong muốn.
Trong các bước tiếp theo lặp lại b lần việc tạo ra mẫu Lb cũng gồm n phần tử từ L
bằng cách lấy lại mẫu với sự thay thế các thành phần trong mẫu ban đầu sau đó tính
toán các tham số mong muốn.
Bagging: Phương pháp này được xem như là một phương pháp tổng hợp kết
quả có được từ các bootstrap. Tư tưởng chính của phương pháp này như sau: Cho
một tập huấn luyện D={(xi,yi): i=1,2,…,n} và giả sử chúng ta muốn có một một dự
đoán nào đó đối với biến x.
Một mẫu gồm B tập dữ liệu, mỗi tập dữ liệu gồm n phần tử được chọn lựa ngẫu
nhiên từ D với sự thay thế (giống như bootstrap). Do đó B=(D1, D2, ….,DB) trông
giống như là một tập các tập huấn luyện được nhân bản.
Tập huấn một máy hoặc một mô hình đối với mỗi tập Db (b=1, 2, …,B) và lần
lượt thu thập các kết quả dự báo có được trên mỗi tập DB.
Kết quả tổng hợp cuối cùng được tính toán bằng cách trung bình
hóa(regression) hoặc thông qua số phiếu bầu nhiều nhất (classification).
Tóm tắt cuả giải thuật RandomForest cho phân lớp được diễn giải như sau:
• Lấy ra K mẫu bootstrap từ tập huấn luyện.
• Đối với mỗi mẫu bootstrap xây dựng một cây phân lớp không được tỉa
(unpruned tree) theo hướng dẫn sau: Tại mỗi nút thay vì chọn một phân chia tốt
nhất trong tất cả các biến dự đoán, ta chọn ngẫu nhiên một mẫu m của các biến
dự đoán sau đó chọn một phân chia tốt nhất trong các biến này.
• Đưa ra các dự đoán bằng cách tổng hợp các dự đoán của K cây.
Quá trình học của Random Forest bao gồm việc sử dụng ngẫu nhiên giá trị đầu
vào, hoặc kết hợp các giá trị đó tại mỗi node trong quá trình dựng từng cây quyết định.
Kết quả của Random Forest qua thực nghiệm cho thấy là tốt hơn khi so sánh với
thuật toán Adaboost. Trong đó Random Forest có một số thuộc tính mạnh như:
(1) Độ chính xác của nó tương tự Adaboost, trong một số trường hợp còn tốt hơn.

(2) Thuật toán giải quyết tốt các bài toán có nhiều dữ liệu nhiễu.
(3) Thuật toán chạy nhanh hơn so với bagging hoặc boosting.

16


(4) Có những sự ước lượng nội tại như độ chính xác của mô hình phỏng đoán hoặc
độ mạnh và liên quan giữa các thuộc tính.
(5) Dễ dàng thực hiện song song.
(6) Tuy nhiên để đạt được các tính chất mạnh trên, thời gian thực thi của thuật toán
khá lâu và phải sử dụng nhiều tài nguyên của hệ thống.
Qua những tìm hiểu trên về giải thuật RF ta có nhận xét rằng RF là một phương
pháp phân lớp tốt do: (1) Trong RF các sai số (variance) được giảm thiểu do kết quả
của RF được tổng hợp thông qua nhiều người học (learner), (2) Việc chọn ngẫu nhiên
tại mỗi bước trong RF sẽ làm giảm mối tương quan (correlation) giữa các người học
trong việc tổng hợp các kết quả. Ngoài ra, chúng ta cũng thấy rằng lỗi chung của một
rừng các cây phân lớp phụ thuộc vào lỗi riêng của từng cây trong rừng cũng như mỗi
tương quan giữa các cây.
Một số đặc điểm của Random Forest
-

-

OOB: Khi tập mẫu được rút ra từ một tập huấn luyện của một cây với sự thay
thế (bagging), thì theo ước tính có khoảng 1/3 các phần từ không có nằm trong
mẫu này [7]. Điều này có nghĩa là chỉ có khoảng 2/3 các phần tử trong tập huấn
luyện tham gia vào trong các tính toán của chúng ta, và 1/3 các phần tử này
được gọi là dữ liệu out-of-bag. Dữ liệu out-of-bag được sử dụng để ước lượng
lỗi tạo ra từ việc kết hợp các kết quả từ các cây tổng hợp trong random forest
cũng như dùng để ước tính độ quan trọng thuộc tính (variable important).

Thuộc tính quan trọng: Việc thực hiện các tính toán để xác định thuộc tính quan
trọng trong RF cũng gần như tương tự việc sử dụng OOB để tính toán lỗi trong
RF. Cách thực hiện như sau: Giả sử chúng ta cần xác định “thuộc tính quan
trọng” của thuộc tính thứ thứ m. Đầu tiên tính ROOB, sau đó hoán vị ngẫu
nhiên các giá trị của thuộc tính m trong dữ liệu OOB, lần lượt “gửi” các giá trị
này xuống cây và “đếm” số các dự đoán đúng ta gọi việc tính toán này đối với
thuộc tính là Rperm. Độ quan trọng thuộc tính được tính như sau: Trong rường
hợp giá trị của thuộc tính quan trọng trên mỗi cây là độc lập thì chúng ta có thể
tính được lỗi chuẫn (standard error) của ROOB – Rperm

Phƣơng pháp Naïve Bayes
Ý tưởng :
Ý tưởng cơ bản của phương pháp xác suất Bayes là dựa vào xác suất có điều
kiện của từ hay đặc trưng xuất hiện trong mẫu với đặc trưng để dự đoán đặc trưng của
mẫu đang xét. Điểm quan trọng cơ bản của phương pháp này là các giả định độc lập:
- Các từ hay đặc trưng của mẫu xuất hiện là độc lập với nhau.
- Vị trí của các từ hay các đặc trưng là độc lập và có vai trò như nhau.
17


×