ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÙI AN LỘC CÁ NHÂN HÓA ỨNG DỤNG VÀ DỊCH VỤ DI ĐỘNG HƯỚNG NGỮ CẢNH NGƯỜI DÙNG Ngành Công nghệ thông tin Chuyên ngành Hệ thống thông tin Mã số 60 48 01 0[.]
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÙI AN LỘC CÁ NHÂN HÓA ỨNG DỤNG VÀ DỊCH VỤ DI ĐỘNG HƯỚNG NGỮ CẢNH NGƯỜI DÙNG Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin Mã số: 60.48.01.04 LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN NGỌC HÓA Hà Nội - 2016 LỜI CAM ĐOAN Tôi xin cam đoan cơng trình nghiên cứu tơi tìm hiểu, nghiên cứu, tham khảo tổng hợp từ tài liệu nghiên cứu trước làm theo hướng dẫn người hướng dẫn khoa học Phần nội dung đóng góp luận văn tơi thực Các số liệu, kết nêu luận văn trung thực chưa công bố cơng trình khác, nội dung trích dẫn có tham chiếu đầy đủ Tơi xin chịu hoàn toàn trách nhiệm lời cam đoan Nếu có điều sai trái, tơi xin chịu hình thức kỷ luật theo quy định nhà trường Tác giả Bùi An Lộc LỜI CẢM ƠN Đầu tiên xin gửi lời cảm ơn sâu sắc tới thầy PGS.TS Nguyễn Ngọc Hóa, Bộ mơn Hệ thống thông tin, Khoa Công nghệ Thông tin, Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội, người định hướng đề tài tận tình hướng dẫn, bảo cho tơi suốt q trình thực luận văn tốt nghiệp Tôi xin trân trọng cảm ơn thầy cô Khoa Công nghệ Thông tin, Trường Đại học Công nghệ, Đại học Quốc Gia Hà Nội tận tình giảng dạy, hướng dẫn nghiên cứu khoa học cho suốt thời gian theo học trường trình làm luận văn Xin cảm ơn anh, chị, em bạn học viên môn Hệ thống thông tin, người giúp đỡ, động viên tinh thần chia sẻ kinh nghiệm quý báu giúp vượt qua khó khăn, vướng mắc để hồn thành luận văn Mặc dù cố gắng, tin luận văn tơi cịn nhiều thiếu sót có nhiều nội dung hồn thiện tốt Tôi mong nhận ý kiến đánh giá, phê bình góp ý thầy cơ, anh chị bạn Trân trọng, Tác giả Bùi An Lộc MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN Danh mục ký hiệu chữ viết tắt Danh mục bảng Danh mục hình vẽ, đồ thị MỞ ĐẦU Chương TỔNG QUAN VỀ CÁ NHÂN HOÁ DICH ̣ VỤ DI ĐỘNG HƯỚNG NGỮ CẢNH 10 1.1 Các nhân hoá dich ̣ vu ̣ hướng ngữ cảnh 10 1.1.1 Định nghĩa ngữ cảnh 12 1.1.2 Các đặc trưng ngữ cảnh 15 1.1.3 Phân loại ngữ cảnh 15 1.1.4 Mô hình làm việc cho ngữ cảnh 17 1.2 Nhận biết ngữ cảnh (context-awareness) 18 1.2.1 Xu nhận biết ngữ cảnh lợi ích việc cá nhân hóa ứng dụng di động 18 1.2.2 Khái niệm nhận biết ngữ cảnh 19 1.2.3 Tính tốn nhận biết ngữ cảnh 19 1.3 Hệ gợi ý 20 1.3.1 Định nghĩa hệ gợi ý 20 1.3.2 Dự đoán hệ gợi ý 20 1.3.3 Các phương pháp tiếp cận truyền thống hệ gợi ý 21 1.3.4 Đánh giá hệ gợi ý 22 1.3.5 Các thách thức hệ gợi ý truyền thống 25 1.4 Kế t luâ ̣n chương 25 Chương HỆ GỢI Ý DỰA TRÊN NHẬN BIẾT NGỮ CẢNH 27 2.1 Cấu trúc thông tin ngữ cảnh hệ gợi ý 28 2.1.1 Cấu trúc liệu phân cấp 28 2.1.2 Cấu trúc liệu đa chiều 28 2.2 Cơ chế tích hợp ngữ cảnh vào hệ gợi ý 29 2.2.1 Lọc trước theo ngữ cảnh (Contextual Pre-Filtering) 32 2.2.2 Lọc sau theo ngữ cảnh (Contextual Pos-Filtering) 34 2.2.3 Mơ hình hóa hướng ngữ cảnh (Contextual Modeling) 36 2.3 Mơ hình hóa ngữ cảnh dựa phân rã ma trận (Context Aware Matrix Factorization - CAMF) 37 2.3.1 Kỹ thuật phân rã ma trận (Matrix Factorization - MF) 37 2.3.2 Kỹ thuật phân rã ma trận thiên vị (Biased Matrix Factorization – BMF) 41 2.3.3 Phân rã ma trận hướng ngữ cảnh (Context Aware Matrix Factorization - CAMF) 42 2.4 Kế t luâ ̣n chương 46 Chương XÂY DỰNG ỨNG DỤNG DU LỊCH THEO HƯỚNG CÁ NHÂN HÓA DỰA TRÊN NGỮ CẢNH NGƯỜI DÙNG 47 3.1 Đặt bài toán 47 3.2 Giải pháp đề xuấ t 47 3.2.1 Mô hình kiế n trúc ứng du ̣ng 47 3.2.2 Thiết kế ứng du ̣ng 49 3.2.3 Môi trường xây dựng và thử nghiê ̣m 50 3.3 Thử nghiê ̣m ứng du ̣ng và đánh giá kế t quả ta ̣i Mobifone 50 3.3.1 Kế t quả ứng du ̣ng 52 3.3.2 Đánh giá thử nghiê ̣m 55 Chương KẾT LUẬN CHUNG 58 4.1 Đóng góp luận văn 58 4.2 Hướng phát triển 58 TÀI LIỆU THAM KHẢO 59 Danh mục ký hiệu chữ viết tắt Thuật ngữ, chữ viết tắt STT RS CF FM BMF CAMF, CAMFCI, CAMF-CU, CAMF-CC, CAMF-C CRD SGD OLAP CARS 10 MSE 11 RMSE 12 MAE 13 LBS 14 Telco 15 CSDL Diễn giải Recommender System Hệ gợi ý Collaborative Filter Lọc cộng tác Matrix Factorization Phân rã ma trận Biases Matrix Factorization Phân rã ma trận thiên vị Context-aware Matrix Factorization Phân rã ma trận dựa ngữ cảnh Contextual Rating Deviation Độ lệch xếp hạng ngữ cảnh Stochastic Gradient Descent Kỹ thuật giảm gradient ngẫu nhiên Online Analytical Processing Phân tích liệu trực tuyến Context-awareness Recommender System Hệ gợi ý theo hướng ngữ cảnh Mean Square Error Sai số bình phương trung bình Root Mean Square Error Căn bậc hai sai số bình phương trung bình Mean Absolute Error Sai số tuyệt đối trung bình Location Base service Hệ thống cung cấp vị trí thuê bao di động Telecomunication Corporation Nhà cung cấp dịch vụ viễn thông di động Cơ sở liệu Danh mục bảng Bảng 1: Các thuộc tính đặc trưng ngữ cảnh 15 Bảng 2: Phân loại chiều ngữ cảnh 16 Bảng 3: Bảng ma trận trọng số (đánh giá) hệ gợi ý 21 Bảng 4: Các phương pháp đánh giá 24 Bảng 5: Đánh giá thời gian thực 56 Bảng 6: Đánh giá độ xác dự đoán 57 Danh mục hình vẽ, đồ thị Hiǹ h 1: Mơ hình ngữ cảnh 14 Hiǹ h 2: Kiến trúc quản lý ngữ cảnh mức cao 14 Hình 3: Khơng gian đặc tính ngữ cảnh 18 Hình 4: Các thành phần tiến trình gợi ý truyền thống 21 Hình 5: Kiến trúc tổng quan hệ thống lọc cộng tác 22 Hình 6: Cấu trúc phân cấp ngữ cảnh hệ gợi ý 28 Hình 7: Cấu trúc OLAP chiều User x Item x Time hệ gợi ý 29 Hình 8: Các chế tích hợp thơng tin ngữ cảnh vào hệ gợi ý 32 Hình 9: Bước hiệu chỉnh danh sách gợi ý lọc sau theo ngữ cảnh 35 Hình 10: Minh họa kỹ thuật phân rã ma trận 38 Hình 11: Kiến trúc tảng mã nguồn mở CARSKIT 48 Hình 12: Kiến trúc thiết kế hệ thống 48 Hình 13: Thiết kế user case 49 Hình 14: Mơ hình thực thể quan hệ quản lý user 49 Hình 15: Mô hình thực thể quan hệ quản lý địa điểm gợi ý 50 Hình 16: Dữ liệu rating lưu CSDL 51 Hình 17: Dữ liệu địa điểm lưu CSDL 52 Hình 18: Deploy hệ thống môi trường Linux 52 Hình 19: Giao diện xác thực người dùng 53 Hình 20: Giao diện home client 54 Hình 21: Giao diện nhập thông tin ngữ cảnh tĩnh gợi ý 55 Hình 22: Giao diện thông tin người dùng đăng xuất hệ thống 55 Hình 23: So sánh độ xác CAMF & BPMF theo RMSE 57 MỞ ĐẦU Theo đánh giá tổ chức Gartner, vào năm 2017 ứng dụng di động tải 268 tỷ lần, tạo doanh thu 77 tỷ USD ứng dụng di động trở thành công cụ tính tốn phổ biến cho người dùng tồn cầu Gartner dự đoán người dùng di động cung cấp liệu cá nhân thông qua 100 ứng dụng dịch vụ ngày Ứng dụng dịch vụ di động trở thành phương tiện giao tiếp thơng tin người dùng – người dùng, người dùng – nhà cung cấp dịch vụ Bài toán làm để ứng dụng dịch vụ di động ngày trở nên thông minh hơn, linh hoạt hơn, hiệu việc trao đổi thông tin, đáp ứng nhu cầu sở thích cá nhân người dùng ngày trở nên cần thiết khẩn cấp Giải pháp cá nhân hóa ứng dụng dịch vụ di động theo hướng tiếp cận ngữ cảnh người dùng dựa thông tin thu thập qua việc trao đổi liệu vị trí, thời gian, thiết bị, thói quen, sở thích, … người dùng áp dụng để giải toán trở thành xu hướng phát triển công nghệ tất yếu nhằm mang lại cho người sử dụng thiết bị di động tiện ích tốt nhất, đáp ứng đầy đủ nhu cầu cá nhân q trình sử dụng thơng tin thông qua ứng dụng dịch vụ di động Theo số liệu Tổng công ty viễn thông MobiFone, MobiFone có 15 triệu thuê bao di động, có 12 triệu thuê bao sử dụng ứng dụng dịch vụ giá trị gia tăng MobiFone cung cấp cho khách hàng 200 dịch vụ ứng dụng giá trị gia tăng, bao gồm đầy đủ lĩnh vực nhóm dịch vụ thơng tin tổng hợp, nhóm dịch vụ âm nhạc, phim ảnh clip, nhóm dịch vụ thể thao, nhóm dịch vụ game, nhóm dịch vụ tiện ích, … Với số lượng dịch vụ lĩnh vực cung cấp phong phú trên, nhiên, thực tế số lượng thuê bao không tương tác với dịch vụ chiếm tỷ trọng lớn (hơn 80% thuê bao không thực tương tác với dịch vụ qua kênh SMS hồi đáp) Việc không tương tác với ứng dụng dịch vụ thể khách hàng quan tâm đến dịch vụ nội dung mà MobiFone cung cấp, hay nói cách khác dịch vụ ứng dụng MobiFone chưa đáp ứng nhu cầu ngày cao khách hàng Đây thách thức lớn cần phải giải nhằm tăng độ hài lòng khách hàng, tăng uy tín giá trị thương hiệu MobiFone thị trường viễn thông nước Với thực trạng nêu trên, luận văn hướng đến mục tiêu nghiên cứu xây dựng giải pháp cá nhân hoá ứng dụng dịch vụ động theo mơ hình hướng ngữ cảnh thời người dùng, áp dụng kỹ thuật gợi ý dựa thông tin ngữ cảnh xây dụng ứng dụng thử nghiệm Mobifone Với mục tiêu trên, luận văn tập trung vào nghiên cứu đặc trưng, mơ hình quản lý ngữ cảnh người dùng, phương thức nhân biết ngữ cảnh Trên sở nội dung ngữ cảnh, luận văn làm rõ việc tích hợp, ứng dụng thơng tin ngữ cảnh vào hệ gợi ý dựa nhận biết ngữ cảnh, xem yếu tố ngữ cảnh chiều liệu tác động trực tiếp vào tiến trình dự đoán xếp hạng người dùng gợi ý sản phẩm phù hợp với sở thích, nhu cầu người dùng Hệ gợi ý dựa nhận biết ngữ cảnh nghiên cứu đề tài hệ gợi ý phân rã ma trận hướng ngữ cảnh, hệ thống mơ hình hóa mở rộng kỹ thuật phân rã ma trận truyền thống xem state-of-the-art lý thuyết hệ gợi ý Ứng dụng lý thuyết trên, luận văn trình bày hệ thống gợi ý du lịch mạng MobiFone theo hướng ngữ cảnh người dùng, sử dụng mơ hình phân rã ma trận hướng ngữ cảnh để dự đoán xếp hạng gợi ý cho người dùng địa điểm du lịch phù hợp Tổ chức luận văn bao gồm nội dung sau: Chương 1: Tổng quan cá nhân hóa dịch vụ di động hướng ngữ cảnh Chương trình bày tổng quan khái niệm ngữ cảnh, hệ gợi ý truyền thống vấn đề liên quan hệ gợi ý truyền thống Chương 2: Hệ gợi ý dựa nhận biết ngữ cảnh Chương trình bày vai trị ngữ cảnh hệ gợi ý, phương thức tích hợp ngữ cảnh vào hệ gợi ý Các nội dung nghiên cứu trọng tâm trình bày chương kỹ thuật phân rã ma trận truyền thống, kỹ thuật phân rã ma trận thiên vị kỹ thuật phân ma trận dựa ngữ cảnh, kỹ thuật áp dụng phương thức tiếp cận mô hình hóa, dựa học máy để xây dựng hàm dự đoán xếp hạng gợi ý với tập liệu huấn luyện đầu vào gồm nhiều chiều liệu (user, item, context1, , contextN) Chương 3: Xây dựng ứng dụng du lịch theo hướng cá nhân hóa dựa ngữ cảnh người dùng ứng dụng MobiFone Chương trình bày hệ thống gợi ý du lịch theo hướng cá nhân hóa dựa ngữ cảnh người dùng, đặc tả hệ thống, thiết kế kiến trúc thiết kế sở liệu hệ thống Minh họa sản phầm kết thử nghiệm MobiFone trình bày chương 10 Chương TỔNG QUAN VỀ CÁ NHÂN HOÁ DICH ̣ VỤ DI ĐỘNG HƯỚNG NGỮ CẢNH 1.1 Các nhân hoá dich ̣ vu ̣ hướng ngữ cảnh Nhận biết ngữ cảnh thường cần giải pháp có khả đáp ứng thách thức giúp cho ứng dụng đảm bảo tính linh hoạt tính tự trị (học máy) Các ứng dụng nhận biết ngữ cảnh thường khai thác thông tin ngữ cảnh như: vị trí, nhiệm vụ sở thích người dùng để thích ứng với hành vi khả thay đổi môi trường thực thi yêu cầu người dùng Thơng tin tích hợp từ cảm biến từ người dùng Nếu ngữ cảnh đơn giản vị trí việc hiểu nhận biết khơng lấy làm khó khăn cho hệ thống Tuy nhiên, nhiều trường hợp việc nhận biết cịn dựa thơng tin khác, vượt xa vị trí, phức tạp bắt đầu nảy sinh Các thách thức tính tốn nhận biết ngữ cảnh thường bao gồm: - Phải hiểu khái niệm ngữ cảnh Ngữ cảnh liên quan tới tình giới thực nào? Trong chưa có hiểu biết thật rõ ràng bề thuật ngữ "các ngữ cảnh liên quan tới tình nào" thơng tin ngữ cảnh chung sử dụng để hỗ trợ nâng cao ứng dụng Vấn đề kèm câu hỏi biểu diễn ngữ cảnh theo cách chung nào? - Làm để sử dụng ngữ cảnh? Làm để thu thập ngữ cảnh? Thu thập ngữ cảnh yêu cầu cho hệ thống nhận biết ngữ cảnh Nhìn chung, việc lấy ngữ cảnh xem q trình xử lý tình thực giới thực nắm bắt, đặc tính hữu ích xem xét đánh giá biểu diễn trừu tượng tạo, sau cung cấp tới thành phần hệ thống với mục đích sử dụng cao Các cách tiếp cận thu thập ngữ cảnh đa dạng như: lần vết vị trí, hệ thống cảm biến cách tiếp cận mang tính chất dự đốn mơ hình hóa người dùng hành vi họ, … - Làm để kết nối ngữ cảnh thu với ngữ cảnh sử dụng Trong hệ thống nhận biết vị trí, mối quan hệ thu thập ngữ cảnh sử dụng ngữ cảnh gần, hầu hết cảm biến vị trí nạp vào thiết bị định vị Trong trường hợp này, biểu diễn ngữ cảnh 21 Hình 4: Các thành phần tiến trình gợi ý truyền thống Với người dùng u ∈ U, chọn sản phẩm i ∈ I cho hàm xếp hạng người dùng u item i lớn ∀𝑢 ∈ 𝑈, 𝑖 ′ 𝑢 = arg max 𝑟̂ (𝑢, 𝑖) 𝑖∈𝐼 Tập người dùng U (u ∈ U; |U|=n), tập sản phẩm I (i ∈ I; |I| = m), rui ∈ R xếp hạng người dùng u cho sản phẩm i Trong hệ gợi ý, tính tiện ích sản phẩm i thường biểu thị mức độ quan tâm người dùng tới mặt hàng cụ thể thơng qua trọng số; ví dụ người dùng Alice đánh giá sản phẩm có trọng số bảng Item1 Item2 Item3 Item4 Item5 Alice 4 ? Gil 3 Kai 4 Blue 5 Bảng 3: Bảng ma trận trọng số (đánh giá) hệ gợi ý 1.3.3 Các phương pháp tiếp cận truyền thống hệ gợi ý Có nhiều phương pháp tiếp cận hệ gợi ý, nhiên chia thành nhóm kỹ thuật sau: - Gợi ý dựa cộng tác (collaborative filtering - CF): người dùng gợi ý sản phẩm ưa chuộng xuất phát từ người dùng có sở thích thị hiếu với (có độ tương quan cao) - Gợi ý dựa nội dung (content-based filtering): người dùng gợi ý sản phẩm tương tự với sản phẩm người dùng ưa thích trước - Gợi ý dựa cách tiếp cận kết hợp (hybrid approach): kết hợp hai phương pháp lọc cộng tác dựa nội dung Trong phương pháp tiếp cận trên, phương pháp tiếp cận dựa lọc cộng tác thường sử dụng nhiều Phương pháp dựa hành vi khứ người dùng, ví dụ như: lịch sử giao dịch, đánh giá sản phẩm, xem phim, nghe hát, đặc biệt khơng cần thiết phải tạo hồ sơ tường minh (explicit feedback) cho người dùng Để gợi ý sản phẩm cho người dùng, hệ thống lọc cộng tác cần so sánh đối tượng khác sản phẩm người dùng Một hệ thống lọc cộng tác truyền thống thường có kiến trúc sau: 22 Hiǹ h 5: Kiến trúc tổng quan hệ thống lọc cộng tác 1.3.4 Đánh giá hệ gợi ý Theo sách ‘Recommender Systems Handbook’, chương [13], việc đánh giá hệ gợi ý nhiều trường hợp việc so sánh hướng tiếp cận tốt phù hợp để thiết kế quy trình hay hệ thống Từ bước chọn thuật toán phù hợp để định thuộc tính ứng dụng dùng để đưa định, cụ thể hệ gợi ý có nhiều thuộc tính khác ảnh hưởng đến trải nghiệm người dùng độ xác, chắn, khả mở rộng… Các thuật tốn so sánh hệ số (metric) Có hai nhóm tiêu chí đánh giá: tiêu chí định lượng tiêu chí định tính Các tiêu chí định lượng giành riêng cho việc đánh giá số lượng gợi ý liên quan, chúng tương ứng với độ xác Các tiêu chí định tính sử dụng để đánh giá chung chất lượng hệ gợi ý Các tiêu chí định lượng: - Đánh giá độ xác hàm dự đốn xếp hạng (rating prediction): việc đánh giá xác dự đốn sử dụng sai số bình phương trung bình (Mean square error – MSE), sai số bình phương trung bình (Root mean square error – RMSE), sai số trung bình tuyệt đối (Mean absolute error – MAE) [14] Tính xác dự đốn đo n quan sát, pi giá trị dự đoán xếp hạng sản phẩm i ri giá trị xếp hạng thực tế sản phẩm i 𝑛 𝑀𝑆𝐸 = ∑(𝑝𝑖 − 𝑟𝑖 )2 𝑛 𝑖=1 𝑛 𝑅𝑀𝑆𝐸 = √𝑀𝑆𝐸 = √ ∑(𝑝𝑖 − 𝑟𝑖 )2 𝑛 𝑖=1 𝑛 𝑀𝐴𝐸 = ∑(𝑝𝑖 − 𝑟𝑖 ) 𝑛 𝑖=1 23 - Các số thích hợp cho CSDL khơng phải nhị phân cho giá trị dự đốn số Nó giúp đo lường mức độ sai số dự đoán Các giá trị đo lường hệ thống đạt hiệu tốt Giá trị cao hiệu hệ thống, hay nói cách khác độ xác dự đốn hệ thống thấp Đánh giá độ xác hàm gợi ý (item recommendation): ngồi việc đánh giá tính xác dự đoán, số số khác precision, recall F_score, Rscore dùng để đánh giá độ xác hàm gợi ý (đánh giá việc sử dụng dự đoán) trường hợp CSDL nhị phân (Herlocker J.L et al, 2004) o Precision: tỷ lệ số lượng gợi ý phù hợp tổng số gợi ý cung cấp (đã tạo ra) Precision 100% có nghĩa tất gợi ý cho người dùng phù hợp 𝑆ố 𝑙ượ𝑛𝑔 𝑔ợ𝑖 ý 𝑝ℎù ℎợ𝑝 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 𝑆ố 𝑙ượ𝑛𝑔 𝑔ợ𝑖 ý 𝑡ạ𝑜 𝑟𝑎 o Recall: định nghĩa tỷ lệ số lượng gợi ý phù hợp số lượng mục liệu mà người dùng chọn (xem, nghe, mua, đọc, ) Recall sử dụng để đo khả hệ thống tìm mục liệu phù hợp so với mà người dùng cần 𝑆ố 𝑙ượ𝑛𝑔 𝑔ợ𝑖 ý 𝑝ℎù ℎợ𝑝 𝑅𝑒𝑐𝑎𝑙𝑙 = 𝑆ố 𝑙ượ𝑛𝑔 𝑠ả𝑛 𝑝ℎẩ𝑚 đượ𝑐 𝑐ℎọ𝑛 𝑏ở𝑖 𝑛𝑔ườ𝑖 𝑑ù𝑛𝑔 o F-score: Precision Recall xem hữu ích việc đánh giá hệ gợi ý Tuy nhiên, số trường hợp precision recall lại có giá trị tỷ lệ nghịch với Ví dụ số lượng gợi ý mà hệ thống tạo 10, số lượng gợi ý phù hợp 3, số lượng sản phẩm chọn người dùng độ xác thấm (30%), nhiên giá trị recall lại cao (100%), nghĩa độ xác thấp người dùng lại hài lịng họ chọn sản phẩm mà hệ thống gợi ý sản phẩm Trong tình đó, số F-score sử dụng để đánh giá hiệu tổng thể hệ thống cách kết hợp hài hòa hai số Recall Precision × 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 × 𝑅𝑒𝑐𝑎𝑙𝑙 𝐹𝑠𝑐𝑜𝑟𝑒 = 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙 o Rscore hay Bresse score [15]: số đánh giá khả sử dụng dự đoán số xác đến thứ tự gợi ý xây dựng Rscore đánh giá vị trí sản phẩm chọn người dùng danh sách sản phẩm gợi ý tạo hệ thống Ví dụ, hệ thống gợi ý cho người dùng 10 sản phẩm xếp theo thứ tự ưu tiên từ cao đến thấp Nếu người dùng chọn sản phẩm danh sách hệ thống gợi ý hiệu người dùng chọn sản phẩm có thứ tự thứ 10 Chỉ số Rscore tính dựa vào tỷ lệ thứ tự mục gợi ý (Rankscorep) thứ tự mục gợi ý tốt (Rankscoremax) công thức sau: 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑝 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒 = 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑚𝑎𝑥 24 2− 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑝 = ∑ 𝑖∈ℎ 𝑅𝑎𝑛𝑘(𝑖)−1 𝛼 |𝑇| 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑚𝑎𝑥 = ∑ 2− 𝑖−1 𝛼 𝑖= Trong đó: h tập sản phẩm gợi ý người dùng Rank trả thứ tự xếp sản phẩm danh sách gợi ý T tập tất sản phẩm người dùng quan tâm α chu kỳ phân kỳ (xác suất mà mục liệu danh sách gợi ý chọn 50%) Các số Precision, Recall, F_score, Rscore thường sử dụng hệ gợi ý lĩnh vực thương mại điện tử Các số đánh giá, công thức tương ứng số hệ gợi ý/nghiên cứu áp dụng số tương ứng trình bày bảng 4: Hệ thống STT Chỉ số Công thức áp dụng 𝑛 MAE MovieLens 𝑀𝐴𝐸 = ∑(𝑝𝑖 − 𝑟𝑖 ) 𝑛 MSE RMSE 𝑖=1 𝑛 Netflix 𝑀𝑆𝐸 = ∑(𝑝𝑖 − 𝑟𝑖 )2 𝑛 𝑖=1 BookCrossing 𝑛 𝑅𝑀𝑆𝐸 = √𝑀𝑆𝐸 = √ ∑(𝑝𝑖 − 𝑟𝑖 )2 𝑛 𝑖=1 Precision Recall F-score Rscore 𝑆ố 𝑙ượ𝑛𝑔 𝑔ợ𝑖 ý 𝑝ℎù ℎợ𝑝 𝑆ố 𝑙ượ𝑛𝑔 𝑔ợ𝑖 ý 𝑡ạ𝑜 𝑟𝑎 𝑆ố 𝑙ượ𝑛𝑔 𝑔ợ𝑖 ý 𝑝ℎù ℎợ𝑝 𝑆ố 𝑙ượ𝑛𝑔 𝑠ả𝑛 𝑝ℎẩ𝑚 đượ𝑐 𝑐ℎọ𝑛 𝑏ở𝑖 𝑛𝑔ườ𝑖 𝑑ù𝑛𝑔 × 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 × 𝑅𝑒𝑐𝑎𝑙𝑙 𝐹𝑠𝑐𝑜𝑟𝑒 = 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑝 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒 = 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑚𝑎𝑥 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑝 = ∑ 2− 𝑖∈ℎ 𝑅𝑎𝑛𝑘(𝑖)−1 𝛼 |𝑇| 𝑅𝑎𝑛𝑘𝑠𝑐𝑜𝑟𝑒𝑚𝑎𝑥 = ∑ 𝑖= 2− 𝑖−1 𝛼 EachMovie Yeong el al, 2005 MovieLens TaFeng, B&Q (Breese, J.S and D.Heckerman, 1998, Hsu, C and H.Chung 2004) Bảng 4: Các phương pháp đánh giá Tiêu chí định tính: Trong giai đoạn đầu phát triển hệ gợi ý sử dụng độ đo xác định lượng nhữ trình bày Tuy nhiên, người dùng ngày có yêu cầu cao nhiều chất lượng gợi ý Nếu xét độ 25 xác khơng đủ để đánh giá hiệu hệ gợi ý nên cần đưa thêm thuộc tính chất lượng gợi ý, bao gồm: - Tính gợi ý - Tính đa dạng (Diversity) gợi ý - Độ bao phủ gợi ý - Sự hài lòng người dùng 1.3.5 Các thách thức hệ gợi ý truyền thống Những thách thức từ hệ gợi ý quan tâm phát triển đến liệu thưa, khả mở rộng phạm vi, biến thể từ (nhóm từ đồng nghĩa), nhập nhằng nghĩa, quyền riêng tư… Đặc tính thách thức cụ thể sau: Dữ liệu thưa (sparsity) Trường hợp thường thấy tập sản phẩm item thường lớn ngày mở rộng thêm, lượng người dùng tăng theo thời gian, cộng thêm người dùng xem phần nhỏ danh sách sản phẩm đó, dẫn đến ma trận user – item thưa Người dùng đặc biệt người dùng Việt Nam khơng có thói quen đưa đánh giá hay nhận xét cho sản phẩm họ xem mua, khó để nhận định họ thích hay khơng Một khởi đầu khó cho nhóm người dùng sản phẩm mới, hay biết đến vấn đề cold start[16] Khả mở rộng phạm vi Khi số người dùng sản phẩm ngày mở rộng, phạm vi xử lý trở thành vấn đề lớn Sản phẩm mới, người dùng (cold-start) Những đối tượng khó gợi ý chưa thơng tin lịch sử trước Khơng sản phẩm sản phẩm mô tả cụ thể, chung chung gây nhầm Với người dùng hệ thống cần học để hiểu sở thích họ, có vài phương pháp đề xuất để giải vấn đề này, theo hướng lai, kết hợp phương pháp, lọc cộng tác nội dung, ngồi cịn có kỹ thuật để xác định sản phẩm tốt cho người dùng đề cập [17], kỹ thuật áp dụng cho chiến lược lọc cộng tác Gian lận nhà cung cấp sản phẩm, hay dịch vụ có thủ thuật giả thơng tin khách hàng, giúp họ tăng lợi ích Dễ bị công vấn đề thưởng xảy kiểu cơng dịch vụ, làm trì trệ khả cung cấp dịch vụ tới người dùng thực Bảo mật riêng tư: xu hướng cá nhân hóa hệ gợi ý cần hiểu rõ người dùng Một số thách thức môi trường như: Lượng bán lẻ, người dùng sản phẩm lớn (lên tới hàng triệu); ứng dụng thường yêu cầu kết trả thời gian thực (không nửa giây) phải đáp ứng gợi ý chất lượng tốt; người dùng cũ có nhiều thơng tin thừa, người dùng lại thiếu thông tin liệu người dùng dễ bị trơi Ngồi nhiều vấn đề khác cần quan tâm như: đa dạng xác, dễ dàng bị công, giá trị thời gian, đánh giá độ hiệu quả, giao diện người dùng,… 1.4 Kế t luâ ̣n chương 26 Qua chương 1, đề tài làm rõ nội dung khái niệm ngữ cảnh, đặc trưng, mơ hình quản lý phương pháp nhận biết ngữ cảnh Nội dung chương làm rõ lý thuyết hệ gợi ý, phương pháp tiếp cận dự đoán xếp hạng kỹ thuật áp dụng hệ gợi ý truyền thống dựa liệu chiều (users, items) Đây nội dung bản, tiền đề cho việc tiếp cận ứng dụng ngữ cảnh vào hệ gợi ý mà đề tài làm rõ Chương - Hệ gợi ý dựa nhận biết ngữ cảnh 27 Chương HỆ GỢI Ý DỰA TRÊN NHẬN BIẾT NGỮ CẢNH Như trình bày phần 1.4 Chương 1, hệ gợi ý truyền thống thường xuyên phải đối diện với thách thức khởi động chậm (cold start), liệu rời rạc (sparsity) dẫn đến việc gợi ý xếp hạng sản phẩm cho người dùng độ xác cần thiết Để giải thách thức đó, nhiều phương pháp tiếp cận đại nghiên cứu áp dụng, phương pháp tiếp cận sử dụng thơng tin ngữ cảnh yếu tố tiềm ẩn để tích hợp vào hệ gợi ý nhằm nâng cao tính xác hiệu gợi ý cho người dùng xu hướng hệ thống gợi ý đại Các thông tin ngữ cảnh người dùng mơ hình hóa tích hợp vào hệ gợi ý, hệ gợi ý dựa nhận thức ngữ cảnh (Context-awareness Recommender System – CARS) [18] tính tốn xếp hạng gợi ý cho người dùng không dựa thông tin người dùng sản phẩm hệ gợi ý truyền thống mà cịn sử dụng thơng tin ngữ cảnh liên quan Nếu gọi Contexts tập ngữ cảnh hàm gợi ý viết lại sau: r: Users x Items x Contexts -> Ratings Ví dụ: Xem xét ứng dụng xem phim có tích hợp tính gợi ý phim phù hợp cho người dùng, người dùng phim mô tả quan hệ bao gồm thuộc tính sau: - Phim (Movie): tập hợp tất phim gợi ý, định nghĩa Movie(MovieID, Title, Length, ReleaseaYear, Director, Genre) - Người dùng (User): tập hợp tất người dùng gợi ý xem phim, định nghĩa User(UserID, Name, Address, Age, Gender, Profession) Kế tiếp, thông tin ngữ cảnh bao gồm loại thông tin sau định nghĩa tương ứng quan hệ có thuộc tính sau: - Rạp chiếu (Theatre): rạp chiếu phim, định nghĩa Theatre(TheatreID, Name, Address, Capacity, State, Country) - Thời gian (Time): thời gian mà phim chiếu chiếu, định nghĩa Time(Date, DayOfWeek, TimeOfWeek, Month, Quater, Year) Trong thuộc tính DayOfWeek có giá trị Mon, Tue, Wed, Thu, Fri, Sat, Sun thuộc tính TimeOfWeek có giá trị “Weekday” and “Weekend” - Bạn xem phim (Companion): đại diện cho người nhóm người xem phim, định nghĩa Companion(companionType), thuộc tính companionType có giá trị “alone”, “friends”, “girlfriend/boyfriend”, “family”, “coworker”, “others” Với tham số đầu vào giá trị xếp hạng phim đánh giá người dùng phụ thuộc vào thơng tin ngữ cảnh vị trí chiếu phim, thời gian xem phim, xem phim với ai, xem Khi hàm xếp hạng ứng dụng biểu diễn sau: R: Users x Movies x Theatres x Times x Companions -> Rating 28 2.1 Cấu trúc thông tin ngữ cảnh hệ gợi ý Trong hệ gợi ý dựa ngữ cảnh, thông tin ngữ cảnh biểu diễn dạng cấu trúc bao gồm cấu trúc liệu phân cấp cấu trúc liệu đa chiều 2.1.1 Cấu trúc liệu phân cấp Thông tin ngữ cảnh định nghĩa tập K chiều ngữ cảnh, chiều ngữ cảnh K tập K định nghĩa tập q thuộc tính K = (K1, , Kq), K có cấu trúc phân cấp thể cho loại ngữ cảnh cụ thể Ngữ cảnh xác định thuộc tính Kq có mức định nghĩa thấp so với ngữ cảnh xác định thuộc tính K1 Ví dụ biểu diễn liệu ngữ cảnh dạng cấu trúc phân cấp mức ứng dựng e-retailer sau: Hiǹ h 6: Cấu trúc phân cấp ngữ cảnh hệ gợi ý Tại đỉnh phân cấp biểu diễn cho ngữ cảnh mua bất kỳ, mức ngữ cảnh biểu diễn thuộc tính K1=(Personal, Gift), thể mục đích mua hàng cá nhân (personal) tặng quà (gift) Tại mức phân cấp, ngữ cảnh Personal lại biểu diễn theo ngữ cảnh chi tiết hơn: mua phục vụ cơng việc hay mục đích khác Tương tự, với ngữ cảnh Gift, mức biểu diễn chi tiết ngữ cảnh mua quà cho bạn đồng nghiệp mua quà cho gia đình khác Với cách định nghĩa trên, thuộc tính ngữ cảnh K2 = {PersonalWork, PersonalOther, GiftPartner/Friend, GiftParent/Other} 2.1.2 Cấu trúc liệu đa chiều Nếu xem ngữ cảnh chiều liệu hệ gợi ý bên cạnh chiều User, Item, biểu diễn liệu hệ gợi ý dựa ngữ cảnh cấu trúc liệu đa chiều OLAP (Online Analytical Processing, sử dụng rộng rãi hệ thống kho liệu Datawarehouse) Cụ thể, gọi D1, D2, , Dn chiều liệu, hai chiều liệu User, Item, chiều liệu lại ngữ cảnh Di tập tập tích Đề (Cartesian) bao gồm thuộc tính Aij, (j=1, ,ki), 𝐷𝑖 ⊆ 𝐴𝑖1 × 𝐴𝑖2 × … × 𝐴𝑖𝑘𝑖 Ví dụ hình 8, với liệu có chiều, User x Item x Time, chiều User xác định 𝑈𝑠𝑒𝑟 ⊆ 𝑈𝑁𝑎𝑚𝑒 × 𝐴𝑑𝑑𝑟𝑒𝑠𝑠 × 𝐼𝑛𝑐𝑜𝑚𝑒 × 𝐴𝑔𝑒 Tương tự, chiều Item xác định 𝐼𝑡𝑒𝑚 ⊆ 𝐼𝑁𝑎𝑚𝑒 × 𝑇𝑦𝑝𝑒 × 𝑃𝑟𝑖𝑐𝑒 Cuối cùng, chiều Time xác định 𝑇𝑖𝑚𝑒 ⊆ 𝑌𝑒𝑎𝑟 × 𝑀𝑜𝑛𝑡ℎ × 𝐷𝑎𝑦 29 Khi gọi S khơng gian gợi ý, S xác định tích đề thuộc tính D1, D2, , Dn, đồng thời hàm xếp hạng R xác định sau: 𝑅: 𝐷1 × 𝐷2 × … × 𝐷𝑛 −> 𝑅𝑎𝑡𝑖𝑛𝑔 Như hình 8, với User có Id 101, Item với id 7, đánh giá xếp hạng rating suốt tuần, R(101,7,1) = Hình 7: Cấu trúc OLAP chiều User x Item x Time hệ gợi ý 2.2 Cơ chế tích hợp ngữ cảnh vào hệ gợi ý Việc ứng dụng thông tin ngữ cảnh hệ thống gợi ý tìm thấy nghiên cứu Herlocker Konstan [19], tác giả cho việc lồng ghép tri thức hành vi người dùng vào thuật toán gợi ý ứng dụng chuyên biệt dẫn đến kết gợi ý có chất lượng tốt Ví dụ, muốn mua tặng đứa trẻ vài sách, muốn biết sách trước đứa trẻ đọc thích đọc cung cấp thông tin cho hệ gợi ý để tính tốn đưa gợi ý sách phù hợp Hướng tiếp cận áp dụng hệ gợi ý truyền thống không gian chiều User x Item, thơng tin hành vi người dùng cụ thể sản phẩm cụ thể xem liệu mẫu dùng để huấn luyện hệ thống Hay nói cách khác, hệ gợi ý truyền thống không đề cập đến việc áp dụng thơng tin ngữ cảnh q trình tính tốn để đưa gợi ý cho người dùng Tuy nhiên, cách tiếp cận minh họa rõ nét cho việc tích hợp thơng tin ngữ cảnh liên quan vào hệ gợi ý lọc cộng tác chuẩn hóa Có nhiều cách tiếp cận khác việc tích hợp thơng tin ngữ cảnh vào hệ gợi ý, nhiên phân nhóm cách tiếp cận theo hai nhóm chính, cụ thể: 30 Gợi ý dựa tìm kiếm truy vấn hướng ngữ cảnh (context-driven querying and search): Hướng tiếp cận ứng dụng rộng rãi hệ gợi ý di động du lịch [20,21,22] Các hệ thống theo cách tiếp cận sử dụng thông tin ngữ cảnh thu thập (từ người dùng, từ thiết bị di động, ) để thực truy vấn tìm kiếm tập sản phẩm cung cấp cho người dùng sản phẩm phù hợp Ví dụ, hệ gợi ý du lịch, dựa thơng tin sở thích người dùng (thu thập theo thông tin hồ sơ ban đầu người dùng), thơng tin vị trí người dùng (thu thập dựa tọa độ từ mạng di động tọa độ GPS thiết bị di động) mà hệ thống tìm kiếm lựa chọn tập địa điểm du lịch xung quanh vị trí người dùng để cung cấp cho người dùng địa điểm du lịch phù hợp Một số thông tin ngữ cảnh hay sử dụng hệ gợi ý thường bao gồm: sở thích, địa phương, thời tiết, vị trí tại, Một hệ thống điển hình theo hướng tiếp cận kể đến Cyberguide [23], phát triển hệ gợi ý du lịch nhiều tảng di động khác Một số hệ thống khác kể tên GUIDE [24], INTRIGUE [25], COMPASS[26] MyMap [27] Gợi ý dựa suy luận tối ưu tham chiếu ngữ cảnh (contextual preference eliction and estimation): Một hướng tiếp cận khác việc ứng dụng thông tin ngữ cảnh vào hệ gợi ý gợi ý dựa suy luận tối ưu tham chiếu ngữ cảnh Đây xu hướng tiếp cận việc nghiên cứu hệ gợi ý dựa ngữ cảnh [28,29,30,31] Khác với hướng tiếp cận gợi ý dựa truy vấn tìm kiếm hướng ngữ cảnh, chủ yếu dựa thông tin ngữ cảnh người dùng, kỹ thuật thuộc hướng tiếp cận cố gắng mơ hình hóa học sở thích người dùng cách theo dõi tương tác người dùng cần xem xét người dùng khác hệ thống, cách thu thập thông tin phản hồi người dùng sản phẩm hệ thống gợi ý trước Để mơ hình hóa sở thích thay đổi theo ngữ cảnh người dùng, kỹ thuật thường chấp thuận phương thức gợi ý dựa lọc cộng tác (collaborative filtering), gợi ý dựa nội dung (content-based filtering) gợi ý hỗn hợp (hybrid) thiết lập hệ gợi ý dựa ngữ cảnh, áp dụng phương pháp phân tích liệu thơng minh khác khai phá liệu, học máy để đạt mục tiêu (kỹ thuật phân loại Bayes, ) Cả hai hướng tiếp cận mở nhiều hội thách thức cho nhà nghiên cứu để phân tích xây dựng hệ gợi ý dựa nhận biết ngữ cảnh hiệu Tuy nhiên, nay, hướng tiếp cận thứ hai trở thành xu để tiếp cận xây dựng hệ gợi ý theo phương pháp suy luận tối ưu tham chiếu ngữ cảnh Ngồi ra, có nhiều nhóm nghiên cứu lựa chọn giải pháp kết hợp hai hướng tiếp cận để xây dựng hệ thống gợi ý Các hệ thống điển hình nhóm tiếp cận kết hợp kể đến hệ thống UbiquiTO [21], xây dựng để triển khai ứng dụng hướng dẫn du lịch Hệ thống không dựa thơng tin ngữ cảnh cụ thể mà cịn kết hợp kỹ thuật khác kỹ thuật gợi ý dựa tập luật (rule-based) tập hợp mờ (fuzzy set) để đáp ứng yêu cầu nội dung ứng dụng dựa thay đổi sở thích quan tâm người dùng 31 Như đề cập phần 1.4.2, hệ gợi ý truyền thống xây dựng dựa tri thức sở thích rời rạc người dùng, ví dụ sở thích người dùng vài (thơng thường có giới hạn) tập sản phẩm, đầu vào hệ gợi ý truyền thống thường bảng ghi có dạng Khác với hệ gợi ý truyền thống, hệ gợi ý dựa nhận biết ngữ cảnh xây dựng dựa tri thức sở thích tùy biến theo ngữ cảnh rời rạc người dùng, liệu đầu vào bảng ghi theo dạng , bảng ghi khơng chứa thơng tin mức độ thích người dùng sản phầm, mà cịn chứa thơng tin ngữ cảnh cụ thể người dùng sử dụng sản phẩm Khi đưa thông tin ngữ cảnh vào hệ gợi ý chiều liệu đầu vào làm phát sinh vấn đề sau cần giải quyết, cụ thể: - Nên tích hợp ánh xạ liệu ngữ cảnh vào hệ gợi ý thực mơ hình hóa sở thích người dùng? - Có thể sử dụng lại thành tựu hệ gợi ý truyền thống (khơng có thông tin ngữ cảnh) để xây dựng hệ gợi ý dựa nhận biết ngữ cảnh hay không? Để giải toán nêu trên, bắt đầu xem xét với tập liệu đầu vào có dạng U x I x C x R, với C chiều liệu ngữ cảnh thêm vào kết thúc tập sản phẩm gợi ý dựa ngữ cảnh i1, i2, i3, cho người dùng u Khi đó, tiến trình gợi ý dựa suy luận tối ưu tham chiếu ngữ cảnh người dùng triển khai dựa chế sau (hình 9): - Lọc trước theo ngữ cảnh (Contextual Pre-Filtering, hay cịn gọi ngữ cảnh hóa liệu đầu vào): theo chế này, thông tin ngữ cảnh điều khiển việc lựa chọn liệu xây dựng liệu theo ngữ cảnh cụ thể Hay nói cách khác, thơng tin ngữ cảnh c sử dụng để lựa chọn xây dựng tập liệu liên quan (ví dụ bảng xếp hạng sản phẩm) Sau đó, xếp hạng dự đoán cách sử dụng hệ gợi ý truyền thống tập liệu lựa chọn trước - Lọc sau theo ngữ cảnh (Contextual Post-Filtering, hay gọi ngữ cảnh hóa liệu đầu ra): theo chế này, thơng tin ngữ cảnh bỏ qua bước khởi tạo, xếp hạng dự đoán dựa hệ gợi ý truyền thống toàn liệu Sau đó, tập kết gợi ý tinh chỉnh (ngữ cảnh hóa) cho người dùng phù hợp với thông tin ngữ cảnh - Mô hình hóa hướng ngữ cảnh (Contextual Modeling, hay cịn gọi mơ hình hóa theo ngữ cảnh hàm gợi ý): theo chế này, thông tin ngữ cảnh sử dụng trực tiếp kỹ thuật mơ hình hóa với vai trò thành phần để tối ưu hàm xếp hạng 32 Hình 8: Các chế tích hợp thơng tin ngữ cảnh vào hệ gợi ý Sau đây, luận trình bày chi tiết chế tích hợp 2.2.1 Lọc trước theo ngữ cảnh (Contextual Pre-Filtering) Như trình bày hình 9.a, hướng tiếp cận lọc trước theo ngữ cảnh sử dụng thông tin ngữ cảnh để chọn lọc liệu 2D (User x Item) phù hợp để tạo gợi ý cho người dùng Một lợi ích quan trọng hướng tiếp cận việc sử dụng lại phương pháp gợi ý truyền thống chiều đề cập phần giới thiệu hệ gợi ý truyền thống Theo cách tiếp cận này, ngữ cảnh c sử dụng truy vấn để lọc liệu xếp hạng liên quan Một ví dụ sử dụng ngữ cảnh để lọc liệu hệ gợi ý phim sau: người dùng muốn xem phim vào thứ phim chiếu vào thứ xếp hạng dùng để gợi ý cho người dùng Trong ví dụ trên, truy vấn lọc liệu xây dựng dựa ngữ cảnh cụ thể xác định thời gian (thứ 7), hay nói cách khác lọc trước liệu trường hợp gọi lọc trước liệu xác Với chế lọc trước liệu theo ngữ cảnh, tác giả Adomavicius [28] đề xuất hướng tiếp cận theo phương thức rút gọn liệu (reduction-based) nhằm đưa tốn gợi ý khơng gian liệu nhiều chiều toán hệ gợi ý truyền thống chiều Như vậy, với phương pháp lọc trước theo ngữ cảnh nào, lợi quan trọng hướng tiếp cận rút gọn liệu tất nghiên cứu trước hệ gợi ý truyền thống chiều áp dụng trực tiếp hệ gợi ý nhiều chiều sau bước rút gọn liệu thực Cụ thể, cho RDUser x Item: U x I -> Rating hàm xếp hạng chiều kỳ, D tập liệu xếp hạng mẫu bao gồm bảng ghi , hồn tồn dự đốn cho xếp hạng người dùng sản phẩm, ví dụ: RDUser x Item(John, StarWar) Khi đó, hàm dự đốn xếp hạng chiều với ngữ cảnh thời gian (Time) định nghĩa công thức: RDUser x Item x Time: U x I x T -> Rating, D tập liệu 33 chứa bảng ghi (user, item, time, rating) chứa thông tin xếp hạng người dùng Hàm dự đốn xếp hạng chiều mở rộng thơng qua hàm dự đốn xếp hạng chiều theo nhiều cách theo công thức sau: 𝐷 (𝑢, 𝑖, 𝑡 ) ∀(𝑢, 𝑖, 𝑡 ) ∈ 𝑈 × 𝐼 × 𝑇, 𝑅𝑈𝑠𝑒𝑟×𝐼𝑡𝑒𝑚×𝑇𝑖𝑚𝑒 𝐷[𝑇𝑖𝑚𝑒=𝑡] (𝑈𝑠𝑒𝑟,𝐼𝑖𝑡𝑒𝑚,𝑅𝑎𝑡𝑖𝑛𝑔) = 𝑅𝑈𝑠𝑒𝑟×𝐼𝑡𝑒𝑚 (𝑢, 𝑖) Tải FULL (61 trang): https://bit.ly/3I27rBZ Dự phòng: fb.com/TaiHo123doc.net [Time = t] ký hiệu cho lọc trước theo ngữ cảnh thời gian, D[Time=t](user,item,rating) ký hiệu cho tập liệu xếp hạng nhận từ tập liệu D ban đầu cách chọ bảng ghi thõa mãn chiều liệu Time có giá trị t giữ lại chiều liệu User, Item giá trị xếp hạng rating tương ứng Từ phân tích ta thấy, xem tập liệu chiều D quan hệ D[Time=t](user,item,rating) đơn giản quan hệ khác nhận từ D cách thực phép toán quan hệ sau: phép chọn, phép trừ phép chiếu Tuy nhiên, theo phương pháp lọc xác nhiều lúc làm cho kết thu sau rút gọn liệu hạn chế Ví dụ, xem xét ngữ cảnh cho việc người dùng xem phim với bạn gái rạp chiếu phim vào thứ 7, c = (Girlfriend, Theater, Saturday) Sử dụng ngữ cảnh xác để thực truy vấn lọc liệu gây nhiều vấn đề hạn chế liệu nguyên nhân khác Đầu tiên, chắn tồn tỷ lệ khơng nhỏ ngữ cảnh xác khơng đủ ý nghĩa Ví dụ, sở thích xem phim với bạn gái vào thứ tương tự với xem phim với bạn gái vào chủ nhật, nhiên khơng giống vào thứ Do đó, nên xem xét dùng ngữ cảnh tổng quát Weekend (ngày cuối tuần) thay dùng xác ngữ cảnh thứ Thứ hai, ngữ cảnh xác khơng đủ liệu cho việc dự đốn xếp hạng, hay biết đến với vấn đề liệu thưa (sparsity) hệ gợi ý truyền thống Tóm lại, hệ gợi ý khơng có đủ liệu khứ sở thích xem phim với bạn gái rạp chiếu phim vào thứ người dùng cần xem xét Tổng quát hóa ngữ cảnh (context generalization) Hàm tổng quát lọc trước theo ngữ cảnh cho phép tổng quát hóa truy vấn lọc liệu thu dựa ngữ cảnh cụ thể [3] Cho c’=(c1’, , c’k) làm ngữ cảnh tổng quát hóa c = (c1, , ck) ci -> ci’ với ∀ i = 1, , k trật tự ngữ cảnh tương ứng Khi đó, c’ (thay c) dùng truy vấn để thu liệu xếp hạng theo ngữ cảnh Phát triển theo ý tưởng tổng quát hóa ngữ cảnh, Adomavicius [3] đề xuất không sử dụng ngữ cảnh xác [Time = t], mà thay vào sử dụng hàm lọc trước tổng quát hóa [Time ∈ St], với St ký hiệu cho tập ngữ cảnh cha t Khi đó, St gọi miền ngữ cảnh hóa Ví dụ, hệ gợi ý phim, ta muốn dự đoán xếp hạng người dùng John Doe với phim Gladiator xem vào thứ 2, để tính 𝑹𝑫 𝑼𝒔𝒆𝒓×𝑰𝒕𝒆𝒎×𝑻𝒊𝒎𝒆 (JohnDoe, Gladiator, Monday), ta nên dùng ngữ cảnh xếp hạng theo Weekday dùng ngữ cảnh xếp hạng theo Monday thực lọc liệu dự đốn Hay nói cách khác, với (u,i,t) mà t ∈ Weekday, ta dự đốn xếp hạng R: 34 𝐷[𝑇𝑖𝑚𝑒∈𝑊𝑒𝑒𝑘𝑑𝑎𝑦] (𝑈𝑠𝑒𝑟,𝐼𝑡𝑒𝑚,𝐴𝑅𝑅𝐺(𝑅𝑎𝑡𝑖𝑛𝑔)) 𝐷 (𝑢, 𝑖, 𝑡 ) = 𝑅𝑈𝑠𝑒𝑟×𝐼𝑡𝑒𝑚 𝑅𝑈𝑠𝑒𝑟×𝑈𝑠𝑒𝑟×𝑇𝑖𝑚𝑒 (𝑢, 𝑖) Tổng quát hơn, để dự đoán xếp hạng R(u,i,t), ta dùng miền ngữ cảnh xác định St sau: 𝐷[𝑇𝑖𝑚𝑒∈𝑆 ] (𝑈𝑠𝑒𝑟,𝐼𝑡𝑒𝑚,𝐴𝑅𝑅𝐺(𝑅𝑎𝑡𝑖𝑛𝑔)) 𝐷 𝑡 (𝑢, 𝑖, 𝑡 ) = 𝑅𝑈𝑠𝑒𝑟×𝐼𝑡𝑒𝑚 𝑅𝑈𝑠𝑒𝑟×𝑈𝑠𝑒𝑟×𝑇𝑖𝑚𝑒 Tải FULL (61 trang): https://bit.ly/3I27rBZ Dự phịng: fb.com/TaiHo123doc.net (𝑢, 𝑖) Trong cơng thức trên, ARRG(Rating) hàm đại số dùng để xác định giá trị xếp hạng chung cho tập miền St Hàm đại số hàm tính giá trị xếp hạng trung bình thực rút gọn chiều liệu không gian miền gợi ý Hàm rút gọn chiều mở rộng thành phương thức rút gọn tổng quát n chiều không gian gợi ý m chiều (m < n) Thông thường hệ thống hay áp dụng m=2 hệ gợi ý truyền thống xây dựng với chiều liệu User x Item Trong thực tế có nhiều khả xảy tổng quát hóa ngữ cảnh, phụ thuộc vào phân loại ngữ cảnh mức độ chi tiết ngữ cảnh xem xét Quay trở lại với ví dụ xem phim, ta có loại ngữ cảnh nhận suy luận từ phân cấp ngữ cách sau: - Company: GirlFriend -> Friends -> NotAlone -> AnyCompany; - Place: Theater -> AnyPlace; - Time: Saturday -> Weekend -> Anytime; Khi ngữ cảnh tổng quát c’ suy luận từ ngữ cảnh c=(GirlFriend, Theater, Saturday) có giá trị sau: - c’ = (GirlFriend, Anyplace, Saturday) - c’ = (Friends, Theater, Anytime) - c’ = (Notalone, Theater, Weekend) Từ ví dụ trên, nhận thấy việc lựa chọn hàm lọc trước tổng qt phù hợp có vai trị quan trọng hướng tiếp cận rút gọn liệu Thơng thường, có hai tùy chọn sau hay áp dụng Thứ nhất, chọn manual theo ý kiến chuyên gia, ví dụ ln ln tổng qt hóa ngày tuần thành Weekday Weekend Một tùy chọn khác chọn theo hướng tự động, sau đánh giá hiệu dự đoán theo kinh nghiệm Theo phương thức này, hệ thống thực dự đoán theo truy vấn lọc trước tổng quát khác chọn hàm lọc có hiệu 2.2.2 Lọc sau theo ngữ cảnh (Contextual Pos-Filtering) Như biểu diễn hình 9.b, hướng tiếp cận lọc sau bỏ qua yếu tố ngữ cảnh liệu đầu vào thực tính tốn gợi ý cho người dùng Sau có kết gợi ý thu với kỹ thuật gợi ý chiều truyền thống, hàm lọc sau theo ngữ cảnh áp dụng danh sách gợi ý thu dựa thông tin ngữ cảnh Danh sách gợi ý tinh chỉnh thu theo bước: - Lọc bỏ gợi ý không liên quan với ngữ cảnh áp dụng 35 - Hiệu chỉnh thứ tự xếp hạng gợi ý danh sách Ví dụ, hệ gợi ý phim, người dùng muốn xem phim vào cuối tuần cuối tuần người dùng muốn xem thể loại phim hài Sau thực dự đoán danh sách phim gợi ý theo kỹ thuật gợi ý chiều (bỏ qua yếu tố thơng tin ngữ cảnh), hệ thống lọc loại bỏ phim không liên quan đến thể loại phim hài từ danh sách phim gợi ý Tổng quát, ý tưởng hướng tiếp cận lọc sau theo ngữ cảnh phân tích liệu sở thích theo ngữ cảnh người dùng cụ thể ngữ cảnh cụ thể để tìm mẫu gợi ý điển hình, sau dùng mẫu để hiệu chỉnh danh sách gợi ý cho người dùng Kết sản phẩm phù hợp với ngữ cảnh gợi ý cho người dùng phù hợp Hiǹ h 9: Bước hiệu chỉnh danh sách gợi ý lọc sau theo ngữ cảnh Tương tự kỹ thuật gợi ý khác, hướng tiếp cận lọc sau theo ngữ cảnh phân loại theo nhóm: nhóm dựa kinh nghiệm (heuristic) nhóm dựa mơ hình (model-based) - Nhóm dựa kinh nghiệm: tập trung vào tìm kiếm thuộc tính đặc trưng sản phẩm phù hợp với người dùng cho theo ngữ cảnh cho (ví dụ, diễn viên yêu thích người dùng muốn xem ngữ cảnh cho), sau sử dụng thuộc tính để hiệu chỉnh danh sách gợi ý, bao gồm: Lọc bỏ sản phẩm gợi ý khơng có đủ số lượng thuộc tính cần có (ví dụ, để gợi ý, phim phải có diễn viên u thích người dùng ngữ cảnh xem xét) Xếp hạng lại danh sách gợi ý dựa số lượng thuộc tính đặc trưng mà sản phẩm có (ví dụ, phim có nhiều diễn viên u thích xếp hạng cao phim khác) - Nhóm dựa mơ hình: xây dựng mơ hình dự đốn dùng để tính xác suất mà người dùng lựa chọn thể loại chắn sản phẩm theo ngữ cảnh xem xét, chẳng hạn xác suất liên quan, sau sử dụng xác suất để hiệu chỉnh danh sách gợi ý, bao gồm: Lọc bỏ sản phẩm gợi ý mà xác suất liên quan nhỏ giá trị ngưỡng (threashold) tối thiểu hệ thống định nghĩa sẵn Xếp hạng danh sách gợi ý dựa giá trị trọng số xếp hạng dự đoán theo xác suất liên quan 6813803 ... cá nhân thông qua 100 ứng dụng dịch vụ ngày Ứng dụng dịch vụ di động trở thành phương tiện giao tiếp thơng tin người dùng – người dùng, người dùng – nhà cung cấp dịch vụ Bài toán làm để ứng dụng. .. văn hướng đến mục tiêu nghiên cứu xây dựng giải pháp cá nhân hoá ứng dụng dịch vụ động theo mơ hình hướng ngữ cảnh thời người dùng, áp dụng kỹ thuật gợi ý dựa thông tin ngữ cảnh xây dụng ứng dụng. .. Chương 3: Xây dựng ứng dụng du lịch theo hướng cá nhân hóa dựa ngữ cảnh người dùng ứng dụng MobiFone Chương trình bày hệ thống gợi ý du lịch theo hướng cá nhân hóa dựa ngữ cảnh người dùng, đặc tả