CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI biến thể khác của BERT-NewsRec là BERT-NewsRec_v2 sử dụng học tương phản (contrastive learning) cũng sẽ được đề xuất; cụ thể hơn, em sẽ trình bày về cách mà chúng ta sử dụng các phép biến đổi tăng cường dữ liệu trên chuỗi tương tác lịch sử của người dùng để tạo ra các góc nhìn khác nhau phục vụ cho quá trình học tương đồng - tương phản, cũng như cách mà chúng ta có thể tận dụng được phương pháp Nash-MTL cho quá trình quyết định bộ trọng số kết hợp tối ưu cho hàm mất mát gợi ý và hàm mất mát học tương phản trong một giá trị hàm mất mát chung (total loss). Phần cuối của chương này sẽ trình bày về phương pháp tăng cường tính đa dạng cho hệ gợi ý tin tức lấy cảm hứng từ bài toán click shaping [6]; phương pháp đề xuất sử dụng framework tối ưu đa mục tiêu để vừa đảm bảo tính liên quan của các mục gợi ý đối với lịch sử tương tác của người dùng, vừa đảm bảo duy trì độ đa dạng nhất định trong kết quả đề xuất, tránh gây trải nghiệm nhàm chán, tẻ nhạt. Chương 4 sẽ trình bày về các kết quả thực nghiệm để làm sáng tỏ hiệu quả của mô hình mã hóa BERT-NewsRec so với các mô hình mã hóa người dùng khác.
Bên cạnh đó, để làm sáng tỏ hơn nữa hiệu quả của việc vận dụng học tương phản trong mô hình gợi ý tin tức; các thí nghiệm so sánh giữa biến thể BERT-NewsRec_v2 và mô hình gốc BERT-NewsRec cũng sẽ được tiến hành. Cuối cùng, em sẽ trình bày về kết quả mô phỏng hoạt động của hệ gợi ý trong một trang web đọc tin demo; qua đó chúng ta có thể thấy rõ hơn khả năng của mô hình trong việc đưa ra các mục đề xuất có nội dung liên quan, cũng như hiệu quả của việc áp dụng tối ưu đa mục tiêu trong việc nâng cao tính đa dạng của hệ gợi ý tin tức. Trong chương cuối cùng của đồ án - chương 5, em sẽ tóm tắt lại một số kết luận chính của đồ án này, cũng như các định hướng phát triển trong tương lai. NỀN TẢNG LÝ THUYẾT Trong phần này, em sẽ trình bày sơ qua về kiến trúc phổ biến của một mô hình gợi ý tin tức cũng như các kiến trúc mạng nơ-ron đặc trưng được sử dụng trong từng khối chức năng (phần 2.
Tiếp theo, tại phần 2.2, em xin giới thiệu qua về framework học tương phản và các thành phần chính trong một hệ thống học tương phản.3 sẽ trình bày định nghĩa về một bài toán tối ưu đa mục tiêu, kèm theo đó là 2 cách tiếp cận chính trong tối ưu đa mục tiêu: phương pháp tổng có trọng số và phương pháp ràng buộc hóa. Phần cuối cùng (phần 2.4) em sẽ trình bày về lý thuyết phương pháp Nash-MTL trong học bộ trọng số kết hợp hàm mất mát để giảm thiểu vấn đề xung đột gradient trong học đa tác vụ.1 Hệ gợi ý tin tức 2.1 Tổng quan lược đồ gợi ý tin tức Lĩnh vực gợi ý tin tức có một đặc điểm quan trọng khác biệt khi so sánh với các lĩnh vợi gợi ý khác như phim ảnh, âm nhạc., đó chính là các tin bài đăng tải có thời gian vòng đời rất ngắn - vài giờ hoặc vài ngày, và nhanh chóng trở nên lỗi thời. Với đặc điểm này, các phương pháp gợi ý dựa trên lọc cộng tác (collaborative filtering) là khó có thể áp dụng vào lĩnh vực tin tức: khi số lượng tương tác của bài viết là đủ lớn để mô hình lọc cộng tác có thể hoạt động tốt, thì tin bài đã trở nên không còn quá nhiều giá trị nội dung với người dùng. Chính vì lẽ đó, phần lớn các mô hình gợi ý tin tức hiện tại tập trung vào cách tiếp cận dựa trên việc khai thác nội dung (content-based): từ nội dung của các tin bài lịch sử mà người dùng đã tương tác, mô hình tiến hành học ra sở thích của người dùng, qua đó đối sánh với tập các ứng cử viên để tìm ra tin bài phù hợp.
Lược đồ của các mô hình gợi ý tin tức nhìn chung được tổ chức theo cách thức như hình 2. Theo đó, các thành phần chính của một mô hình gợi ý tin tức bao gồm 3 khối cơ bản như sau: • Khối mã hóa tin bài (news encoder): thực hiện mã hóa các thuộc tính của tin bài, xây dựng vector đặc trưng cho tin bài. Các kỹ thuật phổ biến được dùng trong khối này là các mô hình như CNN, LSTM, Transformer. phục vụ việc nắm bắt nội dung dạng văn bản, tạo vector biểu diễn đặc trưng cho tin bài đó.
• Khối mã hóa người dùng (user encoder): thực hiện mã hóa thông tin vector biểu diễn của các tin bài mà người dùng đã tương tác trong quá khứ (được tính qua khối news encoder), kết hợp chúng lại tạo thành một vector biểu diễn đặc trưng cho sở thích của người dùng. Thông thường, khối này sử dụng các kiến trúc như GRU, chú ý cộng (Additive Attention) để chuyển từ ma trận các vector biểu diễn tin bài tương tác trong lịch sử thành một vector duy nhất ứng 7 CHƯƠNG 2. NỀN TẢNG LÝ THUYẾT Hình 2.1: Lược đồ kiến trúc tổng quan của một mô hình gợi ý tin tức với mỗi người dùng. • Khối tính điểm (scoring): nhận đầu vào là vector biểu diễn cho người dùng và tin bài ứng cử viên, thực hiện các phép biến đổi để tính toán điểm dự đoán tương tác.
Thông thường khối tính điểm này là một toán tử tích vô hướng, hoặc một mạng nơ-ron kết nối đầy đủ có kích thước đầu ra bằng 1. Nhìn chung từng khối đều có các lớp nơ-ron (layer) đặc thù riêng phù hợp với chức năng của khối đó. Trong các phần tiếp theo, em sẽ trình bày một số kiến trúc được sử dụng phổ biến và tỏ ra hiệu quả trong việc nắm bắt được các biểu diễn chính xác cho tin bài cũng như người dùng.2 Mô hình CNN (Convolutional Neural Network) Mô hình CNN [12] là một mô hình được sử dụng rộng rãi trong lĩnh vực thị giác máy tính cũng như xử lý ngôn ngữ tự nhiên. Mô hình này dùng các phép nhân tích chập để nắm bắt các đặc trưng cục bộ trong dữ liệu đầu vào; người ta sử dụng các ma trận bộ lọc (filter) trượt trên ma trận đầu vào, tại mỗi vị trí, tiến hành tính toán giá trị tích chập cục bộ để tạo ra một bản đồ thuộc tính (feature map) mới (hình 2.
Giả sử với ma trận đầu vào là I , bộ lọc filter là K , giá trị tích chập của K trên 8 CHƯƠNG 2. NỀN TẢNG LÝ THUYẾT Hình 2.2: Hoạt động của phép nhân tích chập. Với ma trận đầu vào I (màu trắng), thực hiện trượt bộ lọc K (màu xanh lam) lên trên ma trận I; tại mỗi vị trí (màu đỏ), thực hiện phép nhân tích chập để thu được giá trị thông tin cục bộ (màu xanh lục) I tại vị trí (m, n) được tính bằng công thức sau: +∞ X X +∞ O[m, n] = I[m, n] ∗ K[m, n] = I[i, j].1) j=−∞ i=−∞ Tại các vị trí biên của ma trận đầu vào, thông thường người ta sẽ tiến hành padding mở rộng ma trận để có thể tính toán được tích chập tại các vị trí này (hình 2. Việc trượt các bộc lọc (filter) trên ma trận đầu vào được quyết định bởi tham số bước nhảy (stride), nó cho biết tại mỗi bước chúng ta tiến hành dịch chuyển bao nhiêu pixel so với vị trí hiện tại.
Với kích thước ma trận đầu vào là i, kích thước bộ lọc (filter) là k , số pixel padding là p và bước nhảy (stride) là s; thì kích thước bản đồ thuộc tính (feature map) đầu ra o của mạng nơ-ron tích chập được tính bằng công thức sau: i − k + 2p o=⌊ ⌋+1 (2.2) s Bằng việc trượt các bộ lọc - filter tại các vị trí trên đầu vào I , mạng CNN có khả năng học được các tín hiệu đặc trưng cục bộ: các mẫu hình ảnh, mẫu vật thể; các ngữ nghĩa của từ trong câu. Thông thường, người ta sẽ sử dụng nhiều bộ lọc (filter) trên cùng một tầng nơ-ron để tạo ra nhiều bản đồ thuộc tính (feature map), với kỳ vọng mỗi bộ lọc (filter) có khả năng học một mẫu đặc trưng khác nhau.3 Mô hình GRU (Gated Recurrent Units) GRU là một thiết kế mô hình nằm trong nhóm các mô hình mạng hồi quy (recurrent neural network) sử dụng cơ chế cổng xử lý thông tin (gating mechanism) [13]. Mạng nơ-ron hồi quy được dùng phổ biến trong các lĩnh vực mà dữ liệu đầu 9 CHƯƠNG 2. NỀN TẢNG LÝ THUYẾT Hình 2.3: Phép padding trong nhân tích chập.
Tại các phần biên (màu đỏ) của ma trận đầu vào, người ta thực hiện pad thêm các giá trị 0 (màu xám) để có thể thực hiện được phép nhân tích chập. vào có dạng chuỗi: dữ liệu âm thanh, dữ liệu văn bản, dữ liệu chuỗi thời gian. Nó có ứng dụng trong nhiều bài toán như dự đoán doanh thu, dự đoán từ tiếp theo, chuyển hóa giọng nói sang văn bản (speech to text). Trong các mạng nơ-ron truyền thống, tín hiệu đầu vào được xử lý một cách hoàn toàn độc lập, không có sự xâu chuỗi hay xem xét thứ tự trước-sau của chúng; điều này là không phù hợp với bản chất tự nhiên của nhiều lĩnh vực: các giá trị trước, giá trị lịch sử có tác động tới giá trị tương lai.
Với mạng hồi quy, đầu ra tại một bước thời gian phụ thuộc vào các bước tính toán trước đó, hệ quả là mô hình có thể ghi nhớ được các thông tin lịch sử, lan truyền theo thời gian, và đem lại hiệu quả dự đoán tốt hơn (hình 2. Phiên bản ban đầu của mô hình hồi quy là RNN tiêu chuẩn (Recurrent Neural Network) cho thấy một vấn đề khi nó không thể ghi nhớ được các phụ thuộc xa, nguyên nhân là do gradient của hàm mất mát giảm theo hàm mũ trên chiều thời gian [14]. Để khắc phục vấn đề này, một kiến trúc mới được đề xuất là LSTM (Long-Short Term Memory) [15] với việc sử dụng thêm các khối kiến trúc đặc biệt; cụ thể, trong LSTM, có một bộ nhớ tế bào (memory cell) được dùng để duy trì thông tin trong suốt chuỗi thời gian dài, các cổng được dùng để kiểm soát việc khi nào thông tin được tiếp nhận vào bộ nhớ - memory, khi nào nó bị quên, cũng như cách thông tin được output ra bên ngoài.