Nghiên cứu sử dụng và so sánh các giải thuật machine learning và deep learning trong bài toán gợi ý ứng dụng trong các hệ thống thương mại điện tử Nghiên cứu sử dụng và so sánh các giải thuật machine learning và deep learning trong bài toán gợi ý ứng dụng trong các hệ thống thương mại điện tử luận văn tốt nghiệp thạc sĩ
NGUYỄN HỮU PHÚC BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - NGUYỄN HỮU PHÚC MẠNG MÁY TÍNH VÀ TRUYỀN THƠNG DỮ LIỆU NGHIÊN CỨU SỬ DỤNG VÀ SO SÁNH CÁC GIẢI THUẬT MACHINE LEARNING VÀ DEEP LEARNING TRONG BÀI TOÁN GỢI Ý ỨNG DỤNG TRONG CÁC HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ LUẬN VĂN THẠC SĨ KHOA HỌC MẠNG MÁY TÍNH VÀ TRUYỀN THƠNG DỮ LIỆU 2017B Hà Nội – Năm 2019 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN HỮU PHÚC NGHIÊN CỨU SỬ DỤNG VÀ SO SÁNH CÁC GIẢI THUẬT MACHINE LEARNING VÀ DEEP LEARNING TRONG BÀI TOÁN GỢI Ý ỨNG DỤNG TRONG CÁC HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ Chuyên ngành : Mạng máy tính truyền thông liệu LUẬN VĂN THẠC SĨ KHOA HỌC MẠNG MÁY TÍNH VÀ TRUYỀN THƠNG DỮ LIỆU NGƯỜI HƯỚNG DẪN KHOA HỌC : PGS.TS Nguyễn Linh Giang Hà Nội – Năm 2019 LỜI CAM ĐOAN Những kiến thức trình bày luận văn tơi tìm hiểu, nghiên cứu trình bày theo kiến thức tổng hợp cá nhân Kết nghiên cứu luận văn chưa công bố cơng trình khác Trong q trình làm luận văn, tơi có tham khảo tài liệu có liên quan ghi rõ nguồn tài liệu tham khảo Tơi xin cam đoan cơng trình nghiên cứu không chép Tơi xin chịu hồn tồn trách nhiệm, sai, tơi xin chịu hình thức kỷ luật theo quy định Hà Nội, ngày 09 tháng năm 2019 Học viên NGUYỄN HỮU PHÚC LỜI CẢM ƠN Trước tiên, xin bày tỏ lòng biết ơn sâu sắc tới PGS.TS Nguyễn Linh Giang thầy cô Viện CNTT-TT, Trường Đại học Bách Khoa Hà Nội nhiệt tình đào tạo hướng dẫn để tạo điều kiện thuận lợi cho tơi nghiên cứu khoa học, giúp tơi hồn thành luận văn cách tốt Tơi gửi lời cảm ơn chân thành đến anh TS Đỗ Đức Dũng – Group Leader Software Solution Group anh Trịnh Hồng Cường – Part Leader Service Platform Part tạo điều kiện cho tơi có hội triển khai xây dựng hệ thống, cám ơn lời đóng góp ý kiến anh thời gian tơi làm việc Tôi gửi lời cảm ơn đến đồng nghiệp đội hỗ trợ thời gian tơi làm khóa luận Cuối tơi xin gửi lời cám ơn đến gia đình, bạn bè, người bên tôi, động viên khuyến khích tơi q trình thực đề tài nghiên cứu Học viên NGUYỄN HỮU PHÚC MỤC LỤC LỜI CAM ĐOAN .3 LỜI CẢM ƠN .4 MỤC LỤC DANH MỤC HÌNH VẼ THUẬT NGỮ VÀ TỪ VIẾT TẮT .8 MỞ ĐẦU 10 Lý chọn đề tài .10 Mục đích nghiên cứu luận văn 11 Đối tượng, phương pháp phạm vi nghiên cứu 11 Tóm tắt nội dung đóng góp tác giả 12 CHƯƠNG TỔNG QUAN BÀI TOÁN KHUYẾN NGHỊ 14 1.1 Giới thiệu toán khuyến nghị 14 1.2 Các khái niệm recommendation system .15 1.3 Một số hướng tiếp cận recommendation system .18 CHƯƠNG CƠ SỞ LÝ THUYẾT RNN LSTM 23 2.1 Giới thiệu Deep Learning 23 2.2 RNN LSTM 24 CHƯƠNG HƯỚNG TIẾP CẬN SESSION-BASED 34 3.1 Vấn đề người dùng trang thương mại điện tử 34 3.2 Hướng tiếp cận Session-based recommendation .35 3.3 Hướng tiếp cận RNN toán Session-based 37 3.4 Kết thử nghiệm 39 CHƯƠNG CÀI ĐẶT VÀ TRIỂN KHAI 41 4.1 Hệ thống Galaxy Gift .41 4.2 Chuẩn hóa liệu 44 4.3 Cài đặt triển khai 45 4.4 Kết đạt 46 4.5 So sánh với thuật toán Matrix Factorization triển khai 46 CHƯƠNG HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI 48 5.1 Kết luận 48 5.2 Hướng phát triển 48 TÀI LIỆU THAM KHẢO .50 DANH MỤC HÌNH VẼ Figure 1: Recommendation system 15 Figure 2: Matrix Utility .16 Figure 3: Matrix Utility sau chuẩn hóa .18 Figure 4: Hướng tiếp cận Content-based 19 Figure 5: Hướng tiếp cận Collaborative Filtering .20 Figure 6: Hướng Hybrid recommendation system 20 Figure 7: Session based recommendation system .21 Figure 8: Hướng translation recommendation system 22 Figure 9: Deep learning .23 Figure 10: RNN 24 Figure 11: Mạng RNN 24 Figure 12: Cách hoạt động RNN .26 Figure 13: RNN cần nhớ nhiều thông tin 26 Figure 14: LSTM .27 Figure 15:Mơ hình chưa nhiều lắp tương tác LSTM .28 Figure 16: ký hiệu .28 Figure 17: LSTM nhớ thông tin 29 Figure 18: Logic cổng quên .29 Figure 19: Đầu vào LSTM 30 Figure 20: LSTM cập nhập liệu 30 Figure 21: LSTM cập nhập vào đường nhớ 31 Figure 22: Cập nhập lại liệu đầu 32 Figure 23: Các dạng khác LSTM .32 Figure 24: LSTM cập nhập lúc 33 Figure 25: LSTM dạng GRU 33 Figure 26: Tỷ lệ người dùng .34 Figure 27: KNN .35 Figure 28: Đầu vào cho 3D CNN .36 Figure 29: Dữ liệu đầu vào cho GRU .37 Figure 30: Kiến trúc mạng 38 Figure 31: Mini-batch .39 Figure 32: Sơ đồ hệ thống 41 Figure 33: Amazon S3 42 Figure 34: Lambda 43 Figure 35: Rabbit MQ .43 Figure 36: Dữ liệu log .44 Figure 37: Dữ liệu sau xử lý .45 Figure 38: Flask framework 46 THUẬT NGỮ VÀ TỪ VIẾT TẮT Từ viết tắt Tên tiếng Anh Thuật ngữ tiếng Việt CNTT Công nghệ thông tin CSDL Cơ sở liệu RSs Recommendation systems Hệ thống gợi ý ML Machine learning Học máy DL Deep Learning Học sâu RNN Recurrent Neural Network LSTM Long short-term memory CF Collaborative filtering Aws Amazon web service S3 Amazon web service storage Học cộng hưởng Lambda Amazon web service lambda BE Backend TF-IDF term frequency – inverse document frequency DB database Sigmod Sigmod GPU Graphics Processing Unit GRU Gated recurrent unit CbF Contend-based filtering NoSQL No SQL Cơ sở liệu không cấu trúc JavaScript Object Notation Phân đoạn thăm khám bệnh hàm kích hoạt RNN Framework Json nhân Log System log Log ghi gọi API Kaggle api Trang web chuyên ML application programming interface MỞ ĐẦU Lý chọn đề tài Dự đốn recommendation system lĩnh vực nhà khoa học doanh nghiệp quan tâm nghiên cứu nhiều năm gần Ứng dụng recommendation system thực nhiều lĩnh vực khác giáo dục, y tế, tài chính, ngân hàng, kinh doanh – với hàng chục thi Kaggle tháng Đặc biệt, thời gian gần đây, recommendation system hệ thống thương mại điện tử quan tâm nghiên cứu Đối với trang thương mại điện tử, việc đưa sản phẩm phù hợp với người tiêu dùng điều thiết yếu Để làm điều này, hệ thống phải có thơng tin liên quan đến sản phẩm tương tác với hệ thống người dùng Người dùng phải tự tìm kiếm lựa chọn sản phẩm mà họ định hình sẵn đầu Tuy nhiên, việc người dùng mua sản phẩm mà họ tình cờ bắt gặp lúc ứng dụng chiếm tỷ lệ lớn Đây yếu tố để thúc đẩy nghiên cứu phát triển module recommendation system hệ thống thương mại điện tử, mạng xã hơi, Đây tốn đặt cho lĩnh vực khai phá liệu có liệu lớn thói quen người dùng trình tương tác người dùng hệ thống nhằm hỗ trợ cho người dùng tìm kiếm, trải nghiệm dịch vụ tốt mà hệ thống mang lại Khi làm luận án công tác Trung tâm nghiên cứu phát triển điện thoại Samsung Việt Nam SVMC, trước toán tồn nơi làm việc với lĩnh vực theo học, đồng ý PGS.TS Nguyễn Linh Giang chọn đề tài luận văn: “Nghiên cứu sử dụng so sánh giải thuật machine learning deep learning toán gợi ý ứng dụng hệ thống thương mại điện tử”, luận văn góp phần vào việc giải toán cần thiết thực tế 10 đồng KNN điểm khó khăn áp dụng với điều kiện kết recommendation ta mong muốn đạt real time Figure 28: Đầu vào cho 3D CNN Hướng 3D CNN: Hướng tiếp cận mơ hình hóa liệu sản phẩm ( bao gồm content sản phẩm, loại sản phẩm ), mã sản phẩm, … thành ma trận liệu Dữ liệu dưa vào mơ hình 3D CNN để dự đốn Trong số kết công bố, hướng tiếp cận đưa số kết tốt so với hướng tiếp cận khác Tuy nhiên, hướng tiếp cận đòi hỏi việc sử lý liệu đầu vào content người dùng sản phẩm Đối với toán GalaxyGift tác giả dự định triển khai, content sản phẩm chưa viết theo chuẩn thiếu nhiều Chính nghiên cứu triển khai theo hướng 3D CNN gặp nhiều khó khăn Hướng tiếp cận session-based: hướng tiếp cận sử dụng mạng RNN-LSTM để đưa dự đoán Ưu điểm hướng tiếp cận liệu đầu vào hệ thống 36 liệu time series đại diện cho click người dùng theo thứ tự thời gian Đầu vào mơ hình khơng sử dụng content, hay loại sản phẩm – điều mà hệ thống dùng để áp dụng triển khai mơ hình chưa đồng chuẩn Chính tác giả lựa chọn nghiên cứu hướng tiếp cận session-based với RNN-LSTM liệu GalaxyGift phù hợp với đầu vào mô hình RNN-LSTM mơ hình RNN-LSTM sử dụng thực tế để đưa kết real-time phù hợp với yêu cầu toán 3.3 Hướng tiếp cận RNN toán Session-based Trong toán này, lựa chọn mô RNN với GRU Như giới thiệu phần trên, mơ hình GRU nhớ thơng tin dạng time seri mà ta truyền vào Ở truyền liệu đầu vào items mà người dùng click phiên truy cập Figure 29: Dữ liệu đầu vào cho GRU Chúng sử dụng RNN dựa GRU mơ hình cho đề xuất dựa phiên Đầu vào mạng trạng thái thực phiên đầu mục kiện phiên Trạng thái phiên mục kiện thực tế kiện phiên Trong trường hợp trước đây, mã hóa - N sử dụng, tức vectơ vector đầu vào Độ dài với số lượng vật phẩm tọa độ tương ứng với vật phẩm hoạt động – one hot vector, số khác số không Cài đặt sau sử dụng tổng trọng số đại diện này, kiện giảm giá chúng xảy trước Đối với ổn định, vectơ đầu vào sau chuẩn hóa Chúng tơi hy vọng điều giúp ích củng cố hiệu ứng nhớ: củng cố ràng buộc trật tự cục không nắm bắt tốt nhớ dài RNN Chúng thử nghiệm thêm lớp nhúng bổ sung, mã hóa N hoạt động tốt 37 Figure 30: Kiến trúc mạng RNN cho tác vụ xử lý ngôn ngữ tự nhiên thường sử dụng mini-batch theo trình tự Ví dụ, thơng thường sử dụng sliding window từ câu đặt đoạn cửa sổ cạnh để tạo thành mini-batch Điều không phù hợp với nhiệm vụ chúng tơi, (1) độ dài phiên khác nhau, chí nhiều so với câu: số phiên bao gồm kiện, phiên khác lên đến vài trăm; (2) mục tiêu nắm bắt cách phiên phát triển theo thời gian, việc chia thành mảnh khơng có ý nghĩa Do đó, chúng tơi sử dụng session-parallel mini-batch Đầu tiên, tạo thứ tự cho phiên Sau đó, chúng tơi sử dụng kiện phiên X để tạo đầu vào đợt nhỏ (đầu mong muốn kiện thứ hai phiên hoạt động chúng tơi) Mini-batch thứ hai hình thành từ kiện thứ hai Nếu phiên kết thúc, phiên có sẵn đặt vào vị trí Các phiên coi độc lập, chúng tơi đặt lại trạng thái ẩn thích hợp chuyển đổi xảy Xem hình để biết thêm chi tiết 38 Figure 31: Mini-batch Cốt lõi hệ thống đề xuất ranking mặt hàng dựa mức độ phù hợp Mặc dù nhiệm vụ hiểu nhiệm vụ phân loại, cách tiếp cận học tập để xếp hạng (Rendle et al., 2009; Shi et al., 2012; Steck, 2015) thường vượt trội so với cách tiếp cận khác Xếp hạng theo chiều, cặp theo chiều Xếp hạng theo chiều ngược lại ước tính điểm thứ hạng vật phẩm độc lập với tổn thất xác định theo cách cho thứ hạng vật phẩm liên quan phải thấp Xếp hạng theo cặp so sánh điểm số thứ hạng cặp mặt hàng tích cực tiêu cực mát cho thấy thứ hạng mặt hàng tích cực phải thấp so với thứ hạng âm Xếp hạng Listwise sử dụng điểm số thứ hạng tất mục so sánh chúng với thứ tự hồn hảo Vì bao gồm xếp, thường đắt mặt tính tốn khơng sử dụng thường xun Ngồi ra, có mục có liên quan - trường hợp chúng tơi - xếp hạng listwise giải thông qua xếp hạng cặp 3.4 Kết thử nghiệm Trước đưa vào thực tế, triển khai thử liệu RCS15 (được cung cấp https://www.kaggle.com/chadgostopp/recsys-challenge-2015 lần cuối truy cập 05/08/2019 ) Ta dùng thang đo Recall để kiểm nghiệm kết thu được: Session based ( loss function : cross entropy): Recall@20 (0.6015) Bảng so sánh với số phương pháp mơ hình khác: 39 Loss function Top 100 BPR 100 Cross entropy 100 Recall@20 0.5853 0.6069 0.6074 Kết tính tốn hệ thống máy tính p3.2xlarge amazon web service với cấu hình core, 64gb ram GPU tesla T100 40 CHƯƠNG CÀI ĐẶT VÀ TRIỂN KHAI 4.1 Hệ thống Galaxy Gift Trước tiên, kiến trúc hệ thống xây dựng ảnh hưởng đến nhiều đến cách cài đặt hệ thống Figure 32: Sơ đồ hệ thống Hệ thông bao gồm thành phần: Backend service: Backend ứng dụng Galaxy Gift Hệ thống backend tự động ghi lại log có request đến đẩy lên Storage Amazon S3 Việc ghi log đảm bảo hệ thống phục vụ check lỗi phát sinh S3 amazon: buket lưu trữ tồn liệu cho model Có thể connect đến theo access key để download liệu Dữ liệu S3 tổ chức thành folder bucket định sẵn Mỗi folder luồng liệu khác phục vụ cho toán khác Các liệu folder format theo định dạng cố định Để check liệu S3 có log hệ thống aws sinh ra, liệu cho ta thấy thay đổi bucket : thêm liệu, update liệu, xóa liệu, … Log giúp ta xác minh trường hợp hệ thống ML khơng có lỗi mát liệu 41 Figure 33: Amazon S3 Trong hệ thống bucket S3 tổ chức sau: - - Dữ liệu item: thông tin sản phẩm item, mô tả item đẩy vào hệ thống Một thông tin item bao gồm: ID sản phẩm, tên sản phẩm, mô tả sản phẩm, mô tả sản phẩm ngắn, ngày tạo, thời gian thị, thời gian áp dụng, ngày kết thúc hiển thị, ngày kết thúc áp dụng, loại sản phẩm, đối tượng áp dụng, … Dữ liệu người dùng: id người dùng, imei người dùng Dữ liệu tương tác hệ thống: id người dùng, id sản phẩm, thời gian get code, thời gian vetify code Dữ liệu tương tác với hệ thống với trạng thái like: id người dùng, id sản phẩm, thời gian like sản phẩm Dữ liệu log hệ thống: imei người dùng, id người dùng, id sản phẩm, timestamp click vào sản phẩm, model máy Dữ liệu log hệ thống S3: thông tin folder tạo, update, thêm, sửa, xóa, … Dữ liệu file json theo ngày Các liệu folder file riêng biệt, tổng hợp vào cuối ngày đẩy vào hệ thống Các liệu phân biệt theo ngày file file Trong trường hợp có liệu lỗi ta phát thơng qua cách: Dữ liệu log hệ thống S3 Log lambda function mô tả bên Điều đảm bảo trình sử lý liệu Backend xảy lỗi hệ thống recommendation xác minh kiểm xoát hẹn chế Lambda amazon: service check xuất có file đẩy lên, có file lambda copy file thành phiên Sử lý file theo source code đẩy liệu sau sử lý vào RabbitMQ 42 Figure 34: Lambda Lambda function service aws Điểm lợi service tự động co giãn theo lượng liệu mà cần sử lý, điều đồng nghĩa việc liệu chảy qua hệ thống nhỏ, service dành cho lambda nhỏ lớn ngược lại Các lambda function check thay đổi folder bucket S3 mà ta cần theo dõi, lambda sử lý liệu, lấy thông tin file log mà ta cần cho hệ thống Đẩy liệu Rabbit MQ với địa cấu hình lambda Lambda hỗ trợ lập trình nhiều ngơn ngữ: Php, nodejs, java, python, … Vì tồn hệ thống viết sử lý python Nên python sử dụng tốn Có lưu ý nhỏ, sử dụng thư viện muôn cài đặt thêm python, người sử dụng phải đẩy file thư viện lên folder lambda function Trong hệ thống cần dụng phải kết nối đến Rabbit MQ, phải đẩy lib pika python Rabbit MQ lên hệ thống lambda RabbitMQ: đóng vai trị messenge Queue, đóng vai trò lưu trữ liệu tạm thời trước đẩy vào Database Điều đảm bảo rằng, lượng liệu đổ vào database Figure 35: Rabbit MQ 43 RabbitMQ cài đặt instance riêng aws, thông tin Rabbit MQ configure private file configure hệ thống Lambda function muốn đẩy liệu vào RabbitMQ đọc thông tin private từ file cấu hình địa IP, port, account để connect tới RabbitMQ Việc để đảm bảo việc xác minh hệ thống xảy lỗi Ở RabbitMQ chia topic, topic trùng hợp với lambda function muốn đẩy liệu vào Việc tách thành nhiều lambda function để việc sử lý topic không bị phụ thuộc hàm lambda Với hệ thống lambda function sử dụng topic sử dụng RabbitMQ Consummer: Dữ liệu rabbitMQ chia thành topic, consumer lấy liệu topic mà đăng ký, sử lý liệu đẩy vào database Chúng ta sử dụng consummer để lắng nghe RabbitMQ Các consummer tiến trình python, sử dụng lib pyka để connect đến RabbitMQ Database: Toàn liệu hệ thống lưu Dữ liệu Khơng có cấu trúc Hiện hệ thống sử dụng MongoDb, điểm lợi Mongo ta update thêm thơng tin liệu cho tốn tương lai mà thay đổi cấu trúc DB Machine learning service: Một service thiết kết nhằm mục đích connect đến DB, lấy liệu thực trình tranining Kết trình training lưu lại DB public cho backend service dạng rest api Model phát triển dựa theo framework pytorch facebook Đây framework hỗ trợ thư viện neutral network thư viện để sử lý liệu 4.2 Chuẩn hóa liệu Figure 36: Dữ liệu log 44 Hệ thống ghi log chúng tơi có cấu trúc hình bên Để đảm bảo thông tin người dùng, thông tin User Items thơng tin qua mã hóa Thơng tin Model dùng để kiểm tra tính đắn việc ghi log Thông tin time, timestamp thời điểm mà người dùng click vào sản phẩm Các liệu cho phép phân biệt người dùng phân biệt, phân biệt sản phẩm phân biệt thứ tự click vào sản phẩm hệ thống Việc cần làm xếp chuẩn hóa trước đưa vào mơ hình ta Dữ liệu chuẩn hóa để đưa vào mơ hình có đủ thơng tin sếp theo thứ tự Thông tin người dùng, định danh phân biệt người dùng Thông tin sản phẩm dịnh danh sản phẩm thông tin theo thứ tự thời gian Do mơ hình, ta đưa liệu thời gian theo thứ tự trước sau Không quan tâm xác thời gian xảy Vì ta xếp lại liệu theo thứ tự xuống thứ tự thời gian từ trước đến sau Figure 37: Dữ liệu sau xử lý Hình mơ tả liệu sau xử lý, xếp lại theo thứ tự Tuy nhiên, ta thấy liệu có dịng – người dùng click sản phẩm bị bỏ Vì Khơng mang lại ý Nghĩa cho mơ hình xây dựng 4.3 Cài đặt triển khai Mơ hình viết pytorch – framework support Facebook nghiên cứu sử dụng nhiều trường đại học thời gian gần Một điểm mạnh pytorch dễ triển khai thời gian training nhanh so với tensorflow Flask framework web WSGI nhẹ Nó thiết kế để bắt đầu nhanh chóng dễ dàng, với khả mở rộng đến ứng dụng phức tạp Nó bắt đầu trình bao bọc đơn giản xung quanh Werkzeug Jinja trở thành framework web Python phổ biến 45 Flask cung cấp đề xuất, không thực thi phụ thuộc bố trí dự án Tùy thuộc vào nhà phát triển để chọn công cụ thư viện mà họ muốn sử dụng Có nhiều tiện ích mở rộng cung cấp cộng đồng giúp việc thêm chức trở nên dễ dàng Figure 38: Flask framework Sau Trình training ta cần public rest aspi cho backend service sử dụng Ta sử dụng Flask backend service độc lập cho hệ thống backend sử dụng Lợi Flask framework Python, dễ dàng triển khai deployment nhanh chóng Một điểm hạn chế Flask tiến trình đơn luồng, để chạy backend framework khác ta phải sử dụng thêm Gunicorn 4.4 Kết đạt Sau training với liệu hệ thống Galaxygift với thông tin sau: - Số lượt người dùng: 000 000 người dùng Số lượt người active tháng: 230 000 người dùng Số lượng item hệ thống: 70 sản phẩm Số lượng click ngày: 140 000 lượt click Kết recall với n = 5: 43% xác với tập test Kết đáp ứng yêu cầu cải tiến với thuật toán cũ triển khai với mức độ xác áp dụng Tuy nhiên 43% kết chưa cao so với hệ thống recommendation youtube, tác giả tiếp tục thử nghiệm liệu đầu vào thay đổi mô hình để kết tốt 4.5 So sánh với thuật toán Matrix Factorization triển khai Thuật toán Matrix Factorization (MF) triển khai: 46 - - Trong triển khai thực tế, tác giả chia tập người dùng random thành nhóm, nhóm tác giả sử dụng phương pháp gợi ý Matrix Factorization nghiên cứu đồ án tốt nghiệp nhóm tác giả sử dụng phương pháp đưa item mà số người sử dụng nhiều ( hot trend ) Kết quả: kết thử nghiệm trọng tháng Tập người dùng sử dụng thuật tốn gợi ý lúc có tỷ lệ sử dụng tập không sử dụng gợi ý Tuy nhiên khơng có sử khác biệt nhiều Như tập người dùng có tỷ lệ tương tác với hệ thống ít, hệ thống recommendation sử dụng Matrix Factorization tỏ chưa hiệu Thuật toán Session-based: - Thuật toán kiểm tra thử nghiệm với tập hợp test dựng hệ thống môi trường thử nghiệm chưa đưa vào hệ thống product Với môi trường triển khai test, thuật tốn đem lại kết tích cực so với thuật tốn MF trước Bởi tỷ lệ người dùng thực tế GalaxyGift ~ 180 000 / 000 000 user database Tuy nhiên để so sánh thuật toán với liệu đầu vào khác áp dụng điều kiện tốn khác điều khó Sau thời gian nghiên cứu triển khai thuật toán MF kết hợp với hướng khác Collaborative Filtering KNN ( K-nearest neighbors ) thuật toán cho thấy điểu hạn chế trường hợp liệu thưa Thuật toán Session-based bước bổ xung thêm vào thuật toán MF triển khai cài đặt trước Tác giả kỳ vọng thuật toán bổ xung trường hợp cụ thể thực tế với người dùng sử dụng hệ thống người dùng chưa sử dụng hệ thống 47 CHƯƠNG HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI 5.1 Kết luận Luận văn xây dựng mơ hình recommendation system theo thời gian thực cho hệ thống thương mại điện tử, luận văn cài đặt triển khai cho hệ thống thương mại điện tử thực tế Luận văn hoàn thành nhiệm vụ đặt thực hiện: Tổng quan recommendation systems Các hệ thống hướng tiếp cận recommendation systems Cơ sở lý thuyết mơ hình RNN LSTM Xây dựng thử nghiệm mơ hình session-based so sánh với mơ hình trước Cài đặt triển khai cho hệ thống Galaxy Gift 5.2 Hướng phát triển Với hạn chế luận văn, tác giả xin đề xuất số hướng phát triển sau: 1) Sử lý kết hợp với hướng tiếp cận phổ biến recommendation systems 2) Đo lường kết sau triển khai thực tế, cải tiến hàm đánh giá tiền sử lý liệu 3) Phát triển nghiên cứu hướng tiếp cận đồng thời sử dụng thông tin người sử dụng khác Không thương mại điện tử, mà hệ thống có liên hệ tương tác người sử dụng với hệ thống, sử dụng phương pháp recommendation system để đưa trải nghiệm người dùng tốt Điều không giúp làm tăng gắn bó người sử dụng với hệ thống giúp tăng doanh thu cửa hàng Chính việc hiểu liệu, hiểu hệ thống 48 xây dựng mô hình có khả đưa dự đốn tốt điều quan trọng Tác giả hy vọng luận án có tác dụng nghiên cứu xây dựng ứng dụng 49 TÀI LIỆU THAM KHẢO https://machinelearningcoban.com/2017/05/17/contentbasedrecommender sys/ - lần cuối truy cập 02/09/2019 https://colah.github.io/posts/2015-08-UnderstandingLSTMs/#targetText=The%20sigmoid%20layer%20outputs%20numbers, and%20control%20the%20cell%20state – lần cuối truy cập 02/09/2019 SESSION-BASED RECOMMENDATIONS WITH RECURRENT NEURAL NETWORKS - Balázs Hidasi, Alexandros Karatzoglou, Linas Baltrunas, Domonkos Tikk – public in 2016 Translation-based Recommendation - Ruining He, Wang-Cheng Kang, Julian McAuley – public in 2017 3D Convolutional Networks for Session-based Recommendation with Content Features – Trinh Xuan Tuan, Tu Minh Phuong https://docs.aws.amazon.com/lambda/index.html - lần cuối truy cập 11/11/2019 https://www.cloudamqp.com/blog/2015-05-18-part1-rabbitmq-forbeginners-what-is-rabbitmq.html - lần cuối truy cập 11/11/2019 50 ... đồng ý PGS.TS Nguyễn Linh Giang chọn đề tài luận văn: ? ?Nghiên cứu sử dụng so sánh giải thuật machine learning deep learning toán gợi ý ứng dụng hệ thống thương mại điện tử? ??, luận văn góp phần vào... DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN HỮU PHÚC NGHIÊN CỨU SỬ DỤNG VÀ SO SÁNH CÁC GIẢI THUẬT MACHINE LEARNING VÀ DEEP LEARNING TRONG BÀI TOÁN GỢI Ý ỨNG DỤNG TRONG. .. liệu sử dụng để xây dựng mơ hình dự đốn sử dụng hệ thống recommendation system cho ứng dụng thương mại điện tử Kết nghiên cứu sử dụng cho trang thương mại điện tử có hệ thống Galaxy Gift, ứng dụng