Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 62 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
62
Dung lượng
3,04 MB
Nội dung
ĐẠ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ÊNCỨUMỘTSỐPHƯƠNGPHÁPPHÂNCỤMNỬAGIÁMSÁTỨNGDỤNGCHOBÀITOÁNPHÂNCỤMDỮLIỆUWEBSERVERLOGS 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ÊNCỨUMỘTSỐPHƯƠNGPHÁPPHÂNCỤMNỬAGIÁMSÁTỨNGDỤNGCHOBÀITOÁNPHÂNCỤMDỮLIỆUWEBSERVERLOGS 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êncứ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êncứ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ánphâncụmliệu 1.2 Nội dungnghiêncứu luận văn 1.3 Mộtsốphươngphápphâncụmliệu 1.3.1 Phươngphápphâncụm K-Means 11 1.3.2 Phươngphápphâncụm DBSCAN 12 1.3.3 Phươngphápphâncụm dựa đồ thị (GC) 15 1.3.4 Ứngdụngphâncụmliệu 17 1.4 Kết luận 19 Chương MỘTSỐ THUẬT TOÁNPHÂNCỤMNỬAGIÁMSÁT CƠ BẢN 20 2.1 Tổng quan phâncụmnửagiámsát 20 2.2 Thuật toánphâncụmnửagiámsá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ánphâncụmnửagiámsát dựa mật độ: SSDBSCAN 27 2.4 Thuật toánphâncụmnửagiámsá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ệuwebserverlogs 38 3.1.1 Tiền xử lý liệu 38 3.1.2 Phươngpháp đánh giá chất lượng phâncụm 42 3.1.3 Thuật toánphâncụm 43 ii 3.2 Kết phâncụm tập webserverlogs 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êncứ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ệuweb (web mining) Hình 1.4 Ví dụliệu log server webs Hình 1.5 Ví dụphâncụmliệ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âncụm sử dụng thuật toán DBSCAN 15 Hình 1.11 Ví dụphâncụ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âncụmcho tập liệu Newgroups 26 Hình 2.7 Kết phâncụmcho 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âncụ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 serverweb 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ụngphâncụ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ùngsố 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êncứu thuật tốn phâncụmnửagiámsát bao gồm thuật toánphâncụmnửagiámsát K- Means, thuật toán SSDBSCAN thuật toán SSGC Đây nghiêncứu tiền đề cho chương để tiến hành thực nghiệm cài đặt phâncụmchotoánphân loại liệu log web Chương KẾT QUẢ THỰC NGHIỆM 3.1 Giới thiệu liệuwebserverlogs 3.1.1 Tiền xử lý liệuDữliệuserverlogs 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ụngcho 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 serverweb Để thực toánphâncụ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ươngpháp để thực Trong luận văn tơi chọn phươngphá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êncứ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ụngphươngpháp thống kê, thu gọn 255 ký hiệu mục thành 24 chuyên mục để trình phâncụm dễ dàng Sau đó, liệu chuyển đổi dạng vector bảng 3.2 Nói cách khác, liệudù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ụngliệ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ươngpháp đánh giá chất lượng phâncụm Đối với việc đánh giá kết trình phâncụm chúng tơi sử dụngsố Rand Index Chỉ số Rand Index dùng để so sánh kết hai phâncụ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âncụ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ánphâncụm Như trình bày chương 2, sử dụng thuật tốn phâncụ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ệuwebserverlogs 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ụngphâncụm 3.2 Kết phâncụm tập webserverlogs Để thực phâncụ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ệuphâ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ụmphầ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âncụmchotoán khai phá liệuweb 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âncụ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ụmMột hướng nghiêncứu tếp theo hiển thị sơ đồ 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êncứutoán khai phá liệuwebserver log phươngphá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ệuweb tập liệu ghi vết người dùng - Đã nghiêncứu nắm bắt thuật toánphâncụmphâncụmnửagiámsá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ánphâncụmnghiêncứuphâncụmnửagiámsát thời gian gần - Đã thực thử nghiệm số kết sử dụngphươngpháp học có nửagiámsátchotoánphâncụmliệu log serverweb 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êncứu kỹ tồn diện tốn phâncụm vấn đề khai phá liệuweb Trong tương lai, số hướng nghiêncứu mà dự kiến tếp tục sau: - Tiếp tục nghiêncứu tìm hiểu lĩnh vực khai phá liệu, đặc biệt khai phá liệuweb - Nghiêncứu triển khai hệ thống khai phá liệuweb 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