Phân tích hành vi sử dụng web của người dùng

12 419 0
Phân tích hành vi sử dụng web của người dùng

Đ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

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - ĐHQGHN KHOA CÔNG NGHỆ THÔNG TIN CÔNG TRÌNH DỰ THI GIẢI THƯỞNG “SINH VIÊN NGHIÊN CỨU KHOA HỌC” NĂM 2014 Tên công trình: Phân tích hành vi sử dụng web của người dùng Họ và tên sinh viên: Đỗ Thành Trung Nam, Nữ: Nam Lớp: K55C-CLC Khoa: Công nghệ thông tin Người hướng dẫn: ThS. Vũ Quang Dũng Tóm tắt công trình Internet ngày một phát triển, cùng với đó là lượng thông tin khổng lồ. Khi người dùng sử dụng internet để truy cập vào các website, đặt biệt là các website tin tức, người dùng luôn muốn xem những vấn đề theo sở thích cá nhân của mình. Vậy vấn đề đặt ra là làm sao dự đoán được và đưa ra được gợi ý cho người dùng những tin tức mà người dùng có thể quan tâm. Công trình này thực hiện việc phân tích dữ liệu từ những thông tin bắt được về thao tác của người dùng đối với website để đưa ra những dữ liệu cần thiết cho việc phán đoán. 2 Mục lục Tóm tắt công trình......................................................................................................................2 Mục lục.......................................................................................................................................3 1.Đặt vấn đề................................................................................................................................4 2.Giải quyết bài toán..................................................................................................................4 2.1.Mô hình tổng quát............................................................................................................4 2.2.Cơ sở lý thuyết.................................................................................................................5 2.2.1.ABC model (Antecedent-Behavior-Consequence)...................................................5 2.2.2.Phân lớp Bayes..........................................................................................................5 2.3.Tiền xử lý dữ liệu.............................................................................................................6 2.4.Phân tích dữ liệu...............................................................................................................6 2.4.1.Nhóm chủ đề (category) theo thời gian.....................................................................6 2.4.2.Nhóm dữ liệu theo người dùng..................................................................................7 2.4.3.Xác định các tin nổi bật (được truy cập nhiều).........................................................8 2.5.Làm mịn...........................................................................................................................9 2.5.1.Trích xuất từ khóa.....................................................................................................9 2.5.2.Đánh trọng số............................................................................................................9 2.6.Kết quả, ý nghĩa..............................................................................................................10 3.Kết luận.................................................................................................................................11 3.1.Hạn chế còn tồn tại.........................................................................................................11 3.2.Hướng phát triển.............................................................................................................11 Tài liệu tham khảo....................................................................................................................12 3 1. Đặt vấn đề Để có thể phán đoán và đưa ra gợi ý hợp lý cho tin tức mà người dùng có thể quan tâm, việc phân tích dữ liệu tương tác người dùng là vô cùng quan trọng. Với dữ liệu thu thập được từ tương tác người dùng làm sao để có thể biết được người dùng nào thích đọc loại tin nào, vào khoảng thời gian nào hay xu hướng tin tức đọc nhiều của mọi người là gì. Vậy bài toán đặt ra phân tích từ những dữ liệu tương tác của người dùng, làm sao ta có thể nhóm được người dùng cũng như dữ liệu thành các nhóm sở thích và cùng với những luật đưa ra có thể dự đoán một cách chính xác những vấn đề mà người dùng quan tâm. Báo cáo này gồm 3 phần chính: Phần 1: Đặt vấn đề. Phần 2: Giải quyết bài toán. Phần 3: Kết luận. 2. Giải quyết bài toán 2.1. Mô hình tổng quát Ta có mô hình tổng quát hệ thống phân tích dữ liệu người dùng như sau: Hình 1: Mô hình tổng quát luồng hoạt động Trong đó, vai trò của từng phần là: - Tiền xử lý: đưa ra các form theo ABC model để làm chuẩn cho việc phân tích. - Phân tích dữ liệu: Từ thông tin thu được về thao tác người dùng, tiến hành phân tích để đưa ra kết quả theo form đã đưa ra. - Đưa vào CSDL: Đưa kết quả đã phân tích được vào cơ sở dữ liệu. - Làm mịn: Sử dụng phân lớp Bayes để xác định category chính xác hơn cho các tin tức sau đó cập nhật lại cơ sở dữ liệu. Dữ liệu dùng để phân tích có thể lưu trong cơ sở dữ liệu dưới dạng như sau: 4 Hình 2: Cấu trúc cơ sở dữ liệu dùng cho phân tích Trong đó: - Bảng Users: lưu trữ dữ liệu của người dùng. - Bảng Articles: lưu trữ dữ liệu của các tin bao gồm các trường chính: tiêu đề, chủ đề, thời gian post và url của tin đó. - 2.2. Bảng Requests: lưu trữ dữ liệu về các request của người dùng bao gồm các trường chính: định danh người dùng, định danh thông tin và thời gian yêu cầu thông tin. Cơ sở lý thuyết 2.2.1. ABC model (Antecedent-Behavior-Consequence) ABC model (tiền đề - hành vi - kết quả). Tiền đề là sự việc gì đó xảy ra trước khi có hành vi, hành vi lại đưa ra một kết quả nhất định. Theo ABC model, ta có thể đưa ra dự đoán kết quả từ một tiền đề nào đó đã xảy ra. 2.2.2. Phân lớp Bayes Phân lớp Bayes dựa vào khung xác suất để xây dựng bộ phân lớp. Xác xuất điều kiện: Với 2 biến cố A và C: Xác suất có điều kiện của C phụ thuộc A: P(C|A) = Trong đó: - P(A,C) là xác suất xuất hiện cả A và C. - P(A) là xác suất xuất hiện A. Định lý Bayes: P(C|A) = Thuật toán phân lớp Bayes áp dụng trong hệ thống trong việc phân loại chủ đề (category) đối với các tin tức dạng văn bản. Sử dụng xác suất có điều kiện giữa keyword và category, thuật toán cho phép xác định một cách tương đối category của tin tức đang xét. 5 2.3. Tiền xử lý dữ liệu Tại bước này, ta đưa ra các form theo ABC model để dựa vào đó làm mục tiêu và mẫu chuẩn cho việc thống kê và phân tích ở bước sau. Cụ thể ta có một số form như sau. - Form hiển thị tần suất truy cập theo từng ngày trong tháng. Bảng 1: Bảng hiển thị tần suất xem tin của từng category theo các ngày trong tháng Time 1 2 3 4 5 … 26 27 28 29 Category Category1 Category2 Category3 Category4 Category5 … … … … … - Form hiển thị tần suất truy cập theo khoảng thời gian trong ngày. Bảng 2: Bảng hiển thị tần suất xem tin theo từng khoảng thời gian trong ngày Time 0-2 2-4 4-6 6-8 8-12 12-14 1416182016 18 20 22 Category 2224 Category1 Category2 Category3 Category4 Category5 - Form hiển thị tần suất truy cập của mỗi người dùng. Bảng 3: Bảng hiện thị tần suất xem tin của mỗi người dùng đối với các category. Category Category1 Category2 Category3 Category4 Category5 User User1 User2 User3 User4 2.4. Phân tích dữ liệu 2.4.1. Nhóm chủ đề (category) theo thời gian Ta chia một ngày ra làm 12 khoảng ứng với 24 tiếng. Từ dữ liệu request của người dùng, ta biết được tin tức request và thời gian request. Từ dữ liệu tin tức, ta biết được category của bài đó. Tổng hợp lại ta có thể đưa ra số lần truy cập vào từng category trong từng khoảng thời gian và lưu vào cơ sở dữ liệu như hình 4. Với dữ liệu phân tích được, ta có thể xác định được khoảng thời gian nào, người dùng thích truy cập những loại tin nào để đưa ra dự đoán hợp lý. Ta có sơ đồ luồng hoạt động như sau. 6 Hình 3: Luồng hoạt động của Nhóm chủ đề theo thời gian Trong đó: - Bước 1: Lấy thông tin request của người dùng từ cơ sở dữ liệu, bao gồm: định danh người dùng, định danh tin tức và thời gian truy cập. - Bước 2: Xác định khoảng thời gian và category của request. - Bước 3: Kiểm tra xem hang có cặp thời gian và category đó đã tồn tại trong bảng CSDL hay chưa. Nếu đã tồn tại thì tang số lần truy cập của hang đó lên 1. Ngược lại thì tạo một hang mới với thời gian và category đã lấy được cùng số lần truy cập gán là 1. Hình 4: Cấu trúc bảng dữ liệu lưu trữ tần suất truy cập từng category theo thời gian. Hình 4 biểu diễn cấu trúc bảng cơ sở dữ liệu dùng để lưu trữ số lần truy cập theo thời gian của từng category. Trong đó: - cbt_id: lưu trữ id của cặp duration – category. - cbt_category: lưu trữ tên category của tin được request. - cbt_duration: lưu trữ khoảng thời gian trong ngày. - cbt_numberaccess: lưu trữ số lần của truy cập của category trong khoảng thời gian ứng với 2 trường cbt_category và cbt_duration. 2.4.2. Nhóm dữ liệu theo người dùng Từ dữ liệu request của người dùng, ta có thể biết được người dùng nào request tin tức nào rồi từ đó đưa ra được loại tin nào được người dùng thường xuyên truy cập nhất. Tương tự với nhóm chủ theo thời gian ta có sơ đồ luồng hoạt động như sau: 7 Hình 5: Luồng hoạt động của Nhóm dữ liệu theo người dùng Trong đó: - Bước 1: Lấy thông tin request của người dùng từ cơ sở dữ liệu, bao gồm: định danh người dùng và định danh tin tức. - Bước 2: Xác định user và category của request. - Bước 3: Kiểm tra xem hàng có cặp user và category đó đã tồn tại trong bảng CSDL hay chưa. Nếu đã tồn tại thì tăng số lần truy cập của hàng đó lên 1. Ngược lại thì tạo một hang mới với user và category đã lấy được cùng số lần truy cập gán là 1. Hình 6: Cấu trúc bảng dữ liệu tần suất truy cập từng category của mỗi người dùng Hình 6 biểu diễn cấu trúc bảng lưu trữ số lần truy cập của người dùng đối với mỗi category. Trong đó: - cbu_id: lưu trữ id của đối tượng. - cbu_user: lưu trữ user id của người dùng gửi request. - cbu_category: lưu trữ category được request. - cbu_numberaccess: lưu trữ số lần truy cập vào category của user ứng với 2 trường cbu_user và cbu_category. 2.4.3. Xác định các tin nổi bật (được truy cập nhiều) Đối với mỗi category, lại tìm ra những tin tức nổi bật trong ngày tương ứng với những tin có số lượng truy cập nhiều hơn các tin khác. Tìm ra những tin nổi bật đồng nghĩa với những tin đó đang nóng và nó thu hút sự chú ý của mọi người. Trường article_numberaccess được thêm vào bảng Articles để lưu trữ số lần truy cập của thông tin đó. 8 Hình 7: Bảng lưu trữ dữ liệu về các tin tức. 2.5. Làm mịn 2.5.1. Trích xuất từ khóa Đầu vào: tập dữ liệu Dtrain gồm các tin tức dạng văn bảng đã được phân chia category sẵn. Đầu ra: danh sách các từ khóa cùng số lần xuất hiện trong mỗi category. Từ nội dung của mỗi trang tin tức, ta tiến hành trích ra các từ khóa và đếm số lần xuất hiện của từ khóa đó. Mô hình luồng hoạt động được thể hiện như hình 6. Hình 8: Mô hình luồng hoạt động trích xuất từ khóa Trong đó vai trò của các module là: - Tách từ khóa: tự nội dung tin tức, tách ra các từ với độ dài khác nhau trong bài. - Chuẩn hóa từ: chuẩn hóa từ, loại bỏ các dấu câu còn xót từ quá trình tách từ khóa. - Đếm số lần xuất hiện: đếm số lần xuất hiện của từ khóa đó trong mỗi category. - Lọc từ khóa: bỏ đi các từ khóa ít xuất hiện hoặc không quan trọng. 2.5.2. Đánh trọng số Từ số lần xuất hiện của các từ khóa trong mỗi category, ta tinh tỉ lệ và đưa ra trọng số của từng từ khóa trong mỗi category tương ứng. Sau đó lưu vào cơ sở dữ liệu như hình 7. 9 Hình 9: Bảng cơ sở dữ liệu keyword Trong đó: - keyword_id: lưu trữ id của keyword. - keyword_name: nội dung từ khóa. - keyword_category: category có xuất hiện từ khóa. - keyword_weight: trọng số của từ khóa đối với category được lưu trữ trong trường keyword_category. 2.6. Kết quả, ý nghĩa Kết quả công trình đạt được đó là nền tảng cơ bản để có thể xác định sở thích truy cập tin tức của người dung, kết hợp với việc đặt ra các luật để từ đó xây dựng hệ thống dự đoán, gợi ý các tin tức mà người dùng có thể quan tâm. Một số kết quả đã phân tích được trong thực nghiệm: Hình 10: Form biểu diễn số lần truy cập category theo thời gian 10 Hình 11: Form biểu diễn số lần truy cập từng category theo từng ngày 3. Kết luận 3.1. Hạn chế còn tồn tại Bên cạnh các kết quả đạt được vẫn còn nhiều hạn chế còn tồn tại: - Việc phân tích chưa xét đến liên kết giữa các tin tức để có thể đưa ra các tin liên quan. - Keyword chưa được lọc tối ưu, vẫn còn tồn tại các từ không hợp lệ, không có nghĩa. - Keyword chưa phân biệt được danh từ chung và danh từ riêng. 3.2. Hướng phát triển Dựa vào các kết quả đạt được, hướng phát triển sắp tới của công trình sẽ tập trung vào: - Xác định liên kết (dấu trang) của tin tức. - Hoàn thiện việc trích xuất keyword. - Ghép bộ trích xuất keyword và bộ tiền xử lý để có thể đưa ra các keyword theo sở thích người dùng. - Xây dựng hệ thống dự đoán sở thích người dùng. 11 Tài liệu tham khảo [1] Gerald Stermsek, Mark Strembeck, Gustaf Neumann. A User Profile Derivation Approach based on Log-File Analysis. [2] Jin Young Kim , Kevyn Collins-Thompson, Paul N. Bennett, Susan T. Dumais. Characterizing Web Content, User Interests, and Search Behavior by Reading Level and Topic. 12 [...]... Vi c phân tích chưa xét đến liên kết giữa các tin tức để có thể đưa ra các tin liên quan - Keyword chưa được lọc tối ưu, vẫn còn tồn tại các từ không hợp lệ, không có nghĩa - Keyword chưa phân biệt được danh từ chung và danh từ riêng 3.2 Hướng phát triển Dựa vào các kết quả đạt được, hướng phát triển sắp tới của công trình sẽ tập trung vào: - Xác định liên kết (dấu trang) của tin tức - Hoàn thiện vi c... thể đưa ra các keyword theo sở thích người dùng - Xây dựng hệ thống dự đoán sở thích người dùng 11 Tài liệu tham khảo [1] Gerald Stermsek, Mark Strembeck, Gustaf Neumann A User Profile Derivation Approach based on Log-File Analysis [2] Jin Young Kim , Kevyn Collins-Thompson, Paul N Bennett, Susan T Dumais Characterizing Web Content, User Interests, and Search Behavior by Reading Level and Topic 12 ... Khi người dùng sử dụng internet để truy cập vào website, đặt biệt website tin tức, người dùng muốn xem vấn đề theo sở thích cá nhân Vậy vấn đề đặt dự đoán đưa gợi ý cho người dùng tin tức mà người. .. đưa gợi ý hợp lý cho tin tức mà người dùng quan tâm, vi c phân tích liệu tương tác người dùng vô quan trọng Với liệu thu thập từ tương tác người dùng để biết người dùng thích đọc loại tin nào, vào... hướng tin tức đọc nhiều người Vậy toán đặt phân tích từ liệu tương tác người dùng, ta nhóm người dùng liệu thành nhóm sở thích với luật đưa dự đoán cách xác vấn đề mà người dùng quan tâm Báo cáo

Ngày đăng: 08/10/2015, 13:37

Từ khóa liên quan

Mục lục

  • Tóm tắt công trình

  • Mục lục

  • 1. Đặt vấn đề

  • 2. Giải quyết bài toán

    • 2.1. Mô hình tổng quát

    • 2.2. Cơ sở lý thuyết

      • 2.2.1. ABC model (Antecedent-Behavior-Consequence)

      • 2.2.2. Phân lớp Bayes

      • 2.3. Tiền xử lý dữ liệu

      • 2.4. Phân tích dữ liệu

        • 2.4.1. Nhóm chủ đề (category) theo thời gian

        • 2.4.2. Nhóm dữ liệu theo người dùng

        • 2.4.3. Xác định các tin nổi bật (được truy cập nhiều)

        • 2.5. Làm mịn

          • 2.5.1. Trích xuất từ khóa

          • 2.5.2. Đánh trọng số

          • 2.6. Kết quả, ý nghĩa

          • 3. Kết luận

            • 3.1. Hạn chế còn tồn tại

            • 3.2. Hướng phát triển

            • Tài liệu tham khảo

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

Tài liệu liên quan