Phân tích hoạt động con người đã nhận được sự quan tâm
ngày càng nhiều của những người chăm sóc người cao tuổi, vận động
viên, bác sỹ, chuyên gia dinh dưỡng, các nhà vật lý trị liệu, và cả
những người muốn kiểm tra mức độ hoạt động hàng ngày.
Với tài liệu tham khảo của các nghiên cứu trước đây trong
lĩnh vực này, điện thoại thông minh với cảm biến gia tốc đã được sử
dụng để thu thập dữ liệu chuyển động của người dùng vì chúng nhỏ
gọn, ít vướng víu như các cảm biến đeo được, và đặc biệt người dùng
thường xuyên mang theo người. Các dữ liệu thu thập được từ gia tốc
tuyến tính cung cấp thông tin về gia tốc do chuyển động cơ thể của
con người và do trọng lực. Các tín hiệu được trích xuất như cường
độ, góc, độ lệch chuẩn của biến đổi FFT có thể được dùng để huấn
luyện mô hình học máy.
Mục tiêu của luận văn thực hiện xây dựng phương pháp để
có thể xác định các hoạt động hàng ngày của con người ngồi, nằm,
đứng, đi bộ hoặc leo cầu thang trên thiết bị điện thoại thông minh; sử
dụng bộ dữ liệu cảm biến được cung cấp sẵn. Với một cây phán
quyết được xây dựng, tỷ lệ chính xác khoảng 86% và lỗi phân loại là
khoảng 14%.
Hướng nghiên cứu tiếp theo có thể được phát triển từ các kết
quả đã đạt trong luận văn vào bài toán xây dựng ứng dụng giám sát
nhiều hơn cho hoạt động thể chất của con người mà người dùng có
thể cung cấp thông tin phản hồi về tiền sử thể chất của người dùng,
có thể tương tác với các thiết bị đeo được để tăng cường tính chính
xác cho các hoạt động phân tích của ứng dụng.
21 trang |
Chia sẻ: yenxoi77 | Lượt xem: 660 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Tóm tắt Luận văn Nhận dạng hành vi người dùng từ dữ liệu của cảm biến của điện thông minh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
---------------------
ĐỖ VĂN THÌN
NHẬN DẠNG HÀNH VI NGƯỜI DÙNG TỪ DỮ LIỆU CỦA
CẢM BIẾN CỦA ĐIỆN THOẠI THÔNG MINH
Ngành : Hệ thống thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60.48.01.04
TÓM TẮT LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
Hà Nội – 2016
2
GIỚI THIỆU
1. Tính cấp thiết của đề tài
Nhận dạng hành vi con người sử dụng các cảm biến cá nhân
đã trở thành một lĩnh vực nghiên cứu quan trọng nhằm tạo ra hay cải
thiện các ứng dụng giám sát hoạt động con người. Khả năng ghi lại
và nhận dạng các hoạt động cá nhân hàng ngày là điều cần thiết để
xác định mức độ thực hiện hoạt động của con người.
Những hệ thống này có những ứng dụng thực tế trong việc
chăm sóc sức khỏe và theo dõi luyện tập sức khỏe. Hoạt động thể
chất có tác dụng tích cực lên tất cả các chức năng của cơ thể và các
nghiên cứu đã chứng minh rằng nguy cơ tim mạch giảm tới 50% đối
với người có hoạt động thể chất tích cực.Với sự già hóa dân số và
kinh phí hạn chế cho việc chăm sóc sức khỏe cộng đồng, sự quan
tâm nhiều hơn được trả để giám sát hoạt động con người, nâng cao
khả năng hỗ trợ các bệnh nhân và giúp họ tự chăm sóc bản thân,
giảm sự chăm sóc y tế thông thường và chuyển qua chăm sóc từ xa.
Trong lĩnh vực y tế, việc theo dõi hoạt động người dùng
trong thời gian dài có thể hữu ích trong việc phát hiện sớm các bệnh
hoặc có thể khuyến khích người dùng cải thiện mức độ hoạt động
của họ.
Một trong những phương pháp được sử dụng để giám sát
hoạt động của con người là dựa trên các hệ thống video ghi chuyển
động được liên kết với nền cảm nhận áp lực ở dưới. Những phương
pháp này gây khó chịu, đòi hỏi thiết bị lớn và chỉ có thể được sử
dụng bên trong phòng thí nghiệm đòi hỏi các thiết lập cao, thời gian
xử lý cũng như không gian bộ nhớ để ghi lại nó.
Phân tích hành vi sử dụng các cảm biến của điện thoại thông
minh đã trở thành một lựa chọn thú vị cho hệ thống này vì kích thước
nhỏ, chi phí thấp và khả năng ghi lại các tín hiệu chuyển động một
cách kín đáo. Hơn nữa ngày nay hầu hết các điện thoại thông minh
đều được tích hợp các cảm biến phù hợp cho việc phân tích hành vi
3
người dùng. Cảm biến gia tốc và con quay hồi chuyển được sử dụng
để nghiên cứu các hoạt động hàng ngày của con người.
Phân loại thông tin chuyển động, thu thập được từ dữ liệu từ
các cảm biến trong điện thoại thông minh, các nhãn hoạt động
thường được thực hiện với kỹ thuật học máy đòi hỏi phải khai thác
các thông số dữ liệu chuyển động để huấn luyện phân lớp để dự đoán
dữ liệu hoạt động mới với mô hình huấn luyện.
2. Mục tiêu và nhiệm vụ của đề tài
Nghiên cứu phương pháp giám sát hành vi người sử dụng
điện thoại thông minh sử dụng các cảm biến trên điện thoại thông
minh. Trong luận văn này sẽ tập trung vào các hoạt động hàng ngày
như: đứng (standing), ngồi (sitting), nằm (laying), đi bộ (walking), đi
lên cầu thang (walking upstairs), đi xuống cầu thang (walking down
stairs). Sự chuyển động của người dùng được ghi lại bằng cảm biến
gia tốc của điện thoại thắt lưng được đặt ở thắt lưng người dùng khi
họ thực hiện các hoạt động.
Nghiên cứu các thuật toán giúp phân lớp gán nhãn các hoạt
động người dùng dựa vào dữ liệu cảm biến trên điện thoại thông
minh
Xây dựng sản phẩm phân tích hành vi người sử dụng trên
điện thoại thông minh, đánh giá chất lượng mô hình xây dựng được.
4
CHƯƠNG 1: TỔNG QUAN
1.1. Tổng quan về giám sát hoạt động
Theo dõi chính xác các hoạt động của con người có khả năng
cải thiện hệ thống chăm sóc sức khỏe, cảnh báo sớm các nguy cơ,
giám sát tập thể dục và hỗ trợ trong sinh hoạt hàng ngày. Những hệ
thống nhận thức hoạt động này có thể cung cấp cho người dùng một
loạt các dịch vụ tiện ích ví dụ như: bằng cách phân tích các hoạt
động của con người trong một khoảng thời gian có thể xác định được
xu hướng của các thói quen hàng ngày từ đó điều chỉnh để có một
chế độ tốt nhất cho cơ thể; đặc biệt với người cao tuổi, nó giúp cảnh
báo các nguy cơ về sức khỏe.
Khái niệm hoạt động đã được xem xét trong tương tác
người–máy (HCI) để thiết kế tốt hơn các mô hình điện toán phân tán
dựa trên hành vi người dùng (Bao & Intille, 2004). Các mục tiêu của
điện toán phân tán là có mặt khắp mọi nơi và kín đáo, hoặc dần là
nền tảng hỗ trợ con người trong khi học thực hiện các hoạt động
hàng ngày. Dự đoán các hoạt động là mục tiêu của các hệ thống điện
toán rộng khắp, tuy nhiên việc sử dụng các hành động cô lập để phân
tích các tình huống thực tế bên ngoài không thành công, bởi vì hành
động luôn nằm trong một bối cảnh, và hệ thống không thể hiểu được
bối cảnh đó. Sự phát triển của các hệ thống nhận biết ngữ cảnh là
quan trọng để nhận ra một hoạt động chính là bối cảnh có ý nghĩa tối
thiểu để hiểu được hoạt động cá nhân. Phát hiện các tư thế không đủ
để phân biệt được một số các hoạt động, chỉ khi có được bối cảnh,
các hoạt động có thể được phân biệt một cách chính xác.
Quá trình giám sát hành vi người dùng bắt đầu bằng việc thu
thập các dữ liệu thô, đặc biệt là dữ liệu chuyển động. Cảm biến quán
tính là một giải pháp thích hợp để phát hiện chuyển động. Những
cảm biến phản ứng với các kích thích bằng cách tạo ra các tín hiệu có
thể phân tích và diễn tả. Thông thường, các cảm biến được đặt bên
cạnh cơ thể và nên đem lại sự thoải mái cho người sử dụng.
5
Các thế hệ mới của điện thoại thông minh được trang bị với
một loạt các cảm biến bên trong: cảm biến gia tốc, cảm biến con
quay hồi chuyển, cảm biến nhịp tim, cảm biến tiệm cận, cảm biến độ
ẩm. Một số cảm biến có thể được sử dụng để giám sát hoạt động
hàng ngày của con người: cảm biến gia tốc, con quay hồi chuyển.
Các thiết bị này rất tiện lợi, nhỏ và kín đáo, nó trở thành ý tưởng cho
hệ thống nhận dạng hành vi người dùng. Tính năng hấp dẫn khác là
có thể đeo được, làm việc với thời gian thực và được sử dụng để theo
dõi lâu dài. Những thiết bị này có thể ghi nhận, xử lý và có
đượcthông tin hữu ích từ dữ liệu thô của cảm biến, nhưng khó khăn
chính của việc tạo ra các ứng dụng nhận biết bối cảnh là việc phát
triển các tuận toán có thể nhận diện bối cảnh từ dữ liệu cảm biến có
nhiễu và không rõ ràng.
Phát triển một ứng dụng trên điện thoại thông minh cần phải
tính đến những nguồn lực hạn chế của điện thoại thông minh như:
thời gian xử lý, bộ nhớ hạn chế và tỷ lệ mẫu. Cảm biến gia tốc là một
cảm biến lý tưởng vì chúng đòi hỏi sức mạnh xử lý thấp và tiêu thụ ít
năng lượng.
1.2. Cảm biến
Cảm biến có thể thu thập dữ liệu có thể được sử dụng để
phát hiện các hành vi của con người. Có 3 vấn đề chính liên quan
đến cảm biến: loại, vị trí và số lượng. Phần lớn các hệ thống nhận
biết cử động sử dụng cảm biến quán tính, đặc biệt là cảm biến gia tốc
để ước tính độ nghiêng của cơ thể và xác định phương hướng,
chuyển động của người sử dụng. Cảm biến gia tốc sử dụng đầu dò để
đo gia tốc tuyến tính.
Tín hiệu thu được với cảm biến gia tốc có 2 thành phần,
“một là gia tốc trọng trường cung cấp thông tin về tư thế của chủ thể,
và một thành phần tăng tốc của cơ thể cung cấp thông tin về sự
chuyển động của chủ thể”. Một cảm biến gia tốc 3 chiều đo gia tốc
6
theo trục x, y, z so với màn hình của điện thoại được mô tả như hình
dưới. Gia tốc được đo bằng đơn vị m/s2.
Các nghiên cứu trước chứng minh rằng các hình thức vận
động như đi bộ, chạy bộ, leo cầu thang và các tư thế như ngồi, nằm
đứng có thể được ghi nhận với độ chính xác từ 83 – 95% sử dụng
cảm biến gia tốc trên hông, đùi và mắt cá chân. Tuy nhiên các nghiên
cứu của Ling Bao và Intille cho thấy rằng đùi và cổ tay là vị trí thích
hợp để đặt cảm biến gia tốc để phát hiện ADL. Dữ liệu cảm biến thu
được từ cổ tay thuận là tốt hơn cho hoạt động phân biệt hành vi liên
quan đến chuyển động cơ thể và dữ liệu từ gia tốc ở đùi là hữu ích
cho việc nhận dạng hành vi được thực hiện với chi dưới. Hệ thống
nhận dạng hành vi nên sử dụng dữ liệu với các dữ liệu ở vị trí khác
nhau, cho phép người dùng mang theo thiết bị ở vị trí thuận tiện cho
một bối cảnh nhất định. Khi cảm biến đang ở một vị trí duy nhất, nó
rất hữu ích để áp dụng một hệ thống thông tin đa chiều để ghi lại các
tín hiệu theo ngữ cảnh của môi trường [5].
Liên quan đến số lượng cảm biến để có thể nhận diện chính
xác. (Ling Bao & Intille, 2004) cho thấy rằng việc sử dụng 2 cảm
biến chỉ ảnh hưởng khoảng 5% độ chính xác so với một hệ thống
dùng 5 cảm biến. So sánh cảm biến gia tốc 2 trục và 3 trục làm tăng
chi phí mà sự phong phú của dữ liệu là không đáng kể. Số lượng tối
đa của cảm biến được ghi nhận là 6 cảm biến gia tốc đơn trục [4].
Một vấn đề quan trọng khác về cảm biến là một số hoạt động
như leo cầu thang thường không thể phân biệt chỉ với cảm biến gia
tốc, mà đòi hỏi phải bổ sung (ví dụ như microphone và áp kế)
(Wilde, 2010).
Các hoạt động phổ biến của con người như đi bộ, đứng, nằm,
đi lên và xuống cầu thang là những hành vi sẽ được nghiên cứu trong
luận văn này.
7
1.4. Điện thoại thông minh
Thế hệ mới của điện thoại thông minh đang được xem xét
bởi nhiều người dùng như là một thiết bị cá nhân quan trọng. Các
thiết bị này có tiềm năng cho sự tăng trưởng cân xứng với việc thu
thập dữ liệu hành vi cho việc xây dựng hệ thống dự đoán hành vi con
người. Nhận thức về lợi ích của chúng đang trở lên phổ biến, và
người dùng đã quen với việc có mặt khắp mọi nơi của chúng.
Điện thoại thông minh được trang bị với hàng loạt các cảm
biến bên trong,trong đó cảm biến gia tốc, và cảm biến con quay hồi
chuyển có thể được sử dụng để giám sát hành vi hàng ngày của con
người. Các thiết bị này rất tiện lợi, nhỏ và kín đáo, nó trở thành nền
tảng lý tưởng cho một hệ thống nhận dạng hành vi phổ biến. Tính
năng hấp dẫn khác đó là nó có thể đeo được, luôn luôn bên cạnh
người dùng, làm việc thời gian thực và có thể được sử dụng để giám
sát lâu dài.
Sự phát triển của điện thoại thông minh cho việc dự đoán
hành vi con người có một số nhược điểm như: pin hạn chế, bộ nhớ
không cao và các phát triển mới trên lĩnh vực này cần giải quyết các
câu hỏi như: tác động của các ứng dụng lên pin của điện thoại, tỉ lệ
mẫu để đạt được kết quả chính xác, thời gian để tạo mô hình và
không gian bộ nhớ cần thiết cho nó.
Về quy trình thu thập dữ liệu, ta có thể chọn thu thập dữ liệu
với một điện thoại thông minh được đặt ở những vị trí xác định trước
hoặc ở 1 phần cơ thể và tạo ra một tập dữ liệu thích hợp, hoặc sử
dụng bộ dữ liệu công cộng với dữ liệu đã được chú thích. Các tùy
chọn trước đây đôi khi được ưa thích vì một tập dữ liệu có cùng kích
thước và được chú thích là cần thiết để đánh giá thuật toán phân lớp,
bởi vì một bộ dữ liệu có chú thích sẽ có thể kiểm tra được kết quả.
Để thu thập một bộ dữ liệu hoàn chỉnh có thể không khả thi, vì nó
phải thu thập một lượng lớn dữ liệu từ người sử dụng trong một thời
gian dài để tạo ra một thuật toán mạnh mẽ và chính xác cho việc
đoán định người dùng mới.
8
Một số nghiên cứu trước đây đã hướng dẫn cho việc ghi dữ
liệu sử dụng các đối tượng khác nhau, ưu tiên không phải người
nghiên cứu hoặc không có sự giám sát để có được dữ liệu tự nhiên.
Các đối tượng được yêu cầu thực hiện một loạt các hành động và chú
thích vào sau mỗi hoạt động hoặc để thực hiện ngẫu nhiên các trình
tự của hoạt động được xác định trước.
Một bộ dữ liệu công cộng đã được tạo ra bởi ESANN 2012
(Anguita, Ghio, Oneto, Parra, & Reyes-Ortiz, 2012, 2013) [6]. Các
thí nghiệm được tiến hành với một nhóm 30 tình nguyện viên trong
phạm vi độ tuổi từ 19 đến 48. Mỗi người thực hiện 6 hành vi và đeo
một chiếc điện thoại thông minh (Galaxy S II) vào thắt lưng, đặt theo
chiều dọc. Sử dụng cảm biến gia tốc, con quay hồi chuyển họ đã lấy
được dữ liệu gia tốc tuyến tính 3 trục và vận tốc góc 3 trục ở một tốc
độ không thay đổi 50Hz. Các thí nghiệm được ghi hình lại để gán
nhãn dữ liệu bằng tay.
9
CHƯƠNG 2: PHƯƠNG PHÁP, CÔNG CỤ HỖ TRỢ NHẬN
DẠNG HÀNH VI
2.1. Kỹ thuật phân lớp nhận dạng hành vi
Một khi dữ liệu đã sẵn sàng, một thuật toán phân loại cần
phải được thực hiện. Như đã đề cập trước đó, dự đoán hành vi của
con người thường được coi là một vấn đề phân loại, sử dụng kỹ thuật
học máy dựa trên lý thuyết về xác suất thống kê. Vào năm 1959,
Arthur Samuel định nghĩa học máy như là một lĩnh vực nghiên cứu
cung cấp cho máy tính khả năng học hỏi mà không cần được lập
trình một cách rõ ràng. Các cơ sở của học máy là chính xác như
Samuel đã mô tả, nó xây dựng một mô hình và phân loại, khả năng
học từ dữ liệu vô hình.Mô hình đại diện cho đại diện dữ liệu (thông
thường mỗi trường hợp đại diện cho một cửa sổ dữ liệu với kích
thước cố định) và đại diện chức năng trong bước huấn luyện và cuối
cùng là phân loại có thể khái quát hóa cho dữ liệu không nhìn thấy.
Học máy làm một ngành khoa học máy tính có liên quan đến vấn đề
mà mô hình cơ bản cho việc dự đoán hoặc mô tả phải được thực
hiện, dựa trên những thuộc tính đã biết để huấn luyện từ bộ dữ liệu
huấn luyện.
Thuật toán học máy có thể chia ra thành các loại:
- Học máy bán giám sát: kỹ thuật cho phép thuật toán có
thể thích nghi với dữ liệu mới. Một số thuật toán cho học
máy này như: mô hình Markov ẩn (HMM), mạng Naïve
Bayes, cây quyết định, K-Nearest Neighbours, Máy
vecter hỗ trợ (SMM)
- Học máy giám sát: sử dụng dữ liệu được gán nhãn để
huấn luyện thuật toán, sau đó chúng có thể phân lớp dữ
liệu chưa được gán nhãn.
- Học máy không giám sát: cố gắng xây dựng mô hình
trực tiếp từ dữ liệu không đượcgán nhãn. Cách tiếp cận
10
này sử dụng ước lượng mật độ để tìm các cụm mẫu
tương tự để tạo ra mô hình học máy.
- Học máy tăng cường: huấn luyện nhiều học máy để giải
quyết cùng một vấn đề. Khả năng tổng quát của chúng
có thể tốt hơn nhiều so với sử dụng một học máy.
Liên quan đến mục đích mà hệ thống nhận dạng hành vi
được thiết kế, điều quan trọng là thu thập càng nhiều dữ liệu của
từng hoạt động càng tốt, nhưng không chỉ số lượng là quan trọng,
tính chính xác của việc xử lý bản ghi cũng là điềucần thiết bởi vì các
thuật toán dựa rất nhiều vào số liệu. Chủng loại, vị trí và số lượng
cảm biến được sử dụng để thu thập dữ liệu cũng rất quan trọng và so
sánh các kết quả của các nghiên cứu chỉ khả thi nếu các điều kiện
tương tự nhau, không nhất thiết phải mô phỏng theo.
Các quá trình cần thiết để nhận dạng hành vi của con người
được tóm tắt trong hình 2.2 và về cơ bản nó bao gồm các bước: thu
thập dữ liệu chuyển động cho các hoạt động, tiền xử lý tín hiệu này
với các bộ lọc, lấy mẫu lại trong các cửa sổ được xác định trước để
phân tích và phân lớp dữ liệu. Trong trường hợp chúng ta sử dụng
thư viện weka để phân lớp thì cần một bước bổ sung là chuyển đổi
dữ liệu vào định dạng tệp ARFF. Sau khi lựa chọn thuộc tính, các số
liệu đánh giá cần được tính toán và đầu ra của mô hình phân lớp sẽ
cho chúng ta mỗi thể hiện của các dữ liệu hoạt động là gì.
Hình 2.2: mô hình nhận dạng hành vi từ dữ liệu cảm biến trên điện
thoại thông minh
11
2.3. Tiền xử lý
Các dữ liệu thô thường cần phải được xử lý trước để cung
cấp cho các bộ công cụ. Trong luận văn này tôi sử dụng Weka hoạt
động với tập tin định dạng ARFF để tiền xử lý dữ liệu, vì vậy tất cả
các file cần chuyển đổi thành ARFF.
Dữ liệu thô của cảm biến gia tốc cần được chia trong các cửa
sổ, tuần tự để chuẩn bị tiền xử lý. Một cách lựa chọn cửa sổ là dựa
vào việc nhận được dự định sẽ được thực hiện trong thời gian thực
hay không. Đối với các ứng dụng online, các cửa sổ được xác định
song song với tập dữ liệu, và đối với các ứng dụng offline các cửa sổ
cần xác định trước khi thu thập dữ liệu. Các phương pháp được sử
dụng phổ biến nhất là cửa sổ trượt, các tín hiệu được chia trong các
cửa sổ không có khoảng trống. tuy nhiên, kế hoạch này có nhược
điểm là các kích thước cửa sổ được thiết lập một cách tùy tiện, nó có
thể dẫn đến việc tách dữ liệu trong một nơi không thuận tiện, không
ghi được “toàn bộ chu kỳ” của hoạt động cần được ghi nhận. Kỹ
thuật này có thể được sử dụng với sự chồng chéo (thông thường là
50%). Trong nghiên cứu này sẽ sử dụng cửa sổ với kích thước 256
mẫu (tương ứng với 5,12 giây của dữ liệu) và chồng chéo 50%.
Dữ liệu thô cần chia thành tập huấn luyện và kiểm thử. Tập
huấn luyện sẽ được sử dụng để đào tạo các thuật toán nhận dạng và
tập kiểm thử sau đó sẽ được dùng để đánh giá các thuật toán sau khi
đào tạo. Điều là rất quan trọng để không sử dụng mẫu thử nghiệm để
huấn luyện mô hình để không thiên vị kết quả và đảm bảo phân loại
được đánh giá trong dữ liệu không nhìn thấy. bộ công cụ weka có
một số chiến lược chia nhỏ dữ liệu, chẳng hạn như cross-validation,
một phần của tập dữ liệu được sử dụng và phần còn lại cho thử
nghiệm và percentage split, thường sử dụng một phần 3 dữ liệu cho
việc kiểm thử, do đó tỉ lệ train/test là 66%.
12
2.5. Trích chọn tính năng
Đối với mỗi cửa sổ, một số tính năng được chiết suất để mô
tả các tín hiệu. Những tính năng này sau đó được sử dụng như là đầu
vào cho thuật toán nhận dạng, kết hợp mỗi cửa sổ với một hoạt động.
Miền thời gian, miền tần số và các tính năng miền chuỗi biểu tượng
có thể được chiết xuất từ dữ liệu chuyển động. Tuy nhiên, một sự kết
hợp của chúng là một kỳ vọng.
Time-domain features (tính năng miền thời gian) là
số liệu toán học và thống kê đơn giản sử dụng để trích
xuất thông tin tín hiệu cơ bản từ dữ liệu thô. Nó cũng có
thể được tính như dữ liệu đang được đọc. Thông thường,
tính năng này rất đơn giản để tính toán. Bảng 2.1 tóm tắt
một số tính năng trong miền thời gian.
Frequency-domain techniques (miền tần số) nắm bắt
được bản chất tương ứng của một tín hiệu cảm biến
(Figo et al., 2010). Trong tính năng miền tần số, các cửa
sổ dữ liệu cảm biến phải được chuyển thành miền tần số,
sử dụng các biến đổi Fourier (FFT), đó là một đại diện
phổ của tín hiệu. Một đại diện dựa trên tần số, dựa trên
sự phân hủy của một tập các vecor trực giao là biến đổi
Wavelet. Bảng 2.2 cho thấy một số tính năng miền tần
số.
Một tính năng khác được chuyển hóa từ miền chuỗi
biểu tượng (symbolic string-domain), nơi mà dữ liệu gia
tốc chuyển thành chuos các ký hiệu rời rạc, sử dụng một
bảng chữ cái biểu tượng để đại diện cho các tín hiệu.
Khi áp dụng các tính năng tính toán trên một điện thoại
thông minh, ta nên cẩn thận với độ phức tạp tính toán của chúng, bởi
vì các điện thoại thông minh có bộ nhớ hạn chế, khả năng xử lý và
tuổi thọ của pin. Do đó hầu như tất cả các tính năng trong miền thời
13
gian phù hợp hơn cho các thiết bị di động, đưa vào bảng điểu các
hoạt động tương quan có chi phí cao hơn. Với ngoại lệ của các số
liệu dựa trên biến đổi Wavelet, tất cả các tính năng khác miền tấn số
là tốn kém về chi phí tính toán.
2.6. Phân lớp dữ liệu
Sau khi lấy ra các tín hiệu tính năng, ta nên áp dụng kỹ thuật
học máy để xây dựng một bộ phân lớp. Có thể sử dụng Weka để thực
hiện các thuật toán nhận dạng. Weka phân lớp dựa vào các thuật
toán như k-NN, cây quyết định, Naïve Bayes, SVM
Trong thuật toán k-NN, lớp giao thức cho một vector x là các
lớp học với số lượng tối đa của phiếu đến từ các mẫu k gần x. Những
phân loại dựa trên trường hợp không đòi hỏi một mô hình phù hợp.
Để tìm các mẫu gần nhất, các thuật toán có thể sử dụng khoảng cách
Euclide. Các đa lớp của láng giềng k gần nhất tìm thấy được gán cho
một phiên bản thử nghiệm. Nó là một thuật toán nhanh chóng và độ
phức tạp phụ thuộc vào số lớp cần phân loại.
Cây quyết định sử dụng một cây cho mỗi thuộc tính, một
nhánh cho mỗi kết quả thử nghiệm được tạo ra. Các thuật toán dừng
khi nó tìm thấy một lá. Trong Weka có thể sử dụng cài đặt của thuật
toán cây quyết định là J48.
Đối với Naïve bayes, khi một đối tượng được phân loại sai
có thể được định lượng như là chi phí hoặc hao tổn.Sự kỳ vọng của
các chi phí có thể được sử dụng như một phân lớp tối ưu hóa. Tuân
toán này đại diện cho các phân bố xác suất của bộ dữ liệu huấn
luyện.
SVM là phân lớp tuyến tính xác định một siêu phẳng phân
cách trong không gian dữ liệu và phân loại các điểm trong không
gian đó.
14
CHƯƠNG 3: CÀI ĐẶT VÀ THỰC NGHIỆM
Chương này mô tả các phương pháp sử dụng để đánh giá dữ
liệu cảm biến gia tốc, tìm kiếm mô hình hoạt động và huấn luyện
phân lớp để dự đoán cho dữ liệu mới với các hành vi tương ứng.
3.1. Bộ dữ liệu nhận dạng hành vi
Giả thuyết của luận văn này là kiểm tra khả năng thực hiện
một thuật toán phân loại trên điện thoại thông minh để nhận dạng
hành vi con người, có tính đến sự đánh giá pin và hạn chế bộ nhớ.
Với mục đích này, chúng cần nghiên cứu các kỹ thuật cần thiết cho
bộ tiền xử lý và phân loại dữ liệu gia tốc, sử dụng một bộ dữ liệu
cạnh tranh.
Trong luận văn này, bộ dữ liệu về nhận dạng hành vi được
cung cấp sẵn [6] với đặc tính của dữ liệu:
Các thí nghiệm được tiến hành với một nhóm 30 tình nguyện
viên trong phạm vi độ tuổi từ 19 tuổi đến 48 tuổi. Mỗi người thực
hiện 6 hành vi và đeo một chiếc điện thoại thông minh (Galaxy S II)
vào thắt lưng, đặt theo chiều dọc. Sử dụng cảm biến gia tốc, con
quay hồi chuyển họ đã lấy được dữ liệu gia tốc tuyến tính 3 trục và
vận tốc góc 3 trục ở một tốc độ không thay đổi 50Hz. Các thí nghiệm
được ghi hình lại để gán nhãn dữ liệu bằng tay.
Bộ dữ liệu này cung cấp các tín hiệu gia tốc và con quay hồi
chuyển cho mỗi bộ dữ liệu (huấn luyện và kiểm thử) cũng như các
nhãn hành vi cho mỗi trường hợp.
“Các tín hiệu cảm biến (gia tốc và con quay hồi chuyển)
được tiền xử lý bằng cách áp dụng các bộ lọc nhiễu và sau đó lấy
mẫu với cửa sổ trượt 2,56 giây và 50% chồng chéo. Tín hiệu cảm
biến gia tốc, trong đó thành phần hấp dẫn và chuyển động cơ thể
được phân tách bằng bộ lọc thông thấp Butterworth. Lực hấp dẫn
được giả định là thành phần có tần số thấp, do đó một bộ lọc với tần
15
số cắt 0.3Hz được sử dụng. Với mỗi cửa sổ, một vector tính năng
được thu lại bởi cách tính toán từ biến thời gian và miền tần số.” [6]
Các tính năng này được chuẩn hóa và giới hạn trong khoảng
[-1, 1]. Việc chuẩn hóa được thực hiện theo hàm số:
𝑥𝑁𝑜𝑟𝑚 =
𝑥 − 𝑀𝑖𝑛
𝑀𝑎𝑥 − 𝑀𝑖𝑛
× 2 − 1
Trường xNorm là tính năng được chuẩn hóa, x là các tính
năng và Min và Max là các giá trị tối thiểu và tối đa tương ứng với
tính năng x.
Để một phân loại chính xác hơn, các bộ dữ liệu nên được cân
bằng và tất cả 6 lớp nên cùng có một số trường hợp. Sự phân lớp từ
các dữ liệu cạnh tranh được giới thiệu trong bảng 3.1.
Bảng 3.1: Số lượng các trường hợp cho mỗi lớp
Nhãn dữ liệu Tập huấn
luyện
Tập kiểm
thử
Walking
Walking down stairs
Walking up stairs
Sitting
Standing
Lying
1226
1073
986
1286
1374
1407
496
471
420
491
532
537
Total 7352 2947
3.2. Tiền xử lý dữ liệu
Liên quan đến kỹ thuật tiền xử lý, có 2 cách thức để lựa chọn
thuộc tính: Filters và Wrapper. Sau đó ta tạo ra các tập con có thể từ
các vector đặc trưng và phân loại để sử dụng trên mỗi tập con, mục
tiêu là tạo ra tập con mà phân lớp thực hiện là tốt nhất. Để tìm tập
16
con, người ta sử dụng phương thức tìm kiếm như: phương pháp
linear forward hoặc phương pháp best first. Các bộ lọc sử dụng thẩm
định thuộc tính (attribute evaluator) và một hàng để xếp hạng các
tính năng. Với phương pháp này, mỗi tính năng trong đó có cấp bậc
thấp hơn được loại bỏ một thời gian để xem độ chính xác của việc
phân loại.
Với luận văn này, tôi sử dụng weka để thực hiện tiền xử lý
dữ liệu. Trong Weka chúng ta có thể sử dụng phương pháp đánh giá
CfsSubSetEval và phương thức tìm kiếm là Best First. Từ dữ liệu với
562 thuộc tính (561 thuộc tính và 1 thuộc tính lớp phân loại), thực
hiện trích chọn thuộc tính để có được một vector 37 tính năng cho
huấn luyện mô hình phân lớp.
Bảng 3.4: Trích chọn tính năng từ tập dữ liệu ban đầu
Attribute
attribute
evaluator
Search method Select Att
561 (DT0) CfsSubSetEval BestFirst 49 (DT1)
561 (DT0) CfsSubSetEval LinearForwardSel 37(DT2)
37(DT2) CfsSubSetEval LinearForwardSel 32(DT3)
3.3. Xây dựng thực nghiệm ứng dụng nhận dạng hành vi
Do phạm vi nghiên cứu đề tài luận văn trong thời gian ngắn,
nên tôi xây dựng chương trình mang tính chất demo về những gì tôi
đã nghiên cứu được. Ứng dụng được xây dựng trên nền tảng
Android, sử dụng bộ dữ liệu đã được tiền xử lý với công cụ Weka.
Ứng dụng sử dụng thư viện Weka cho việc xử lý tiền dữ liệu
và thư viện Weka mobile cho việc kiểm thử dữ liệu trên mobile.
Luận văn cũng xin cung cấp một số thông tin về Weka như sau:
Weka là một phần mềm nguồn mở về khai phá dữ liệu
được phát triển bởi đại học University of Waikato nước New
17
Zealand. “Weka” là từ viết tắt cho cụm từ Waikato Environment for
Knowledge Analysis. Weka có thể được sử dụng ở nhiều cấp độ khác
nhau. Cấp độ đơn giản của nó là ta có thể áp dụng các thuật toán của
Weka để xử lý dữ liệu từ dòng lệnh. Nó bao gồm nhiều các công cụ
dùng cho việc biến đổi dữ liệu, như các thuật toán dùng để rời rạc
hóa dữ liệu.
Weka cung cấp tất cả các chức năng cơ bản của khai phá
dữ liệu bao gồm các thuật toán về phân lớp (classifier), các thuật
toán về tiền xử lý dữ liệu (filter), các thuật toán về phân cụm
(cluster), các thuật toán về kết tập luật (association rule)
Phương pháp phân lớp
Trong chương trước luận văn đã trình bày về một số thuật
toán phân lớp. Với thử nghiệm, luận văn này sử dụng cây quyết định
và thuật toán SVM để xây dựng mô hình học máy.
Môi trường phát triển:
- Hệ điều hành Windows 10 x64
- Android Studio version 2.2.2
- Android SDK
- Công cụ Weka trên Windows và thư viện Weka cho
android
Chức năng ứng dụng
Với bộ dữ liệu đã được tiền xử lý, hệ thống thực hiện 2
nhiệm vụ: xây dựng mô hình học máy trên điện thoại thông minh để
đoán định dữ liệu sau đó kiểm thử với bộ dữ liệu test, hoặc sử dụng
mô hình đã được xây dựng bằng công cụ Weka và thực hiện kiểm
thử bộ dữ liệu test với mô hình đó trên điện thoại thông minh, đánh
giá mô hình học máy.
18
Hình 3.3: Chương trình ứng dụng demo
3.4. Kết quả thực nghiệm
Trong luận văn tôi đã tiến hành một số thí nghiệm trên tập
dữ liệu HAR để dự đoán kết quả của người dùng trong tương lai. Xét
3 bộ dữ liệu thu được với trích chọn thuộc tính từ Weka, thuật toán
J48 được sử dụng như là một phân lớp cơ bản bởi vì sự quan tâm
trong giai đoạn này là phát hiện tập dữ liệu tối giản tốt nhất. Dựa trên
chỉ số hiệu suất phân lớp được trình bày trong bảng 3.6, DT2 được
chọn là bộ dữ liệu tối giản tốt hơn, vì vậy nó là chỉ số hiệu suất tốt
nhất.
19
Bảng 3.6: Phân lớp J48 với các tập dữ liệu
TP FP Precision Recall
F-
Measure
DT1 0.84 0.032 0.842 0.84 0.84
DT2 0.861 0.028 0.864 0.861 0.861
DT3 0.861 0.028 0.862 0.861 0.86
Dựa vào bảng 3.7 và tập dữ liệu DT2, thuật toán IB1 (thể
hiện của thuật toán k-NN) và SMO (thuật toán SVM) cho hiệu năng
tốt hơn so với J48 về giá trị FP và F-Mesure. Tuy nhiên, J48 là phù
hợp hơn cho điện thoại thông minh, bởi vì J48 cần ít thời gian hơn để
dự đoán dữ liệu.
Bảng 3.7: Thử nghiệm với tập dữ liệu DT2
Xét tập DT2 và mô hình phân lớp J48, bảng 3.8 và hình 3.4
cho thấy số liệu hiệu suất phân lớp cho tập dữ liệu và mô hình phân
lớp được chọn. Độ chính xác thu được là 87.38 % và lỗi là 12.62%
cho tập dữ liệu kiểm thử với 2947 dữ liệu kiểm thử và tập dữ liệu
7532 dữ liệu cho mô hình huấn luyện. Kết quả được đánh giá như
bảng dưới ta thấy dữ liệu theo đường chéo có giá trị cao thể hiện cho
phần lớn phân lớp đúng. Với nhãn Laying dữ liệu phân lớp đúng là
100%.
J48
IB1 (k-
NN)
SMO (SVM)
Num FP 395.20 412.20 407.80
F-Measure 0.859 0.90 0.91
Training time 18,5 s 0,238 s 9,2 s
Predict time 0,241 s 90.37 s 0,356 s
20
Bảng 3.8: Kết quả thực nghiệm với thuật toán J48
Theo tỉ lệ % Theo số mẫu
Số trường hợp sai 12.62300645 372
Số trường hợp
đúng 87.37699355 2575
Tổng số mẫu 2947
Hình 3.4: Kết quả phân lớp dữ liệu với thuật toán J48
Trong các kết quả về phân tích hành vi của hội nghị ESANN
2013, kết quả tốt nhất là 96% [6]. Độ chính xác của luận văn này là
87.4% với thuật toán cây quyết định – J48, thấp hơn gần 10% so với
kết quả tốt nhất. Tuy nhiên, không có thông tin về quy trình xử lý và
đánh giá kết quả, do vậy việc so sánh kết quả của các nghiên cứu là
một sự khó khăn.
21
KẾT LUẬN
Phân tích hoạt động con người đã nhận được sự quan tâm
ngày càng nhiều của những người chăm sóc người cao tuổi, vận động
viên, bác sỹ, chuyên gia dinh dưỡng, các nhà vật lý trị liệu, và cả
những người muốn kiểm tra mức độ hoạt động hàng ngày.
Với tài liệu tham khảo của các nghiên cứu trước đây trong
lĩnh vực này, điện thoại thông minh với cảm biến gia tốc đã được sử
dụng để thu thập dữ liệu chuyển động của người dùng vì chúng nhỏ
gọn, ít vướng víu như các cảm biến đeo được, và đặc biệt người dùng
thường xuyên mang theo người. Các dữ liệu thu thập được từ gia tốc
tuyến tính cung cấp thông tin về gia tốc do chuyển động cơ thể của
con người và do trọng lực. Các tín hiệu được trích xuất như cường
độ, góc, độ lệch chuẩn của biến đổi FFT có thể được dùng để huấn
luyện mô hình học máy.
Mục tiêu của luận văn thực hiện xây dựng phương pháp để
có thể xác định các hoạt động hàng ngày của con người ngồi, nằm,
đứng, đi bộ hoặc leo cầu thang trên thiết bị điện thoại thông minh; sử
dụng bộ dữ liệu cảm biến được cung cấp sẵn. Với một cây phán
quyết được xây dựng, tỷ lệ chính xác khoảng 86% và lỗi phân loại là
khoảng 14%.
Hướng nghiên cứu tiếp theo có thể được phát triển từ các kết
quả đã đạt trong luận văn vào bài toán xây dựng ứng dụng giám sát
nhiều hơn cho hoạt động thể chất của con người mà người dùng có
thể cung cấp thông tin phản hồi về tiền sử thể chất của người dùng,
có thể tương tác với các thiết bị đeo được để tăng cường tính chính
xác cho các hoạt động phân tích của ứng dụng.
Các file đính kèm theo tài liệu này:
- tom_tat_luan_van_nhan_dang_hanh_vi_nguoi_dung_tu_du_lieu_cua.pdf