1. Trang chủ
  2. » Cao đẳng - Đại học

Xây dựng ứng dụng đánh giá và gợi ý nhà hàng

177 4 0

Đ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

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM NGUYỄN TẤN PHÁT DƯƠNG THỊ THU THỦY KHÓA LUẬN TỐT NGHIỆP XÂY DỰNG ỨNG DỤNG ĐÁNH GIÁ VÀ GỢI Ý NHÀ HÀNG Building an Application for Evaluation and Recommendation Restaurants KỸ SƯ NGÀNH CƠNG NGHỆ PHẦN MỀM TP HỒ CHÍ MINH, 2021 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM NGUYỄN TẤN PHÁT – 17520879 DƯƠNG THỊ THU THỦY – 17521119 KHÓA LUẬN TỐT NGHIỆP XÂY DỰNG ỨNG DỤNG ĐÁNH GIÁ VÀ GỢI Ý NHÀ HÀNG Building an Application for Evaluation and Recommendation Restaurants KỸ SƯ NGÀNH CÔNG NGHỆ PHẦN MỀM GIẢNG VIÊN HƯỚNG DẪN THS TRẦN ANH DŨNG TP HỒ CHÍ MINH, 2021 DANH SÁCH HỘI ĐỒNG BẢO VỆ KHĨA LUẬN Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……………… ngày ……………… Hiệu trưởng Trường Đại học Công nghệ Thông tin ………………………………………… – Chủ tịch ………………………………………… – Thư ký ………………………………………… – Ủy viên ………………………………………… – Ủy viên ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc CÔNG NGHỆ THÔNG TIN TP HCM, ngày tháng năm 2021 NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ HƯỚNG DẪN) Tên khóa luận: Xây dựng Ứng dụng đánh giá gợi ý nhà hàng Nhóm sinh viên thực hiện: Cán hướng dẫn: NGUYỄN TẤN PHÁT 17520879 DƯƠNG THỊ THU THỦY 17521119 ThS TRẦN ANH DŨNG Đánh giá Khóa luận: Về báo cáo: Số trang Số chương Số bảng số liệu Số hình vẽ Số tài liệu tham khảo Sản phẩm Một số nhận xét hình thức báo cáo: ● Về nội dung nghiên cứu: ● ● Về chương trình ứng dụng: ● Về thái độ làm việc sinh viên: ● Đánh giá chung: Điểm sinh viên: NGUYỄN TẤN PHÁT: ……… /10 DƯƠNG THỊ THU THỦY: ……… /10 Người nhận xét (Ký ghi rõ họ tên) Trần Anh Dũng ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập – Tự Do – Hạnh Phúc CÔNG NGHỆ THÔNG TIN TP HCM, ngày tháng năm 2021 NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ PHẢN BIỆN) Tên khóa luận: Xây dựng Ứng dụng đánh giá gợi ý nhà hàng Nhóm sinh viên thực hiện: Cán phản biện: NGUYỄN TẤN PHÁT 17520879 DƯƠNG THỊ THU THỦY 17521119 Đánh giá Khóa luận: Về báo cáo: Số trang Số chương Số bảng số liệu Số hình vẽ Số tài liệu tham khảo Sản phẩm Một số nhận xét hình thức báo cáo: Về nội dung nghiên cứu: Về chương trình ứng dụng: Về thái độ làm việc sinh viên: Đánh giá chung: Điểm sinh viên: NGUYỄN TẤN PHÁT: ……… /10 DƯƠNG THỊ THU THỦY: ……… /10 Người nhận xét (Ký ghi rõ họ tên) LỜI CẢM ƠN Khóa luận tốt nghiệp với đề tài “Xây dựng ứng dụng đánh giá gợi ý nhà hàng” minh chứng cho trình cố gắng khơng ngừng việc tìm tịi, học hỏi chúng em suốt năm học tập rèn luyện khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM Thể khả thân việc áp dụng kiến thức chun mơn vào giải tốn thực tế Trong q trình thực khóa luận, chúng em nhận hướng dẫn tận tình từ q thầy cơ, giúp đỡ hỗ trợ từ gia đình bạn bè Với cách đặc biệt nhất, chúng em xin gửi lời cảm ơn chân thành đến: Ban Giám hiệu trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM tạo điều kiện sở vật chất với hệ thống thư viện đại, đa dạng loại sách, tài liệu thuận lợi cho việc tìm kiếm, nghiên cứu thơng tin Chúng em xin gửi lời cảm ơn sâu sắc tới Ths Trần Anh Dũng, người trực tiếp hướng dẫn, bảo, giúp đỡ chúng em lúc khó khăn, đưa lời khun bổ ích để khóa luận hồn thành tiến độ đáp ứng yêu cầu đề ban đầu Cuối cùng, chúng em xin gửi lời cảm ơn đến gia đình, tất thầy khoa, bạn bè bên cạnh để động viên đóng góp ý kiến q trình hồn thành khóa luận Trong q trình làm khóa luận chúng em khơng tránh khỏi sai sót, chúng em kính mong nhận dẫn góp ý q thầy để khóa luận hồn thiện Thành phố Hồ Chí Minh, 20 tháng 06 năm 2021 Sinh viên NGUYỄN TẤN PHÁT DƯƠNG THỊ THU THỦY ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc CÔNG NGHỆ THÔNG TIN TP HCM, ngày… tháng … năm ……… ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: Xây dựng ứng dụng đánh giá gợi ý nhà hàng TÊN ĐỀ TÀI (TIẾNG ANH): Building an Application for Evaluation and Recommendation Restaurants Cán hướng dẫn: ThS Trần Anh Dũng Thời gian thực hiện: Từ ngày 08/03/2021 đến ngày 26/06/2021 Sinh viên thực hiện: Nguyễn Tấn Phát - 17520879 Dương Thị Thu Thủy - 17521119 Nội dung đề tài:(Mô tả chi tiết mục tiêu, phạm vi, đối tượng, phương pháp thực hiện, kết mong đợi đề tài) Mục tiêu chọn đề tài 1.1 Bối cảnh chọn đề tài Hiện nay, sống ngày phát triển, nhu cầu người ngày cao hơn, ẩm thực mà trở nên hồn thiện Không giới hạn “Ăn no mặc ấm” mà cịn phải đáp ứng “Ăn ngon mặc đẹp” Thay bữa cơm nhà nhiều người hay với gia đình, bạn bè, đối tác đến nhà hàng ăn uống để thưởng thức ăn vừa lạ, vừa bổ dưỡng, lại đảm bảo an toàn vệ sinh thực phẩm với bầu khơng khí đa dạng Nhưng để chọn nhà hàng phù hợp với vị, giá hợp lý, khơng gian thích hợp điều vơ khó khăn Bên cạnh phát triển vượt bậc công nghệ theo thời gian, đặc biệt Machine Learning nhằm thúc đẩy thị trường, giải toán kinh tế, bắt kịp xu với mong muốn thu hút đông đảo quan tâm khách hàng Vì thế, nhóm em định thực đề tài “Tìm hiểu thuật toán tư vấn xây dựng ứng dụng tư vấn nhà hàng” 1.2 Các vấn đề số ứng dụng - Nhóm tìm hiểu dùng thử số ứng dụng hàng đầu như: Foody, Pasgo, Diadiemanuong, Thánh Riviu, OpenTable nhận thấy số khuyết điểm: • Foody: Giao diện khó phân biệt phần với nhau, khơng có lọc nhà hàng theo giá • Pasgo: Chọn loại hình ăn uống cịn bị lỗi, khơng có lọc cửa hàng giá cả, chức bình luận khơng đánh giá thơng số nhà hàng • Thánh Riviu: Chỉ tập trung vào review ăn, khơng hỗ trợ đặt bàn • OpenTable: Chưa ổn định (dựa đánh giá từ Google Play), chưa hỗ trợ ngơn ngữ tiếng Việt • Đa số ứng dụng chưa thể tình trạng bàn trống nhà hàng, hệ thống gợi ý đơn giản (theo khoảng cách, theo lượt xem gần đây…), chủ yếu review gợi ý ăn… 1.3 Điểm bật ứng dụng - Danh sách cửa hàng hiển thị với Google Map - Ứng dụng gợi ý nhà hàng cho nhóm thực khách khác dựa vị giác yêu thích, vị trí địa lý, nhà hàng hay xem đánh giá họ nhà hàng, gợi ý theo nhu cầu tổ chức kiện thực khách (sinh nhật, ăn tối, đám cưới, tiệc tùng,…) Điều giúp thực khách dễ dàng tìm thấy nhà Xây dựng Utility Matrix ban đầu: Đọc liệu items từ file u.item, liệu train từ ub.base, liệu test từ ub.test Thứ tự cột dịng liệu user_id, item_id, rating Chuẩn hóa liệu: Hàng cuối Hình 4.10 a) giá trị trung bình rating cho user Giá trị cao tương ứng với user dễ tính ngược lại Khi tiếp tục trừ từ rating giá trị thay giá trị chưa biết 0, ta ma trận chuẩn hố Hình 4.10 b) Đây bước quan trọng vì: - Việc trừ trung bình cộng cột khiến cột có giá trị dương âm Những giá trị dương tương ứng với việc user thích item, giá trị âm tương ứng với việc user khơng thích item Những giá trị tương ứng với việc chưa xác định liệu user có thích item hay khơng - Về mặt kỹ thuật, số chiều Utility Matrix lớn với hàng triệu users items, lưu toàn giá trị ma trận khả cao không đủ nhớ Quan sát thấy số lượng ratings biết trước thường số nhỏ so với kích thước Utility Matrix, tốt lưu ma trận dạng sparse matrix, tức lưu giá trị khác khơng vị trí chúng Vì vậy, tốt hết, dấu ‘?’ nên thay giá trị “0”, tức chưa xác định liệu user có thích item hay không Việc tối ưu nhớ mà việc tính tốn Similarity Matrix sau hiệu Xây dựng User Similarity Matrix: Áp dụng phương pháp tính độ tương tự Cosine Similarity, tính độ tương tự user vector Hình 4.10 b) ta ma trận User similarity matrix S Hình 4.10 c) User similarity matrix S ma trận đối xứng cos hàm chẵn, user A giống user B điều ngược lại Các ô màu xanh đường chéo cos góc vector nó, tức cos(0) = Khi 131 tính tốn bước sau, ta khơng cần quan tâm tới giá trị Tiếp tục quan sát vector hàng tương ứng với u0, u1, u2 ta thấy vài điều thú vị: - u0 gần với u1 u5 (độ giống dương) user lại Việc similarity cao u0 u1 dễ hiểu có xu hướng quan tâm tới i0, i1, i2 item lại Việc u0 gần với u5 đầu vơ lý u5 đánh giá thấp item mà u0 đánh giá cao; nhiên nhìn vào ma trận chuẩn hố hình b), ta thấy điều hợp lý Vì item mà cung cấp thông tin i1 với giá trị tương ứng tích cực - u1 gần với u0 xa user lại - u2 gần với u3, u4, u5, u6 xa user cịn lại Dự đốn rating (normalized) cịn thiếu: Cơng thức phổ biến sử dụng để dự đoán rating u cho i là: 𝑦̂𝑖,𝑢 = ∑𝑢𝑗 ∈ 𝑁(𝑢,𝑖) 𝑦̅𝑖,𝑢𝑗 × 𝑠𝑖𝑚(𝑢, 𝑢𝑗 ) ∑𝑢𝑗 ∈𝑁(𝑢,𝑖)|𝑠𝑖𝑚(𝑢, 𝑢𝑗 )| Trong đó: N(u,i) tập hợp k users neighborhood (có similarity cao nhất) u mà rated i Ví dụ: Tính normalize rating u1 cho i1 cho hình e) với số nearest neighbors k = Các bước thực sau: - Xác định user rate i1, u0, u3, u5 - Xác định similarity u1 user này, ta nhận 0.83, -0.40, 0.23 Hai (k = 2) giá trị lớn 0.83 -0.23 tương ứng với u0 u5 - Xác định normalized rating u0 u5 cho i1, ta thu giá trị 0.75 0.5 - Dự đoán kết quả: 𝑦̂𝑖1,𝑢1 = 0.83 × 0.75 + (−0.23) × 0.5 ≈ 0.48 |0.83| + |−0.23| 132 Dự đốn rating (denormalized) cịn thiếu: Việc quy đổi giá trị ratings chuẩn hố thang thực cách cộng cột ma trận Hình 4.10 d) với giá trị rating trung bình user tính Hình 4.10 a) Kết dự đốn: Hình 4.11 – Kết dự đốn theo Neighborhood – based Collaborative Filtering Tính tốn RMSE cho tập liệu train liêu test, kết là: Hình 4.12 – RMSE Neighborhood – based Collaborative Filtering Đánh giá Trên liệu MoviesLens100K, với liệu train từ file ua.base liệu test từ ua.test Content – based Neighborhood – based RMSE training 0.9165913297713748 0.7314707613553664 RMSE test 1.250369415208095 0.9951981100882598 Bảng 4.1 – So sánh kết RMSE 133 Content – based Ưu điểm Neighborhood – based - Không cần liệu - Đưa gợi ý xác sử dụng liệu rating từ user khác - Có thể gợi ý item mới, nhiều user khác item không phổ biến - Có thể hoạt động với nhiều dựa feature vector Nhược điểm loại item khác - Khó để tìm feature cho - Cần số lượng đủ user hệ thống để tìm gợi item - Khơng gợi ý item ngồi ý phù hợp - Utility matrix (ma trận user profile - Không khai thác liệu rating) thường thưa thớt dẫn rating user khác đến khó khăn việc tìm users rate item - Khơng gợi ý item chưa có rating (item mới) - Có xu hướng gợi ý item phổ biến Bảng 4.2 – Nhận xét Content – based Neighborhood – based Áp dụng vào ứng dụng ReCo Phương pháp áp dụng: Content – based Recommendation System Cách thường thấy chưa có liệu rating gợi ý nhà hàng phổ biến ứng dụng, thực khách có sở thích riêng biệt dựa nhiều yếu tố chủ quan (như gu ẩm thực, loại hình, vị trí địa lý, giá cả, khơng gian nhà hàng, …) nên việc gợi ý nhà hàng phổ biến thường không ý người 134 dùng Vì dùng thuật tốn gợi ý Content – based đảm bảo người dùng nhận gợi ý thiết thực theo nhu cầu họ Ở ứng dụng ReCo, sau người dùng đăng ký tài khoản đăng nhập lần đầu thành công, người dùng ứng dụng đề nghị tạo profile sở thích cho Hình 4.13 – Giao diện profile sở thích người dùng Bài toán hệ thống tính mức độ tương tự Profile sở thích user với nhà hàng lấy 20 nhà hàng có mức độ tương tự cao để gợi ý cho user Profile định nghĩa bao gồm danh sách thẻ (tag) ứng dụng cung cấp với khu vực địa lý mà người dùng hay hoạt động (hoặc có sở thích ẩm thực đó) Các bước thực hiện: - Gửi profile sở thích user lên server - Chuẩn hóa sang feature vector 135 - Tính mức độ tương tự feature vector user với feature vector nhà hàng - Lưu vào CSDL gợi ý cho người dùng Gửi profile sở thích user lên server: Sau chọn Profile, gửi Profile lên server để cập nhật bắt đầu chạy mơ hình machine learning Dữ liệu Profile gửi lên server, giá trị thuộc tính gửi lên id Hình 4.14 – Ví dụ Json profile sở thích người dùng gửi lên Server Chuẩn hóa sang feature vector: Từ Profile người dùng, ta chuẩn hóa feature vector cho profile user nhà hàng gồm có thuộc tính sau: danh sách thẻ (tags) khu vực địa lý (quận thành phố Hồ Chí Minh) Mỗi hàng tương ứng với nhà hàng Mỗi cột tương ứng với thẻ khu vực Nhà hàng, profile có thẻ thứ i cột thứ i có giá trị 1, ngược lại có giá trị Hình 4.15 – Matrix Feature vector sau chuẩn hóa Tính mức độ tương tự feature vector user với feature vector nhà hàng: Dùng công thức Euclid để tính khoảng cách (distance) Profile người dùng với nhà hàng hệ thống, giá trị thấp độ tương tự chúng cao 136 Hình 4.16 – Kết mức độ tương tự profile user nhà hàng Hiển thị gợi ý ứng dụng điện thoại: Hình 4.17 – Hiển thị gợi ý dựa Profile sở thích người dùng Để giúp người dùng xem thêm nhà hàng tương tự nhà hàng xem, ReCo áp dụng Content - based kết tốt 137 Các bước thực hiện: - Load liệu thuộc tính nhà hàng chuẩn hóa sang feature vector - Tính mức độ tương tự feature vector nhà hàng với nhà hàng khác - Lưu vào CSDL gợi ý cho người dùng Load liệu thuộc tính nhà hàng chuẩn hóa sang feature vector: Từ thuộc tính bảng Restaurant, ta chọn thuộc tính cần thiết để làm feature gồm: danh sách thẻ (tags), khu vực địa lý (quận thành phố Hồ Chí Minh), giá thấp nhà hàng, giá cao nhà hàng, số trung bình đánh giá (star_average), số tiêu chí “Đồ ăn” (star_food), số tiêu chí “Khơng gian” (star_ambiance), số tiêu chí “Phục vụ” (star_service), số tiêu chí “Độ ồn” (star_noise) Hình 4.18 – Feature vectors nhà hàng Tính mức độ tương tự feature vector nhà hàng với nhà hàng khác: Dùng cơng thức Euclid tính khoảng cách (distance) vector nhà hàng với vector nhà hàng lại 138 Hình 4.19 – Kết mức độ tương tự nhà hàng số với nhà hàng khác Hiển thị gợi ý ứng dụng điện thoại: Hình 4.20 – Hiển thị gợi ý danh sách nhà hàng tương tự nhà hàng xem 139 Được áp dụng có liệu rating hệ thống, ta dùng User – User Neighborhood – based Collaborative Filtering để dự đoán kết đánh giá nhà hàng người dùng gợi ý, từ chọn nhà hàng có giá trị dự đốn cao để có gợi ý phù hợp cho người dùng Các bước thực hiện: Xây dựng Utility Matrix ban đầu: Dựa vào thông tin người dùng tại, hệ thống lấy liệu rating người dùng sở liệu, kết ta ma trận utility Hình 4.21 – Utility Matrix ban đầu ReCo Chuẩn hóa Utility Matrix: Các giá trị ma trận điểm rating mà người dùng đánh giá cho nhà hàng (giá trị chứng tỏ người dùng chưa đánh giá nhà hàng) Sau load liệu xong, ta tiến hành chuẩn hóa ma trận utility Hình 4.22 – Utility Matrix ReCo chuẩn hóa Xây dựng User Similarity Matrix: Tiếp theo ta cần biết mức độ tương tự người dùng với nhau, độ tương tự tính dựa tính Cosin Similarity, giá trị tính cao độ tương quan người dùng lớn Hình 4.23 – User Similarity Matrix ReCo 140 Dự đoán rating (denormalized) cịn thiếu: Sau có giá trị Cosin Similarity, dễ dàng tính giá trị rating (normalized) dự đoán người dùng với nhà hàng mà người dùng chưa đánh giá Sau cộng cột ma trận với giá trị rating trung bình user ta kết dự đốn rating (denormalized) cịn thiếu Hình 4.24 – Kết dự đoán rating nhà hàng mà người dùng chưa đánh giá Sau cùng, ta lấy top n nhà hàng có giá trị rating dự đoán cao để gợi ý cho người dùng Hình 4.25 – Hiển thị gợi ý danh sách nhà hàng dựa user khác 141 KẾT LUẬN, HƯỚNG PHÁT TRIỂN Kết đạt - Hiểu biết ngôn ngữ Java, Flutter, ReactJS áp dụng Google Map API, Firebase, Apache Spark vào dự án thực tế - Hiểu Machine Learning thuật toán tư vấn, gợi ý sản phẩm: Content – based Collaborative Filtering Áp dụng thuật toán vào ứng dụng đánh giá gợi ý nhà hàng - Xây dựng ứng dụng đánh giá gợi ý nhà hàng có giao diện trực quan, phù hợp với nhu cầu đối tượng người dùng Người dùng xem, tìm kiếm, đánh giá tiêu chuẩn bình luận nhà hàng, địa điểm ăn uống - Xây dựng website có giao diện trực quan giúp cho quản trị viên quản lý hệ thống chủ nhà hàng quản lý nhà hàng - Đẩy mạnh tính gợi ý, giới thiệu nhà hàng phù hợp, tạo điều kiện thuận lợi cho người dùng - Đảm bảo tính bảo mật thông tin nhạy cảm người dùng, tạo cảm giác an toàn cho người sử dụng Ưu điểm - Hồn thành u cầu đặt ban đầu, có đầy đủ tính cần thiết ứng dụng đánh giá gợi ý nhà hàng - Giao diện đẹp mắt, bố cục hợp lý, người dùng dễ dàng thao tác ứng dụng - Tốc độ phản hồi thao tác nhanh, tối ưu hóa suất người dùng - Sinh viên thực nắm cách thức làm ứng dụng đánh giá gợi ý nhà hàng - Hiểu biết ngôn ngữ Java, Flutter, ReactJS áp dụng Google Map API, Firebase, Apache Spark vào dự án thực tế - Ứng dụng triển khai nghiệm thu thành công máy thật 142 - Hồn thành việc áp dụng thuật tốn gợi ý Content – based Collaborative filtering vào ứng dụng Phục vụ việc gợi ý nhà hàng cho người dùng Gợi ý nhà hàng phù hợp dựa lịch sử đánh giá người dùng để tăng tỉ lệ đặt chỗ, yêu thích nhà hàng tăng tỉ lệ sử dụng ứng dụng Nhược điểm - Tối ưu code chưa tốt nên tốc độ tương tác ứng dụng cịn chậm - Chưa phát triển tính xác thực qua email, số điện thoại - Chưa tích hợp thời gian đặt chỗ vào Calendar để nhắc nhở người dùng - Chưa tích hợp thao tác giọng nói - Hệ thống gợi ý cịn đơn giản chưa thực hiệu với trường hợp chưa có liệu Hướng phát triển - Xây dựng chức cịn thiếu, hồn thiện chức có - Tối ưu hóa code để tăng tốc độ tương tác - Tối ưu hóa sở liệu hợp lý - Tối ưu hóa hệ thống gợi ý Bổ sung thêm số gợi ý cho người dùng dựa lượt yêu thích nhà hàng, lịch sử tìm kiếm, … - Nâng cấp hệ thống khơng thao tác văn giao diện mà cịn giọng nói 143 TÀI LIỆU THAM KHẢO TÀI LIỆU TIẾNG ANH [1] Abhijit Roy “Introduction To Recommender Systems- 1: Content-Based Filtering And Collaborative Filtering” 2020 [Online] Available: https://hub.packtpub.com/how-to-build-a-cold-start-friendly-content-basedrecommender-using-apache-spark-sql/ [2] “Flutter - Beautiful native apps in record time” [Online] Available: https://flutter.dev/ [3] “jsoup Java HTML Parser, with the best of HTML5 DOM methods and CSS selectors.” https://jsoup.org/ [4] “Introduction to Java” (2021) [Online] Available: https://www.geeksforgeeks.org/introduction-to-java/ [5] Md Kamaruzzaman “Top 10 Databases to Use in 2021” 2020 [Online] Available: https://towardsdatascience.com/top-10-databases-to-use-in-2021d7e6a85402ba [6] “Next.js by Vercel - The React Framework” [Online] Available: https://nextjs.org/ [7] “React – A JavaScript library for building user interfaces” [Online] Available: https://reactjs.org/ [8] Shivashish Thkaur “Top Java Frameworks for Web Application Development” (2020) [Online] Available: https://dzone.com/articles/top-5-javaframeworks-for-web-application-developm [9] Soon Sam Santos “Easiest way to understand Bloc with Flutter” (2019) [Online] Available: https://blog.usejournal.com/easiest-way-to-understand-blocwith-flutter-8ff51a989e17 [10] “Spring Boot - Introduction” [Online] Available: 144 https://www.tutorialspoint.com/spring_boot/spring_boot_introduction.htm [12] Sunith Shetty “How to build a cold-start friendly content-based recommender using Apache Spark SQL” 2017 [Online] Avaiable: https://hub.packtpub.com/how-to-build-a-cold-start-friendly-content-basedrecommender-using-apache-spark-sql/ TÀI LIỆU TIẾNG VIỆT [1] “Elasticsearch gì? Khái niệm Elasticsearch” [Online] Available: https://topdev.vn/blog/elasticsearch-la-gi/ [2] Phuc Ngoc Nghia “Tìm hiểu Apache Spark” [Online] Available: https://viblo.asia/p/tim-hieu-ve-apache-spark-ByEZkQQW5Q0 [3] “Machine Learning bản” [Online] Available: https://machinelearningcoban.com/ 145 ... review gợi ý ăn… 1.3 Điểm bật ứng dụng - Danh sách cửa hàng hiển thị với Google Map - Ứng dụng gợi ý nhà hàng cho nhóm thực khách khác dựa vị giác yêu thích, vị trí địa lý, nhà hàng hay xem đánh giá. .. tư vấn, gợi ý sản phẩm Từ áp dụng thuật tốn vào ứng dụng tư vấn nhà hàng dự án khác sau - Sử dụng công nghệ mới, phù hợp đáp ứng khả mở rộng tương tác cao - Xây dựng ứng dụng tư vấn nhà hàng có... dõi tình trạng đặt bàn, xem nhà hàng, nhà hàng yêu thích, chat với nhà hàng, đăng review bình luận đánh giá nhà hàng, tìm kiếm nhà hàng dựa mục khác nhau, gợi ý nhà hàng phù hợp với sở thích,

Ngày đăng: 05/09/2021, 20:55

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w