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

Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động

73 3 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
Người hướng dẫn PGS. TS. Nguyen Ha Nam
Trường học Hà Nội - Trường Đại Học Công Nghiệp
Chuyên ngành Công nghệ (Thông tin)
Thể loại Luận văn Thạc sĩ Công nghệ Thông tin
Năm xuất bản 2013
Thành phố Hà Nội
Định dạng
Số trang 73
Dung lượng 1,73 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu chung Như phần 2.1 đã trình bày, vì đặc điểm của dữ liệu là dạng chuỗi đài theo thời gian và có rất nhiều ứng dụng khác nhau được đưa vào sử dụng nên khi chúng tôi thử nghiệm

Trang 1

ĐẠI HỌC QUỐC GIÁ HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NHỆ

ĐÀO THẺ MÃN

UNG DUNG PHAN TICH MAU CHUOI TUAN TU

VÀO VIỆC PHÁT HIỆN THÓI QUEN SỬ DỤNG

CAC UNG DUNG TREN THIET BI DI DONG

Ngành: Công nghệ (thông tin

Chuyên ngành: Hệ thống thông tin

Mã số: 60 48 05

LUẬN VĂN THẠC SỸ CÔNG NGHE THONG TIN

NGUOI HUONG DAN KHOA HOC: PGS TS NGUYEN HA NAM

HÀ NỘI - 2013

Trang 2

MUC LUC

DANH MUC CAC HINH V! -

DANH MỤC CAC KITIMU VA cit VI

DANII MUC CAC BANG

Chương 1 - GIỚI THIỆU

2.1 Đặc điểm của dữ liệu

2.2 Khai phá đữ liệu mẫu chuỗi tuần tự

2.2.2 Bài toán Khai phá mẫu chuỗi tuần tự 15 2.2.3 Một số thuật toán khai phá mẫu tuần tự 18

3.1 Mô hình đề xuất tổng thê

3.2 Các phương án tách chuỗi

3.3 Tách Ttemsct trong chuối

3.4 Tỉnh thời gian cho phương án tách chuỗi 25

Chương 4 - THỰU NGHIÊM 30

4.1 Bộ đữ liệu thứ nhất

Phu luc B — MỘT SỐ KẾT QUÁ THỰU NGHIÊM CỤ THỂ “4

BI Kết quả thực nghiệm bộ đữ liệu thứ I

12 Kết qua thực nghiệm Bộ dữ liệu thứ 2

Trang 3

DANH MỤC CÁC TÌNH VẼ

Hình 2.1 IDữ liệu thu được từ TBI2Đ sử dụng Hệ diều hành Android 12

Hình 2.2 IDữ liêu ứng dụng gốc được lấy ra từ Hinh 2.1 13 Ilinh 2.3 Giải thuật DFS với Kỹ thuật cắt tỉa

Hinh 3.2 Mé hinh dé xuất tông thể khai phá thói quen sử dụng phần mềm trên

Hình 3.3 Phân tách đữ liệu theo các buổi trong ngày 22

Hình 3.4 Phần tách đữ liệu theo n ngày HH

Tình 3.5 Phân tách đữ liệu theo khoảng thời gian sử dụng “

Hình 3.6 Phân lách đữ liệu thco thời gian trong củng một Iuemset 24

Hình 4.1 Giao điện của chương trình khan “

Ilinh 4.2 Đồ thị so sánh giữa 2 giải pháp phân tách bộ dữ liệu 1 với rminSup

— {45% - 65%} 33

Hinh 4.3 Da thi so sanh gitta 2 gidi ¡ pháp phân tách bộ dữ liệu 1 với minSup

Hình 4.4 Dé thị so sánh giữa 2 giải ải pháp phân tách bộ đữ liệu 2

Hình 4.5 Dé thị so sánh giữa 2 giải pháp phân tách bộ đữ liệu 2

Trang 4

DANITMỤC CÁC KÍ IIỆU VÀ CHỮ VIẾT TÁT

Trang 5

DANII MUC CAC BANG

Bang 2.3 Danh mục thỏa mãn điều kiện minsup = 40%

Bảng 3.1 Khoảng cách thời gian giữa các sự kiện

Bang 3.2 chuỗi con chứa <ac> và khoảng thời gian phân tách

Bảng 3.3 chuỗi con chứa <dÍ> và khoăng thời gian phân tách

Bảng 4.1 Một số

Bang 4.2 Kết quả thử nghiệm trên bộ dữ liệu 1 phân tách theo hành vi

Bảng 4.3 Kết quả thử nghiệm trên bộ dữ liệu I phân tách theo ngày

Tăng 4.3 Kết quả thử nghiệm trên bộ dữ liệu 2 phân tách theo hành vi

Bảng 4.4 Kết quá thứ nghiệm trên bộ dữ liệu 2 phân tách tho ngày

âu trong Hình Ð.! và ý nghĩa phân tach

Trang 6

MO DAU

Thién nay, xu hướng công nghệ phục vụ người tiêu dùng trên thế giới đang

chuyển sang công nghệ di động thể hiện qua việc rải nhiều hãng tên luỗi trên thể

giới đã và đang chuyển sang nghiên cứu, sản xuất đưa ra thị các thiết bị di động

(IBDB) théng minh nhu Sony, Philips, Panasonic, HP, Microsoft, Lenovo,

L@, Mỗi một TBDD bây giờ đã được tích hợp rất nhiễu tính năng như: điện

Thoại, máy ảnh, máy quay phim, thiét bi multi media, máy tính, điều khiến từ xa,

để phục vụ ngày càng nhiều nhu cầu của người dùng như liên lạc, giải trí, khai thác thông tin, xử lý công việc, kinh doanh trực tuyến, điều khiển các thiết bị từ

xa, của khách hàng,

Nhù cầu sử dụng các TBIDĐ thông mình dang là một xu hướng không biên

piới giữa các quốc gia, giữa các tầng lớp dân chúng Chính vì vậy, các hãng sản

xuất đã liên tục tung ra các dàng sắn phẩm mới nhằm chiếm lĩnh thị trường cũng,

như cạnh tranh với các đối thủ Từ đó, nhu cầu nghiên cứu về những hành vi,

thói quen, xu hướng sử đựng của người dùng trên các TBDĐ đang được đặt ra

một cách cấp thiết cho tắt cả các hãng sản xuất

Nghiên cứu hành vi, thỏi quen, mạng xã hội của những người dùng trồn

TBDP dang là một trong những dỀ lái nóng bỏng trên thể giới hiện nay, nú phục

vụ cho nhiều ngành khác nhau như tâm lý, xã hội, chiến lược kinh doanh của các

hãng sản xuất, Do đó, chúng tôi đã lựa chọn để tải nghiện cứu thói quen sử

dụng phần mễm trên các TBDD để làm để tải khóa luận tốt nghiệp này

Nghiên cứu hành vi, thói quen sử dụng các phần mềm trên TRDD sẽ là bước đầu tiên cho việc nghiên cứu các ngành khác trên 'TBI2I2 như tâm lý, mang

xã hội, vì mỗi phần mềm đó đều thuộc vào một trong các lớp ửng dụng trên

thiết bị (như lớp nhạc, lớp phim, lớp game, lớp tài chính, lớp liên lạc, .)

Nghiên cứu thói quen của người sử dụng, thông thường là việc nghiên cứu

để dưa ra dược những hành vi mang tỉnh ph „ những hảnh vi mang tỉnh quy

luật, những hành vi mang tính phổ biến tuần tự, trong một khoảng thời gian

và không gian nhất định Ứng với dễ tài này, thì việc nghiên cứu đễ dưa ra dược

những hành vi mang tính phổ biến tuần tự trong khoảng thời gian nhất định vì không gian ở đây chính là các TBDĐ

Tuy nhiên, để có thể giới hạn khoảng thời gian để đưa ra các hành ví mang

tính phổ biến đối theo trình tự với tập đữ liệu dạng chuỗi dài là một vấn để cần

3

Trang 7

quan tâm giải quyết trước khi đưa các giải thuật vào áp dung Đó cũng chính là mục tiêu nghiên cứu của Luận văn này

Phạm vi nghiên cứu: Nghiên cứu trên tập dữ liệu về các ứng dụng được

kích hoạt trên TBDĐ sử dụng hộ điều hành Android đã được chuẩn hóa, tức lá

tên các ứng dụng đều được quy về tên ứng dụng pốc ban đầu (nếu tên ứng dụng,

do người dùng thay đổi), thời gian bắt đầu chay ứng dụng, thời gian kết thúc thực thi ứng đụng được quy chuẩn định dạng giống nhau, để đưa ra được các

hanh vi mang tinh phổ biển cỏ trình tự theo thời gian

Trang 8

Chương 1 - GIỚI THIỆU

Ngày nay, diện thoại đi dông là thiết bị phổ biến và gần như là phương tiện

không thể thiếu được của con người Diện thoại giá thành rễ, đa dang lại được

tích hợp nhiều thiết bị như quay phim, chụp ảnh, nghe nhạc, Bluetooth, thiết bị

dinh vi, tinh chiéu, máy lính phục vụ dược rất nhiều như cầu của người

dùng như liên lạc, giải trí, kinh doanh (chứng khoán, vàng, và các kim loại quý

khác, dầu mo, .), diều khiển từ xa,

Thời gian gần dây, các hãng liên tục nghiên cứu, tung ra thị trường nhiều

'TBDD với mục tiêu là chiếm lĩnh thị trường càng nhiễu càng tốt Bên cạnh đó,

đã có rất công ty phần mêm cũng đang chuyển hướng sang nghiên cứu và phát triển các ứng dụng rên TBDD

Việc nắm bắt được các thói quen, hành vị của người dùng đang là một trong những vấn đề cấp thiết được đặt ra cho các doanh nghiệp sẵn xuất hoặc

kinh doanh các phần mềm lrên TBDĐ Nếu các kết quả nghiên cứu mang lính

khả quan thì từ đó người ta có thể đưa ra được các chiến lược kinh doanh hoặc các chiến lược phát triển các phần mềm tiềm năng như phần mềm tích hợp, các

phần mềm cần được nâng cấp, cải tiền,

Dữ liệu log file trên các 'TBDDĐ lưu trữ những hoạt động mả người dùng sử

dụng trong TBDD như dữ liệu về cuộc gọi, đữ liệu về tin nhắn, đữ liệu về các

ứng dụng, dữ liệu về vị tri, đữ liệu về thiết bị, mail, game, kinh đoanh, đỡ liệu

Bluetooth,

'Tù những đữ liệu trên, hiện đang có một số xu hướng nghiên cứu sau

Một số nghiên cứu tìm các hanh vi, thỏi quen dựa trên dữ liêu vị trí và dữ liệu Bluetooth Trong [1-1], các tác giả đựa vào thông tin vị trí của TDDĐ được

hành vi, thỏi quen Nhóm tác giả đã phân tich, xây dựng mô hình về các mỗi quan hệ xã hội và các

cung cấp bởi các nhà mạng đề nghiên cứu, phân loại

thói quen hàng ngày của các cá nhân bằng cách sử dụng đữ liệu điện di đông của

các cá nhân đó dựa trên việc phân loại dữ liệu II của điện thoại di động vào địa điểm khác nhau vả từ đó phân tích các thói quen hành vi của người sử dụng Các nghiên cứu này sử dụng đữ liệu thu được thêng qua Biuetoath để phân biệt giữa

các ngày trong tuần hoặc cuối Luẫn [lan ché cua các nghiên cứu trên là thông tin

của II) di dộng, chỉ có thể cung cấp các thông tin về vị trí Nó không thể biết về

Trang 9

các hoạt động ớ mức thấp.Ví dụ, đữ liệu ID đi động có thể cho biết người sứ dung lại nhà hoặc tại văn phòng / trường nhưng nó không thể cho biết các hoạt

đông bên trong như tham dự các bải giăng hoặc ngôi trong quản ăn tư phục vụ

Trả người dùng tham gia

Khắc phục những điểm này đã có một loạt các bài báo đã nghiên cứu hành

vi của các cá nhân thông quan sự kết hợp cả hai loại đữ liêu là đữ liệu từ các nhả

cung cấp địch vụ về TDDĐ và đữ liệu thu được từ các thiết bị Bluetooth duoc

gắn trên TDDĐ Đặc điểm của đữ liệu thu được từ thiết bị Bluetooth cho phép lưu lại các thông tin kết nối Irong phạm vi nhỏ và là một định danh cá nhân, một thiết bị cảm biến Việc áp dụng 2 loại dữ liệu nảy cũng được dùng để nghiên cứu

để tìm ra những hành vị bất thường của các cá nhân nhằm phục vụ việc theo dõi

người giả hoặc những người có đấu hiệu của bệnh mắt trí nhớ như các bài báo

[6, 7] Trong [6], tác giả đã trành bảy một quy trình cho việc phát hiện các hành

vi khác thường của con người bên trong một ngôi nhà thông mình Tác giả sử

đụng cảm biến chuyển động để phát hiện các hoạt dộng và các mẫu hành vị bất

thường của con người dựa trên chuỗi Markov Giới han của công việc này là họ chỉ xem xét các hoạt động xảy ra bên trong nhà Để phân tích hành vi và các hoạt động của con người, một số nhà nghiên cứu đã sử dụng các thiết bị khác

như, gia tốc, máy ảnh kỹ thuật số và micro Một số kỹ thuật đã được trình bày

ủa một cá nhân dơn lẻ Ví dụ,

cho phân tích hành xi của nhiều cá nhân thay vì

trong [8] tác giả để xuất một quy trình xác định các hành vi trong không gian

han ché Công việc này tập trung vào những chuyển động bên trong một tòa nhà Tương tự như phát hiện hành vi của nhiều cá nhân là gom nhóm các hành động

trong cuộc họp được trình bày trong [9] Tuy nhiên, đa số các nghiên cứu trên đã

tập trung vào môi trường trong nhà, vì nó được dựa trên các thiết bị cám biến trong đó lo vậy, có một vài hạn chế như phạm vị ngắn của thiết bị phát hiện

sóng, pin nguồn kém, khả năng lưu trữ không được nhiều, do đó là không khả thi dỗi với môi trường ngoài trời

Mạng Nơ ron [10, 11] được sử dụng để phát hiện vả dự đoán sự chuyển đông của người ding diva trên những ID điện thoại di động và xác suất của

người sử dụng tại cáo địa điểm khác nhau Trong [5] ngoai viée sir dung xác suất

của người dùng là khác nhau ở các dịa điểm khác nhau, hợ còn sử dụng đữ liệu theo thời gian thực về øã ID di động và dữ liệu Bluetooth Các tác giá xây dựng

lên quy trình để phân tích đữ liệu cho việc xác định hành vi Dễ đạt được mục

8

Trang 10

tiêu đó, thi nhóm táo giả đã xây dựng quy trình để thực hiện các công đoạn sau

tiên, họ gom cụm từng hoạt động của người cao tuổi với thời gian và sau đó, dựa

vào kỹ thuật luật kết hợp để tìm tất cả các tập hành động thường xuyên

Cao và các công sự [23] dễ xuất một cách tiếp cân hiệu quả cho khai thác

thói quen trên điện thoại đi đông Họ khai thác mỗi liên hệ giữa tương tác của

người dùng với bối cảnh sử dụng, đữ liệu từ Ble log của điện thoại di động được

sử dụng để khám phá ra thói quen người dùng Các tác gid đã đưa ra một thuật

toán hiệu quả dễ giải quyết bài toán nay Các tác giã đã sử dựng các độ hỗ trợ khác nhau, các đề tin cậy khác nhau để piái quyết thành công bài toán không cân

bằng dữ liệu giữa dữ liệu ngữ cảnh và dữ liệu tương tác của người dùng với

'TBDD mà các phương pháp tiếp cận truyền thống về tìm luật kết hợp không giải quyết được

Chúng tôi đã chon để tài tìm hiểu thói quen của nhiều người dủng sử dụng

các phần mềm trên điện thoại đi động trong hệ điều hành Android Trong đề tài

nay, chúng tôi chỉ tận trung Lim hiểu và phân tích thông tin về các phần mềm

dược sử dụng trên các TDP Qua việc tìm hiểu dữ liệu này, chúng tôi mong

muốn phát hiên ra các thói quen sử đụng các phần mềm, các loại phần mễm trên

hệ điều hành Android Từ đó ta có thể xây đụng các chiến lược để phát triển các phần mềm liền năng, hoặc các chiến lược khác trong kinh tế như quảng cáo, tiếp thị,

Cấu trúc của luận văn gồm:

Chương 1 Cung cấp thông tin về bài toán phân tích hành vi của người sử dụng trên TBDĐ Trong chương này, chúng tôi trình bày các hương nghiên cứu

hành vi người dùng khác nhau từ dữ Hiệu thư được liên quan TĐDĐ Dang thin,

Trang 11

chúng tôi trình bảy về hướng nghién citu và

ách thức giải quyết bài toán của chúng tôi

Chương 2 Trình bày những kiến thức cơ sở để giải quyết bài toán Về dữ

liệu trình bảy đặc điểm của dữ liệu thu được từ pha lấy dữ liệu, cách thức lọo dữ

liệu làm đầu vào cho thuật toán Về giải thuật, đưa ra mô hình khai phá dữ liệu

và trình bày các giải thuật về khai phá mẫu chuỗi tuần tự phổ biễn theo thời gian

va dua ra ly do chon gidi thuat SPAM

Chương 3 lrong chương nảy chúng tôi trình bảy Mô hỉnh khai phá dữ liệu để giải quyết được vấn để của bài toán

Chương 4 Trình bày kết quả thực nghiệm và phân tích kết quả thu được Danh gia tinh dung din và tỉnh hiệu quả của phương pháp để xuất so với một số

phương pháp khác

Chương 5 Kết luận và hướng nghiên cứu tiếp theo

10

Trang 12

Chương 2 - TONG QUAN KIIAI PITA MAU CIIUGI TUAN TU

2.1 Đặc điểm của dữ liệu

Dũ liệu thu được từ việc người sử dụng kích hoạt các ứng dụng trên TBDD

sử dụng hệ điều hành Android có dạng như Ilinh 2.1, trong đỏ có các thông tia như sau

AppName: là tên ứng dung

Stop: thé diễm kết thác ứng dụng

PID: ID của ứng dụng

PPID: ID của ứng dụng cha của ứng dung PID

IMEI: md may

Start: thời điểm khởi động ứng dụng

Với đữ liệu sử dụng phần mỗm có thể là rất dải đối với một TBDĐ nếu

được lẫy trong một khoảng thời gian lương đối lớn Hơn nữa, số lượng các ứng

dụng ngày càng nhiều nên khi chúng tôi tim hiểu cách khai phá tập luật tuân tự

thi két quả không có khả quan Nhưng khi chúng tôi tìm hiểu các cách để tìm ra

các mẫu chuỗi tuần tự thi kết quả khả quan hơn Hình 2.1 sau minh họa đữ liệu

lẫy được Lừ pha lây đữ liệu, La có thể nhận ra được rằng trưng một thời gian rất

ngắn, dữ liệu đã ghi nhận rất nhiều img dung duoc kích hoạt

Khi quan sát dữ liệu trong Tình 2.1 chủng ta nhận thấy, đữ liệu được lưu

quá nhiều, một ứng dụng được lưu quá nhiều lẫn, các ứng dụng con dược kích

hoạt từ ứng dung cha cũng nhiều, có nhiều ứng dung do hệ diều hành kích hoạt,

có nhiều ứng dụng do người dùng kích hoạt Vẫn để đặt ra ở đây là làm thể nào

chỉ lấy được các ứng dụng gốc do người dùng kích hoạt Ví dụ, làm thế nào để lây được ứng dụng gốc như Trình đuyệt web, Email, GoogleTalk, mà không

phải các ừng dụng do Hệ thống sinh ra, hoặc ra các ứng dụng gốc đó pọi các ứng

dung khác của hệ thẳng trong quá trình thực thi

Đổ làm dược việc dó, chúng tôi đã lọc ra các ứng dựng thuộc hệ thống như

SystemApplication, Unknow, Systcm, va toan bộ các ứng dụng con của nó

được kích hoạt qua mã ID và PID

11

Trang 13

Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012

Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Nov 28 19:14:24 2012 Jan 02 13:57:14 2012 Jan 02 13:55:54 2012 Jan 02 13:57:11 2012 Jan 02 13:57:11 2012 Jan 02 13:57:11 2012 Jan 02 13:57:11 2012 Jan 02 13:57:11 2012 Jan 02 13:55:52 2012 Jan 02 13:57:11 2012 Jan 02 13:57:11 2012 Jan 02 13:55:38 2012

241 S57 z4

000002470855 A000002470855F A000002470855E

Nov 28 19:13:57 2012 Nov 28 19:13:47 2012 Nov 28 19:13:54 2012

Nov 28 19:14:10 2012 Nov 28 19:13:43 2012 Nov 28 19:14:10 2012 Nov 28 19:13:56 2012

‘Nov 28 19:14:08 2012 Nov 28 19:14:01 2012 Nov 28 19:13:47 2012 Nov 28 19:13:43 2012 Jan 02 13:56:04 2012 Jan 02 13:56:53 2012 Jan 02 13:58:03 2012 dan 02 13:55:11 2012 Jan 02 13:85:10 2012 Jan 02 13:56:36 2012 Jan 02 13:56:30 2012 dan 02 13:55:51 2012 Jan 02 13:55:16 2012 Jan 02 13:55:03 2012 dan 02 13:55:37 2012

Hình 2.1 Dit ligu thu duoc tt TBDD sw dung Hé diéu hanh Android

Để có dữ liệu có dạng chuỗi tuần te nhu sau, 8; — fap apps appads

Trang 14

Í va, 4P, \ Storant app, Sam ape @)

