1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu ứng dụng học sâu cho bài toán hệ gợi ý

56 13 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

Cấu trúc

  • MỤC LỤC

  • CHƯƠNG 1.

  • CHƯƠNG 2.

  • CHƯƠNG 3.

  • CHƯƠNG 4.

  • CHƯƠNG 5.

  • CHƯƠNG 6.

  • TÀI LIỆU THAM KHẢO

Nội dung

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Nghiên cứu ứng dụng học sâu cho toán hệ gợi ý NGUYỄN VIẾT VIỆT vietnv.bk.it@gmail.com Ngành Khoa học liệu Giảng viên hướng dẫn: TS Đinh Viết Sang Viện: Công nghệ thông tin truyền thông HÀ NỘI, 04/2021 Chữ ký GVHD Lời cảm ơn Trong thời gian làm đồ án tốt nghiệp, em nhận nhiều giúp đỡ, đóng góp ý kiến bảo nhiệt tình thầy cơ, gia đình bạn bè Em xin gửi lời cảm ơn chân thành đến TS Đinh Viết Sang, giảng viên Bộ môn Khoa học máy tính - trường ĐH Bách Khoa Hà Nội người tận tình hướng dẫn, bảo em suốt q trình làm khố luận Em xin chân thành cảm ơn thầy cô giáo trường ĐH Bách khoa nói chung, thầy Bộ mơn Khoa học máy tính nói riêng dạy dỗ cho em kiến thức môn đại cương mơn chun ngành, giúp em có sở lý thuyết vững vàng tạo điều kiện giúp đỡ em suốt trình học tập Cuối cùng, em xin chân thành cảm ơn gia đình bạn bè, tạo điều kiện, quan tâm, giúp đỡ, động viên em suốt q trình học tập hồn thành luận văn tốt nghiệp Tóm tắt nội dung luận văn Luận văn xuất phát từ nhu cầu việc đưa sản phẩm thích hợp tới cho người dùng Với bùng nổ liệu nay, để người sử dụng tìm thấy thứ mà họ muốn mạng internet việc khó khăn Vì hệ thống gợi ý nghiên cứu đời với mục đích giúp việc đưa sản phẩm tới người dùng xác hiệu Từ tiết kiệm chi phí thời gian cho người cung cấp lẫn người sử dụng Luận văn tập trung nghiên cứu toán hệ gợi ý cho liệu phiên sử dụng dựa việc mơ hình hóa liệu dạng đồ thị sử dụng học sâu để tìm đặc trưng ẩn sản phẩm Cuối đưa gợi ý xác cho người sử dụng MỤC LỤC CHƯƠNG GIỚI THIỆU 1.1 Tính cấp thiết đề tài 1.2 Mục tiêu nghiên cứu 1.3 Đối tượng phạm vi nghiên cứu 1.4 Cấu trúc luận văn CHƯƠNG CƠ SỞ LÝ THUYẾT 2.1 2.2 2.3 Tổng quan học máy 2.1.1 Phân loại toán học máy 2.1.2 Cấu trúc thuật toán học máy 2.1.3 Độ phức tạp mơ hình 2.1.4 Xử lý liệu Tổng quan học sâu 2.2.1 Học sâu 2.2.2 Lịch sử học sâu Cấu trúc mạng nơ ron nhân tạo 10 CHƯƠNG NGHIÊN CỨU LIÊN QUAN 19 3.1 Bài toán hệ gợi ý 19 3.2 Phân loại toán hệ gợi ý 19 3.3 3.2.1 Dựa vào nội dung sản phẩm 19 3.2.2 Bộ lọc cộng tác 20 3.2.3 Phương pháp kết hợp cho hệ gợi ý 22 Ứng dụng học sâu cho hệ gợi ý 23 CHƯƠNG GIẢI PHÁP ĐỀ XUẤT 25 4.1 Đồ thị học sâu (Graph Neural Network) 25 4.2 Nhúng đỉnh đồ thị (Node Embedding) 28 4.3 Công thức ký hiệu 33 4.4 Khởi tạo đồ thị phiên sử dụng 33 4.5 Học nhúng véc tơ sản phẩm từ đồ thị 34 4.6 Nhúng đồ thị 35 4.7 Xây dựng hệ gợi ý huấn luyện mơ hình 36 CHƯƠNG Kết thử nghiệm đánh giá 37 5.1 Mô tả liệu 37 5.2 Phân tích tiền xử lý liệu 38 5.3 Xây dựng mơ hình 40 5.4 Đánh giá 41 CHƯƠNG Kết luận hướng cải tiến 44 6.1 Kết luận 44 6.2 Hướng cải tiến 44 TÀI LIỆU THAM KHẢO 45 PHỤ LỤC 47 DANH MỤC HÌNH VẼ Hình 1: Mơ tả hệ thống gợi ý (trích từ web) Hình 2: Hệ gợi ý dựa phiên sử dụng người dùng Hình 3: Các tượng thường gặp trình huấn luyện (trích từ web) Hình 4: Mối liên hệ độ phức mơ hình hệ số lỗi (trích từ web) Hình 5: Cấu trúc nơ ron [29] 11 Hình 6: Một số hàm kích hoạt (trích blog machinelearningcoban) 12 Hình 7: Cấu trúc mạng nơ ron (trích từ blog viblo) 13 Hình 8: Ý tưởng Nesterov accelerated gradient (trích từ web paperwithscode) 16 Hình 9: Phân loại tốn hệ gợi ý (trích từ blog towardsdatascience) 19 Hình 10: Mơ tả đồ thị 25 Hình 11: Các tốn điển hình đồ thị (trích từ blog viblo) 26 Hình 12: Ứng dụng toán sử dụng đồ thị (trích từ blog viblo) 27 Hình 13: Đồ thị học sâu (trích từ blog viblo) 27 Hình 14: Nhúng đỉnh đồ thị (trích từ blog viblo) 29 Hình 15: Tổng quan thuật tốn bước ngẫu nhiên [15] 31 Hình 16: Mơ tả DeepWalk [18] 32 Hình 17: Bước ngẫu nhiên Node2Vec [19] 32 Hình 18: Mã giả thuật tốn Node2Vec [19] 33 Hình 19: Ma trận vào đồ thị Gs 35 Hình 20: Biểu đồ phân bố số lượng click theo ngày 38 Hình 21: Biểu đồ phân bố số lượng người mua hàng theo ngày 39 Hình 22: Phân bố chiều dài phiên sử dụng 39 Hình 23: Biểu đồ phân bố tương quan click mua theo 40 Hình 24: Mơ tả mơ hình mạng GNN cho tốn phiên sử dụng [20] 41 Hình 25: Biểu đồ kết 43 DANH MỤC BẢNG BIỂU Bảng 1: Bộ lọc cộng tác dựa vào người dùng 21 Bảng 2: Thống kê liệu Yoochoose 37 Bảng 3: Kết đạt 42 Bảng 4: Mô tả phần cứng sử dụng 48 CHƯƠNG GIỚI THIỆU 1.1 Tính cấp thiết đề tài Ngày nay, việc phát triển trang web thương mại điện tử ngày phổ biến, đặc biệt năm gần lĩnh vực thương mại điện tử phát triển nhanh chóng Với đặc thù trang web thương mại điện tử chi phí, ngày làm chủ người chọn hình thức kinh doanh Tuy nhiên với phát triển không ngừng trang web thương mại điện tử phát sinh số định thức, công thức người dùng làm để chọn sản phẩm mà họ cần vô số sản phẩm giới Khi khách hàng vào trang web thương mại điện tử có hai xu hướng: thứ họ định hướng sản phẩm mà họ mua, thứ hai họ định hướng sản phẩm mà họ mua Đối với thứ trường, đơn giản họ định sẵn mua sản phẩm rồi, vấn đề chọn mua đâu mà Trường hợp thứ hai đối diện, người dùng gặp khó khăn nhiều, họ phải chọn sản phẩm phù hợp với nhu cầu họ Đặt vấn đề họ làm điều vơ số sản phẩm giống mà họ tìm kiếm Trong trường hợp người dùng cần đến trợ giúp hệ thống gợi ý để giải vấn đề vấn đề Hệ thống tham gia sử dụng khuyến khích đưa thông tin phản hồi sản phẩm thông tin mà họ tìm kiếm; phản hồi hệ thống xử lý đưa danh sách sản phẩm phù hợp với yêu cầu người dùng Ngày hệ thống gợi ý ngày trọng, nhà cung cấp dịch vụ trực tuyến như: Amazon, Netflix, Youtube, Một hệ thống gợi ý vấn đề sống nhà cung cấp đặc biệt dịch vụ nâng cấp gần tính tốn ngày lớn, hệ thống gợi ý làm tăng hài lịng khách hàng, giữ chân người dùng Hình 1: Mơ tả hệ thống gợi ý (trích từ web) Cùng với phát triển thương mại điện tử tương tác trực tuyến người giai đoạn Việc bùng nổ số lượng liệu khổng lồ, việc tìm kiếm đánh giá để đưa sản phẩm phù hợp tới người dùng thách thức lớn cho công ty, tổ chức lớn Theo thống kê có tới 300 video khác đăng tải phút Youtube Khơng người dùng xem hết toàn thời lượng video số hàng tỷ người dùng kia, người có sở thích khác người, 99,99% nội dung khơng phù hợp với họ Tương tự vấn đề Amazon, người dùng khơng thể lướt qua tồn trăm triệu sản phẩm mua sắm Từ đó, hệ thống gợi ý nghiên cứu ứng dụng cách mạnh mẽ mang lại lợi ích cho người cung cấp dịch vụ người sử dụng dịch vụ Ý tưởng đằng sau hệ thống gợi ý sử dụng liệu thu thập từ người dùng dự đoán, gợi ý cho người dùng sản phẩm, tính năng, dịch vụ mà người dùng thích, từ nâng cao chất lượng dịch vụ thu lại lợi nhuận Hiện trang thương mại điện tử lớn Tiki, Shopee, … có thu thập liệu người dùng, định danh họ nắm bắt hành vi người dùng thông qua phiên truy cập họ trang web Từ đó, thách thức cơng ty xây dựng hệ thống gợi ý dựa liệu phiên sử dụng người dùng mà mô hình xử lý liệu dạng chuỗi thời gian, hành vi Từ tăng trải nghiệm người sử dùng, tăng doanh số bán hàng thông qua sản phẩm gợi ý hợp lý Hình 2: Hệ gợi ý dựa phiên sử dụng người dùng 1.2 Mục tiêu nghiên cứu Luận văn giải toán hệ gợi ý cho liệu phiên sử dụng người dùng, nghiên cứu tập trung vào vấn đề sau: - - Giới thiệu tổng quan toán hệ gợi ý Cơ sở lý thuyết học máy, học sâu Nêu làm rõ cấu thành thuật tốn học máy học sâu Từ nghiên cứu, ứng dụng cải tiến Các phương pháp học sâu giải toán hệ gợi ý cho liệu phiên sử dụng Tiếp cận phương pháp biến đổi liệu phiên sử dụng thành đồ thị sử dụng mạng đồ thị (Graph Neural Network) để giải toán Thử nghiệm đánh giá liệu Yoochoose (dữ liệu công bố thi RecSys Challenge 2015) 1.3 Đối tượng phạm vi nghiên cứu Luận văn tập trung nghiên cứu tổng quan học máy, học sâu, toán liên quan hệ gợi ý, phương pháp tiếp cận giải toán hệ gợi ý sâu vào toán hệ gợi ý cho liệu phiên sử dụng người dùng dựa phương pháp xây dựng đồ thị học sâu Ứng dụng nghiên cứu trước để giải thực tế cho tập liệu Yoochoose đưa kết 1.4 Cấu trúc luận văn Luận văn trình bày với cấu trúc sau Phần giới thiệu tổng quan tính cấp thiết mục tiêu đề tài nghiên cứu Phần sâu sở lý thuyết học máy, học sâu bao gồm phân loại tốn học máy Phân tích cấu trúc thuật tốn học máy nói chung Các vấn đề học máy overfiting, underfitting, … Cấu thành thuật toán học sâu giới thiệu số mạng học sâu điển hình Phần giới thiệu nghiên cứu liên quan, nghiên cứu tổng quan toán hệ gợi ý nghiên cứu chuyên sâu hệ gợi ý dựa liệu phiên giao dịch sử dụng đồ thị học sâu Phần đưa giải pháp đề xuất để giải toán hệ gợi ý dựa liệu phiên sử dụng người dùng Phần kết đánh giá thử nghiệm cho tập liệu Yoochoose Ở phần cuối kết luận hướng phát triển CHƯƠNG CƠ SỞ LÝ THUYẾT 2.1 Tổng quan học máy Học máy lĩnh vực trí tuệ nhân tạo liên quan đến việc nghiên cứu xây dựng kỹ thuật cho phép hệ thống học tự động từ liệu để giải vấn đề cụ thể Ví dụ máy học cách phân loại thư rác tự động xếp vào mục thư rác tương ứng 2.1.1 Phân loại toán học máy Học máy thường phân làm hai loại, là: - Học khơng giám sát Học có giám sát Cả hai tốn có mục đích để giải tốn riêng biệt Tuy nhiên, theo góc nhìn thống kê ta hồn tồn sử dụng quy tắc chuỗi chain rules (được định nghĩa sau: 𝑝(𝑥 ) = ∏%!&" 𝑝(𝑥! | 𝑥" , 𝑥# , , 𝑥!$" ) để kết luận để giải tốn khơng giám sát ta chia chúng thành n tốn có giám sát giải chúng Học không giám sát Trong tốn này, mơ hình huấn luyện việc quan sát liệu khơng có nhãn phải tìm mẫu (pattern) ẩn liệu Phần lớn ứng dụng toán phân cụm (clustering), tức chúng tập trung vào ý tưởng phân tích phân cụm hình học liệu khơng gian đầu vào để xác định mối liên kết chúng Điều giả định trước phân cụm điểm liệu không gian đầu vào có thuộc tính tương tự Một số mơ hình học không giám sát kể tới là: - Kmeans clustering Principal Component Analysis Bài tốn học khơng giám sát thường ứng dụng hệ gợi ý Vì vậy, luận văn tập trung nhiều tốn học có giám sát Học có giám sát Đối với tốn học có giám sát, máy tính nhìn thấy liệu gán nhãn, từ giám sát điều chỉnh mơ hình trình học Quá trình học tuân theo nguyên tắc sau: liệu huấn luyện đưa vào mơ hình để học, sau lần học máy tự động cập nhật lại tham số cho nhãn dự đoán gần với nhãn thật Cuối ta thu tham số tối ưu dụng để dự đốn cho liệu tương lai 𝑠b = 𝑊c 1𝑠" , 𝑠3 Trong đó, ma trận 𝑊c ∈ 𝑅 ZB#Z ma trận nén kết hợp hai véc tơ nhúng vào không gian d chiều 4.7 Xây dựng hệ gợi ý huấn luyện mơ hình ~ Sau thu véc tơ nhúng cho phiên sử dụng, ta tính tốn điểm số 𝑧! cho sản phẩm chọn 𝑣! ∈ 𝑉 cách nhân véc tơ nhúng 𝑣! với véc tơ đại diện cho phiên sử dụng 𝑠b , định nghĩa sau: ~ 𝑧! = 𝑠b' 𝑣! Sau đó, áp dụng hàm softmax cho đầu hàm dự đốn mơ hình: ~ ~ 𝑦 = 𝑠𝑜𝑓𝑡𝑚𝑎𝑥;𝑧= ~ ~ Trong đó, 𝑧 điểm số gợi ý tất sản phẩm 𝑦 xác suất sản phẩm người dùng định mua sau kết thúc phiên sử dụng Sau phiên sử dụng, hàm mát định nghĩa hàm số cross-entropy giá trị dự đốn giá trị nhãn Có thể tính tốn với cơng thức sau: ⏜ Y ⏜ ⏜ 𝐿 U𝑦V = − 𝑦! log U𝑦! V + (1 − 𝑦! )log U1 − 𝑦! V !&" Trong đó: y véc tơ one-hot nhãn 36 CHƯƠNG Kết thử nghiệm đánh giá 5.1 Mô tả liệu Để kiểm thử mơ hình, ta sử dụng liệu thực tế Yoochoose Đây liệu công bố thi RecSys Challenge 2015, liệu bao gồm tập, thứ tập liệu người dùng chọn sản phẩm (click data) vào thời gian nào, tập thứ tập liệu người dùng mua sản phẩm (buy data) phiên sử dụng Đối với tập liệu click gồm thuộc tính sau: SessionID: ID phiên sử dụng Mỗi phiên sử dụng người dùng click nhiều sản phẩm mua nhiều sản phẩm - Timestamp: Thời gian người dùng click ItemID: Là ID định danh cho sản phẩm người dùng click Định danh số (integer) Category: Là thể loại sản phẩm Giá trị “S” thể loại đặc biệt “0” nghĩa khơng có liệu “1-12” thể loại sản phẩm thực tế mã hóa Đối với tập liệu mua gồm thuộc tính sau: SessionID: ID phiên sử dụng Mỗi phiên sử dụng người dùng click nhiều sản phẩm mua nhiều sản phẩm Sử dụng để kết hợp với liệu click trước - Timestamp: Thời điểm người dùng mua sản phẩm ItemID: Là ID định danh cho sản phẩm người dùng mua Định danh số (integer) - Price: Là giá sản phẩm - Quantity: Là số lượng sản phẩm mà người dùng mua Bảng 2: Thống kê liệu Yoochoose Thống kê Yoochoose1/64 Yoochoose1/4 Yoochoose full #số lượng click 557248 8326407 33305523 #số lượng phiên sử dụng dùng để huấn luyện 369859 5917745 10913546 #số lượng phiên sử dụng dùng để kiểm tra 55898 55898 55898 #số lượng phẩm 16766 29618 50472 sản 37 #chiều dài trung bình phiên 6.16 5.71 5.46 5.2 Phân tích tiền xử lý liệu Phân tích tập liệu Yoochoose, liệu dạng chuỗi thời gian, tơi phân tích số đặc trưng liệu theo thời gian Dựa vào biểu đồ phân tích số lượng click theo ngày theo ta thấy số lượng người dùng click tăng mạnh vào chủ nhật (hình 20), vào ngày tuần vào tập trung vào sáng 18 tối Hình 20: Biểu đồ phân bố số lượng click theo ngày Dựa vào biểu đồ số lượng người mua hàng theo ngày ta thấy tỷ lệ mua hàng tỷ lệ thuận với tỷ lệ click số lượng mua hàng nhiều tăng vào ngày cuối tuần vào ngày tuần (hình 21) Dựa vào biểu đồ phân tích ta thấy số lượng chọn tỷ lệ chuyển đổi sang mua hàng tỷ lệ thuận với 38 Hình 21: Biểu đồ phân bố số lượng người mua hàng theo ngày Trong thí nghiệm này, tơi loại bỏ hết phiên sử dụng mà người dùng chọn sản phẩm đồng thời loại bỏ sản phẩm mà có tần số xuất bé lần tồn liệu Hình 22: Phân bố chiều dài phiên sử dụng Biểu đồ phân bố số lượng click mua theo 39 Hình 23: Biểu đồ phân bố tương quan click mua theo Dựa vào biểu đồ phân bố ta thấy số lượng sản click tăng khung 18 đến 20 giảm khung đên sáng 5.3 Xây dựng mơ hình Dữ liệu dùng thí nghiệm bao gồm tập liệu Yoochoose 1/64, Yoochoose 1/4 Yoochoose full Trong Yoochoose 1/64 sử dụng 1/64 toàn liệu huấn luyện Tương tự vậy, yoochoose 1/4 sử dụng 1/4 toàn liệu huấn luyện Yoochoose full sử dụng toàn tập liệu Tuy nhiên tập liệu lớn nên trình thử nghiệm thực liệu 1/64 1/4 Để chia liệu cho huấn luyện kiểm thử, 10 phần trăm liệu theo thời gian tách để làm liệu kiểm thử Trong thí nghiệm tơi có chạy thử nghiệm với mạng học sâu feed-forward (FNN) thông thường để làm kết sở thí nghiệm Sau tiến hành thí nghiệm với việc sử dụng đồ thị học sâu sử dụng đồ thị học sâu với tối ưu tham số siêu tham số (hyper-parameters) mạng 40 Đối với việc lựa chọn tham số: chọn tham số cho véc tơ nhúng sản phẩm 100 chiều cho toàn tập liệu Đối với việc lựa chọn tối ưu siêu tham số: Tất tham số khởi tạo ngẫu nhiên theo phân phối Gaussian với trung bình độ lệch chuẩn 0.1 Tối ưu Adam sử dụng với tham số học 0.001 Cụ thể kiến trúc mạng mơ tả chi tiết hình 24 Đầu tiên tất phiên mã hóa thành liệu đồ thị, sau liệu đồ thị qua mơ hình GNN thu véc tơ nhúng cho đỉnh đồ thị Sau thu véc tơ nhúng đỉnh, mô hình attention kết hợp lại để thu véc tơ đại diện cho phiên sử dụng Cuối phiên sử dụng sử dụng để dự đoán sản phẩm mà người dùng mua thơng qua mơ hình FNN bản, có sử dụng softmax để thu xác suất cho đỉnh đồ thị Hình 24: Mơ tả mơ hình mạng GNN cho tốn phiên sử dụng [20] 5.4 Đánh giá Ở thí nghiệm này, chọn tham số P@20 MRR@20 để làm số tối ưu đánh giá P@20 (Precision): tham số sử dụng rộng rãi cho việc đánh giá tốn hệ gợi ý, thể tỷ lệ mặt hàng gợi ý xác danh sách 20 mặt hàng 𝑃@𝑁 = + ∑ 𝑃 (𝑘 ) 𝑟𝑒𝑙 (𝑘 ) 𝑚 (56 PT 49 41 Trong đó: Rel(k): sản phẩm vị trí thứ k có gợi ý hay khơng, 1, sai - m: Số lượng sản phẩm gợi ý danh sách N sản phẩm MRR@20 (Mean Reciprocal Rank): giá trị trung bình thứ tự sản phẩm được gợi ý xác, số sản phẩm gợi ý nằm ngồi danh sách 20 mặt hàng Vì thế, số lớn thể sản phầm gợi ý xác nằm đầu danh sách < 1 𝑀𝑅𝑅 = # |𝑄| 𝑟𝑎𝑛𝑘" PT 50 "56 Trong đó: - Q số lượng sản phẩm tương ứng danh sách Kết trình huấn luyện mơ tả bảng Theo bảng kết ta thấy sử dụng đồ thị học sâu có tối ưu siêu tham số đem lại kết tốt so với việc sử dụng học sâu thông thường liệu yoochoose 1/64 yoochoose ¼ so với sử dụng mạng FNN GNN chưa tối ưu siêu tham số 42 Bảng 3: Kết đạt Mơ hình Yoochoose 1/64 Yoochoose 1/4 P@20 MRR@ Thời gian P@20 20 huấn luyện MRR@ 20 Thời gian huấn luyện 64.34 22.56 2.5 66.40 25.03 16 GNN 63.00 (chưa tối ưu tham số) 24.42 3.2 65.32 26.53 ngày GNN 72.44 (tối ưu tham số) 28.85 3.00 82.55 34.35 ngày FNN Hình 25: Biểu đồ kết 43 CHƯƠNG Kết luận hướng cải tiến 6.1 Kết luận Trong kinh doanh, việc tăng doanh số bán hàng hay tăng lợi nhuận nhiệm vụ quan trọng hệ thống gợi ý Hệ thống gợi ý ngày trở nên quan trọng việc bùng nổ thông tin Thông tin người dùng ngày nhiều kết nối với Vì thế, doanh nghiệp cố gắng tìm phương pháp để cải thiện việc dự đoán đưa gợi ý sản phẩm liên quan phiên sử dụng người dùng Luận văn phương pháp tiếp cận để xây dựng hệ thống gợi ý, đồng thời đưa giải pháp cụ thể cho tốn có dùng liệu phiên sử dụng người dùng Cụ thể sử dụng đồ thị mạng học sâu, kết hợp kiểu liệu đồ thị giúp phản ánh mối quan hệ hành vi người dùng phiên mạng học sâu để tìm đặc trưng ẩn hành vi người dùng, giải pháp đề xuất hoạt động tốt liệu cụ thể Yoochoose Đối với vấn đề nêu phần mở đầu, thử nghiệm mạng học sâu thông thường đồ thị mạng học sâu để so sánh Sau đó, thử nghiệm tối ưu tham số mơ hình mạng để đưa kết luận đồ thị mạng học sâu có khả tổng qt hóa tìm thuộc tính ẩn sản phẩm tốt, từ cải thiện việc đưa gợi ý tương tự cho người dùng 6.2 Hướng cải tiến Đối với đạt luận văn, hạn chế mặt thời gian hạn chế mặt thiết bị, nên luận văn dừng lại việc thử nghiệm tập liệu cần chưa triển khai đơn vị thực tế Vì thế, tơi có đề xuất cải tiến cho tốn sau: - - Chạy thử nghiệm thuật toán tập liệu đầy đủ Yoochoose Để có đánh giá chi tiết độ xác thuật toán Ứng dụng triển khai toán hệ thống người dùng thật, từ giúp đo đạc hiệu có hướng cải tiến thuật toán liệu liên tục cập nhật theo thời gian Kết hợp việc sử dụng đồ thị học sâu với mạng hoạt động tốt cho liệu chuỗi thời gian RNN, … 44 TÀI LIỆU THAM KHẢO [1] W McCulloch and W Pitts A logical calculus of the ideas immanent nervous activity (1943) [2] F Rosenblatt “The perceptron: A probabilistic model for information storage and organization in the brain.” In: Psychological Review 65.6 (1958), pp 386– 408 issn: 0033-295X doi: 10.1037/h0042519 url: http://dx.doi.org/10 1037/h0042519 [3] M Minsky and S Papert Perceptrons: an introduction to computational geometry (1969) [4] Kaiming He et al “Deep Residual Learning for Image Recognition” In: CoRR abs/1512.03385 (2015) arXiv: 1512.03385 url: http://arxiv.org/abs/1512 03385 [5] Ian Goodfellow Deep Learning Book 2014 doi: 10.1016/b978-0-12391420- 0.09987-x [6] John Duchi, Elad Hazan, and Yoram Singer “Adaptive Subgradient Methods for Online Learning and Stochastic Optimization” In: Journal of Machine Learning Research 12.61 (2011), pp 2121–2159 url: http://jmlr.org/papers/v12/duchi11a.html [7] Jonathan L.Herlocker Evaluating Collaborative Filtering Recommender Systems (2004) [8] Greg Linden Amazon com recommendations: Item-to-item collaborative filtering (2000) [9] Thomas Hofmann and Jan Puzicha Latent class models for collaborative filtering In IJCAI, volume 99, pages 688–693, 1999 [10] Diederik P Kingma and Jimmy Ba Adam: A Method for Stochastic Optimization 2017 arXiv: 1412.6980 [cs.LG] [11] Gediminas Adomavicius and Alexander Tuzhilin Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions Knowledge and Data Engineering, IEEE Transactions on, 17(6):734–749, 2005 [12] Rodolphe Jenatton A latent factor model for highly multi-relational data (2012) [13] Zhengzheng Xian New Collaborative Filtering Algorithms Based on SVD++ and Differential Privacy (2017) [14] Robin Burke Hybrid recommender systems: Survey and experiments User modeling and user-adapted interaction, 12(4):331–370, 2002 45 [15] Giannis Nikolentzos Random Walk Graph Neural Networks (2020) [16] SHUAI ZHANG, LINA YAO Deep Learning based Recommender System: A Survey and New Perspectives, 2019 [17] Jie Zhou, Ganqu Cui, Zhengyan Zhang “Graph Neural Networks: A Review of Methods and Applications”, 2019 [18] Bryan Perozzi, Rami Al-Rfou, Steven Skiena “DeepWalk: Online Learning of Social Representations”, 2014 [19] Aditya Grover, Jure Leskovec “Node2vec: Scalable Feature Learning for Networks” [20] Shu Wu, Yuyuan Tang, Yanqiao Zhu “Session-based Recommendation with Graph Neural Networks”, 2019 [21] Jian Tang, Meng Qu “Line: Large-scale Information Network Embedding”, 2015 [22] Aditya Grover, Jure Leskovec “node2vec: Scalable Feature Learning for Networks”, 2016 [23] David K Duvenaud, Dougal Maclaurin, Jorge Iparraguirre “Convolutional Networks on Graphs for Learning Molecular Fingerprints”, 2015 [24] Thomas N Kipf, Max Welling “Semi-supervised Classification With Graph Convolutional Networks”, 2017 [25] Maria Cristina Gori, Gabriele Monfardini, Franco Scarselli “A new model for earning in raph domains”, 2005 [26] Yujia Li, Daniel Tarlow, Marc Brockschmidt, Richard Zemel “Gated Graph Sequence Neural Networks”, 2017 [27] Kenneth Marino, Ruslan Salakhutdinov, Abhinav Gupta “The More You Know: Using Knowledge Graphs for Image Classification”, 2016 [28] Chao Li, Qiaoyong Zhong, Di Xie, Shiliang Pu “Skeleton-based action recognition with convolutional neural networks”, 2017 [29] Giuliano Manso, Helder Knidel “A smartphone application to detection and classification of coffee leaf miner and coffee leaf rust”, 2019 46 PHỤ LỤC A1 Công nghệ sử dụng Để lựa chọn công cụ thích hợp cho việc triển khai GNN nhằm huấn luyện tìm véc tơ nhúng đồ thị lớn, tơi khảo sát công cụ thư viện phần mềm có sẵn Hiện thị trường có nhiều thư viện chuyên dụng cho học máy Một số số công cụ chung cho học máy, số khác thiết kế đặc biệt cho học sâu Trong năm qua, công cụ phần mềm cho máy học trải qua nhiều thay đổi Có nhiều lựa chọn việc xuất thư viện xảy thường xuyên Ví dụ, fastai2 giới thiệu gần vào ngày 24 tháng năm 2020 Hầu hết ngôn ngữ lập trình thường sử dụng có số thư viện cho lĩnh vực tồn số giao diện lập trình ứng dụng (API) có sẵn Việc sử dụng công cụ phần mềm bị ảnh hưởng số yếu tố Đầu tiên, ngôn ngữ thực phải phát triển từ lâu có phần phổ biến Phải có đủ tài liệu, tốt dạng hướng dẫn tham khảo Yếu tố quan trọng hỗ trợ tốt cho việc huấn luyện GPU Tensorflow Framework mã nguồn mở thực trì Google sử dụng phần lớn ứng dụng Gmail, Google Photos Thư viện cung cấp cho người dùng nhiều lợi ích như: – Miễn phí, đáng tin cậy hỗ trợ Google – Nhờ hệ thống APIs dồi dào, việc thực tác vụ học sâu trở nên dễ dàng – Có thể sử dụng nhiều ngơn ngữ lập trình đa dạng khác như: Python, JavaScript, C++, v.v để lập trình TensorFlow Ngoài ra, TensorFlow gần sát nhập với Keras Keras thư viến thực tác vụ back-end TensorFlow Thư viện dựa Python thiết kế tập trung để thử nghiệm nhanh nhẹ Hiện tại, thư viện hỗ trợ huấn luyện nhiều GPU A2 Phần cứng sử dụng Huấn luyện mạng nơ-ron tiếng tốn tính tốn địi hỏi nhiều nguồn lực Từ góc độ cấp thấp, trình chủ yếu phép nhân ma trận CPU khơng tối ưu hóa cho tính tốn vậy, chúng khơng phù hợp Mặt khác, GPU đại thiết kế chuyên để thực phép tính 47 Hiện thị trường có hai tảng điện tốn song song lớn CUDA OpenCL Cả hai có ưu nhược điểm khác biệt CUDA sản phẩm độc quyền, OpenCL mã nguồn mở Sự phân chia nhà sản xuất phần cứng khác CUDA chủ yếu thực Nvidia OpenCL hỗ trợ AMD Nvidia với tảng CUDA dẫn đầu lĩnh vực học sâu Do đó, để huấn luyện mơ hình GNN, lựa chọn GPU từ Nvidia GPU sử dụng GeForce RTX 3060 EAGLE OC 12G Tóm tắt cấu hình phần cứng mơ tả Bảng Bảng 4: Mô tả phần cứng sử dụng Tên phần cứng Loại phần cứng sử dụng CPU n1-highmem-8 (8 vCPUs) GPU GeForce RTX 3060 EAGLE OC 12G RAM n1-highmem-8 (52GB) 48 TÓM TẮT LUẬN VĂN THẠC SĨ Đề tài: Nghiên cứu ứng dụng học sâu cho toán hệ gợi ý Tác giả luận văn: Nguyễn Viết Việt Khóa: 2019 Người hướng dẫn: T.S Đinh Viết Sang Từ khóa (Keyword): GNN, hệ gợi ý Nội dung tóm tắt: a) Lý chọn đề tài Xuất phát từ nhu cầu việc đưa sản phẩm thích hợp tới cho người dùng Với bùng nổ liệu nay, để người sử dụng tìm thấy thứ mà họ muốn mạng internet việc khó khăn Vì hệ thống gợi ý nghiên cứu đời với mục đích giúp việc đưa sản phẩm tới người dùng xác hiệu Từ tiết kiệm chi phí thời gian cho người cung cấp lẫn người sử dụng Luận văn tập trung nghiên cứu toán hệ gợi ý cho liệu phiên sử dụng dựa việc mơ hình hóa liệu dạng đồ thị sử dụng học sâu để tìm đặc trưng ẩn sản phẩm Cuối đưa gợi ý xác cho người sử dụng Ngày nay, việc phát triển trang web thương mại điện tử ngày phổ biến, đặc biệt năm gần lĩnh vực thương mại điện tử phát triển nhanh chóng Đồng thời với việc thu thập lượng lớn liệu người dùng, liệu chia thành phiên sử dụng người dùng Thách thức sàn thương mại điện tử lớn tìm cách xây dựng hệ gợi ý hỗ trợ đưa sản phẩm mà người dùng thực có nhu cầu tới tay họ nhanh xác Để từ đó, tiết kiệm chi phí quảng cáo, tăng trải nghiệm người dùng tăng doanh thu doanh nghiệp Vì luận văn tập trung nghiên cứu đề xuất cách giải toán hệ gợi ý cho liệu phiên giao dịch b) Mục đích nghiên cứu luận văn, đối tượng, phạm vi nghiên cứu Luận văn giải toán hệ gợi ý cho liệu phiên sử dụng người dùng, nghiên cứu tập trung vào vấn đề sau: - Giới thiệu tổng quan toán hệ gợi ý Cơ sở lý thuyết học máy, học sâu Nêu làm rõ cấu thành thuật toán học máy học sâu Từ nghiên cứu, ứng dụng cải tiến - Các phương pháp học sâu giải toán hệ gợi ý cho liệu phiên sử dụng - Tiếp cận phương pháp biến đổi liệu phiên sử dụng thành đồ thị sử dụng mạng đồ thị (Graph Neural Network) để giải toán - Thử nghiệm đánh giá liệu Yoochoose (dữ liệu công bố thi RecSys Challenge 2015) c) Tóm tắt đọng nội dung đóng góp tác giả 49 Trong luận văn này, nội dung đóng góp tơi là: - Phân tích, đánh giá tổng hợp nghiên cứu để giải toán hệ gợi ý - Tìm hiểu cách thức ứng dụng mạng học sâu vào toán hệ gợi ý dựa vào phiên sử dụng người dùng, mà cụ thể mạng đồ thị học sâu - Thử nghiệm đánh giá phương pháp tập liệu thực tế Yoochoose Thực bước thử nghiệm tối ưu tham số cho mạng học sâu để đem lại kết tốt d) Phương pháp nghiên cứu Để thực luận văn, áp dụng phương pháp nghiên cứu sau: - - Đặt vấn đề tìm hiểu tính cấp thiết tốn thực tế Bao gồm thực trạng nay, vấn đề gặp khó khăn Tìm hiểu đánh giá nghiên cứu có liên quan Chỉ điểm làm chưa làm phương pháp dựa vào nguồn tài liệu công bố (các báo, cơng trình khoa học cơng bố) Tìm cách ứng dụng đạt khắc phục vấn đề chưa đạt Thử nghiệm, tối ưu đánh giá kết tập liệu thực tế Cụ thể liệu Yoochoose (tập liệu phiên sử dụng người dùng) e) Kết luận Trong kinh doanh, việc tăng doanh số bán hàng hay tăng lợi nhuận nhiệm vụ quan trọng hệ thống gợi ý Hệ thống gợi ý ngày trở nên quan trọng việc bùng nổ thông tin Thông tin người dùng ngày nhiều kết nối với Vì thế, doanh nghiệp cố gắng tìm phương pháp để cải thiện việc dự đoán đưa gợi ý sản phẩm liên quan phiên sử dụng người dùng Luận văn phương pháp tiếp cận để xây dựng hệ thống gợi ý, đồng thời đưa giải pháp cụ thể cho tốn có dùng liệu phiên sử dụng người dùng Cụ thể sử dụng đồ thị mạng học sâu, kết hợp kiểu liệu đồ thị giúp phản ánh mối quan hệ hành vi người dùng phiên mạng học sâu để tìm đặc trưng ẩn hành vi người dùng, giải pháp đề xuất hoạt động tốt liệu cụ thể Yoochoose Đối với vấn đề nêu phần mở đầu, thử nghiệm mạng học sâu thông thường đồ thị mạng học sâu để so sánh Sau đó, thử nghiệm tối ưu tham số mô hình mạng để đưa kết luận đồ thị mạng học sâu có khả tổng quát hóa tìm thuộc tính ẩn sản phẩm tốt, từ cải thiện việc đưa gợi ý tương tự cho người dùng 50 ... toán hệ gợi ý Cơ sở lý thuyết học máy, học sâu Nêu làm rõ cấu thành thuật toán học máy học sâu Từ nghiên cứu, ứng dụng cải tiến Các phương pháp học sâu giải toán hệ gợi ý cho liệu phiên sử dụng. .. cứu Luận văn tập trung nghiên cứu tổng quan học máy, học sâu, toán liên quan hệ gợi ý, phương pháp tiếp cận giải toán hệ gợi ý sâu vào toán hệ gợi ý cho liệu phiên sử dụng người dùng dựa phương... toán học sâu giới thiệu số mạng học sâu điển hình Phần giới thiệu nghiên cứu liên quan, nghiên cứu tổng quan toán hệ gợi ý nghiên cứu chuyên sâu hệ gợi ý dựa liệu phiên giao dịch sử dụng đồ thị học

Ngày đăng: 10/12/2021, 19:35

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

TÀI LIỆU LIÊN QUAN

w