Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
3,16 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÙI AN LỘC CÁNHÂNHÓAỨNGDỤNGVÀDỊCHVỤDIĐỘNGHƯỚNGNGỮCẢNHNGƯỜIDÙ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ƯỜIHƯỚ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ì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ườihướng dẫn khoa học Phần nội dungđóng góp luận văn 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, 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 suốt 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 để hoàn thành luận văn Mặc dù cố gắng, tin luận văn nhiều thiếu sót có nhiều nội dung hoà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ânhóaứngdụngdiđộng 18 1.2.2 Khái niệm nhận biết ngữcảnh 19 1.2.3 Tính toá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óahướngngữcảnh (Contextual Modeling) 36 2.3 Mô hình hóangữ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ướngngữcảnh (Context Aware Matrix Factorization - CAMF) 42 2.4 Kế t luâ ̣n chương 46 Chương XÂY DỰNGỨNGDỤNG DU LỊCH THEO HƯỚNGCÁNHÂNHÓA DỰA TRÊN NGỮCẢNHNGƯỜIDÙ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ướngngữ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ịchvụ 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ườidù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ườidù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 ứngdụngdiđộng tải 268 tỷ lần, tạo doanh thu 77 tỷ USD ứngdụngdiđộng trở thành công cụ tính toán phổ biến cho ngườidùng toàn cầu Gartner dự đoán ngườidùngdiđộng cung cấp liệu cánhân thông qua 100 ứngdụngdịchvụ ngày Ứngdụngdịchvụdiđộng trở thành phương tiện giao tiếp thông tin ngườidùng – người dùng, ngườidùng – nhà cung cấp dịchvụ Bài toán làm để ứngdụngdịchvụ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ânngườidùng ngày trở nên cần thiết khẩn cấp Giải pháp cánhânhóaứngdụngdịchvụdiđộng theo hướng tiếp cận ngữcảnhngườidù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ườidù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 trình sử dụng thông tin thông qua ứngdụngdịchvụ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ứngdụngdịchvụ giá trị gia tăng MobiFone cung cấp cho khách hàng 200 dịchvụứngdụng giá trị gia tăng, bao gồm đầy đủ lĩnh vực nhóm dịchvụ thông tin tổng hợp, nhóm dịchvụ âm nhạc, phim ảnh clip, nhóm dịchvụ thể thao, nhóm dịchvụ game, nhóm dịchvụ tiện ích, … Với số lượng dịchvụ 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ịchvụ chiếm tỷ trọng lớn (hơn 80% thuê bao không thực tương tác với dịchvụ qua kênh SMS hồi đáp) Việc không tương tác với ứngdụngdịchvụ thể khách hàng quan tâm đến dịchvụ nội dung mà MobiFone cung cấp, hay nói cách khác dịchvụứngdụ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ânhoáứngdụngdịchvụđộng theo mô hình hướngngữ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ứngdụ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ảnhngười dùng, phương thức nhân biết ngữcảnh Trên sở nội dungngữ cảnh, luận văn làm rõ việc tích hợp, ứngdụ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ườidùng gợi ý sản phẩm phù hợp với sở thích, nhu cầu ngườidù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ướngngữ 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 ý Ứngdụ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ướngngữcảnhngười dùng, sử dụng mô hình phân rã ma trận hướngngữcảnh để dự đoán xếp hạng gợi ý cho ngườidù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ânhóadịchvụdiđộnghướngngữ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ứngdụng du lịch theo hướngcánhânhóa dựa ngữcảnhngườidùngứngdụng MobiFone Chương trình bày hệ thống gợi ý du lịch theo hướngcánhânhóa dựa ngữcảnhngườ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ảnhNhậ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 ứngdụng đảm bảo tính linh hoạt tính tự trị (học máy) Các ứngdụngnhậ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ườidùng để thích ứng với hành vi khả thay đổi môi trường thực thi yêu cầu ngườidùng Thông tin tích hợp từ cảm biến từ ngườidù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 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 toán nhận biết ngữcảnh thường bao gồm: - Phải hiểu khái niệm ngữcảnhNgữ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 ứngdụ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ụngngữ 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 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ự đoán mô hình hóangườidù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ụngngữ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 47 Chương XÂY DỰNGỨNGDỤNG DU LỊCH THEO HƯỚNGCÁNHÂNHÓA DỰA TRÊN NGỮCẢNHNGƯỜIDÙNG 3.1 Đặt bài toán Dựa kỹ thuật phân rã ma trận hướngngữcảnh trình bày Chương 2, sử dụng Framework mã nguồn mở CARSKIT [37], phần luận văn trình bày giải pháp xây dựng hệ thống gợi ý địa điểm du lịch cho người dùng, sử dụngngữcảnhngườidùng để cánhânhóaứngdụng gợi ý địa điểm du lịch phù hợp với ngườidùng Hệ thống quản lý, lưu trữ địa điểm du lịch hấp dẫn Việt Nam cho phép ngườidùng tìm kiếm địa điểm du lịch Hệ thống hiển thị địa điểm du lịch theo nhu cầu ngườidùng quan tâm Hệ thống có chức cho ngườidùng đánh giá, like comment cho địa điểm du lịch Đặc biệt hệ thống tự động thu thập liệu ngườidùng để đưa gợi ý địa điểm du lịch hợp lý với ngữcảnhngườidùngNgườidùng muốn thực chức phải đăng ký thành viên đăng nhập vào hệ thống Sau ngườidùng đăng nhập vào hệ thống hệ thống thu thập thông tin ngữcảnhngườidùng Về vị trí, thời tiết, thời gian để đưa gợi ý phù hợp với ngườidùng hệ thống dựa vào địa điểm mà ngườidùng đánh giá, quan tâm để đưa gợi ý đến ngườidùng 3.2 Giải pháp đề xuấ t 3.2.1 Mô hiǹ h kiế n trúc ứng du ̣ng Hệ thống xây dựng gồm thành phần sau đây: - Ứngdụng client: o Phần client xây dựng tảng Android sử dụng ngôn ngữ Java Android SDK Client giao tiếp với hệ thống server qua giao thức http restful web service Phương thức xác thực dựa phiên làm việc (session) sinh từ hệ thống xác thực (authenticate) o Thu thập thông tin ngữcảnhngười dùng: vị trí, thời gian, thời tiết ngữcảnh tĩnh ngườidùng nhập vào ứngdụng o Gửi thông tin ngữcảnh server, yêu cầu phía server dự đoán xếp hạng nhận danh sách gợi ý từ server - Phần server: o Phần server quản lý địa điểm du lịch tác độngngườidùng quản lý user xác thực hệ thống Server xây dựng ngôn ngữ Java, phần sở liệu xây dựng hệ quản trị sở liệu mysql o Nhận biết chuẩn hóangữcảnhngười dùng, xây dựng liệu ngữcảnh theo định dạng chuẩn trước gửi sang hệ gợi ý để tiến hành trình học xây dựng hàm dự đoán xếp hạng 48 o Thành phần gợi ý: dựa framework mã nguồn mở CARSkit Framework (CARSKit - A java based context aware recommendation engine), sử dụng kỹ thuật CAMF-CU để học xây dựng hàm dự đoán xếp hạng, có kiến trúc sau: Hình 11: Kiến trúc tảng mã nguồn mở CARSKIT o Thành phần giao tiếp với client, gửi danh sách gợi ý cho client cho ứngdụng bên thứ (third-party) Mô hình thiết kế hệ thống: Hình 12: Kiến trúc thiết kế hệ thống 49 3.2.2 Thiết kế ứng du ̣ng 3.2.2.1 Sơ đồ ca ngườ i dù ng Hiǹ h 13: Thiết kế user case 3.2.2.2 Thiết kế mô hình sở dữ liệu Mô hình thực thể quan hệ quản lý người dùng: Hiǹ h 14: Mô hình thực thể quan hệ quản lý user 50 Mô hình thực thể quan hệ quản lý địa điểm du lịch gợi ý người dùng: Hiǹ h 15: Mô hình thực thể quan hệ quản lý địa điểm gợi ý 3.2.3 Môi trường xây dựng và thử nghiê ̣m Phần server xử lý liệu ngườidùng gồm module: Xác thực Recomender, có cấu sau: - Hardware: o CPU: Dual-Core AMD Opteron(tm) Processor 1222 (3.0 Hz) core Thread o RAM: 4G - OS: o Red Hat Enterprise Linux Server release 5.7 o 64 bit - MYSQL o Version: 5.1.73 - Java: o Version "1.8.0_51" - Tomcat o Version 7.0.70 Client: - Android SDK - Min version: 4.0.0 3.3 Thử nghiê ̣m ứng du ̣ng và đánh giá kế t quả ta ̣i Mobifone Tập liệu địa điểm du lịch đầu vào xây dựng dựa thông tin địa điểm du lịch Việt Nam từ nguồn internet, liệu ngữcảnh giá trị xếp hạng ban đầu hệ thống xây dựng tự động theo phương pháp ngẫu nhiên Các liệu sau chuẩn hóa đưa vào lưu 51 CSDL với cấu trúc liệu nhiều chiều liệu xếp hạng ngườidùng theo ngữ cảnh: UID | PID | RATE | COMPANION | SEASON | DAYTIME | WEATHER | TEMPERATURE Trong - UID: id ngườidùng - PID: id địa điểm du lịch - RATE: Điểm đánh giá người dùng, có giá trị từ - - SEASON: Ngữcảnh mùa, bao gồm: o Mùa xuân o Mùa hạ o Mùa thu o Mùa đông - COMPANION: Ngữcảnhngười du lịch cùng, bao gồm: o Một (alone) o Bạn bè o Gia đình o Người yêu - DAYTIME: Ngữcảnh thời gian, số ngày du lịch: o Nữa ngày (đi ngày) o Một ngày (đi qua đêm) o Nhiều ngày - WEATHER: Ngữcảnh thời tiết, thời tiết địa điểm du lịch: o Trong xanh o Có nắng o Râm mát o Có mưa - TEMPERATURE: Ngữcảnh nhiệt độ Các liệu lưu thành bảng liệu nhiều chiều OLAP CSDL (hình 16, 17), nhiên trước đưa vào hàm CAMF chuyển sang liệu dạng mảng theo định dạng CARSKIT Hình 16: Dữ liệu rating lưu CSDL 52 Hình 17: Dữ liệu địa điểm lưu CSDL Dữ liệu traning bao gồm: - Số lượng địa điểm: 42 địa điểm - Số lượng user: 50 - Số lượng rating: 1000 - Số lượng yếu tố tiềm ẩn: K = 10 - Chỉ số learning rate alpha: < α ≤ - Chỉ số chuẩn hóa beta: < β ≤ - Chỉ số Interval: 100 3.3.1 Kế t quả ứng du ̣ng - Hình ảnh deploy server: Hình 18: Deploy hệ thống môi trường Linux Các module deploy có thư mục gồm: - BIN: Chứa file biên dịch class 53 - CONFIG: Chứa file config hệ thống - LOG: Chứa file log trình module chạy runtime Phần client thu thập hiển thị thông tin cho ngườidùng đầu cuối - Màn hình đăng ký đăng nhập: Hiǹ h 19: Giao diện xác thực ngườidùng - Màn hình home ( hình client thu thập thông tin ngữcảnh gồm vị trí, thời gian, thời tiết) hiển thị danh sách địa điểm du lịch gới ý cho ngườidùng dựa ngữcảnh thu thập (client gửi liệu server để tính toán dự đoán xếp hạng nhận gợi ý hệ thống trả lại cho người dùng): 54 Hiǹ h 20: Giao diện home client - Màn hình gợi ý ( dựa ngữcảnh tĩnh ngườidùng lựa chọn để đưa địa điểm du lịch phù hợp) 55 Hình 21: Giao diện nhập thông tin ngữcảnh tĩnh gợi ý - Màn hình thông tin ngườidùng đăng xuất khỏi ứngdụng Hình 22: Giao diện thông tin ngườidùng đăng xuất hệ thống 3.3.2 Đánh giá thử nghiê ̣m Đánh giá tốc độ tính toán hệ thống: Như trình bày phần 2.3.3, kỹ thuật CAMF thực tính toán thời gian tuyến tính, lợi lớn CAMF đưa vào áp dụng thực tế Trong ứngdụng thực nghiệm, ngữcảnhngườidùng thay đổi (vị trí thay đổi, thời tiết thay đổi, ) hình HOME ứngdụng tự động thay đổi đưa gợi ý địa điểm đánh giá cao, phù hợp với ngườidùng Tương tự thế, ngườidùng chọn tính lựa chọn ngữcảnh đầu vào manual để yêu cầu hệ thống đưa gợi ý, hệ thống liệu ngữcảnh đầu vào để tính toán đưa gợi ý địa điểm phù hợp cho ngườidùng Để mang lại cảm giác tốt cho ngườidùng thời gian mà hệ thống thực phải đáp ứng realtime Với môi trường dùng để xây dựng hệ thống thực nghiệm luận án (sử dụng server cấu hình tương đối thấp, chưa áp dụng tính toán song song, ), tập liệu traing gồm 1000 ratings cho 50 user 42 địa điểm mẫu thời gian đáp ứng trung bình cho lần tính toán xấp xỉ 2s So với phương pháp gợi ý truyền thống, thời gian thực hiệu đáp ứng yêu cầu ngườidùng Đây tiền đề để triển khai phát triển hệ thống sử dụng CAMF tập liệu lớn, tất nhiên phải sử dụng nhiều tài nguyên phần cứng, đồng thời áp dụng kỹ thuật tính toán song song khả đáp ứng thời 56 gian hệ thống hoàn toàn thõa mãn nhu cầu ngườidùng Đánh giá thời gian thực hiện: Lần Thời gian Thời gian học Thời gian thu Tổng thời gian thực học (ms) đưa gợi ý (ms) thập liệu từ (ms) (T1) (T2) CSDL (ms) (T3) (T1)+(T2)+(T3) Lần 1936 97 2814 Lần 2900 16 3697 Lần 781 1724 20 2525 Lần 2438 16 3235 Lần 2042 26 2849 Trung bình 2377 Bảng 5: Đánh giá thời gian thực Đánh giá độ xác dự đoán theo RMSE so sánh CAMF_CU BPMF (Bayesian Probabilistic Matrix Factorization): tiêu chí quan trọng để đánh giá hệ thống gợi ý độ xác dự đoán Trong phần này, luận văn lựa chọn độ đo RMSE trình bày phần 1.3.4 với tham số tốc độ học tham số chuẩn hóa β thay đổi khác Do tập liệu đầu vào xây dựng dựa nguồn thu thập internet giá trị rating xác định ngẫu nhiên nhằm mục đích thử nghiệm kỹ thuật CAMF, đề tài chọn độ đo RMSE để đánh giá độ xác thay chọn độ đo khác Precision, Recall, (cần phải đánh giá offline, khảo sát thực tế đánh giá ngườidùng so với kết tính toán) Qua lần tính toán khác nhau, kỹ thuật CAMF cho kết đánh giá RMSE ~ 0.9, so với phương pháp phân rã ma trận chiều BPMF (RMSE > 1) độ xác dự đoán CAMF ấn tượng Giá trị RMSE ~ 0.9 sau tính toán kỹ thuật CAMF chứng minh giá trị dự đoán xếp hạng sau trình học máy tập liệu đầu vào có độ xác cao, đồng nghĩa với gợi ý địa điểm đưa phù hợp với đánh giá ngườidùng Bảng số liệu tính toán RMSE qua 10 lần thực với α, β thay đổi, tương ứng với kỹ thuật CAMF MF truyền thống, cụ thể: Tham số CAMF_CU BPMF Lần thực 0.94008 1.06854 0.95678 1.06468 0.96924 1.03847 0.95791 1.07317 0.96967 1.05508 0.96027 1.02787 0.94744 1.05255 0.97139 1.03496 0.95778 1.04715 0.93789 1.04727 10 57 Bảng 6: Đánh giá độ xác dự đoán So sánh RMSE CAMF_CU & BPMF 001.100 001.050 001.000 000.950 000.900 000.850 10 CAMF_CU 000.940 000.957 000.969 000.958 000.970 000.960 000.947 000.971 000.958 000.938 BPMF 001.069 001.065 001.038 001.073 001.055 001.028 001.053 001.035 001.047 001.047 CAMF_CU BPMF Hình 23: So sánh độ xác CAMF & BPMF theo RMSE 58 Chương KẾT LUẬN CHUNG 4.1 Đóng góp luận văn Trong trình tìm hiểu để đưa cách giải cho toán cánhânhóaứngdụngdịchvụdiđộng theo hướngngữcảnhngười dùng, luận văn nêu lại mảng kiến thức tổng quan ngữ cảnh, khái niệm, đặc trưng, phương thức quản lý hướng tiếp cận nhận biết ngữcảnh Phần tổng quản luận văn nêu lại nội dung toán lớn hệ gợi ý, hướng tiếp cận, phương pháp giải quyết, ứngdụng đánh giá… Với hướng tiếp cận sử dụng kết hợp thông tin ngữcảnh toán gợi ý, luận văn làm rõ hệ gợi ý dựa nhận biết ngữ cảnh, cách thức quản lý ngữcảnh hệ gới ý, phương thức tích hợp ngữcảnh vào tiến trình tính toán dự đoán gợi ý Đặc biệt, luận văn trình bày chi tiết hệ gợi ý phân rã ma trận dựa nhận biết ngữcảnh (CAMF) Một hệ thống gợi ý mà phương thức xây dựng áp dụng theo cách tiếp cận mô hình hóa, thực tính toán, học máy, mở rộng từ kỹ thuật phân rã ma trận thiên vị tập liệu tập luyện nhiều chiều (R: USER x ITEM x CONTEXT => RATING) để đưa gợi ý cho ngườidùng Hệ thống CAMF giải thách thức hệ gợi ý truyền thống gặp phải vấn đề liệu thưa, vấn đề khởi động chậm vấn đề mở rộng hệ thống, với thời gian tính toán học máy thực theo hàm tuyến tính Từ sở đó, luận văn đưa phương pháp lý áp dụng cho toán thực nghiệm luận văn: Xây dựngứngdụng du lịch theo hướngcánhânhóa dựa ngữcảnhngườidùng Kết sản phẩm luận văn xây dựng thành công hệ thống client – server cho thiết bị didộng Chức hệ thống tích hợp ngữcảnhngườidùng vị trí, thời gian thời tiết để hệ thống đưa gợi ý cho riêng ngườidùng với tùy biến cánhân địa điểm du lịch phù hợp với ngữcảnhđộngngữcảnh tĩnh ngườidùngHướng gợi ý hệ thống gồm hai hướng: 1) gợi ý danh sách địa điểm dự đoán xếp hạng cao phù hợp với ngườidùng tương ứng với ngữcảnh 2) gợi ý danh sách địa điểm dự đoán xếp hạng cao dựa vào ngữcảnh tĩnh mà ngườidùng lựa chọn tìm kiếm Phương pháp áp dụng để tính toán dựa hệ gợi ý phân rã ma trận theo hướngnhận biết ngữcảnhngườidùng Kết chạy thực nghiệm chứng minh nhận định trước độ xác dự đoán, thời gian thực từ bước thu thập, nhận biết chuẩn hóa liệu ngữcảnh đầu vào đến bước hiển thị kết xếp hạng địa điểm gợi ý cho ngườidùng Kết minh chứng tính khoa học lựa chọn sử dụng phương pháp CAMF cho hệ gợi ý dựa nhận biết ngữcảnh Tuy thực nghiệm dừng lại bước ngoại tuyến offline, chưa có điều kiện áp dụng bước khảo sát nhóm ngườidùng đánh giá môi trường thực tế, kết mang lại có ý nghĩa định tính khả thi áp dụng triển khai phương pháp dùng hệ gợi ý dựa nhận biết ngữcảnh để giải toán cánhânhóaứngdụngdiđộng 4.2 Hướng phát triển Một thách thức hệ gợi ý dựa nhận biết ngữcảnh vị trí độ xác trình thu thập, nhận biết chuẩn hóa liệu 59 ngữcảnh đầu vào Hệ thống phải thực chọn lọc thông tin ngữcảnh vừa đủ để đảm bảo thông tin có hàm lượng ảnh hưởng hiệu lên trình tính toán phải đảm bảo không dư thừa liệu phát sinh vấn đề thời gian tính toán hệ thống bị mở rộng không mong muốn Một hướng giải luận văn tương lai với thách thức thu thập thông tin vị trí ngườidùng dựa trực tiếp từ nhà cung cấp dịchvụ viễn thông (Telco), dựa tảng hệ thống LBS (Location Based Service) Khi đó, hệ thống gợi ý không phụ thuộc vào thông tin ngữcảnh vị trí truyền nhận từ phía client phần mềm (bắt buộc phải ngườidùng cài đặt trước thu thập thông tin) mà nhận thông tin vị trí ngườidùng trực tiếp từ hệ thống LBS Telco với độ xác cao thông tin vị trí Ngoài để gợi ý tốt cho nhóm ngườidùng hay liệu mới, áp dụng mở rộng chiều ngữcảnh tích hợp vào hệ thống, ngữcảnh cảm nhậnngườidùng sau sử dụng, ngữcảnh quan hệ xã hội thu thập từ mạng xã hội thịnh hành Facebook, Zalo, Khi đó, mở rộng chức hệ thống, không thực gợi ý cho ngườidùng địa điểm du lịch mà tính gợi ý thương mại điện tử, quảng cáo trực tuyến tảng diđộng theo hướngcánhânhóangười dùng, xu hướng ngành công nghệ thông tin đại với hệ gợi ý, học máy, tính toán song song tảng công nghệ Hy vọng vấn đề đề cập luận văn từ lớn đến nhỏ, từ cách tiếp cận, đến vướng mắc giải bước thực hiện, giúp phần đưa cách giải quyết, cách tư toán thực tế nói chung toán gợi ý nói riêng, góp phần chứng minh tính khả thi hướng áp dụng hệ gợi ý dựa nhận biết ngữcảnh theo mô hình hóa việc xây dựng hệ thống ứngdụngcánhânhóahướngngữcảnhngườidùng TÀI LIỆU THAM KHẢO Albrecht Schmidt, Michael Beigl, and Hans-W Gellersen, “There is more to Context than Location”, University of Karlsruhe Schmidt, A., Aidoo, K.A., Takaluoma, A, Tuomela, U., Van Laerhoven, K., Van de Velde, W (1999), “Advanced Interaction In Context” Lecture Notes in Computer Science, Hand Held and Ubiquitous Computing , P.J Brown and J.D Bovey and C Xian (1997), “Context-aware applications: from the laboratory to the marketplace”, IEEE Personal Communications, 4(5) A.Newell and H.A Simon (1965), “Computer Augmentation of Human Reasoning” Spartan Books, Washington DC, USA G Chen and D Kotz (2000), “A Survey of Context-Aware Mobile Computing Research”, Techreport TR2000-381, Dept of Computer Science, Dartmouth College Albrecht Schmidt (2002), “Ubiquitous Computing –Computing in Context”, Computing Department, Lancaster University, U.K 60 Karen Henricksen (2005), “Modelling and Using Imperfect Context Information”, School of Information Technology and Electrical Engineering, The University of Queensland A.Schilit, N Adams, and R Want (1994), “Context-aware computing applications”, In IEEE Workshopon Mobile Computing Systems and Applications Pashtan A., Blattler R., Heusser A and Scheurmann P (2003), “CATIS: A Context-Aware Tourist Information System”, Proceedings of the 4th International Workshop of Mobile Computing, Rostock 10 Anind K Dey (2000), “Providing Architectural Support for Building ContextAware Applications”, Georgia Institute of Technology, November 11 Yun Her, Su-Kyoung Kim, YoungTaek Jin (2010), “A Context-Aware Framework using Ontology for Smart Phone Platform”, International Journal of Digital Content Technology 12 Nguyen Thai-Nghe 2013 An introduction to factorization technique for building recommendation systems Vol.6/2013, pp 44-53, Journal of Science - University of Da Lat, ISSN 0866-787X 13 Francesco Ricci, Lior Rokach, Bracha Shapira, and Paul B Kantor 2010 Recommender Systems Handbook (1st ed.) Springer-Verlag New York, Inc., New York, NY, USA 14 Herlocker, J.L., Konstan, J.A., Terveen, K., et al (2004) Evaluating Collaborative Filtering Recommender Systems ACM Transactions on Information and Systems, 22, 5-53 15 Empirical analysis of predictive algorithms for collaborative filtering, JS Breese, D Heckerman, C Kadie - Proceedings of the Fourteenth conference on …, 1998 16 G Adomavicius and a Tuzhilin, “Toward the Next Generation of Recommender Systems: a Survey of the State of the Art and Possible Extensions,” IEEE Trans Knowl Data Eng., vol 17, no 6, pp 734–749, 2005 17 A.M Rashid, I Albert, D Cosley, S K Lam, S M McNee, J a Konstan, and J Riedl, “Getting to Know You: Learning New User Preferences in Recommender Systems,” Int Conf Intell User Interfaces, IUI 2002, pp 127– 134, 2002 18 Gediminas Adomavicius, Alexander Tuzhilin Context-Aware Recommender Systems, Recommender Systems Handbook 2011, pp 217-253 Spinger 19 J L Herlocker and J A Konstan Content-independent task-focused recommendation IEEE Internet Computing, pages 40–47, 2001 20 S Abbar, M Bouzeghoub, and S Lopez Context-aware recommender systems: A serviceoriented approach VLDB PersDB Workshop, 2009 21 F Cena, L Console, C Gena, A Goy, G Levi, S Modeo, and I Torre Integrating heterogeneous adaptation techniques to build a flexible and usable mobile tourist guide AI Communications, 19(4):369–384, 2006 22 S Chaudhuri and U Dayal An overview of data warehousing and olap technology ACM Sigmod record, 26(1):65–74, 1997 23 G D Abowd, C G Atkeson, J Hong, S Long, R Kooper, and M Pinkerton Cyberguide: A mobile context-aware tour guide Wireless Networks, 3(5):421– 433, 1997 61 24 K Cheverst, N Davies, K Mitchell, A Friday, and C Efstratiou Developing a contextaware electronic tourist guide: some issues and experiences In Proceedings of the SIGCHI conference on Human factors in computing systems, pages 17–24 ACM, 2000 25 L Ardissono, A Goy, G Petrone, M Segnan, and P Torasso Intrigue: personalized recommendation of tourist attractions for desktop and hand held devices Applied Artificial Intelligence, 17(8):687–714, 2003 26 M Van Setten, S Pokraev, and J Koolwaaij Context-aware recommendations in the mobile tourist application compass In W Nejdl and P De Bra, editors, Adaptive Hypermedia, pages 235–244 Springer Verlag, 2004 27 B.De Carolis, I Mazzotta, N Novielli, and V Silvestri Using common sense in providing personalized recommendations in the tourism domain In Workshop on Context-Aware Recommender Systems (CARS 2009) New York, 2009 28 G Adomavicius, R Sankaranarayanan, S Sen, and A Tuzhilin Incorporating contextual information in recommender systems using a multidimensional approach ACM Transactions on Information Systems (TOIS), 23(1):103–145, 2005 29 K Oku, S Nakajima, J Miyazaki, and S Uemura Context-aware SVM for context-dependent information recommendation In Proceedings of the 7th International Conference on Mobile Data Management, page 109, 2006 30 U Panniello, A Tuzhilin, M Gorgoglione, C Palmisano, and A Pedone Experimental comparison of pre-vs post-filtering approaches in context-aware recommender systems In Proceedings of the 3rd ACM conference on Recommender systems, pages 265–268 ACM, 2009 31 Z Yu, X Zhou, D Zhang, C Y Chin, X Wang, and J Men Supporting context-aware media recommendations for smart phones IEEE Pervasive Computing, 5(3):68–75, 2006 32 B Sarwar, G Karypis, J Konstan, and J Reidl Item-based collaborative filtering recommendation algorithms In Proceedings of the 10th international conference on World Wide Web, pages 285–295 ACM, 2001 33 G Adomavicius and A Tuzhilin Incorporating context into recommender systems using multidimensional rating estimation methods In Proceedings of the 1st International Workshop on Web Personalization, Recommender Systems and Intelligent User Interfaces (WPRSIUI 2005), 2005 34 Yehuda Koren, Robert Bell, and Chris Volinsky 2009 Matrix Factorization Techniques for Recommender Systems Computer 42, (August 2009), 30-37 DOI=10.1109/MC.2009.263 35 Y Koren Collaborative filtering with temporal dynamics In Proceedings of the 15th ACM SIGKDD international conference on Knowledge Discovery and Data mining, KDD ’09, pages 447–456, New York, NY, USA, 2009 ACM 36 Baltrunas, Ludwig, Ricci Matrix Factorization Techniques for Context Aware Recommendation, RecSys 2011 37 Yong Zheng, Bamshad Mobasher, Robin Burke CARSKit: A Java-Based Context-aware Recommendation Engine ... 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. .. 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ệ... 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