Nghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map ReduceNghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop Map Reduce
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Trần Thị Giang NGHIÊN CỨU PHƯƠNG PHÁP TƯ VẤN KẾT HỢP DỰA VÀO HADOOP - MAPREDUCE LUẬN VĂN THẠC SĨ KỸ THUẬT (Theo định hướng ứng dụng) HÀ NỘI, NĂM 2018 HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Trần Thị Giang NGHIÊN CỨU PHƯƠNG PHÁP TƯ VẤN KẾT HỢP DỰA VÀO HADOOP - MAPREDUCE Chuyên ngành: Hệ thống thông tin Mã số: 8.48.01.04 LUẬN VĂN THẠC SĨ KỸ THUẬT (Theo định hướng ứng dụng) NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGHUYỄN DUY PHƯƠNG HÀ NỘI, NĂM 2018 i LỜI CAM ĐOAN Tôi cam đoan đề tài: “Nghiên cứu phương pháp tư vấn kết hợp dựa vào Hadoop- MapReduce” cơng trình nghiên cứu riêng tơi hướng dẫn TS Nguyễn Duy Phương Các kết quả, phân tích, kết luận luận văn thạc sỹ (ngồi phần trích dẫn) kết làm việc tác giả, số liệu nêu luận văn trung thực chưa công bố cơng trình khác Nếu sai tơi xin hoàn toàn chịu trách nhiệm Hà Nội, ngày 08 tháng 01 năm 2018 Tác giả Trần Thị Giang ii LỜI CẢM ƠN Lời cho em xin gửi lời cảm ơn chân thành đến thầy, cô giáo thuộc Khoa CNTT, Khoa QT&ĐT sau đại học thuộc Học viện Cơng nghệ Bưu viễn thơng tận tình giảng dạy, truyền đạt nội dung kiến thức, kinh nghiệm quý báu suốt trình em theo học Học viện Với học quý giá, kèm cặp, bảo truyền thụ tâm huyết thầy, giúp cá nhân em hồn thiện hệ thống kiến thức chuyên ngành, phục vụ tốt yêu cầu công tác đơn vị đồng thời nâng cao vốn tri thức thân Đặc biệt, em xin gửi lời cảm ơn trân thành tới thầy hướng dẫn khoa học TS Nguyễn Duy Phương tận tình bảo, hướng dẫn, cung cấp tài liệu nội dung kiến thức quý báu, đồng thời có định hướng đắn giúp em hồn thành luận văn Em xin bày tỏ cảm ơn sâu sắc tới gia đình, đồng nghiệp tạo điều kiện, dành ủng hộ thân em để có nhiều thời gian cho khóa học, đạt kết khả quan trình học tập Đồng thời xin chân thành cảm ơn tập thể lớp Cao học Hệ thống thông tin – Đợt năm 2016 đồng hành, khích lệ chia sẻ suốt trình học tập Trong trình thực luận văn, thân cố gắng, chủ động việc sưu tầm tài liệu, củng cố kiến thức… nhiên chắn luận văn nhiều thiếu sót Em mong nhận dạy, đóng góp tận tình thầy, để luận văn em hồn thiện có tính ứng dụng cao thực tiễn Xin trân trọng cảm ơn! Hà Nội, ngày 08 tháng 01 năm 2018 Học viên Trần Thị Giang iii MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT v DANH MỤC CÁC BẢNG vi DANH MỤC CÁC HÌNH viii MỞ ĐẦU CHƯƠNG -TỔNG QUAN VỀ HADOOP & MAHOUT 1.1 Giới thiệu Hadoop 1.2 Mahout 1.2.1 Tổng quan Apache Mahout 1.2.2 Các kỹ thuật học máy Mahout 1.3 Giới thiệu MapReduce 11 1.3.1 Giới thiệu mơ hình tính tốn MapReduce 11 1.3.2 Các thành phần MapReduce 12 1.3.3 Cơ chế hoạt động MapReduce 13 1.3.4 Phát triển ứng dụng theo mơ hình MapReduce với Hadoop MapReduce 17 Kết luận chương1: 19 CHƯƠNG - PHƯƠNG PHÁP TƯ VẤN 20 DỰA VÀO MAPREDUCE 20 2.1 Giới thiệu vấn đề 20 2.2 Phương pháp tư vấn kết hợp dựa vào người dùng Mapreduce 22 2.2.1 Kết hợp hồ sơ người dùng vào ma trận đánh giá 22 2.2.2 Thuật toán tư vấn kết hợp dựa vào người dùng 25 2.2.3 Áp dụng MapReduce cho hệ tư vấn dựa vào người dùng 27 2.3 Phương pháp tư vấn kết hợp dựa vào sản phẩm Mapreduce 35 2.3.1 Kết hợp hồ sơ sản phẩm vào ma trận đánh giá 35 2.3.2 Phương pháp Item-Based dựa vào ma trận đánh giá mở rộng 38 2.3.3 Áp dụng MapReduce cho phương pháp Itembased 40 iv Kết luận chương 2: 50 CHƯƠNG -THỰC NGHIỆM VÀ KẾT QUẢ 50 3.1 Dữ liệu thực nghiệm 50 3.2 Độ đo thực nghiệm 51 3.3 Phương pháp thử nghiệm 52 3.3.1 Cách phân chia tập liệu huấn luyện kiểm nghiệm 52 3.3.2 Cấu hình máy thực nghiệm 52 3.4 Kết thử nghiệm 52 3.4.1 Áp dụng Interaction cut 52 3.4.2 Thử nghiệm giá trị trung bình sai số tuyệt đối MAE 53 3.4.3 Thử nghiệm giá trị trung bình bình phương sai số RMSE 55 3.4.4 Thử nghiệm thời gian chạy 58 3.5 Đánh giá so sánh 59 3.5.1 Đánh giá hai phương pháp item-based user-based 59 3.5.2 Đánh giá phương pháp tư vấn sử dụng MapReduce MyMedialite 59 Kết luận chương 3: 59 KẾT LUẬN 61 DANH MỤC TÀI LIỆU THAM KHẢO 63 v DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT Từ viết tắt Tiếng Anh Tiếng Việt HDFS Hadoop Distributed Files System Hệ thống file phân tán GFS Google File System Hệ thống file google MAE vi DANH MỤC CÁC BẢNG Bảng 2.1 Ma trận đánh giá lọc cộng tác 21 Bảng 2.2 Ma trận đặc trưng C 21 Bảng 2.3 Ma trận đặc trưng T 21 Bảng 2.4 Ma trận đánh giá (ví dụ 2.1) 22 Bảng 2.5 Ma trận đặc trưng 23 Bảng 2.6 Ví dụ 2.1 Giá trị Item(x,s) cho người dùng x 24 Bảng 2.7 Ví dụ 2.1 Ma trận đánh giá đặc trưng sản phẩm 25 Bảng 2.8 Ví dụ 2.1 Ma trận mở rộng 26 Bảng 2.9 Ví dụ 2.2 Ma trận đầu vào 27 Bảng 2.10 Tập liệu 31 Bảng 2.11 Tập liệu ví dụ 2.3 sau định dạng 31 Bảng 2.12 Ví dụ 2.3 Đầu Phân tích liệu Mapper sau xếp 32 Bảng 2.13 Ví dụ 2.3 Đầu Phân tích liệu Reducer 32 Bảng 2.14 Ví dụ 2.3 Đầu Độ tương tự Mapper sau xếp 33 Bảng 2.15 Ví dụ 2.3 Đầu Độ tương tự Reducer 33 Bảng 2.16 Ví dụ 2.3 Đầu Tìm hàng xómMapper chưa xếp 34 Bảng 2.17 Ví dụ 2.3 Đầu Tìm hàng xóm Mapper sau xếp 34 Bảng 2.18 Ví dụ 2.3 Đầu Tìm hàng xóm Reducer 34 Bảng 2.19 Ví dụ 2.4 Ma trận đánh giá 23 Bảng 2.20 Ma trận đặc trưng 24 Bảng 2.21 Giá trị User(y,q) sản phẩm y 24 Bảng 2.22 Ma trận đánh giá sản phẩm đặc trưng người dùng 24 Bảng 2.23 Ví dụ 24- Ma trận đánh giá mở rộng 24 Bảng 2.24 Ví dụ 2.5 Ma trận đánh giá mở rộng 40 Bảng 2.25 Ví dụ 2.6 Đầu DataSplitMapper sau xếp 46 Bảng 2.26 Ví dụ 2.6 Đầu Phân tích liệu Reducer 46 Bảng 2.27 Ví dụ 2.6 Đầu Tính độ tương tự Mapper sau xếp 47 Bảng 2.28 Ví dụ 2.6 Đầu Tính độ tương tự Reducer 47 vii Bảng 2.29 Ví dụ 2.6 Đầu Cơ sở người dùng Mapper sau xếp 48 Bảng 2.30 Ví dụ 2.6 Đầu Cơ sở người dùng Reducer 48 Bảng 2.31 Ví dụ 2.6 Đầu Cơ sở sản phẩm Reducer 48 Bảng 2.32 Ví dụ 2.6 Đầu Tìm hàng xóm Mapper sau xếp 49 Bảng 3.1 Giá trị MAE với interaction cut 100 53 Bảng 3.2 Giá trị MAE với interaction cut 200 54 Bảng 3.3 Giá trị MAE với interaction cut 400 54 Bảng 3.4 Giá trị RMSE với interaction cut 100 55 Bảng 3.5 Giá trị RMSE với interaction cut 200 56 Bảng 3.6: Giá trị RMSE với interaction cut 400 57 Bảng 3.7 Thời gian chạy hai phương pháp (s) 58 viii DANH MỤC CÁC HÌNH Hình 1.2 Kiến trức tổng quan Hadoop cluster Hình 1.3 Kiến trúc Mahout Hình 1.4 Mơ hình MapReduce Google 12 Hình 1.5 MapReduce nhận xử lý yêu cầu từ Client 12 Hình 1.6 Cơ chế hoạt động MapReduce 14 Hình 1.7 Cơ chế hoạt động Map task 14 Hình 1.8 TaskTracker hồn thành Map task 15 Hình 1.9 Cơ chế hoạt động Reduce task 16 Hình 1.10 TaskTracker hồn thành Reduce task 17 Hình 1.11 Phát triển ứng dụng MapReduce Hadoop 18 Hình 2.1 Áp dụng MapReduce cho kỹ thuật lọc cộng tác dựa vào người dùng 28 Hình 3.1 Mối quan hệ số lượng đánh giá tỉ lệ người dùng tập MovieLens 1M[13] 53 Hình 3.2 Giá trị MAE với interaction cut 100 54 Hình 3.3 Giá trị MAE với interaction cut 200 54 Hình 3.4 Giá trị MAE với interaction cut 200 55 Hình 3.5 Giá trị RMSE với interaction cut 100 56 Hình 3.6 Giá trị RMSE với interaction cut 200 57 Hình 3.7 Giá trị RMSE với interaction cut 400 58 Hình 3.8 Thời gian chạy hai phương pháp (s) 58 50 0.965; 0.954 0.997; 0.992 1; 0.997; 1; 0.996 Bước 6: Tính dự đốn đánh giá người dùng sản phẩm Đầu vào: độ tương tự cặp sản phẩm sở dự đoán người dùng sản phẩm Duyệt tập liệu kiểm tra, ta phải dự đoán đánh giá người dùng u4 với sản phẩm i3, i5, i6 Áp dụng cơng thức, tính giá trị sau:p4,3 = 3; p4,5 = 4; p4,6 = Kết luận chương 2: Trong chương luận văn, luận văn trình bày chi tiết số nội dung sau: - Giới thiệu vấn đề toán đặt cần xử lý - Các phương pháp lọc kết hợp dựa người dùng sản phẩm - Áp dụng mơ hình MapReduce để xử lý liệu lớn dựa phương pháp lọc kết hợp người dùng sản phẩm CHƯƠNG -THỰC NGHIỆM VÀ KẾT QUẢ 3.1 Dữ liệu thực nghiệm Luận văn sửa dụng liệu thực nghiệm tập liệu thu thập Dự án nghiên cứu GroupLens Đại học Minnesota Môi trường chạy thực nghiệm Trung tâm tính tốn hiệu cao Đại học Khoa học tự nhiên với tập liệu MovieLens - Tập liệu MovieLens thứ nhất: 1M gồm 1MB đánh giá 6040 người dùng cho 3952 phim Giá trị đánh giá thực từ đến Mức độ thưa thớt liệu đánh giá 99.1% Dữ liệu cụ thể cung cấp file sau [13]: u.data: lưu trữ đầy đủ đánh giá Mỗi hàng có cấu trúc: user id | item id | rating | timestamp 51 u.info: File lưu số lượng người dùng, số lượng sản phẩm, số lượng xếp hạng tập liệu File u.item lưu thông tin phim u.genre: File lưu danh sách 19 thể loại phim khác Đây tập đặc trưng nội dung sản phẩm dùng thử nghiệm phương pháp đề xuất Ngồi ra, ứng với phim chúng tơi tách IMDB để lấy tập đặc trưng nước sản xuất, hãng phim, đạo diễn, diễn viên để làm tập đặc trưng phim u.user: File lưu thông tin người dùng Các hàng có cấu trúc chung: user id | age | gender | occupation | zip code User id sử dụng tập liệu u.data u.occupation: File lưu danh sách nghề nghiệp Đây tập đặc trưng nội dung người dùng dùng thử nghiệm phương pháp tư vấn kết hợp 3.2 Độ đo thực nghiệm Luận văn sử dụng hai độ đo sau để kiểm nghiệm độ xác phương pháp thực nghiệm: Trung bình sai số tuyệt đối (MAE) [17]: phương pháp phổ biến để đánh giá độ xác dự đốn Trung bình sai số tuyệt đối tính theo cơng thức: (3.1) Trung bình bình phương sai số (RMSE)[16] : phương pháp tính trung bình bình phương sai số theo cơng thức: (3.2) Trong đó: fi: Kết đánh giá dự đoán yi: Kết đánh giá thực tế n: Tổng số lượng đánh giá thực tế đánh giá dự đốn Giá trị trung bình sai số tuyệt đối giá trị trung bình bình phương sai số nhỏ giá trị dự đốn xác 52 3.3 Phương pháp thử nghiệm 3.3.1 Cách phân chia tập liệu huấn luyện kiểm nghiệm Tập liệu chia thành tập liệu huấn luyện tập liệu kiểm nghiệm với kích thước 80% 20%.Việc phân chia tập liệu thực lớp ProcessInput Tập liệu huấn luyện tập kiểm nghiệm chia cách ngẫu nhiên, liệu lần chia khác nhau, thực chia nhiều lần thực chạy tập khác để kết xác 3.3.2 Cấu hình máy thực nghiệm - Mơ hình thực nghiệm gồm máy: máy đóng vai trò Master, máy đóng vai trò Slave Mỗi máy đóng vai trò Cluster Các máy liên kết tạo thành mơ hình hoạt động chế Master-Slave - Cấu hình máy Master (NameNode): ram 8GB, ổ cứng 650GB, cấu hình máy Slave (DataNode) ram 2GB, ổ cứng 250BG 3.4 Kết thử nghiệm 3.4.1 Áp dụng Interaction cut Trong tập liệu MovieLens, người dùng đánh giá tối thiểu 20 sản phẩm, số sản phẩm tối đa người dùng không giới hạn Tuy nhiên, số người dùng đánh giá nhiều p sản phẩm giảm dần p tăng lên, nghĩa tỉ lệ người dùng đánh giá số lượng lớn sản phẩm nhỏ Điều làm tăng thời gian chạy lại không ảnh hưởng đáng kể đến độ xác dự đốn (cụ thể MAE RMSE) Do luận văn áp dụng khái niệm Interaction cut, nghĩa giới hạn số lượng đánh giá tối đa người dùng cách lấy ngẫu nhiên số đánh giá định từ tập đánh giá người dùng [6] Hình sau thể tỉ lệ người dùng tương ứng với số lượng đánh giá 53 0.1Hình 3.1 Mối quan hệ số lượng đánh giá tỉ lệ người dùng tập MovieLens 1M [8] 3.4.2 Thử nghiệm giá trị trung bình sai số tuyệt đối MAE Thử nghiệm 1: Giá trị MAE phương pháp thay đổi kích thước tập hàng xóm giữ ngun interaction cut 100 0.1Bảng 3.1 Giá trị MAE với interaction cut 100 Tập liệu User-based Item-based k=100 0.75792561 0.71656000 k=150 0.75700955 0.71492575 k=200 0.75648175 0.71406516 54 0.2Hình 3.2 Giá trị MAE với interaction cut 100 Thử nghiệm 2: Giá trị MAE phương pháp thay đổi kích thước tập hàng xóm giữ ngun interaction cut 200 0.2Bảng 3.3 Giá trị MAE với interaction cut 200 User-based Item-based k=100 0.75792613 0.7049429 k=150 0.75579242 0.7047105 k=200 0.75140342 0.7064948 0.3Hình 3.3 Giá trị MAE với interaction cut 200 Thử nghiệm 3: Giá trị MAE phương pháp thay đổi kích thước tập hàng xóm giữ nguyên interaction cut 400 0.3Bảng 3.3 Giá trị MAE với interaction cut 400 User-based Item-based k=100 0.73545438 0.7026945 k=150 0.731664068 0.7052028 k=200 0.729401324 0.7071868 55 0.4Hình 3.4 Giá trị MAE với interaction cut 400 3.4.3 Thử nghiệm giá trị trung bình bình phương sai số RMSE Thử nghiệm 1: Giá trị RMSE phương pháp thay đổi kích thước tập hàng xóm giữ nguyên interaction cut 100 0.4Bảng 3.4 Giá trị RMSE với interaction cut 100 User-based Item-based k=100 0.96018598 0.90914210 k=150 0.95907371 0.90631032 k=200 0.95847873 0.90541943 56 0.5Hình 3.5 Giá trị RMSE với interaction cut 100 Thử nghiệm 2: Giá trị RMSE phương pháp thay đổi kích thước tập hàng xóm giữ nguyên interaction cut 200 0.5Bảng 3.5 Giá trị RMSE với interaction cut 200 User-based Item-based k=100 0.96018596 0.8952076 k=150 0.9454992 0.8970629 k=200 0.9427114 0.8986293 57 0.6Hình 3.6 Giá trị RMSE với interaction cut 200 Thử nghiệm 3: Giá trị RMSE phương pháp thay đổi kích thước tập hàng xóm giữ ngun interaction cut 400 0.6Bảng 3.6: Giá trị RMSE với interaction cut 400 User-based Item-based k=100 0.9269161 0.8929145 k=150 0.9228413 0.8956275 k=200 0.9105261 0.8977149 58 0.7Hình 3.7 Giá trị RMSE với interaction cut 400 3.4.4 Thử nghiệm thời gian chạy Thử nghiệm 1: Thời gian chạy với phương pháp sử dụng MapReduce (k=100, interaction cut 400) phương pháp sử dụng hai thuật toán User-base item-base xử lý tập trung thông qua thư viện MyMedialite [15] (tính theo giây) 0.7Bảng 3.7 Thời gian chạy hai phương pháp (s) MapReduce MyMedialite Item-based 3044 3577.693 User-based 4173 5976.891 8000 6000 MapReduce 4000 MyMedialite 2000 Item-based User-based 0.8Hình 3.8 Thời gian chạy hai phương pháp (s) 59 3.5 Đánh giá so sánh 3.5.1 Đánh giá hai phương pháp item-based user-based Về thời gian chạy: Phương pháp item-based có thời gian chạy ngắn phương pháp user-based Nguyên nhân chênh lệch tập liệu MovieLens 1M có số lượng người dùng lớn nhiều so với số lượng sản phẩm (6040 người dùng so với 3952 sản phẩm) Về độ xác: Các giá trị MAE RMSE phương pháp user-based lớn phương pháp item-based Các giá trị MAE RMSE phương pháp user-based hội tụ nhanh phương pháp item-based tăng giá trị interaction cut 3.5.2 Đánh giá phương pháp tư vấn sử dụng MapReduce MyMedialite Khi hệ thống tư vấn áp dụng Hadoop- MapReduce hệ thống chạy mơ hình có khả tính tốn song song, lưu trữ liệu phân tán nhiều máy Trong trình xử lý liệu để đưa kết luận có xảy cố tính tốn máy hệ thống khơng bị ảnh hưởng, đồng thời với chế hoạt động có khả lưu liệu gặp cố hệ thống lấy lại liệu cách nhanh chóng Theo số liệu mục trên, thời gian chạy sử dụng thuật toán User-base Item-base thư viện MyMedialite lớn nhiều sử dụng MapReduce Nguyên nhân, với thư viện MyMedialite hai thuật toán thực máy, không tận dụng hết khả tính tốn song song Hadoop – MapReduce, kết tốt Như vậy, áp dụng Hadoop – MapReduce cho hệ tư vấn góp phần giải vấn đề mở rộng xây dựng hệ tư vấn cho liệu lớn phức tạp, khó xử lý Kết luận chương 3: Chương luận văn trình bày trình thực nghiệm đánh giá kết xây dựng hệ tư vấn kết hợp Hadoop – MapReduce Quá trình thực nghiệm cho kết tốt Các kết thực nghiệm cho thấy tính khả thi việc mở rộng hệ tư vấn sử dụng Hadoop – MapReduce khẳng định tính đắn 60 vấn đề lý thuyết nêu chương Dựa phương pháp xây dựng hệ tư vấn trình bày chương thực nghiệm chương 3, hoàn toàn áp dụng phương pháp vào thực tế để giải vấn đề liệu lớn Các kết chưa phải tối ưu điều kiện sở vật chất để thực nghiệm hạn chế tập liệu thực nghiệm chưa đủ lớn 61 KẾT LUẬN Luận văn trình bày mơ hình kết hợp lọc cộng tác với lọc nội dung cách tích hợp đặc trưng sản phẩm, đặc trưng người dùng vào lọc cộng tác để tận dụng hai điểm mạnh hai phương pháp đồng thời khắc phục nhược điểm phương pháp Dựa ý tưởng kết hợp hai phương pháp, luận văn trình bày thuật tốn lọc kết hợp dựa vào người dùng sản phẩm đồng thời xử lý dựa mơ hình MapReduce để tăng tính hiệu trình xử lý liệu lớn Kết thực nghiệm đánh giá cho thấy: - Việc áp dụng MapReduce vào xây dựng hệ tư vấn góp phần giải vấn đề mở rộng hệ tư vấn với liệu lớn Dữ liệu lưu trữ phân tán máy quản lý HDFS, xử lý luồng liệu song song máy nhằm giảm thời gian tính tốn, phân tích liệu - So sánh với việc tư vấn sử dụng thư viện MyMedialite với hai thuật toán User-base item- base, phương pháp sử dụng MapReduce cho kết tốt thời gian chạy - Với tập liệu MovieLens 1M, kỹ thuật kết hợp dựa vào người dùng cho độ xác cao thời gian thực nhỏ so với kỹ thuật lọc kết hợp dựa vào sản phẩm - Việc cải tiến phương pháp chọn tập hàng xóm cho kết tốt với hai kỹ thuật lọc cộng tác dựa vào người dùng lọc cộng tác dựa vào sản phẩm, cụ thể giá trị MAE RMSE giảm Luận văn số hạn chế: Luận văn chạy tập liệu triệu ghi với mơ hình vận hành gồm máy kết nối với (1 máy đóng vai trò máy chủ, máy đóng vai trò máy phụ) hạn chế số lượng máy tính kết nối, cấu hình máy thấp nên thời gian chạy thực nghiệm chưa tối ưu Một số hướng phát triển tiếp theo: 62 - Xác định việc tích hợp đặc trưng người dùng hay đặc trưng sản phẩm vào mơ hình kết hợp cho kết tốt - Xây dựng ứng dụng áp dụng thuật toán kết hợp lọc cộng tác với lọc nội dung với liệu xử lý lớn hơn, hệ thống chạy thực nghiệm cải tiến số lượng máy tính lớn - Nghiên cứu phương pháp phân tích ma trận (Matrix Factorization - MF) áp dụng phương pháp MapReduce 63 DANH MỤC TÀI LIỆU THAM KHẢO [1] Nguyễn Văn Quyết, Giáo trình Cơng nghệ Web ứng dụng Hưng Yên, Việt Nam: Khoa Công nghệ Thông tin - UTEHY, 2010 [2] Do Thị Lien, Nguyen Xuan Anh, Nguyen Duy Phuong,“A GraphBased Model For Hibrid Recommender System ” , Fair 2015 [3] Sebastian Schelter, Christoph Boden and Volker Markl, “Scalable Similarity-Based Neighborhood Methods with MapReduce”, in RecSys '12 Proceedings of the sixth ACM conferencse on Recommender systems pp 163-170 [4] Tom White, “hadoop: The definitive guide, Third edition” [5] Raghavan, S., Gunasekar, S., Ghosh, J (2012), “Review quality aware collaborative filtering” In Proceedings of the sixth ACM conference on Recommender systems, pp 123–130 [6] Su X., Khoshgoftaar T M (2009), “A Survey of Collaborative Filtering Techniques.,” Advances in Artificial Intelligence, pp.1-20 [7] Sarwar B., Karypis G., Konstan J., and Riedl J (2001), “Item-Based [8] Sebastian Schelter, Christoph Boden and Volker Markl, “Scalable Similarity-Based Neighborhood Methods with MapReduce”, in RecSys '12 Proceedings of the sixth ACM conference on Recommender systems pp 163-170 [9] https://wiki.apache.org/hadoop, truy cập ngày 10/07/2017 [10] https://en.wikipedia.org/wiki/Mean_absolute_error, truy cập ngày truy cập ngày 25/08/2017 [11] http://en.wikipedia.org/wiki/Collaborative_filtering, 05/09/2017 [12] http://en.wikipedia.org/wiki/Cold_start, truy câp ngày 07/09/2017 [13] http://grouplens.org/datasets/movielens/, truy cập ngày 08/09/2017 64 [14] http://en.wikipedia.org/wiki/Mean_absolute_error, truy cập ngày 01/09/2017 [15] http://mymedialite.net/ Truy cập ngày 01/09/2017 [16] http://en.wikipedia.org/wiki/Root-mean-square_deviation Truy cập ngày 08/08/2017 [17] http://en.wikipedia.org/wiki/Mean_absolute_error 08/08/2017 Truy cập ... hệ tư vấn kết hợp Đối tư ng phạm vi nghiên cứu - Đối tư ng nghiên cứu: Công nghệ Hapdoop MapReduce hệ tư vấn kết hợp - Phạm vi nghiên cứu: Công nghệ Hapdoop MapReduce, thư viện Mahout phương pháp. .. Mahout phương pháp kết hợp đề xuất [4] Phương pháp nghiên cứu - Phương pháp nghiên cứu lý thuyết: Nghiên cứu phương pháp xây dựng hệ tư vấn: phương pháp tư vấn cộng tác, tư vấn nội dung cung cấp... 19 CHƯƠNG - PHƯƠNG PHÁP TƯ VẤN 20 DỰA VÀO MAPREDUCE 20 2.1 Giới thiệu vấn đề 20 2.2 Phương pháp tư vấn kết hợp dựa vào người dùng Mapreduce 22 2.2.1 Kết hợp hồ sơ