Nghiên cứu một số phương pháp phân cụm nửa giám sát ứng dụng cho bài toán phân cụm dữ liệu web server logs

62 220 0
Nghiên cứu một số phương pháp phân cụm nửa giám sát ứng dụng cho bài toán phân cụm dữ liệu web server logs

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN ĐỨC NGỌC NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN CỤM NỬA GIÁM SÁT ỨNG DỤNG CHO BÀI TOÁN PHÂN CỤM DỮ LIỆU WEB SERVER LOGS LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN, 2018 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN ĐỨC NGỌC NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN CỤM NỬA GIÁM SÁT ỨNG DỤNG CHO BÀI TOÁN PHÂN CỤM DỮ LIỆU WEB SERVER LOGS Chuyên ngành: Khoa học máy tính Mã số: 8480101 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: TS Vũ Việt Vũ THÁI NGUYÊN, 2018 i LỜI CẢM ƠN Lời đầu tiên, xin gửi lời cảm ơn sâu sắc tới TS Vũ Việt Vũ, người trực tiếp hướng dẫn thực luận văn Thầy tận tình hướng dẫn, cung cấp tài liệu định hướng cho suốt trình nghiên cứu thực luận văn Tơi xin chân thành cảm ơn thầy cô giảng dạy quản lý đào tạo tạo điều kiện cho tơi có mơi trường học tập, nghiên cứu tốt suốt năm theo học Cuối xin gửi lời cảm ơn tới gia đình, bạn bè đồng nghiệp giúp đỡ động viên suốt q trình học tập hồn thiện luận văn Xin chân thành cảm ơn! ii MỤC LỤC MỞ ĐẦU Chương TỔNG QUAN 1.1 Khái niệm học máy toán phân cụm liệu 1.2 Nội dung nghiên cứu luận văn 1.3 Một số phương pháp phân cụm liệu 1.3.1 Phương pháp phân cụm K-Means 11 1.3.2 Phương pháp phân cụm DBSCAN 12 1.3.3 Phương pháp phân cụm dựa đồ thị (GC) 15 1.3.4 Ứng dụng phân cụm liệu 17 1.4 Kết luận 19 Chương MỘT SỐ THUẬT TOÁN PHÂN CỤM NỬA GIÁM SÁT CƠ BẢN 20 2.1 Tổng quan phân cụm nửa giám sát 20 2.2 Thuật toán phân cụm nửa giám sát dựa K-Means 22 2.2.1 Thuật toán COP-KMeans 22 2.2.2 Thuật toán Seed K-Means 24 2.3 Thuật toán phân cụm nửa giám sát dựa mật độ: SSDBSCAN 27 2.4 Thuật toán phân cụm nửa giám sát dựa đồ thị (SSGC) 33 2.5 Kết luận 37 Chương KẾT QUẢ THỰC NGHIỆM 38 3.1 Giới thiệu liệu web server logs 38 3.1.1 Tiền xử lý liệu 38 3.1.2 Phương pháp đánh giá chất lượng phân cụm 42 3.1.3 Thuật toán phân cụm 43 ii 3.2 Kết phân cụm tập web server logs 43 3.3 Kết luận 47 iii KẾT LUẬN 48  Những kết đạt 48  Hướng phát triển tếp theo đề tài 48 TÀI LIỆU THAM KHẢO 49 iv DANH MỤC CÁC BẢNG BIỂU Bảng 1.1 Ví dụ liệu sau chuyển đổi thành vector Bảng 3.1 Ví dụ liệu sau chuyển đổi dạng vector 411 v DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1 Các hướng nghiên cứu Trí tuệ nhân tạo Hình 1.2 Các lĩnh vực liên quan với học máy Hình 1.3 Các tốn khai phá liệu web (web mining) Hình 1.4 Ví dụ liệu log server webs Hình 1.5 Ví dụ phân cụm liệu 10 Hình 1.6 Minh họa thuật toán K-Means 10 Hình 1.7 Thuật tốn K-Means 11 Hình 1.8 Thuật tốn DBSCAN 13 Hình 1.9 Thuật tốn DBSCAN: thủ tục Expandcluster 14 Hình 1.10 Ví dụ phân cụm sử dụng thuật toán DBSCAN 15 Hình 1.11 Ví dụ phân cụm sử dụng đồ thị 16 Hình 2.1.Dữ liệu đầu vào cho loại thuật toán học 20 Hình 2.2 Minh họa thuật toán COP-Kmeans 23 Hình 2.3 Kết so sánh thuật tốn COP-KMeans cho tập liệu tic-tactoe 23 Hình 2.4 Kết so sánh thuật toán COP-KMeans cho tập liệu Soybean 24 Hình 2.5 Thuật toán Seed K-Means 25 Hình 2.6 Kết phân cụm cho tập liệu Newgroups 26 Hình 2.7 Kết phân cụm cho tập Yahoo 27 Hình 2.8 Dữ liệu với cluster A, B, C Tuy nhiên giá trị phù hợp MinPts  để DBSCAN phát ba cluster 28 Hình 2.9 Kết phân cụm thuật tốn SSDBSCAN tập liệu từ UCI 32 Hình 2.10 So sánh tốc độ thực thuật toán SSGC thuật toán SSDBSCAN 36 Hình 2.11 Kết thuật toán SSGC so sánh với thuật toán loại 37 Hình 3.1 Ví dụ số dòng liệu log server web 38 Hình 3.2 Địa IP truy cập người dùng 39 Hình 3.3 Ký hiệu mục website 40 vi Hình 3.4 Danh sách seed sử dụng phân cụm 43 MỞ ĐẦU Trong vài thập niên gần đây, với thay đổi phát triển không ngừng ngành cơng nghệ thơng tin nói chung ngành công nghệ phần cứng, phần mềm, truyền thông hệ thống liệu phục vụ lĩnh vực kinh tế - xã hội nói riêng Việc thu thập thông tin nhu cầu lưu trữ thơng tin ngày lớn Bên cạnh việc tn học hố cách ạt nhanh chóng hoạt động sản xuất, kinh doanh nhiều lĩnh vực hoạt động khác tạo cho lượng liệu lưu trữ khổng lồ Hàng triệu Cơ sở liệu sử dụng hoạt động sản xuất, kinh doanh, quản lý , có nhiều Cơ sở liệu cực lớn cỡ Gigabyte, chí Terabyte Sự bùng nổ dẫn tới yêu cầu cấp thiết cần có kĩ thuật cơng cụ để tự động chuyển đổi lượng liệu khổng lồ thành tri thức có ích Từ đó, kĩ thuật Khai phá liệu trở thành lĩnh vực thời Công nghệ thông tin giới Một vấn đề đặt phải trích chọn thơng tin có ý nghĩa từ tập liệu lớn để từ giải yêu cầu thực tế trợ giúp định, dự đoán,… Khai phá liệu (Data mining) đời nhằm giải yêu cầu Khai phá liệu định nghĩa là: Q trình trích xuất thơng tn có giá trị tiềm ẩn bên lượng lớn liệu lưu trữ Cơ sở liệu, kho liệu… Hiện nay, thuật ngữ khai phá liệu, người ta dùng số thuật ngữ khác có ý nghĩa tương tự như: Khai phá tri thức từ Cơ sở liệu (knowlegde mining from databases), trích lọc liệu (knowlegde extraction), phân tích liệu/mẫu (data/pattern analysis), khảo cổ liệu (data archaeology), nạo vét liệu (data dredging) Nhiều người coi khai phá liệu thuật ngữ thông dụng khác khám phá tri thức Cơ sở Hình 2.11 Kết thuật toán SSGC so sánh với thuật toán loại[8] 2.5 Kết luận Nội dung chương nhằm mục đích nghiên cứu thuật tốn phân cụm nửa giám sát bao gồm thuật toán phân cụm nửa giám sát K- Means, thuật toán SSDBSCAN thuật toán SSGC Đây nghiên cứu tiền đề cho chương để tiến hành thực nghiệm cài đặt phân cụm cho toán phân loại liệu log web Chương KẾT QUẢ THỰC NGHIỆM 3.1 Giới thiệu liệu web server logs 3.1.1 Tiền xử lý liệu Dữ liệu server logs lưu trữ máy chủ, liệu lưu vết truy xuất người dùng truy cập vào website Hình 3.1 minh họa vài dòng liệu log server lấy từ tập liệu sử dụng cho website cụ thể (htps://www.vnu.edu.vn) 4-03 04:02:34 W3SVC1 112.137.142.4 GET /home/Default.asp C1886/N971/Cac-luan-an-Nganh-Tieng-Anh.htm 443 - 14.239.244.221 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+( KHTML,+like+Gecko)+Chrome/65.0.3325.181+Safari/537.36 200 0 2018-04-03 04:02:57 W3SVC1 112.137.142.4 GET /tsk/Default.asp C1654/N19949/Thu-tuong-Nguyen-Xuan-Phuc-tuyen-duong-hoc-sinhgioi.htm 80 - 40.77.167.2 Mozilla/5.0+(compatible;+bingbot/2.0;+ +http://www.bing.com/bingbot.ht m) 200 0 2018-04-03 04:04:28 W3SVC1 112.137.142.4 GET /tsk/Default.asp C1654/N19586/VNU-%E2%80%93-IS:-dao-tao-nguon-nhan-luc-dambao-chat-luong-quoc-te.htm 80 - 180.76.15.157 Mozilla/5.0+(compatble;+Baiduspider/2.0;+ +htp://www.baidu.com/search/s pider.html) 200 0 2018-04-03 04:03:27 W3SVC1 112.137.142.4 GET /tsk/Default.asp C2095/N10239/Huong-dan-dich-quoc-hieu,-chuc-danh,-don-vi,-to-chuc sang-tieng-Anh.htm 443 - 171.253.181.118 Mozilla/5.0+(iPhone;+CPU+iPhone+OS+11_2_6+like+Mac+OS+X)+App leWebKit/604.5.6+(KHTML,+like+Gecko)+Version/11.0+Mobile/15D10 0+Safari/604.1 200 0 Hình 3.1 Ví dụ số dòng liệu log server web Để thực toán phân cụm phải có q trình tiền xử lý liệu, chuyển đổi liệu dạng vector Trên thực tế có số phương pháp để thực Trong luận văn tơi chọn phương pháp thống kê trang web theo lĩnh vực xem xét địa IP truy cập vào trang đó, có giá trị đặt khơng giá trị vector Sau trích dẫn thơng tin cần thiết như: Địa IP người dùng, ký hiệu mục từ logs file truy cập vào website https://www.vnu.edu.vn ngày 03 tháng năm 2018, thu 4745 địa IP người dùng 255 ký hiệu mục website, kết cụ thể sau: 207.46.13.102 207.46.13.102 207.46.13.102 207.46.13.102 171.255.28.192 171.255.28.192 171.255.28.192 171.255.28.192 207.46.13.170 207.46.13.170 207.46.13.170 207.46.13.170 138.201.68.80 138.201.68.80 138.201.68.80 138.201.68.80 66.249.71.64 66.249.71.64 66.249.71.64 66.249.71.64 216.244.66.201 216.244.66.201 216.244.66.201 216.244.66.201 5.45.207.79 5.45.207.79 5.45.207.79 5.45.207.79 125.209.235.167 125.209.235.167 125.209.235.167 125.209.235.167 40.77.167.2 40.77.167.2 40.77.167.2 40.77.167.2 54.36.148.190 54.36.148.190 54.36.148.190 54.36.148.190 66.249.71.92 66.249.71.92 66.249.71.92 66.249.71.92 54.36.148.129 54.36.148.129 54.36.148.129 54.36.148.129 66.249.71.139 66.249.71.139 66.249.71.139 66.249.71.139 144.76.71.83 144.76.71.83 144.76.71.83 144.76.71.83 14.226.232.251 14.226.232.251 14.226.232.251 14.226.232.251 Hình 3.2 Địa IP truy cập người dùng C1654 C1654 C1654 C1654 C2107 C2107 C2107 C2107 C1645 C1645 C1645 C1645 C1990 C1990 C1990 C1990 C2091 C2091 C2091 C2091 C2249 C2249 C2249 C2249 C2099 C2099 C2099 C2099 C2096 C2096 C2096 C2096 C1635 C1635 C1635 C1635 C1657 C1657 C1657 C1657 C2090 C2090 C2090 C2090 C1667 C1667 C1667 C1667 C2095 C2095 C2095 C2095 C2160 C2160 C2160 C2160 C2097 C2097 C2097 C2097 Hình 3.3 Ký hiệu mục website Thực tế cho thấy, với website cụ thể trường Đại học chúng tơi có chun mục sau: - Tin tức kiện - Đào tạo - Giới thiệu - Khoa học công nghệ - Hợp tác phát triển - Tiêu điểm - Sinh viên - Con người thành tựu - Chính trị xã hội - Bản tin Đại học - Đảm bảo chất lượng - Liên hệ - Cán - Tuyển sinh - Nghiên cứu -… Tất nhiên nhiều chuyên mục khác với chuyên mục lại có nhiều chuyên mục khác Bằng thực nghiệm, tơi dễ dàng nhận chun mục có nhiều ký hiệu mục khác Sử dụng phương pháp thống kê, thu gọn 255 ký hiệu mục thành 24 chuyên mục để trình phân cụm dễ dàng Sau đó, liệu chuyển đổi dạng vector bảng 3.2 Nói cách khác, liệu dùng thực nghiệm luận văn có 4745 dòng 24 chiều tương ứng với chuyên mục website Bảng 3.1 Ví dụ liệu sau chuyển đổi dạng vector 111111011010100110000000 111101010110000010000100 111111010100100110100010 111111011000100110000000 111111011100100000000000 100000000000000000000000 000000000100000000000000 100000000000000100000000 100100000000000000000000 100000000000000000000000 100000000000000000000000 Mỗi người dùng vào xem số trang chủ đề cụ thể Sau sử dụng liệu dạng để phân cụm, nhóm người dùng có chủ đề số lượng người nhóm Điều giúp cho việc bố trí trang web tốt 3.1.2 Phương pháp đánh giá chất lượng phân cụm Đối với việc đánh giá kết trình phân cụm chúng tơi sử dụng số Rand Index Chỉ số Rand Index dùng để so sánh kết hai phân cụm P1 P2 có n điểm liệu Giả sử a tổng số cặp xi xj thuộc cụm P1 P2, b tổng số cặp xi xj thuộc hai cụm khác P1 P2, số RI tính cơng thức sau: RI  a b n(n  1) RI có giá trị từ đến 1, RI lớn độ xác q trình phân cụm lớn Chúng lưu ý để thực việc tính tốn số RI phải biết nhãn thực tập liệu 3.1.3 Thuật toán phân cụm Như trình bày chương 2, sử dụng thuật tốn phân cụm Seed K-Means, SSDBSCAN SSGC Trong thực nghiệm chúng tơi sử dụng thuật tốn Seed K-Means cho tập liệu web server logs Chúng chia ma trận vector thành cụm có kích thước khác chọn seed thỏa mãn điều kiện cụm có seed 2111 1260 2174 1402 1001 3032 Hình 3.4 Danh sách seed sử dụng phân cụm 3.2 Kết phân cụm tập web server logs Để thực phân cụm với thuật toán Seed K-Means cần chọn số lượng cụm cần phân tách số điểm lấy làm trọng tâm bước khởi động cho thuật toán K-Means Chẳng hạn với liệu phân tách thành cụm, kết sau: Cum 111111011011010111000000 111111111111110110100000 111111100100110010000000 111111111110101010000000 111111111110111111011000 … Cum 111100000010000000000000 101100000110000000000000 101100000010000000000000 101101000010000000000000 … Cum 001000010000000100000000 001000000000000100000000 001000010000000101000000 001000000000000001000000 001000010000000100000000 … Cum 000100000000000001000010 000100000000000001000010 000100000000000001000110 000100000000000001000010 000100000000000001000010 … Cum 010000000000000000000000 010000000000000000000000 010000000000000000000000 010000000000000000000000 … Cum 111010000000000010000000 100010000000000010000000 100010001100110010000100 100011000000110010000100 … Với kết thu kết từ chương trình sau: Đối với cụm 1: - Ty le xuat hien thuoc tnh cum la: 89.85 % - Ty le xuat hien thuoc tnh cum la: 1.21 % - Ty le xuat hien thuoc tnh cum la: 8.89 % - Ty le xuat hien thuoc tnh cum la: % - Ty le xuat hien thuoc tnh cum la: 1.28 % - Ty le xuat hien thuoc tnh cum la: 0.5 % - Ty le xuat hien thuoc tnh cum la: 0.26 % - Ty le xuat hien thuoc tnh cum la: 0.76 % - Ty le xuat hien thuoc tnh cum la: 0.68 % - Ty le xuat hien thuoc tnh 10 cum la: 0.55 % - Ty le xuat hien thuoc tnh 11 cum la: 0.6 % - Ty le xuat hien thuoc tnh 12 cum la: 0.13 % - Ty le xuat hien thuoc tnh 13 cum la: 0.34 % - Ty le xuat hien thuoc tnh 14 cum la: 0.05 % … Đối với cụm 2: - Ty le xuat hien thuoc tnh cum la: 100 % - Ty le xuat hien thuoc tnh cum la: 7.43 % - Ty le xuat hien thuoc tnh cum la: 12.84 % - Ty le xuat hien thuoc tnh cum la: 100 % - Ty le xuat hien thuoc tnh cum la: 7.09 % - Ty le xuat hien thuoc tnh cum la: 2.7 % - Ty le xuat hien thuoc tnh cum la: 0.68 % - Ty le xuat hien thuoc tnh cum la: 2.03 % - Ty le xuat hien thuoc tnh cum la: 2.03 % - Ty le xuat hien thuoc tnh 10 cum la: 3.04 % - Ty le xuat hien thuoc tnh 11 cum la: 3.38 % -… - Tỷ lệ chủ đề so với tổng sổ lượng phần tử cụm - Phân bố thuộc tính nhiều người truy cập, người truy cập - Số lượng truy cập vào nhiều trang khác - Mối liên hệ chủ nhóm người truy cập chẳng hạn cụm phần lớn chủ để truy cập chủ đề thứ 4, 18, 23; cụm chủ đề số 1, số số 17 3.3 Kết luận Trong chương thực việc phân cụm cho toán khai phá liệu web Thuật toán thử nghiệm Seed KMeans, tương tự cho thuật toán SSDBSCAN hay SSGC Các kết thực cho thấy nhiều điểm khai thác thơng tin từ trình phân cụm chẳng hạn số lượng chủ đề cho cụm, số lượng truy nhập cho cụm, mối quan hệ chủ đề cụm Một hướng nghiên cứu tếp theo hiển thị đồ biểu thị mối quan hệ chủ đề mối quan hệ nhòm người có sở thích truy cập website câu hỏi thú vị KẾT LUẬN  Những kết đạt Sau thực luận văn với chủ đề nghiên cứu toán khai phá liệu web server log phương pháp học máy thu kết sau đây: - Nắm quy trình giải tốn lĩnh vực khai phá liệu phát tri thức đặc biệt toán khai phá liệu web tập liệu ghi vết người dùng - Đã nghiên cứu nắm bắt thuật toán phân cụm phân cụm nửa giám sát Các thuật toán K-Means, DBSCAN, GC, Seed K-Means, SSDBSCAN, SSGC trình bày luận văn Đã hiểu chất q trình phân cụm, khó khăn thách thức toán phân cụm nghiên cứu phân cụm nửa giám sát thời gian gần - Đã thực thử nghiệm số kết sử dụng phương pháp học có nửa giám sát cho toán phân cụm liệu log server web Cụ thể hiểu quy trình chuyển liệu dạng vector từ vết truy cập người dùng ghi server  Hướng phát triển đề tài Do thời gian kiến thức hạn chế, khuôn khổ luận văn nghiên cứu kỹ tồn diện tốn phân cụm vấn đề khai phá liệu web Trong tương lai, số hướng nghiên cứudự kiến tếp tục sau: - Tiếp tục nghiên cứu tìm hiểu lĩnh vực khai phá liệu, đặc biệt khai phá liệu web - Nghiên cứu triển khai hệ thống khai phá liệu web vào thực tế, cho website lĩnh vực khác TÀI LIỆU THAM KHẢO [1] Frost, Sullivan: Artificial Intelligence- R&D and Applicatons Road Map (Dec 2016) [2] https://en.wikipedia.org/wiki/Web_mining [Truy cập tháng 5/2018] [3] Martin Ester, Hans-Peter Kriegel, Jörg Sander, Xiaowei Xu: A DensityBased Algorithm for Discovering Clusters in Large Spatial Databases with Noise In proceeding of SIGKDD Conference on Knowledge Discovery and Data Mining, pp: 226-231, 1996 [4] htps://www.lip6.fr/actualite/personnes-fiche.php?ident=D819&LANG=vi [5] http://www.cs.cmu.edu/~./dgovinda/pdf/icml-2001.pdf [Truy cập tháng 5/2018] [6] Sugato Basu, Arindam Banerjee, Raymond J Mooney, Semi-supervised Clustering by Seeding In proceeding of International Conference on Machine Learning, 2002 [7] Levi Lelis, Jörg Sander: Semi-supervised Density-Based Clustering In proceeding of International Conference on Data Mining, pp: 842-847, 2009 [8] Vu Viet Vu, An eficient Semi-supervised graph based clustering, Intelligent Data Analysis, 22 (2018) 297-307 [9] https://www.semantcscholar.org/paper/Semi-supervised-DensityBased- Clustering-Lelis- Sander/03827b4aef6809ac90487ef1a9d27048088db413 [10] Anil K Jain: Data clustering: 50 years beyond K-means Patern Recognition Letters, vol 31(8), pp: 651-666, 2010 [11] Anand S.S., Mobasher B Intelligent Techniques for Web Personalization In: Mobasher B., Anand S.S (eds) Intelligent Techniques for Web Personalization Lecture Notes in Computer Science, vol 3169 Springer, Berlin, Heidelberg, 2005 [12] Vũ Việt Vũ, Đỗ Hồng Quân, 2017, Density-based clustering with side informaton and active learning In proceeding of Internatonal Conference on Knowledge and Systems Engineering, pp 174-179 [13] Martin Ester, Hans-Peter Kriegel, Jörg Sander, Xiaowei Xu: A DensityBased Algorithm for Discovering Clusters in Large Spatial Databases with Noise KDD, 1996 [14] S Basu, I Davidson, and K L Wagstaf, Constrained Clustering: Advances in Algorithms, Theory, and Applications, Chapman and Hall/CRC Data Mining and Knowledge Discovery Series, 1st edn., 2008 [15] W M Rand Objective criteria for evaluaton of clustering methods Journal of the American Statistical Association, 66(1971), pp 846-850 ... Nghiên cứu tìm hiểu thuật tốn phân cụm liệu - Nghiên cứu nắm bắt số thuật toán phân cụm nửa giám sát bao gồm thuật toán phân cụm nửa giám sát K-Means, thuật toán SSDBSCAN, thuật toán phân cụm nửa giám. .. Phân cụm liệu phương pháp học không giám sát Trong năm trở lại đây, phương pháp phân cụm liệu khơng giám sát số hạn chế dựa học khơng giám sát học có giám sát đời phương pháp phân cụm liệu phương. .. liệu phương pháp phân cụm liệu nửa giám sát Phương pháp phân cụm nửa giám sát phương pháp phân cụm hồn thiện phần khắc phục hạn chế phát huy ưu điểm phương pháp phân cụm không giám sát 3 Chương

Ngày đăng: 05/10/2018, 12:54

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan