Mục đích nghiên cứu của Luận văn là tập trung vào tìm hiểu kỹ thuật tư vấn này, dựa trên hành vi duyệt website của người dùng nhằm đưa ra các phân tích để tư vấn cho người quản trị website có thể nắm bắt được nhu cầu, xu hướng của người dùng website của mình. Mời các bạn cùng tham khảo!
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Nguyễn Văn Tiến PHÁT TRIỂN GIẢI PHÁP THU THẬP VÀ PHÂN TÍCH LOG TRUY CẬP WEBSITE SỬ DỤNG HỌC KHÔNG GIÁM SÁT Chun ngành: Hệ thống thơng tin Mã số: 8.48.01.04 TĨM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI - 2020 Luận văn hồn thành tại: HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG Người hướng dẫn khoa học: GS TS Từ Minh Phương Phản biện 1: PGS TS Trần Đăng Hưng Phản biện 2: TS Ngô Xuân Bách Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Cơng nghệ Bưu Viễn thông Vào lúc: 20 phút ngày 11 tháng 01 năm 2020 Có thể tìm hiểu luận văn tại: - Thư viện Học viện Cơng nghệ Bưu Viễn thông MỞ ĐẦU Hiện nay, số lượng website toàn cầu lớn, lên tới 1,24 tỉ website (tính đến năm 2018), số lượng website phát triển thêm hàng nghìn ngày Dữ liệu truy cập trang web với số lượng người dùng khổng lồ chứa nhiều thông tin Các máy chủ lưu trữ website có giải pháp ghi log truy cập website Log truy cập website bảng ghi nhật ký truy cập từ tất người dùng tương tác với website Thơng thường, việc ghi nhật ký website phía máy chủ nhằm mục đích phân tích, đánh giá lưu lượng truy cập website để kiểm soát hiệu hệ thống, chống xâm nhập bất thường phục vụ bảo mật máy chủ web Cụ thể, luận văn tập trung vào hai vấn đề chính: 1) nghiên cứu phát triển giải pháp ghi lại tương tác người dùng với nội dung website mở trang, click vào đường link trang, click vào nút trang web v.v ; 2) xác định nhóm người dùng có nhu cầu thông tin tương tự dựa log tương tác ghi lại nội dung Thông tin nhóm người dùng hiển thị trực quan sử dụng để phân tích đối tượng sử dụng website, từ cải thiện cấu trúc nội dung website Hai vấn đề nghiên cứu luận văn hai tốn riêng phân tích liệu Web (Web data mining) nói chung Việc đưa giải pháp thu thập phân tích log website từ phía người dùng vấn đề vơ quan trọng Một kỹ thuật sử dụng phổ biến mang lại hiệu cao kỹ thuật học không giám sát Đề tài luận văn tập trung vào tìm hiểu kỹ thuật tư vấn này, dựa hành vi duyệt website người dùng nhằm đưa phân tích để tư vấn cho người quản trị website nắm bắt nhu cầu, xu hướng người dùng website Từ người quản trị thực thay đổi website trở nên khoa học hơn, thú vị với người dùng Luận văn bao gồm ba chương với nội dung sau: - Chương 1: Tìm hiểu tốn thu thập phân tích log truy cập, giới thiệu tổng quan khai phá liệu, tổng quan giải pháp thu thập, phân tích log truy cập website - Chương 2: Trình bày phương pháp thu thập log phương pháp phân tích log truy cập website sử dụng kỹ thuật phân cụm liệu - Chương 3: Thực nghiệm kết quả: Thử nghiệm triển khai phương pháp thu thập log cài đặt thuật tốn dựa kỹ thuật học khơng giám sát liệu thu thập 2 CHƯƠNG - TỔNG QUAN VỀ LOG TRUY CẬP WEBSITE 1.1 Bài tốn thu thập phân tích log truy cập website Log truy cập hay nhật ký, vết truy cập (gọi tắt log) danh sách ghi mà hệ thống ghi lại xuất yêu cầu truy cập tài nguyên hệ thống Log truy cập website (gọi tắt web log) chứa tất yêu cầu truy cập tài nguyên website Các tài nguyên website file ảnh, mẫu định dạng file mã Javascript Khi người dùng ghé thăm trang web để tìm sản phẩm, máy chủ web tải xuống thông tin ảnh sản phẩm log truy cập ghi lại yêu cầu người dùng đến tài nguyên thông tin ảnh sản phẩm Thu thập log truy cập website trình ghi lại tương tác người dùng với website, ví dụ như: - Xem trang web - Click vào đường dẫn, nút trang web - Cuộn chuột trang web - Điền liệu vào biểu mẫu, tìm kiếm, … Bài tốn phân tích log truy cập website toán thuộc lĩnh vực khai phá liệu có: - Đầu vào: Các ghi liệu truy cập hệ thống hành vi người dùng - Đầu ra: Các kết phân tích hệ thống làm sở để đánh giá, cải thiện chất lượng website Để giải hai toán trên, cần phải tìm hiểu phương pháp thu thập phân tích log nay, xem xét ưu, nhược điểm phương pháp để lựa chọn phương pháp phù hợp 1.2 Các phương pháp thu thập log 1.2.1 Phương pháp thu thập log phía máy chủ Các phần mềm Web server cho phép lưu lại lịch sử tương tác (log tương tác) người dùng với website Cụ thể trình duyệt gửi yêu cầu người dùng máy chủ, thao tác ghi lại file log Hình 1.1 ví dụ đoạn log 3 Hình 1.1: Dữ liệu log thu thập máy chủ Log phía máy chủ web nguồn quan trọng để thực khai thác sử dụng web ghi log lưu trữ lại thông tin người dùng web cung cấp trình duyệt Dữ liệu ghi nhật log máy chủ phản ánh việc truy cập (có thể đồng thời) trang web nhiều người dùng khác Những tập tin log lưu trữ định dạng chung dạng mở rộng Ưu điểm phương pháp thu thập log phía máy chủ thường kèm cài đặt máy chủ web, người quản trị không cần cài đặt thêm phần mềm bên thứ ba, khơng cần thay đổi mã nguồn website phía backend frontend Tuy nhiên, có nhiều cơng cụ phát triển sẵn với nhiều tính nâng cao cho việc thu thập log truy cập Hình 1.2: Mơ hình thu thập log phía máy chủ 1.2.2 Phương pháp thu thập log phía máy khách Thu thập log phía máy cài đặt cách sử dụng mã hỗ trợ trình duyệt (như Javascripts Java applets) cách thay đổi mã nguồn có sẵn trình duyệt(như Mosaic hay Mozilla) để tăng cường khả thu thập liệu Việc cài đặt thu thập liệu log phía máy khách địi hỏi phải có hợp tác từ phía người dùng, họ cần phải bật chức cho phép JavaScripts hay Java applets Hình 1.3: Mơ hình thu thập log phía máy khách Trong luận văn giới thiệu phần mềm thu thập log phía máy khách Google Analytics (do Google phát triển) Countly (Mã nguồn mở - tự cài đặt) 1.2.2.1 Phần mềm thu thập log Google Analytics Google Analytics dịch vụ phân tích trang web miễn phí cung cấp cho người quản trị công cụ để đo lường thành công trang web liên quan đến tiếp thị, tối ưu hóa nội dung thương mại điện tử Google Analytics sử dụng kết hợp cookie phiên tạm thời để theo dõi hành vi trực tuyến khách truy cập Google Analytics sử dụng cookie bên thứ để xác định khách truy cập Bằng cách truy cập trang web, khách truy cập kích hoạt JavaScript này, thông tin cookie chuyển đến tài khoản Google Analytics người quản trị 5 1.2.2.2 Phần mềm thu thập log Countly Countly phần mềm phân tích web, ứng dụng nguồn mở viết NodeJS sử dụng sở liệu MongoDB, Countly so sánh với Google Analytics, Countly phần mềm máy chủ mà cài đặt chạy máy chủ riêng họ, Google Analytics dịch vụ phần mềm Google cung cấp Ứng dụng giúp quản trị viên theo dõi quan sát luồng lượt xem trang web Là khung phân tích web chung, Counlty mở rộng để theo dõi phân tích ứng dụng web Cả Google Analytics Countly có điểm mạnh riêng, hỗ trợ khả ghi lại tương tác người dùng trực tiếp website Google Analytics Countly có báo cáo lưu lượng, phân tích hành vi người dùng, báo cáo theo thời gian thực với nhiều thông tin thu thập từ người dùng Tuy nhiên, với Google Analytics, cáo báo cáo, thuật toán Google phát triển thêm vào tính theo thời gian, cịn Countly, mã nguồn mở, nên có độ tùy biến cao Chúng ta hồn tồn chủ động phát triển thêm tính để thêm vào hệ thống có 1.2.3 Phương pháp thu thập log qua proxy Máy chủ proxy hoạt động cổng nối người dùng Internet Đây máy chủ trung gian người dùng cuối trang web họ truy cập Các máy chủ proxy cung cấp chức năng, bảo mật riêng tư khác phụ thuộc vào nhu cầu quản trị viên sách công ty Thu thập log thông qua proxy thực máy chủ trung gian Phương pháp thu thập yêu cầu duyệt web từ phía máy khách Tuy nhiên, hành vi người dùng nhấp chuột, hay cuộn chuột không thu thập Hiệu suất proxy phụ thuộc nhiều vào khả dự đốn xác u cầu duyệt web người dùng tương lai Phân tích log truy cập qua proxy chủ yếu nhằm giúp cải thiện hiệu suất proxy để giảm giá thành chi phí Internet nội cơng ty, tổ chức Hình 1.4 cho thấy cách hoạt động phương pháp thu thập log thơng qua proxy 6 Hình 1.4: Mơ hình thu thập log qua proxy Trong giải pháp trên, để thực khai phá liệu hành vi người dùng trang web giải pháp thu thập log phía máy khách phù hợp với nhiều tiêu chí liệu có tính thực tế cao, chi phí triển khai thấp so với giải pháp cịn lại 1.3 Phương pháp phân tích log Có nhiều phương pháp phân tích log truy cập khác nhau, tùy vào mục đích phân tích có độ phức tạp khác Ví dụ cần đưa thống kê lượt xem, xem sử dụng phương pháp thống kê đơn giản sử dụng dạng bảng biểu, biểu đồ để thể Luận văn tập trung vào việc xác định nhóm người dùng có nhu cầu thơng tin tương tự Việc xác định nhóm người dùng thực phương pháp phân cụm - phương pháp học máy không giám sát 1.3.1 Giới thiệu học không giám sát Học khơng giám sát (Unsupervised Learning) nhóm thuật toán học máy phân chia phương thức học Trong thuật tốn này, khơng biết kết đầu hay nhãn mà có liệu đầu vào Thuật tốn học khơng giám sát dựa vào cấu trúc liệu để thực cơng việc đó, ví dụ phân cụm (clustering) giảm số chiều liệu (dimension reduction) để thuận tiện việc lưu trữ tính tốn Các tốn học khơng giám sát chia thành hai loại: - Phân cụm (clustering) - Học luật kết hợp (association rule mining 1.3.2 Một số kỹ thuật phân cụm liệu Ta khái quát hóa khái niệm Phân cụm liệu: Phân cụm liệu kỹ thuật khai phá liệu, nhằm tìm kiếm, phát cụm, mẫu liệu tự nhiên, tiềm ẩn, quan trọng tập liệu lớn từ cung cấp thơng tin, tri thức hữu ích cho việc định Như vậy, phân cụm liệu trình phân chia liệu ban đầu thành cụm liệu cho phần tử cụm tương tự với phần tử cụm khác không tương tự với Số cụm liệu phân xác định trước theo kinh nghiệm tự động xác định phương pháp phân cụm Trong học máy, Phân cụm liệu coi thuật tốn học khơng giám sát, số kỹ thuật phân cụm phổ biến thường sử dụng là: phân cụm phân hoạch, phân cụm phân cấp phân cụm theo mật độ 1.3.2.1 Phân cụm phân hoạch Giới thiệu phân cụm phân hoạch 1.3.2.2 Phân cụm theo mật độ Giới thiệu phân cụm theo mật độ 1.3.2.3 Phân cụm phân cấp Giới thiệu phân cụm phân cấp, áp dụng phân cụm phân cấp phân tích log 1.4 Kết luận chương Chương trình bày khái niệm log truy cập, tốn thu thập phân tích log truy cập Chương giới thiệu tổng quan giải pháp thu thập log kỹ thuật phân tích log phương pháp học không giám sát 8 CHƯƠNG - CÁC KỸ THUẬT PHÂN TÍCH LOG TRUY NHẬP 2.1 Xây dựng công cụ thu thập log Ngày nay, công cụ phân tích website cải tiến khơng ngừng Nó hỗ trợ cho người quản trị website nằm số liệu thống kê, phân tích website Một số cơng cụ cịn dựa vào cookies, thơng tin trình duyệt, kết hợp với kho liệu khổng lồ họ để xác định độ tuổi, giới tính, sở thích người dùng để đưa phân tích chuyên sâu nhằm tối ưu lợi nhuận bán hàng cho trang thương mại điện tử Trong chương 1, ta xem xét đặc điểm giải pháp thu thập log Trong giải pháp, thu thập log phía máy khách có nhiều ưu điểm phù hợp cho việc thu thập log truy cập phục vụ cho trình khai phá liệu phân cụm người dùng Hình 2.1: Sơ đồ mơ tả hoạt động hệ thống thu thập log Hình 2.1 mơ tải q trình hoạt động hệ thống thu thập log hoàn chỉnh người dùng truy cập vào website Như vậy, Cần phải cài đặt thêm phần mềm máy chủ thu thập log, phần mềm có khả sinh mã nhúng Javascript để tích hợp vào máy chủ web có Qua khảo sát số phần mềm hỗ trợ thu thập log phía máy khách, Countly chương trình mã nguồn mở xây dựng ngơn ngữ NodeJS với nhiều tính bật Tuy nhiên công cụ xây dựng để phân tích, thống kê liệu duyệt web người dùng Do liệu log khơng lưu lại mà phục vụ cho việc tính tốn, thống kê theo giai đoạn Để thu thập số lượng ghi đủ dùng cho thuật toán khai phá liệu, cần phải phát triển thêm mã nguồn Countly Ban đầu, Countly lưu lại 1000 ghi log truy cập website gần cho website theo dõi Countly Do giới hạn lưu trữ, khơng thể lưu tồn liệu log truy cập, trang web có số lượng truy cập lớn số lượng ghi tăng nhanh dẫn đến việc tải làm Countly ngừng hoạt động Số lượng ghi lưu lại cần tính tốn, cân đối phù hợp với cấu hình máy chủ thiết lập lưu sang máy chủ khác để đảm bảo hoạt động máy chủ thu thập liệu 2.2 Xây dựng đồ thị tương tự Sau thu thập log, liệu thống kê có danh sách người dùng truy cập website Tập hợp người dùng coi nhóm người dùng lớn Mỗi người dùng có mối quan tâm, sở thích khác Tuy nhiên có nhiều người dùng lại có sở thích, mối quan tâm tương đồng Việc đánh giá sở thích, mối quan tâm người dùng tập hợp người dùng có nhiều điểm khác khó khăn Muốn tìm hiểu mối quan tâm người dùng với website, ta phải chia nhóm người dùng lớn thành nhóm người dùng nhỏ hơn, thành viên nhóm người dùng có sở thích tương tự với nhóm, nhóm khác có mối quan tâm khác Trong phạm vi luận văn, hai người dùng coi có sở thích giống xem thông tin giống Thông tin xác định mức khác Cụ thể, hai người dùng coi tương tự nếu: a Cùng xem trang Web giống b Cùng xem trang Web thuộc thể loại giống c Cùng xem trang Web chủ để giống Sau xác định độ tương tự đôi người dùng, sử dụng kỹ thuật phân cụm để xác định nhóm người dùng sở thích Phân cụm liệu phương pháp học máy không giám sát giới thiệu chương Hình 2.2 minh họa cho trình phân cụm người dùng 10 Hình 2.2: Hình minh họa phân cụm người dùng Dữ liệu log thu thập lưu trữ dạng ghi, ghi thể thao tác ghé thăm trang web người dùng hành vi người dùng trang web cuộn trang web, click vào đường dẫn, hình ảnh, Phân cụm người dùng q trình xác định nhóm người dùng có điểm giống nhau, cần biểu diễn liệu dạng đồ thị thể tương tự người dùng hệ thống (gọi tắt đồ thị tương tự) Do cần phải xử lý liệu ghi để chuyển liệu sang dạng đồ thị Hình 2.4 cho thấy ví dụ đồ thị đơn giản thể mối tương tự người dùng Đỉnh đồ thị đại diện cho người dùng, cạnh hai đỉnh thể độ tương tự hai người dùng Hình 2.3: Đồ thị vô hướng thể độ tương tự người dùng Quá trình xây dựng đồ thị tương tự gồm bước: Loại bỏ ghi dư thừa, Xác định chủ đề cho trang web, Xác định độ tương tự người dùng 11 2.2.1 Loại bỏ ghi dư thừa Dựa vào đặc điểm nội dung trang web, liệu cần thiết để loại bỏ liệu cần thiết giúp tiết kiệm thời gian xử lý 2.2.2 Xác định chuyên mục, chủ đề Để phân tích, đánh giá kết phân cụm, cần xác định chuyên mục, thể loại trang web Ví dụ, nhóm trang web tin tức thể thao, trị, … Một số website có hệ thống chuyên mục xác định sẵn, số website không phân trang web vào chuyên mục cố định trước Đối với trang web không chia chuyên mục cố định, ta sử dụng thuật toán LDA (Latent Dirichlet Allocation) để xác định chủ đề cho trang web 2.2.3 Xác định độ tương tự người dùng Có thể có nhiều cách xác định độ tương tự hai người dùng Ví dụ: Có thể dựa vào chuỗi kiện tương tác người dùng, dựa vào số lượt ghé thăm trang web hai người dùng Trong luận văn sử dụng số lượt ghé thăm trang web để làm sở xác định độ tương tự hai người dùng Sau chuẩn hóa liệu ghi chuẩn bị liệu cần thiết, ta biểu diễn liệu dạng đồ thị tương tự Đồ thị theo trang web: Trọng số đồ thị giá trị simpage_visit(up, uq) Đồ thị theo trang chuyên mục: Trọng số đồ thị giá trị simcate_visit(up, uq) Đồ thị theo trang chủ đề: Trọng số đồ thị giá trị simtopic_visit(up, uq) Hình 2.4: Ví dụ đồ thị tương tự người dùng 12 2.3 Phân cụm người dùng Sau xác định độ tương tự người dùng, xây dựng đồ thị mối quan tâm tương đồng người dùng, bước phân cụm người dùng có mối quan tâm cách phân cụm đồ thị tương tự Phương pháp phân cụm xác định mối quan tâm người dùng từ liệu hành vi duyệt web người dùng Phương pháp phân cụm người dùng thành nhóm người dùng có mối quan tâm, sở thích cách phân cụm đồ thị tương tự, đỉnh người dùng cạnh thể tương đồng hành vi duyệt web hai người dùng xây dựng phần 2.4 Xác định ý nghĩa cụm người dùng Sở thích người dùng suy ý nghĩa từ cụm loại đồ thị tương tự Đồ thị theo chuyên mục: Đối với cụm, số lượng người dùng truy cập chuyên mục tính tốn Sau đó, chọn chun mục Nc đầu tiên, có số lượng người dùng truy cập lớn cho cụm Tên chuyên mục Nc đại diện cho mối quan tâm người dùng cụm Đồ thị theo chủ đề: Đối với cụm, số lượng người dùng truy cập chủ đề tính tốn Theo mơ hình LDA, chủ đề kết hợp từ khóa từ khóa đóng góp trọng số định cho chủ đề Ta chọn K từ khóa cho chủ đề Sau đó, chọn Nt chủ đề phổ biến có số lượng người dùng truy cập lớn cho cụm Sự kết hợp từ khóa từ chủ đề chọn Nt đóng vai trị giải thích cho mối quan tâm người dùng Đồ thị theo trang web: Đối với cụm đồ thị trang, xác định nhóm trang mà người dùng truy cập số lượng người dùng truy cập vào nhóm Khơng thể khám phá mối quan tâm người dùng cụm cách suy luận trực tiếp từ tập hợp trang Tuy nhiên, cơng việc thực thông qua tập hợp chuyên mục chủ đề trang Một trang web thêm vào nhiều chuyên mục Và cách sử dụng mơ hình chủ đề dựa LDA, phân loại tiêu đề trang thành chủ đề cụ thể Sau xác định chuyên mục chủ đề số lượng người dùng truy cập qua trang, phân tích hiểu sở thích người dùng cụm, tương tự trường hợp đồ thị chuyên mục đồ thị theo chủ đề 13 Các chi tiết phương pháp phân tích mối quan tâm người dùng đề xuất thuật toán cụ thể Algorithm User_Interest_Analysis Input: dataset //Tập liệu qua tiền xử lý Output: None Procedure User_interest_analysis(dataset) set_of_titles Trích xuất tập tiêu đề từ dataset; user_list Trích xuất danh sách người dùng từ dataset; LDA_Model Xây dựng LDA Model từ set_of_titles; for each user ui and uj in user_list { page_graph(ui , uj) = simpage_visit(ui,uj); // Xây dựng đồ thị tương tự theo trang web 6 cate_graph(ui , uj) = simcate_visit(ui,uj); // Xây dựng đồ thị tương tự theo chuyên mục 7 topic_graph(ui , uj) = simtopic_visit(ui,uj); // Xây dựng đồ thị tương tự theo chủ đề xác định LDA_Model 8 } //end for 9 Page_SubClustersClustering(page_graph);// Phân cụm đồ thị thành cụm phân cấp 10 10 Cate_SubClustersClustering(cate_graph); 11 11 Topic_SubClustersClustering(topic_graph); 12 12 Topic_TermsPage, Cate_TermsPage Trích xuất từ khóa từ Page_SubClusters cách gán tên chuyên mục chủ đề cho trang web sử dụng LDA_Model; 13 13 TermsCate Trích xuất chuyên mục từ Cate_SubClusters; 14 14 TermsTopic Trích xuất chủ đề từ Topic_SubClusters; 15 15 Hiển thị Topic_TermsPage, Cate_TermsPage, TermsCate, TermsTopic kết phan cụm; End Procedure 2.4 Kết luận chương Chương trình bày cách xây dựng giải pháp kỹ thuật thu tập log, phân tích log Chương trình bày cụ thể bước chi tiết phương pháp xác định nhóm người dùng có điểm giống cách xác định mối quan tâm người dùng từ nhóm 14 CHƯƠNG - CÀI ĐẶT VÀ THỬ NGHIỆM 3.1 Cài đặt công cụ thu thập log truy cập website 3.1.1 Yêu cầu hệ thống Countly thiết kế để chạy máy chủ Linux khơng hỗ trợ tảng hệ điều hành khác Microsoft Windows MacOS Một số hệ điều hành hỗ trợ như: - Ubuntu 16.04, 18.04, 18.10 (không bao gồm Ubuntu 19.4) - Red Hat Enterprise Linux 6.9 trở lên (không bao gồm RHEL 8.0) - CentOS Linux 6.9 trở lên Countly hỗ trợ hệ điều hành có kiến trúc 64bit, yêu cầu môi trường NodeJS 8.x trở lên MongoDB 3.6.x trở lên Về phần cứng, Countly yêu cầu máy chủ có tối thiểu CPUs 2GB RAM để hoạt động Ổ đĩa cứng yêu cầu tối thiểu 20GB Trong luận văn này, cho mục đích thử nghiệm, sử dụng máy chủ có cấu sau: - Hệ điều hành: Ubuntu 16.04 - Phần cứng: CPU: Core, RAM 2GB, SSD 55GB - Môi trường cài đặt đầy đủ theo yêu cầu Countly 3.1.2 Cài đặt hệ thống Cài đặt môi trường NodeJS 8.x Cài đặt MongoDB Sau cài đặt môi trường, tiến hành cài đặt công cụ countly lên máy chủ Các thông số tự động điều chỉnh phù hợp với cấu hình máy chủ cài đặt thông qua chức cài đặt cung cấp Countly Bước tiếp theo, để thu thập liệu, cần phải thêm ứng dụng với thông tin chi tiết Ứng dụng để phân biệt website quản lý chung hệ thống Countly Cuối cùng, cần sinh mã nhũng javascript, mã nhúng nhúng trực tiếp lên website cần tích hợp thu thập liệu 15 Hình 3.1: Mã nhúng tích hợp dành cho website cần thu thập 3.2 Phân tích log truy cập website 3.2.1 Tập liệu thực nghiệm Trong phạm vi luận văn này, để thực nghiệm xây dựng hệ thống thu thập log phân tích log truy cập, liệu log thu thập từ cổng thơng tin Học viện Cơng nghệ Bưu Viễn thơng (PTIT) Trong tập liệu này, ta thu thập tất hành vi người dùng thu thập thông tin trang web chuyên mục tiêu đề Cổng thông tin Học viện Công nghệ Bưu Viễn thơng website cấu trúc thành nhiều trang web con, trang web thuộc nhiều chuyên mục Có tổng số 20 chuyên mục riêng biệt, phổ biến như: Thông báo sinh viên, Tin tức, Đào tạo quốc tế, … Dữ liệu sử dụng để phân tích luận văn thu thập tháng (từ 01/04/2019 – 30/06/2019) với khoảng 150,000 ghi log tương tác người dùng Các thông tin thu thập bao gồm chi tiết hoạt động người dùng xem trang, click, tìm kiếm, nội dung trang web (bao gồm tiêu đề nội dung) Các tác vụ tiền xử lý bao gồm nhận dạng chuyên mục, ước tính thời gian khoảng thời gian người dùng dành cho trang web làm liệu Chuyên mục đăng trang web dễ dàng xác định trường ID chuyên mục chuyên mục trang web Để cải thiện chất lượng liệu, ta xóa liệu khơng liên quan khơng có chun mục người dùng truy cập Trong khoảng thời gian người dùng dành cho trang web, ta tính tốn dựa thời gian hai yêu cầu 16 web liên tiếp người dùng Các nghiên cứu 55% lượt xem trang internet kéo dài 15 giây Thơng thường, khơng q 180 giây Thực nghiệm bỏ qua trang có lượt xem trang kéo dài giây điều cho thấy người dùng khơng có mối quan tâm trang (T = 5) Sau tiền xử lý, số lượng hồ sơ giảm nhiều, so với liệu ban đầu Kết liệu thử nghiệm chứa 5360 người dùng 19 chuyên mục Các mô tả chi tiết liệu nhấp chuột dòng trước sau tiền xử lý liệt kê bảng 3.1 Bảng 3.1: Tập liệu hành vi duyệt web từ website PTIT Portal Giá trị Bộ liệu lọc Số ghi 63000 Số lượng người dùng 5360 Số lượng chuyên mục 19 Thời gian duyệt web trung bình 12,7 giây Số lượng trang web 1017 Để xác định chủ đề cho trang web, thực nghiệm sử dụng cơng cụ LDA từ gói Gensim (https://pypi.org/project/gensim/) LDA áp dụng cho tập hợp tiêu đề trích xuất từ tất trang web liệu Hai tham số LDA nghiên cứu thử nghiệm sử dụng liệu thực number_of_topics (số lượng chủ đề) eta Trong thực nghiệm này, eta 0,01 Nó đủ nhỏ để làm cho chủ đề cấu thành từ vài từ Để dễ dàng hiểu ý nghĩa chủ đề, chủ đề thể năm từ xảy Và sử dụng thủ tục tìm kiếm lưới, number_of_topics 50 giá trị tốt Các giá trị ngưỡng αpage, αcate αtopic thử nghiệm nghiên cứu cách sử dụng liệu Trong thực nghiệm này, sử dụng trang web αpage 0,003, αcate 0,1 αtopic 0,03 Bởi liệu thu thập từ cổng web trường đại học, nhóm người dùng thành nhóm khác khách truy cập, sinh viên trường đại học, sinh viên bên trường đại học, giảng viên nhân viên khác trường đại học Sau đó, nhóm người dùng tên sử dụng phân tích kết thực nghiệm Với kỳ vọng xác định thơng tin có ý nghĩa sở thích người dùng, đối tượng người dùng quan tâm đến nội dung cổng thông tin Dựa 17 cách tiếp cận khác để phân tích thông tin người dùng sử dụng liệu gán nhãn (theo chuyên mục) liệu chưa gán nhán (theo chủ đề) 3.2.2 Xác dịnh số cụm liệu Cần phải xác định số cụm phù hợp với liệu người dùng Không phải số cụm lúc cố định mà tối ưu để phù hợp theo giai đoạn Ví dụ, liệu thu thập hai tháng chia thành cụm tối ưu nhất, tháng tiếp theo, cần chia thành cụm phù hợp Chỉ số Dunn (dunn index) sử dụng để đánh giá kết phân cụm Chỉ số Dunn tính sau: 𝐷= Trong đó: 𝑚𝑖𝑛 𝑠𝑒𝑝𝑎𝑟𝑎𝑡𝑖𝑜𝑛 𝑚𝑎𝑥 𝑑𝑖𝑎𝑚𝑒𝑡𝑒𝑟 min.separation khoảng cách nhỏ cụm khác max.diameter khoảng cách lớn nội cụm (giống đường kính) Nếu tập liệu chứa cụm nhỏ gọn tách biệt, đường kính cụm dự kiến nhỏ khoảng cách cụm dự kiến lớn Do đó, số Dunn nên tối ưu hóa, giá trị D lớn kết phân cụm tối ưu 3.2.3 Kết thực nghiệm Đối với đồ thị theo chuyên mục, Do số trang web không chia vào chuyên mục có chuyên mục tập trung nhiều trang web loại bỏ, 1857 người dùng cụm ban đầu Sau thử nghiệm số chia số cụm ban đầu từ đến 10 cụm, số Dunn tối ưu chia thành cụm 1857 người dùng ban đầu liệu phân thành cụm riêng biệt Trong số cụm này, hai cụm hàng đầu kích thước chứa 600 thành viên cụm khác bị bỏ qua q nhỏ Cụm có cụm phụ quan trọng khác cụm thứ hai có cụm phụ quan trọng Dựa kết phân cụm theo phân cấp hiển thị Bảng 3.2 Bảng 3.3, dễ dàng chia người dùng thành nhóm sở thích 18 Hình 3.2: Kết phân loại người dùng theo chuyên mục Nhóm quan tâm đến Tin tức từ trường đại học, thơng tin tốt nghiệp đào tạo quốc tế Nhóm thứ hai quan tâm đến Thông báo sinh viên, Việc làm không quan tâm đến Tin tức từ trường đại học Có thể phán đốn người dùng nhóm khách truy cập, giảng viên nhân viên khác trường đại học muốn xem tin tức Một số học sinh trung học muốn xem thơng tin nhập học phần cịn lại sinh viên trường đại học tốt nghiệp sinh viên xuất sắc tìm kiếm đào tạo quốc tế Người dùng nhóm thứ hai sinh viên bình thường học đại học Những sinh viên không quan tâm đến tin tức chung từ trường đại học mà quan tâm đến thông tin liên quan đến sinh viên Phần lại sinh viên muốn tìm việc thực tập cơng việc Hình 3.5 cho thấy kết phân loại người dùng Bảng 3.2: Kết phân cụm cấp đồ thị theo chuyên mục Số người Cụm cấp dùng Các chuyên mục Cluster 1250 Cluster 622 Tin tức; Thông báo; Thông tin tốt nghiệp, Thông báo văn bằng; Việc làm cho giảng viên; Trao đổi sinh viên Thông báo cho sinh viên; Thông tin tuyển dụng; Tin tức 19 Bảng 3.3: Kết phân cụm cấp đồ thị theo chuyên mục Cụm cấp Cụm cha Sub cluster Sub cluster Số người Các chuyên mục dùng 810 145 Tin tức Thông tin tốt nghiệp; Thông báo văn bằng; Việc làm cho giảng viên Cluster Sub cluster Sub cluster Sub cluster 127 Thông báo; Tin tức 33 Trao đổi sinh viên; Đào tạo quốc tế 527 Thông báo cho sinh viên; Tin tức Cluster Sub cluster 75 Thông tin tuyển dụng; Thông báo sinh viên; Cơ hội việc làm Phân tích cho thấy phận người dùng khơng quan tâm đến tin tức chung chung mà quan tâm đến tin tức liên quan đến nhiệm vụ học tập thi cử Một lý khơng có nhiều tin tức Trong vịng tháng, số lượng viết truy cập khoảng 1.000 Đây thơng tin có giá trị cho quản trị viên cổng thông tin web nhà lãnh đạo trường đại học để giúp cải thiện trang web cách cung cấp nhiều thơng tin hữu ích Đồ thị theo chủ đề, Áp dụng thuật toán phân cụm vào đồ thị chủ đề liệu tiêu đề nội dung trang, người dùng phân thành cụm Do kết tương tự cho hai đồ thị chủ đề, có kết đồ thị theo chủ đề dựa tiêu đề trình bày 20 Bảng 3.4: Kết phân cụm cấp đồ thị theo chủ đề Cụm cấp Số người dùng Cluster 1415 Chủ đề (Thông báo, kết quả, việc làm, điểm chuẩn, chất lượng) (Cơng nghệ, quy, tốt nghiệp, kế hoạch), Cluster 1097 (Khoa, môn, sở hạ tầng, hỗ trợ, hoạt động), (Đại học, sinh viên, an tồn, mơ hình, giảng viên) (Cơng nghệ, bưu chính, sinh viên, ngày hội, khen thưởng), (Học Cluster 1082 bổng, chương trình, thực tập, công nghệ, sách), (Quyết định, cán bộ, thông báo, bổ nhiệm, quy định) Bảng 3.5: Kết phân cụm cấp đồ thị theo chủ đề Cụm cấp Cụm Số người cha dùng 786 Cluster Chủ đề (Cơng nghệ, quy, tốt nghiệp, kế hoạch); (Khoa, môn, sở hạ tầng, hỗ trợ, hoạt động) (PTIT, sinh viên, an tồn, mơ hình); (Khoa học, hội 293 nghị, việc làm, nghiên cứu, giảng viên); (Cơng nghệ, quy, tốt nghiệp, kế hoạch) (Cơng nghệ, bưu chính, sinh viên, ngày hội, khen 1037 Cluster thưởng); (Học bổng, chương trình, thực tập, công nghệ, sách), (Quyết định, cán bộ, thông báo, bổ nhiệm, quy định) 45 (Bưu chính, thơng tin, thơng báo, giáo dục, việc làm) Bảng 3.4 cho thấy cụm cấp 1, có 1.000 người dùng Chỉ có chủ đề cụm Cụm có nhiều ba chủ đề Cả cụm cụm phân cụm thành nhiều hai cụm phụ phần kết giữ lại cụm phụ quan trọng cho ngắn gọn (xem Bảng 3.5) Dựa kết phân cụm theo phân cấp hiển thị Bảng 3.4 Bảng 3.5, dễ dàng chia người dùng thành nhóm quan tâm lớn Nhóm 21 - nhóm lớn quan tâm đến Thơng báo số kết điểm chuẩn Người dùng nhóm thường sinh viên Kết tương tự với kết phân tích đồ thị chun mục Nhóm thứ hai có xu hướng thơng tin trường đại học tin tức Một số lượng lớn người dùng nhóm quan tâm đến thứ liên quan đến chứng / văn (nhóm Bảng 3.5) hoạt động trường đại học Họ sinh viên học xong chờ tốt nghiệp Phần cịn lại ý đến thơng tin nghiên cứu, hội nghị trường đại học Nhóm người dùng cụm quan tâm đến việc khen thưởng sinh viên cho số thi thông tin thực tập học bổng Họ phải học sinh giỏi, thích thử thách thi trường đại học Trên thực tế, thời gian này, nhiều sinh viên trường đại học tham dự thi lập trình trường đại học Samsung tổ chức Một số số họ sinh viên năm thứ ba năm thứ tư tìm kiếm thơng tin chương trình thực tập học bổng từ cơng ty Có thể nhận người dùng / sinh viên nhóm quan tâm tin tức từ trường đại học Những phát giống với kết nhận từ phân tích đồ thị chun mục, khơng có tên chun mục Đồ thị theo trang web Áp dụng thuật toán phân cụm phân cấp vào đồ thị theo trang web, người dùng phân thành cụm Sau đó, trang web, ánh xạ tới chuyên mục chủ đề tương ứng Bảng 3.6 mô tả ba cụm kết phân cụm sau gán tên chuyên mục Từ kết quả, biết số lượng lớn người dùng quan tâm đến Tin tức, sau Thơng báo cho sinh viên, Thơng báo khác tin tức Sinh viên Tất cụm mô tả thông tin giống Kết tương tự gán chủ đề cho trang web theo cụm Lý nhiều trang web cụm khác thuộc thể loại chủ đề Khi gán chuyên mục chủ đề cho trang, chuyên mục chủ đề tương tự xuất trang web khác Nó dẫn đến cụm khác có thơng tin tương tự Bảng 3.6: Kết phân cụm đồ thị theo trang web Cụm Số người dùng Các chuyên mục Cluster 5096 Tin tức, Thông báo sinh viên, Thông báo, Tin tức sinh viên Cluster 184 Tin tức, Thông báo sinh viên, Thông báo, Tin tức sinh viên Cluster 120 Tin tức, Thông báo, Thông báo sinh viên 22 3.2.4 Xây dựng giao diện cơng cụ phân tích log truy cập Hình 3.3: Giao diện cơng cụ phân tích log truy cập website Với quy trình thu thập xử lý log thực nghiệm này, để thuận lợi cho trình phân tích log truy cập website đánh giá ý nghĩa kết phân tích Do q trình phân cụm liệu tốn nhiều thời gian để xử lý tùy thuộc vào số lượng ghi liệu nên tác vụ thực nền, quản trị viên xem kết sau q trình phân tích hồn tất 3.4 Kết luận chương Chương trình bày trình thực nghiệm kết từ liệu thực tế áp dụng kỹ thuật đề xuất chương để đưa kết phân cụm người dùng Kết phân tích phát số mối quan tâm người dùng Những kết cung cấp hỗ trợ đáng kể cho quản trị viên website để tối ưu hóa cấu trúc trang web cải thiện chiến lược đề xuất trang web 23 KẾT LUẬN VÀ KIẾN NGHỊ Luận văn tập trung nghiên cứu khai phá sử dụng web, log truy cập, kỹ thuật thu thập log truy cập website, kỹ thuật xử lý phân tích log Cụ thể luận văn đạt kết sau: Nghiên cứu khái niệm khai phá liệu, khai phá sử dụng web, tìm hiểu trình khai phá sử dụng web, tổng quan nghiên cứu khai phá liệu Nghiên cứu kỹ thuật thu thập log để biết tình trạng hoạt động máy chủ dịch vụ, nắm bắt hành vi người dùng, giúp cải thiện hệ thống thu thập log có Nghiên cứu học không giám sát kỹ thuật phân cụm liệu để áp dụng kỹ thuật xử lý log phân tích log truy cập website Đưa mơ hình thử nghiệm với đầy đủ bước thu thập, chuẩn hóa, xử lý phân tích log, triển khai sử dụng thực tế Luận văn phát triển hướng sau: Tiếp tục thử nghiệm với liệu log số cổng thông tin điện tử khác Xây dựng hệ thống phân tích log truy cập website hồn thiện, đưa báo cáo trực quan, xây dựng hệ thống gợi ý thay đổi nội dung, cấu trúc website tích hợp trực tiếp vào trang quản trị website cho quản trị viên, … Nghiên cứu ứng dụng việc xử lý phân tích log vào nhiều lĩnh vực khác ... liệu, tổng quan giải pháp thu thập, phân tích log truy cập website - Chương 2: Trình bày phương pháp thu thập log phương pháp phân tích log truy cập website sử dụng kỹ thu? ??t phân cụm liệu - Chương... quan giải pháp thu thập log kỹ thu? ??t phân tích log phương pháp học không giám sát 8 CHƯƠNG - CÁC KỸ THU? ??T PHÂN TÍCH LOG TRUY NHẬP 2.1 Xây dựng công cụ thu thập log Ngày nay, công cụ phân tích website. .. triển khai phương pháp thu thập log cài đặt thu? ??t tốn dựa kỹ thu? ??t học khơng giám sát liệu thu thập 2 CHƯƠNG - TỔNG QUAN VỀ LOG TRUY CẬP WEBSITE 1.1 Bài tốn thu thập phân tích log truy cập website