Với Í umr app, là thời điểm bắt đầu kích hoat img dung app,

Đặc diễm của đữ liệu: §, thường có số lớn các ứng dụng (chuỗi dải - long

AppMame stop PID (WEI PPID Start

Email Nov S7 22:31:87 2 a7 a EM Now 27 22:30:28 2012

Lau*chor Noy 97 22-317 20) we 3 T15 Nav2722380272012

1aninin May 97 95 4108 20, 339 3 281 Nnv272231057012

Nov 27 22:2187 26 120 3 179 Nog 27 22:30:2¢ 2012 Nov 27 22:21-87 2 137 > 33 Nog 27 22:30:24 2012 Nov 28 “6:14:24 20 28 a 232 Nov 20 19:19:87 2012 Nay 98 “6 142420, 35T 3 Mow 28 18 14037012 Must Nay 98 °6 14 74.36: 258 3 252 Mnv78 18 15587012

Package Access Heiner Mov 28 “€:14:24 20° a 3 340 Now 28 19:13:58 2012

Pico TTS Nov 28 "6:14:24 20° 1 a 372 Nov 28 19:14:19 2012

Search Nov 28 76:14:24 20" Z4 3 368 Nov 28 1914.0" 2012

Comacts Storage van 02 15871 2 851 09002" 70685F 372 wan 92 19:95:11 2012

Contrast Kallor dan 7 147212022 22F31 - AAGD227NRSSE 24022 .an 12 18.55892012

Eaarloas van 02 4387" 1 20°2 207 4303002/70B55F 303 can 3219:551043012

Loginfo vom 02 43:55:3820°2 «24876 A303002270BS5F 24423 an 92 13:85:37 2G12

Marke: van 02 1587.71.21 18214 AM3002/70BSSF 18208 wan 92 13:89:16 2012

Natwort Lovatien dan 02 13:87" 12072 85T - AAJ2092/70BS55F 222 an321865:122012

Tenr ma Fmlnlrr danf213#724202 25E4E AAIA0122TNNSSF — 2BE42 vnn321385:A52012

Linh 2.2 Dữ liệu ứng dụng sốc được lấy ra từ [inh 2.1

Để có dữ liệu dạng trên thi chúng tôi đã có một pha riêng để lọc đữ liệu, pha

này phải làm các công việc sau: xác định các ứng đụng gốc®, loại bổ các ứng

dung con được kích hoạt từ ứng dụng gốc

2.2 Khai phá dữ liệu mẫu chuỗi tuần tự

2.2.1 Giới thiệu chung

Như phần 2.1 đã trình bày, vì đặc điểm của dữ liệu là dạng chuỗi đài theo thời gian và có rất nhiều ứng dụng khác nhau được đưa vào sử dụng nên khi chúng tôi thử nghiệm trên các giải thuật tim luật tuần tự hành về vi sử dụng của

nhiều người thỉ kết quả khang kha quan Do đỏ, chúng tôi đã đi tìm hiểu các mẫu chuỗi tuần tự về hành vị sử dụng của nhiều người thì có vẻ khả quan hơn

Chính vi vay, trong phan nay chúng tôi sẽ giới thiệu tổng quan về các giải thuật

tĐ Ứng dụng gi

hệ điền hãnh là ứng dụng được kích hoạt bực tiếp từ người ding từ desktop, hoặc từ các nhóm úng đụng trên

13

Trang 15

khai phá mẫu chuỗi tuần tự và lý do chúng tôi chọn giải thuật SDAM cho bài

loan nay

Tữ liệu dạng chuỗi các giá trị hoặc các sự kiện được kết hợp với thuộc tính thời gian được gọi lả đữ liệu chuỗi thời gian time-series |1SJ gọi tắt là đữ liệu time-series Một số dữ liệu time-series như: dữ liệu giao dịch khách hàng trong,

các siêu thị, dữ liệu về tài chính — chứng khoán, dữ liệu về y học, dữ liệu về

khoa học, dữ liệu về thời tiết Đã có nhiều giải thuật được thiết kế cho đữ liệu

time-series [15] Tuy nhiên, chúng ta có thể gom lai od 4 dang mau (pattem) ma chúng ta khai phá từ đữ liệu time-series sau

- Phân tích xu hướng: phân tích xu hướng là tìm ra các mẫu phát triển của

một số thuộc tỉnh thco thời gian, chúng có thể là sự vận động mang tính

lâu dài, phát triển quay vòng, vận động có nguyên nhân, các vận dộng,

ngẫu nhiên Ví dụ như giá vàng theo thời gian, ta có thể mô hình nó dạng Y=FŒ) và có thể biểu diễn trên đỗ thị Dựa trên hàm đó ta có thể

tim ra xu hướng là cử Thứ 2 hàng tuần thi giá vàng ting 2%, cir Tint 6

hàng tuần thị giá vàng tụt xuống 3% Với phương pháp này được sử

dụng nhiều trong phần tích xu hướng chứng khoán

- Tim chuỗi tuần tự: tìm kiểm chuỗi tương tự lá cố gắng dé tim các chuỗi

có sự khác biết đôi chút Tìm kiếm chuỗi tương tự là một quả trình dỗi

sánh mờ trong phạm vi sai số nhất định trøng một ngưỡng nhất định

Ti sánh chuỗi có thể được phân lớp như: đối sánh chuỗi con và đối

sánh toàn bộ chuỗi Giả sử chúng ta chuyển đối đữ liệu của giá cổ phiếu

vào đường cong, những đường cong báo gồm nhiều hình dang khác nhau như: lên, lên sắc nét, giảm, lao dốc Ví dụ về sự giống nhau cơ bản

dưa trên đường cong và hình dang của một loại cỗ phiếu để tìm cỗ phiếu khác cỏ các đường cong và hình đạng tương tự Có nhiều loại khác nhau

của các phép đo tương tự Một trong đo lường cổ điển tương tự là

khoảng cách Euelide

-_ Mẫu tuân tự: mê hình khai phá dữ liệu mẫu tuần tự để tìm ra những mỗi

quan hệ giữa các lần xuất hiện của các sự kiện liên tiếp, để tìm ra mẫu

tuần tự của các sự kiện theo trinh tự Chứng ta có thể tìm thấy các mẫu

tuần tự của các sự kiện cụ thể, chúng ta cũng có thé tìm thấy các mẫu tuân tự qua các sự kiên khác nhau Việc phát hiện các mẫu tuần tự được

14

Trang 16

sử dụng rộng rãi trong việo phân tích trình tự DNA Một vị dụ về mẫu

tuần tự là mỗi khi chứng khoán của MiicrosolL giảm xuống 5%, cổ phiếu

TBM cũng sẽ giấm ít nhất 49% trong vòng ba ngày

- Mau chu ky: mau chu kỳ là những mẫu có chu kỷ trong cơ sở đữ liệu time-series, chu ky cé thé la hang ngay, hang tuần, hàng tháng, theo mùa

hoặc hàng năm

Rõ rằng, khai phá mẫu chủ kỳ có thể được xem như là mê hình khai phá dữ

liệu tuần tự bằng cách đưa vào các chuỗi chu kỳ như là một tập hợp các chuỗi tuần tự Trong cơ sở đữ liệu giao dịch của khách hàng, mỗi chuỗi là một tập các hàng mà khách hàng đã mua

Trong thời gian qua, đã có nhiều lĩnh vực quan tâm nghiên cứu về dữ liệu

time-scrics Tuy nhiên, cơ sở đữ liệu tuần tự bao gồm các chuỗi các sự kiện sắp xếp có hoặc không thuộc tính thời gián Cơ sở đữ liệu tuần tự là một trường hợp đặc biệt của cơ sở đũ liệu time-serics, kết quả nghiên cửu nhiều nhất trong khai

phá mẫu tuần tự tập trung vào hai vẫn đề chính Vẫn đề đầu tiên là khai phá mẫu

tuần tự, nhằm tìm kiếm các chuỗi tuần tự thường xuyên xây ra để mô tả dữ liệu

hoặc dự đoán cáo dữ liệu tương lai Vấn để thứ hai lá khai phá mẫu chủ kỷ, có

thể được xem như là khai phá mẫu luần tự Trong luận văn này chúng tôi đi vào phần tiền xử lý đữ liệu cho bài toán khai phá mẫu tuần tự - chu kỳ dễ phát hiện

thói quen của cơn người

2.2.2 Bài toán Khai phá mẫu chuỗi tuần tự

Để cho dễ hình dụng về bài toán, ta có ví dụ 2.1 sau: Trong khi tiễn hành

truy xuất dữ liệu của một cửa hàng bán sách người ta nhận thấp có trình tự mua

sách nh sau: 80% khách hàng mua sách Hệ quản trị cơ sở dã liệu sau đó họ

mua cuồn sách Kho đữ liệu và sau đó họ mua cuỗn Hệ thông thông tin web

trong một khoảng thời gian

Khai pha chudi tuan tu (Sequential pattern mining) được giới thiệu lần đầu tiên bởi Agrawal va Srikant năm 1995 [13] Trong ví dụ trên thì tất cả các sách

không phải dược mua tại cùng một thời điểm, diễu quan trọng là thứ tự mua

sách

Miu chuỗi tuần tự (Sequential pattcrn) đi vào tim hiểu mỗi quan hệ giữa

các giao địch trong khi luật kết hợp đi vào tim hiểu œ

ơ nội dung bên trong cáu

giao dich

15

Trang 17

Goi D là cơ sở đữ liệu của các giao địch khách hàng, 7- (¡„¿ „} là tập n

thuộc tỉnh phân biệt và được gọi lả các ltem, giao dich ‘I — {Mã_ KháchHàng, ThờiGian GiaoDich, Mua _MãHàng}, s; lả một tập các mục được lây ra từ1, là

một chuỗi các tập item (itemset) theo trình tự <s„ s; s¿> Không có một

khách hàng nảo có nhiều hơn một giao dịch Irong cùng một thời gian ThờiGian-

GiaoDich Vị dụ như bảng đưới dây

Bảng 2.1 Danh sách khách mua hàng

Bang 2.1 lu cdc théng tin giao dich của khách hàng đã được sắp xếp theo

Mã KháchHảng Với mỗi khách hàng cá bao nhiêu dòng sẽ tương ứng với bay

nhiễu giao dịch, các piao dịch khác nhau sẽ có thời gian khác nhau Ví dụ, với

Mã KháchHàng — 1 có 2 giao dịch tại 2 thời điểm khác nhau là 2 ngảy

93/3/2013 và 05/3/2013

"Trước khi tiên hành khai phả mẫu chuỗi tuần tự cho tập đữ liệu giao dich

của khách hàng, người ta thông thường phải tổ chức lại đữ liệu từ Dắng 2.1 trên

thành đỡ liệu dạng chuỗi như Đăng 2.2

Bang 2.2 Biểu diễn dữ liệu dụng chuỗi

Mi-KhachHang | Chuỗi Tập mục của khách hàng

Trang 18

Khi tiến hành khai phá mẫu chuỗi tuần tự từ dữ liệu tại Bang 2.2 với độ hỗ trợ tối (hiểu là 40% ta thu được kết quả vả ánh xạ kết quả đó sang các giá trị lự

nhiên từ 1 dến 5 cho dễ quản lý dược trình bảy tại Bảng 2.3 đưới dây

Bảng 2.3 Danh mạo thủa mãn điều kiện minsup — 4094

các n phẩm được mua tại củng một thời điểm cho nên tứ tự các mục trong

đó là không quan trọng <(40)(1003> là một chuỗi tuần tự các giao địch nên phải

tuân theo trỉnh tự

Sequential pattern \a mt chubi các itemset xuất hiện phỗ biến có trình tự,

tất cả các item trong củng một itemset được giả sử lả chúng có củng tại thời điểm giao dịch hoặc chúng có trong cùng một khoảng thời gian giao dịch (time gap) Thông thường tất cã các giao dịch của một khách hàng được gắn kết với

nhau theo trình tự thời gian và được xem là một chuỗi

Tinh Chứa: một chuỗi a <ay,&, ,a„> được gọi là được chữa trong một

chuỗi ð <bi,b, ,bm nếu n < j; < < iạ Và ta cÓ ø, Cỗ„,# =62, 2„Cb„ Viđu

<3X6G,79793}> được chứa tong <(1X35,6,79X8X2,79)> vì

@)c()0679)C(G,6,79),(.9)c(2.79 tuy nhiên <(2)(3)> lại không được chứa

trong <(2,3)> vi trong chuỗi đầu tiên thì 2 được mua trước 3 trong khi tại chuỗi

thứ 2 thì 2 và 3 được mua đồng thời Chuỗi được gọi là tối đa (maximal) nếu nó

không bị chứa trong bất kỳ chuỗi nào

Trang 19

-Cy: là số khách hàng cú giao địch chứa chuỗi ø

-TN: lA sé khach hàng có trang cơ sở dữ liệu

Khai phá chuỗi tuần tự (Scqucntial pattern mining): là tiên trỉnh trích

xuất ra một số các mẫu tuần tự mà có độ hỗ trợ vượt qua ngưỡng tôi thiểu Vỉ số lượng chuỗi là rất lớn vì thế người ta thường đưa vào giá trị hỗ trợ tối thiểu để

lọc kết quả Những mẫu tuần tự cỏ độ hỗ trợ vượt qua ngưỡng hỗ trợ tối thiểu lá những mẫu mong muốn và có giá trị Tuy nhiên, có một số mẫu tuần tự không

vượt qua ngưỡng hỗ trợ cực tiểu nhưng vẫn có giá trị trong một số bải toán cụ

thé, để giải quyết việc này [12] đã đưa ra một khái niệm là ma trận SUPRISE để

đo giá trị của các chuỗi

2.2.3 Một số thuật toán khai phả mẫu tuần tự

Hau hét các giải thuật ban đầu đều dựa trên tính chất Apriori trong khai phá luật kết hợp như: AprioriAll, AprioriSome, DynamicSome trong [15], GSP

[16] và SPADE [24] Sau này, một loạt các dữ liệu dựa trên giải thuật được dé

xuất, như: EreoSpan [17] va PrefixSpan [18] SPADE [21 là một giải thuật dựa trên lưới, MHMIISP [20] dùng cách tiếp cân đánh chỉ mục của bộ nhớ, trong đó

SPIRIT [12] tập trung vào tích hợp các ràng buộc qua các biểu thức thông thường

Tác giải thuật dựa trên Apriori, bước đầu tiên là tìm tất các ftems phổ biến,

thông qua các vòng lặp thì các chuỗi ứng viên có chiều dai / (sequence) được tạo ra từ các chuỗi có chiêu đài 7-7 ( (I-1J-sequenee ) Sau đó, tính toán độ hỗ trợ

của các ứng viên để giữ lại các ứng viên đạt độ hỗ trợ tối thiểu Các giải thuật

dựa trên Apriori rất nhiều chỉ phí để xử lý một lượng lớn ứng viên được tạo ra

và cả chỉ phí cho việc duyệt CBDI, nhiều lần Giải thuật PrefixSpan được để

xuất tại [I8] phát triển trên nên của giải thuật IreeSpan[l7] Giải thuật

PrefixSpan được thiết kế trên ý tưởng chia để trị, các phép đuyệt CSDL được thực hiện qua mỗi vòng lặp trên các tiền tố giống nhau Thông qua các phép

duyệt CSIDI, của các tiễn tố dễ xây dựng các mẫu chuỗi tuần tự thì sẽ phát hiện

ra toản bộ các mẫu chuỗi tuần tự trong ŒSII Tuy nhiên, đối với các bài toán có

CSDL lớn thi việc thực hiện các vòng lặp duyệt CSDL, lớn là không hiệu quả

SPAM [22] sử đụng kỹ thuật biểu diễn bitmap cho mỗi bản ghỉ trong mỗi chuỗi đữ liệu Sau đó, giải thuật áp dụng chiến lược tìm kiếm theo chiều sâu để sinh các ứng viên Qua các phép toán trên bịt để tính toán độ hỗ trợ của các ứng

18

Trang 20

viên một cách nhanh chóng, Hơn nữa, với kỹ thuật cắt tỉa hiệu quả đã làm giảm

số lượng ửng viên được sinh ra Qua các kết quá thực nghiệm người ta thấy giải

thuật SDAM hiệu quả cao hơn so với không chỉ giải thuật SPAIDE má cỏn cả

giải thuật PrefixSpan

Chính vì lý da trên, nên trong khóa luận này chúng tôi chọn giải thuật

SPAM làm thuật toán cho việc nghiên cửu và để xuất phương án chia tách các

chuỗi đài ban đầu (primary sequences) thành các chuối ngắn hơn (short

(2) DES-Puning((sy.s,, s, c2(0)), 5, œ„ all elements in /,„ greater then ÿ

“Hình 2 3 Giải thuật DIFS với Kỹ thuật cat tia

19

Trang 21

Chuong 3 - MO HINH DE XUAT

Hình 3.1 Mô hình tổng quát khai phá dữ liệu

Do việc phải tìm ra các thói quen sử dụng phần mềm trong một khoảng

thời gian ngắn nên đòi hỏi phải qua một bước phân tách chuỗi dữ liệu dài ban

đầu thảnh các chuỗi dữ liệu ngắn hơn theo thời gian Do đó, chúng tôi đề xuất

mô hình khai phả thói quen sử dụng phần mềm như Hinh vẽ 3.2

Trang 22

Mề hình để xuất trín gằm có câc modul chính sau: Thu thập dữ liệu, lưu

trừ đữ liệu; xử lý dữ liệu; khai phâ đữ liệu; phđn tích, so sảnh kết quả Chúng tôi

sẽ lần lượt giới thiíu câc modul như sau

Thu thđp đữ liệu: chức năng oùa modul năy lă tap hop đỡ liệu sử dụng câc

phần mềm từ câc file log của câc THI)Ð như mây tinh bảng, điện thoại

thông minh, Thănh một file dữ liíu được chuẩn hóa từ trước theo định

dạng như được mô tả tại [inh 2.1

Modul lưu trữ dữ liệu: dữ liệu từ file trong modul thứ nhất sẽ được đưa văo lưu trữ trong CSDL MySQL sau đó âp dụng câc cđu lệnh SQL để

thanh lọc câc dữ liệu không cần thiết như dữ liệu về câc lung, chương

trình con, chương trình không phâi người đùng kích hoạt để chỉ giữ lại

trong 5L tập câc ứng dụng gốc theo dịnh dạng như Hình 2.2

Modulc xử lý dữ liệu

©_ Đọc trong C8SDL ra vă tiễn hănh xđy dựng nín câc chuỗi Luđn tự sử

dụng phần mềm cho từng thiết bị Như vậy, mỗi một TBDĐ sẽ có

một chuỗi tuần tự sử dụng câc phần mềm bao gồm câc thuộc tỉnh đình danh thiết bị, tín ứng dựng, thời điểm kích hoạt, thời điểm kết

thúc như được mồ tả tại Hình 2.2

© Phan tâch chuỗi đữ liệu dăi ban đầu thănh câc chuỗi dữ liệu ngắn

hon để lăm dữ liệu đđu văo cho module khai phâ Để thực hiện

được phần nảy, chúng tôi đề ra một số phương phâp phđn tâch dữ

liíu được trình bảy tại mục 3.2

Module khai phâ dữ liệu: Từ tập đữ liệu thu được từ modul trín, chúng tôi

sử dụng một số giải thuật khai phâ vă đânh giâ về hiệu quả của câc giải

thuật đó, qua đó chúng tôi nhận thấy giâi thuật SPAM lă hiệu quả hon ca

so với câc giải thuật SPADE, Prefix5pan về tốc độ khai phâ vă về độ lớn của đữ liệu Sau khi có kết quả của một số lần thử nghiệm trín phương ân

phđn tâch thử nhất, chúng tôi lại quay lại modul phđn tâch đữ liệu để thực

thi phương phâp phđn tâch đữ liệu thứ 2 vả tiếp tục tiến hănh khai phâ cho một số lần thứ nghiệm với tham số khâc nhau

Modul phđn tích kết quả: sau khi có kết quả của câc phương ân phđn tâch,

chúng tôi tiến hănh phđn tích, so sânh vă đưa ra một số kết luận

21

Trang 23

3.2 Các phương án tách chuỗi

Như đã để cập trong chương 1, việc nghiên cứu thói quen sử dụng nhẫn

mềm trên TDDĐ qua việc xác định các mẫu chuỗi Luần lự trong một phạm vì

nhỗ về thời gian Để có được những phạm vi nhỏ về thời gian, chúng tôi thứ

nghiệm 3 phương án phân tách dữ liêu như sau

-Phương án 1 Lách theo khoảng thời gian trong ngày:

Hình 3.3 Phần tách dữ liệu theo các buổi trong ngày

-Phương án 2 lách theo ngày: mỗi ngày sẽ là 1 chuỗi hoặc n ngày là một

chuỗi (n là số nguyên dương 1,2,3, )

Hinh 3.4 Phan tach dit ligu theo n ngay

-Phương án 3 Tách theo hành vi sử dụng: mỗi một chuỗi sử dụng phần

mễm cách nhau 1 khoảng thời gian > £ (ví dụ: Rh đú cho 1 người bình thường

ngủ) tức là 1 ứng dụng cuối củng (app,) trong chuỗi thứ ¡ (Sequence, ) có thời

diểm kết thủ thực thị siopTime„ cách ứng dụng dầu tiên (app) của

Sequence) kế tiếp có thời diễm bất dầu kích hoạt startTime„ một khoảng

thời gian tắt thiểu là £

start Time, la ep — SlopTime,, >t 8)

32

Trang 24

time stopTime,, startTime,,, ,,

Hình 3.5 Phân tách dữ liệu theo khoảng thời gian sử dụng

Nhân xét: so sánh 2 phương án tách 1 và phương án tách 2 thì ta nhận thay

- Bat ky mét chuỗi con nào của phương án tách 1 cfing 1a nim trong 1

chuỗi con của phương án tách 2

- Số lượng chuỗi con của phương án tách 1 sẽ lớn hơn ø*3 số chuỗi con

của phương ản tách 2

- Vi những lý do trên, nên tần suất của các mẫu khai phá được trong

phương án tách 2 sẽ tốt hơn tần suất của các mẫu trong phương án tách |

Với những nhận xét trên thì, tại các mục so sảnh giữa các phương án phân tách dữ liệu chúng tôi chỉ so sánh giữa phương án 2 và phương án 3

3.3 Tách Itemset trong chuỗi

Sau khi xác định được các chuỗi, việc tiếp theo chúng ta cần phải giải quyết là xác định các itemset trong các chuỗi đó Để xác định được item trong

itemset thì chúng ta phải xác định được một ngưỡng thời gian (f;z„z;;) Khi 02

ung dung app, và app,+¡ mà có thời gian kích hoạt startTimegyp j+) của app,+; và

thời gian kết thúc fimeStopayp , cla app, cách nhau khoảng thời gian A/, tùy

thuộc vào giá trị của A/ so với f„z„z;; mà ta xác định được Ì trong 2 trường hợp

- Cả 2 item app, Và app,+; cùng trong một itemset

~ đpp, và app,+¡ thuộc 2 itemset khác nhau

Một số trường hợp phân tách Itemset sau:

* 2 ứng dụng (item) thuộc 2 itemset khác nhau

° Có dạng: At = startTime, ‘pry StopTiMG vu >/,,„„ 27,721

Trang 25

Trong dé startTime,,,.,,, stopTime,,,, tuong tmg la thời điểm kích hoạt ứng

dung thirj+/ va thời điểm kết thúc ứng ựng thir trong sequence i

Hình 3.6 Phân tách dữ liệu theo thời gian trong cùng một ltemset

Đối với cách phân tách trên như Hình 3.6 thì chuỗi thứ ¡ có 2 itemset là

itemsety và itemsety,y Mỗi một itemset chỉ có 01 phần tử (itemset¿ chỉ có app¡,

itemsety., ¢6 appjsa)

* 2 eng dung (item) thuéc cung 1 itemset

Dang 1 A>0

° dạng: AL = startTime, opp, — stop Timg »», Strong Jot 21

Trong dé startTime, Am 14 thoi điểm kich hoat img dung thir j+/ trong chudi

thử ¡ stopTime„„ là thời điểm stop ung dụng thứ / trong chuỗi thứ ¡

Trang 26

Hình 3.8 Trường hợp 2, 2 ứng dụng trong cùng một liemset

Chú ý: Trong cùng một /femsef không thể có 2 item giống nhau, cho nên khi xuất hiện 2 item giống nhau thì ta có thể xóa bỏ 1 item thừa đó

Trong cùng 1 /emset thì thứ tự xuất hiện các item là không quan trong do

đó ta sẽ sắp xếp các item trong củng 1 /emsef theo thử tự ABC

3.4 Tính thời gian cho phương án tách chuỗi

Chọn khoảng thời gian trong phương án 3 (trong mục 3.2) như thé nào để

có thể cho việc phân tách đạt kết quả tối ưu Để giải quyết được bài toán này,

chúng tôi thử xác định một khoảng [f;zzz›s ;¡¡ Thgường max] để phân tách một

chuỗi dài thành các chuỗi ngắn, sau đó đi tìm khoảng thời gian phủ hợp cho việc

phân tách Ví dụ, xác định thevang.min = 8h, taewong mar = 48h, IM với fuư¿ng nạy đÓ

sẽ phân tách được ø; chuỗi con đưa vào khai phá ra tập kết quả sp Bước tiếp

theo là fnsưzng = thguong max — delta (delta > 0 được gọi là bước giảm) và tính số

chuỗi con được phân tách ø› chuỗi con đưa vào khai phá ra tập kết quả søz sau

đó so sánh sp, với sp; để lấy kết quả tốt hơn, vòng lặp được tiến hành cho đến

khi có kết quả tốt nhất hoặc khi f,zz›z <= f¡zzz „„„ Với phương án phân tach

nay sẽ không hiệu quả vì: nêu xác định delta quá nhỏ (15) thì mắt rất nhiều vòng

lặp Nếu delta lớn thì có thể bỏ sót kết quả tốt nhất (tức là giá trị thời gian nhỏ

nhất nhưng khai phá ra tập thói quen nhiều nhất), Tuy nhiên, chúng ta đều biết

rằng nếu chọn gid tri tiene = uyường mấy thì ta sẽ có kết quả khai phá ra tập thỏi

quen lớn nhất nhưng giá trị /,„„;; không phải là nhỏ nhất Ví dụ, giả sử tại giá trị

Đgường — fngường mạc — 23h thì ta thu được tập thói quen sử dụng 2 phần mềm trở

lên là 50 thỏa mãn độ hỗ trợ tối thiểu, người ta tìm thấy rằng giá trị f;z„z„; từ 20h

đến 23h đều cho kết quả khi khai phá tập dữ liệu phân tách như trên thì rõ ràng

tại kết qua fhevone=20h sé cho kết quả tốt nhất

ky a

Trang 27

Trong đa số các trường hợp kuuøng € ñướng mạc thì số lượng các thói quon

dược phát hiện đều nằm trong trường hợp (y„y „2 và số lượng các chuỗi con

được sinh ra (rường hợp /„„ø„) lớn hơn số lượng chuỗi con được sinh ra ở

trường hợp tnewne nar Do đó, nêu áp đụng giá trị [fuzøng mm : Ígướng max] thi ta

chỉ cần lấy trường hợp is mạ để phân tách đữ liệu

Dễ xác định khoảng thời gian cho việc phần tách chuỗi gốc ban đầu thành

nhiễu chuỗi con chứa mẫu tuần tự nhất, Chúng tôi để xuất giải pháp gỗm hai

tước như sau

-Khai phá toàn bộ tập chuỗi ban đầu chưa phân tách để tìm ra tập mẫu

chuỗi tuần tự thoân mãn độ hỗ trợ tối thiểu và có độ dài lớn hơn 1

- Từ các mẫu chuỗi tuần tự kết quả đó, ta sẽ tiến hành tinh ngược lại thời

gian để cắt các chỗi đài thánh oác tập các chuỗi ngắn

Dễ cho rõ hơn về giải pháp trên, giả sở chúng ta có tập chuỗi ban đầu chưa

phân lách là PŠ„ P52 , PS, Qua việc khai phá tập đữ liệu trên, ta thu được tập

mẫu chuỗi tuần lự thỏa mãn độ bi tro tối thiểu có độ dài > 2 như sau: #§P,,

PSP, , KSPe

Với mỗi FSP, ta tính khoảng thời pian để phân tách tập chuỗi pốc PS;, PS , PS, được nhiều chuỗi con chứa #%P, nhất Chỉ tiết việc tính các khoảng thời

gian xin tham kháo Phục lục A của Luận văn này

Để mình họa cho cách tiếp cận trên, chúng tôi thực hiện trên ví dụ 3.1 dưới

đây

Vi dụ 3.1 Giả sử chúng ta cô 4 chuỗi dài và các khoảng cách thời gian (các đơn vị thời gian như nhau) tương teng nhw sau:

9øbcdaƒ/ 10 12,9, !20,40,35 12a3ejdef / 5, 15,8,90,30, 7, 12,39,20

Trang 28

2 chuỗi con tỗi thiểu phủ -

SS, —{Kabe? ys , Sa3e> ug 9 “ac pg 4 “aoc? py 4 SScđ>ạg ;} với “ca” là

kbéng phi <ac> nhung nim gitta 2 chuỗi con tối thiểu phủ <ac>,

Từ các chuỗi con lối thiểu phd <ac> da, ta tinh các khoảng thời gian để

phân lách chuỗi ban đầu ra nhiều chuỗi con chứa “<ac> nhất như sau

Bang 3.2 chuỗi con chứa ac> và khaâng thời gian phân tach

Chuỗi gốc Chuỗi con Max slotTime phân tách wr Be chuỗi chứa “ae

Sabedef <abe> (timeg=12, timeg=9) = 12 | t> 12 1

12a3glƒf <a$c> ftimegs=8, time¿.=90) = 00 | t>90 1

chứa <œe> Ioặc t > 90 sẽ có 3 chuỗi chứa “œc>

Đối với SP; ta sẽ có các tập chuối con phủ <đ/> hoặc nằm giữa 2 chuỗi

con phủ <đjˆ> như Háng 3.3 sau:

Trang 29

Sabedef <def> (limea, 40, thue 33) T— 40 | 40 <t 1

12n3def' <def> (timeg,=39, time.j=20) = 39 |39<t 1

pháp đó, tại sao phải tìm các mẫu chuỗi tuần tự có độ hỗ trợ lớn thoản mãn độ

hỗ trợ tối thiểu? vấn dễ cuối cùng là giải pháp đó có tối ưu không 2

Ching ta đều biết rằng mỗi một người sử dụng đều dùng một số lượng

phần mềm nhất định trên TBDĐ và hành vị đó thường được lấp di lặp lại nhiều lần trong một khoảng thời gian vài ngày, vài tuần, thậm chí cả vải tháng, Tuy

nhiên, trong xã hội đa đạng người đủng, thi mỗi người lại sử dụng các phần mềm có thé không giống nhau, nếu sử dụng các phần mềm giống nhau thì có thể

ở những thời điểm khác nhau nên xuất phát từ yêu cầu của bải toán nên chúng

ác thói quen mang tính phổ bién (qua vid

tôi muôn đưa ra được

hai phá loàn

bộ chuỗi ban đầu) và có sự rảng buộc về thời gian (slotTime dùng để phân tách

chuỗi không quá lớn) đó chính là phương án để xuất của chung tôi

Việc tìm các mẫu chuỗi tuần tự vượt qua độ hỗ trợ tối thiểu vỉ

- Chúng tôi dự đoán rằng nếu mẫu tuần tự A cá độ hỗ trợ lớn hơn mẫu

chuấi tuần tự B thì việc phân tách chuỗi dải ban dầu thành các chuỗi con ngắn

hon theo thời gian có sự định hướng theo mẫu chuỗi tuần tự A đá sẽ được nhiễu

hơn các mẫu tuần tự DB qua bước phân tách trên Vì, số lượng các chuỗi gốc có

chứa mẫu tuần tự A lớn hơn số lượng chuỗi gốc có chửa mẫu chuỗi tuần tự B trong lập đữ liệu ban đầu

28

Trang 30

- Do viée tim ra sé hrong mẫu chuỗi tuần lự của việc khai phá dữ liệu ban dầu là iL nên giảm số lượng tính toán thời gian phân tách vì vậy sẽ lâm giám thời

gian chơ việc tính toán cho thuật toán

To vậy, khi dự đoán của chúng tôi là chính xác thì công việc tính thời gian

như trên sẽ là tôi ưu vì ta chỉ việc tính thời gian dựa trên một số lượng mẫu nhất

đỉnh và những mẫu đó có xác suất phân tách được nhiễu mẫu con hơn

29

Trang 31

Chuong 4 - THUC NGHIEM

Trong khóa luận nảy, chúng tôi sử dụng Sequential Pattern Mining

Framework của các tác giả Philippe Fournier-Viger [14] Đây là công cụ mã

nguồn mở được viết bằng java, công cụ đã cài đặt 51 thuật toán cho các mục

sau

«sequential pattern mining,

association rule mining,

«frequent itemset mining,

«sequential rule mining,

clustering

Trong phần thực nghiệm này, chúng tôi tạo 2 bộ dữ liệu và lần lượt đưa

vào thử nghiệm để so sánh giữa 2 phương pháp phân tách theo hành vi vả phương pháp phân tách theo thời gian mà cụ thé la n ngay Giao dién ctia

chương trình như Hình 4.1 sau:

Senet ace — —- —v bơm Em —— |[ mm

terns Framer xoucg

Chú mwùgbj Ì⁄S8hN4ng) —— Ìv mmbsướm À | ĐBmiAkbmert 3 — | rmláppklbl |

accuse

ttimecsdiseeg a sete Sr0mardfamst T— em

Hình 4.1 Giao điện của chương trình

Trong việc so sánh giữa các phương pháp, chúng tôi giữ cố định một giá trị

khoảng thời gian phân tách các ứng dụng trong cùng một phần tử (Element),

trên giao diện Hình 4.1 1a 6 Slot time cut off Element voi gia tri mặc định là 60s

Tức là ứng dụng thứ 7 va img dung thir i+/ duoc coi 1a sir dung đồng thời nếu:

startTime ctia img dung thir i+/ - stopTime của ứng dụng thứ ¡ < 60s Néu

khoảng cách trên > 60s thì 2 ứng dụng thứ ¿ và thứ ¡+7 là 2 phần tử riêng biệt

trong chuỗi

Trang 32

So sánh giữa các phương pháp phân tách là việc so sánh dựa trồn kếL quả khai phá dữ liệu của phương pháp khi củng sử dụng giải thuật khai phá Kết quả

của giải pháp nào chỉ ra dược nhiều mẫu chuỗi tuần tự đặc biệt là các mẫu chuỗi

tuân tự có số lượng phân tử > 2 thì giải pháp đó là tốt hơn Vì giải pháp chỉ ra được nhiều mẫu chuỗi tuần tự hơn chính là giải pháp giúp chúng ta phát hiện ra

các thôi quen sử dụng phần mềm tốt hơn

Trong 6 lya chon Choice mining type cé loại khai phá đữ liệu sau:

- Mining to get Slotfime ding dé khai phá tập dữ liêu gốc ra các mẫu chuỗi

tuần tự thỏa mãn điều kiện độ hỗ trợ tối thiểu minSup, sau đó từ các mẫu chuỗi

tuần tự có số lượng phần tử lớn hơn hoặc bằng 2 ta sẽ tính ngược lại các khoảng,

thời gian tương ứng cho việc phân tách toản bộ tập dữ liệu gốc thành tập dữ liệu con sao cho sinh ra dược nhiều chuỗi con chứa mẫu chuỗi tuần tự nhất

- Mining dll primary sequences: khai phá toàn bộ dữ Hệu gắc và đưa ra tập

mẫu chuỗi tuần tự thỏa mãn diều kiện minSup

- MSS in N days (Mining Short Sequences in N Days): Khai pha dit ligu cho

tập dữ liêu mới được phân tách tử tập dữ liệu gốc ban day theo ngày

- Mining all short seguences: Khai phá tập đữ liệu mới được phân tách từ tập dữ liệu gốc theo khoảng cách thời gian tai 6 slotfime cut off sequences trén

Hình 4.1

4.1 Bộ dữ liệu thứ nhất

Tộ dữ liệu này thu được từ 200 thiết bị, mỗi thiết bị kích hoạt từ 1 đến 3 lần ứng đựng trong một ngày từ tập 98 ứng dụng Thời gian sử dụng là 50 ngày Chúng tôi thu được 39.817 hàng dữ liệu

Để so sánh giữa các phương pháp phân tách, chúng tôi lần lượt thử nghiệm

trên cùng bộ đữ liệu pốc như trên Với sự so sảnh giữa số lượng mẫu chuỗi tuần

tự giữa 2 phương pháp cho ta kết quả là piải pháp phân tách nảo tốt hơn

~ Trước hết, chúng tôi thực nghiệm thco phương pháp phân Lách theo hành

vi sử dụng Ấp dụng loại khai phá đỡ Hệu Mining fo get SlofTime đễ tính khoảng

thời gian cho việc phân tách Kết quả khai phả mẫu tuần tự chỉ có 2 item trở lên

và khoảng thời gian phân tách, được chỉ ra tại Hình B.1 trong Phụ hịc B của

Luận văn này Đề mình họa cho việc Lim ra cae mau chuối luận tự có độ lớn hơn

31

Trang 33

hoặo bằng 2 và khoảng thời gian phân Lách tương ứng, chúng tôi lấy 2 dòng dữ

liệu từ Hình B.1 ra lắm ví dụ như Đăng 4 sau

Bang 4.1 Một số mẫu trong Hình B.1 và ÿ ngiữa phân tach

Ragdoll Blaster 3 Lite, néu phan Lach chudi dai

ban đầu với sloiTime nim tong khoing

86182 86200 seeonds thi ta sé thu duge 146

seconds Mẫu chuỗi sử dụng 2 phân mém: Tiny Vi ‘llage,

va Big Win Soccer, néu phân tách chuỗi dai ban

đầu với siatime nim trong khoảng

36261 86307 seconds thi ta st thu được 139

mẫu chudi hanh vi nay

Từ đữ liệu thu được tại Hinh B.1 chúng tôi lấy 2 giá trị sloLTime để phân

tách (gid tri slotfime — 8682s là slofPime tôi thiểu dễ phân tách chuỗi gốc

thành chuỗi con), ứng với các độ hỗ trợ tối thiểu, chúng ta có bảng kết quá 4.2

sau:

ng 4.2 KẾT quả thứ nghiệm trên bộ dữ liệu ï phân tách theo hành vì

SlotTime TA, Dattern 1 | Pattern>2 pene inh vẽ

Trang 34

Để so sánh, chúng tôi lấy kết quả tại 2 bảng là Bang 4.2 va Bang 4.3 dé

cùng vẽ đồ thị với độ hỗ trợ từ 65% giảm xuống con 45% như Hình 4.2 sau

Hình 4.2 Đồ thị so sánh giữa 2 giải pháp phân tách bộ đữ liệu 1 với minSup

={45% - 65%)

Trên hình 4.2 trên, chủng ta thấy đường nét liền thể hiện kết quả khai phá

đữ liệu qua phương pháp phân tách theo slotTime„ = 86182s

Đường nét đứt là kết quả khai phá với giải pháp phân tách theo ngày, N=25

ngày và N = 10 ngày.

Trang 35

Để thấy rõ được sự khác biệt của 2 phương pháp trên, chúng tôi vẽ đỗ thị

tại Hình 43 với độ hỗ trợ minSup từ 65% xuống đến 35% giữa phương pháp phân tách theo giá trị slotTime = 861§2s và tách theo ngày với N = 25 ngày

Từ kết quả trên ta có nhận xét sau: Với độ hỗ trợ tối thiểu từ 50% trở lên thì

kết quả khai phá của 2 phương pháp phân tách (theo số ngày = 25 ngày, theo khoảng thời gian phân tách slotTime = 86182) là tương đương Tuy nhiên, khi

ta hạ độ hỗ trợ tối thiểu xuống đến 35% thì ta nhận thấy ngay phương pháp phân tách theo khoảng thời gian hiệu quả hơn hẳn so với phương pháp phân tách theo

ngày, cụ thể là: tại độ hỗ trợ tối thiểu là 45%, 40%, 35% thì phương pháp phân

tách theo ngày (25 ngày) không phát hiện ra được thói quen nào sử dụng 2 phần

mềm Trong khi đó, kết quả khai phá cho phương án phân tách theo khoảng thời

gian slotTime là rất khác biệt như tai minSup = 45% đã phát hiện được 259 thoi

quen sử dụng 2 phần mềm, tại minSup = 35% thì đã phát hiện được 7977 thói

quen sử dụng 2 phần mềm.

Trang 36

Nhu vay, viée phan tach dit héu theo khoang thé slolTime nhu trén cd hidu

quả hơn so với việc phân tách theo ngày vì cùng một độ hỗ trợ tối thiểu như

nhau thì giải pháp phân tách theo khoảng thời gian giúp ta tìm dược nhiều mẫu

tuần tự (théi quen) hơn

'Irong bộ dữ liệu này, mỗi máy kích hoạt ứng dụng từ 1 đến 3 lần mỗi ngày

việc phân tách theo thời gian quả nhỏ (slotTinae — 360013) sẽ không đem lại kết

quả gì như Ilinh D.22 Cũng có kết quả tương tự khi chúng ta phân tích theo 1

ngày, 3 ngày như ITinh B.20, Linh B.21

Từ những nhận xét trên, ta nhận thấy, mặc dù có những thói quen sử dụng các mẫu phần mềm trong một khoảng thời gian không đải và chỉ được phát hiện

qua phương án phân tách thco thời gian (dũ lớn) mà không phát hiện được qua các phương án phân tách khác

1 ngày hơn, số lượng phân mềm cho bộ đữ liệu 2 này ít hơn

Dé tìm khoảng thời gian phân tách các chuỗi gốc ban đầu thành các chuỗi ngắn, chúng tôi sử dụng tly chon Mining to get SlotTime để tính khoảng thời

gian cho việc phân Lách Kết quả khai phá mẫu tuần tự chí có 2 item trở lên và

khoảng thời gian phân tách, dược chỉ ra tại Hình Ð.23 trong Phụ lục B của Ï uận

văn này Giả sử slotTime ngưỡng dùng để phân tách là 8600 Ls (0.995 ngày), giá trị slotTìme ngưỡng này nhỏ hơn nhiều so véi gid tri slotTime nhé nhất trong

Tinh B.9 1a 137180s

liệu có phân tách hiệu quả hơn so với phương án phần tách theo ngày không? Và

1 ngảy l4 giờ) Với giả trị slotTime ngưỡng như vậy

hiệu quả hơn khi số ngảy dùng dé phân tách là bao nhiều? ĐỂ lý giải diều này,

chúng tôi lần lượt thử nghiệm trên bộ dữ liệu với các giá trị sloVTime ngưỡng, sô

ngày phân tách là 5, 7, 10 và thu được một số kết quả như sau:

35

Ngày đăng: 21/05/2025, 20:33

HÌNH ẢNH LIÊN QUAN

Hình  2.1  Dit  ligu  thu  duoc  tt  TBDD  sw  dung  Hé  diéu  hanh  Android - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 2.1 Dit ligu thu duoc tt TBDD sw dung Hé diéu hanh Android (Trang 13)
Hình  3.1  Mô  hình  tổng  quát  khai  phá  dữ  liệu - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 3.1 Mô hình tổng quát khai phá dữ liệu (Trang 21)
Hình  3.5.  Phân  tách  dữ  liệu  theo  khoảng  thời  gian  sử  dụng - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 3.5. Phân tách dữ liệu theo khoảng thời gian sử dụng (Trang 24)
Hình  3.7.  Trường  hợp  1,  2  ứng  dụng  trong  cùng  một  Itemset - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 3.7. Trường hợp 1, 2 ứng dụng trong cùng một Itemset (Trang 25)
Hình  3.6.  Phân  tách  dữ  liệu  theo  thời  gian  trong  cùng  một  ltemset - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 3.6. Phân tách dữ liệu theo thời gian trong cùng một ltemset (Trang 25)
Hình  3.8.  Trường  hợp  2,  2  ứng  dụng  trong  cùng một  liemset - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 3.8. Trường hợp 2, 2 ứng dụng trong cùng một liemset (Trang 26)
Bảng  3.3  chuỗi  con  chứa  &lt;df&gt;  va  khadny  thoi  gian  phan  tach - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
ng 3.3 chuỗi con chứa &lt;df&gt; va khadny thoi gian phan tach (Trang 29)
Hình  4.1  Giao  điện  của  chương  trình - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 4.1 Giao điện của chương trình (Trang 31)
Hình  4.2  Đồ  thị  so  sánh  giữa  2  giải  pháp  phân  tách  bộ  đữ  liệu  1  với  minSup - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 4.2 Đồ thị so sánh giữa 2 giải pháp phân tách bộ đữ liệu 1 với minSup (Trang 34)
Để  so  sánh,  chúng  tôi  lấy  kết  quả  tại  2  bảng  là  Bang  4.2  va  Bang  4.3  dé - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
so sánh, chúng tôi lấy kết quả tại 2 bảng là Bang 4.2 va Bang 4.3 dé (Trang 34)
Hình  4.3  Đô  thị  so  sánh  giữa  2  giải  pháp  phân  tách  bộ  đữ  liệu  1  với  minSup - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 4.3 Đô thị so sánh giữa 2 giải pháp phân tách bộ đữ liệu 1 với minSup (Trang 35)
W  |mimStp  (%)  Paltern  l  Pattern  2  Hình  vế - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
mim Stp (%) Paltern l Pattern 2 Hình vế (Trang 37)
Hình  4.5  Đồ  thị  so  sánh  giữa  2  giải  pháp  phân  tách  bộ  dữ  liệu  2 - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh 4.5 Đồ thị so sánh giữa 2 giải pháp phân tách bộ dữ liệu 2 (Trang 39)
Hình  A.4  Mã  nguồn  để  thực  thí  giải  thuật  tính  số  lượng  Pattern  ứng  với  tham  số - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
nh A.4 Mã nguồn để thực thí giải thuật tính số lượng Pattern ứng với tham số (Trang 45)
Bảng A.11  Dữ  liệu  sau  khi  được  tính  toán  và  đảnh  dấu  loại  bỏ  vòng  lặp  4 - Luận văn Ứng dụng phân tích mẫu chuỗi tuần tự vào việc phát hiện thói quen sử dụng các Ứng dụng trên thiết bị di Động
ng A.11 Dữ liệu sau khi được tính toán và đảnh dấu loại bỏ vòng lặp 4 (Trang 52)

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w