Giới thiệu về hệ thống gợi ý

Khái niệm hệ thống gợi ý

Trong những năm gần đây, sự phát triển mạnh mẽ của các mạng truyền thông không dây tốc độ cao như 4G/5G cùng với sự phổ biến của các thiết bị di động đã góp phần thay đổi đáng kể cách thức tiếp cận và xử lý thông tin của mỗi chúng ta. Người dùng có thể truy cập và sử dụng các nền tảng thương mại điện tử hay các dịch vụ truyền thông đa phương tiện từ mọi nơi, biến chúng trở thành một phần quan trọng trong cuộc sống hàng ngày của rất nhiều người. Vì vậy, các hệ thống gợi ý (Recommendation System - RS) ngày nay giữ vai trò đặc biệt quan trọng trong quá trình vận hành của các nền tảng thương mại điện tử và truyền thông đa phương tiện với mục tiêu đề xuất cho từng khách hàng những sản phẩm mà họ có khả năng sẽ yêu thích hay sử dụng.

RS là một dạng của hệ thống hỗ trợ ra quyết định, cung cấp giải pháp mang tính cá nhân hóa mà không phải trải qua quá trình tìm kiếm phức tạp. Có thể định nghĩa RS là một hệ thống lọc thông tin để dự đoán về sở thích của người dùng, từ đó đề xuất với người dùng các sản phẩm phù hợp nhất một cách hiệu quả. Nhờ những kết quả tích cực được chứng minh trong thực tiễn [3], RS đã trở thành một nhánh nghiên cứu quan trọng trong lĩnh vực trí thông minh nhân tạo và học máy, thu hút đông đảo sự quan tâm của cộng đồng khoa học và mang tính quyết định tới khả năng phát triển của một doanh nghiệp trong thời đại số.

Mô hình hóa hệ thống gợi ý

Hệ thống gợi ý có thể được chia thành ba mô-đun: mô hình hóa người dùng, mô hình hóa đối tượng gợi ý và thuật toán gợi ý. Mô-đun cốt lõi của hệ thống gợi ý là thuật toán gợi ý.

Hình 1: Mô hình miêu tả hệ thống gợi ý


  • Mô-đun mô hình hóa người dùng: thiết lập mô hình người dùng theo thông tin người dùng. Phân tích thông tin thuộc tính của người dùng và thông tin hành vi của người dùng (chẳng hạn như hành vi duyệt web lịch sử và hành vi nhấp chuột), đồng thời liên tục theo dõi và cập nhật kịp thời mô hình người dùng.

  • Mô-đun mô hình hóa đối tượng gợi ý: phương pháp mô tả đối tượng gợi ý sẽ ảnh hưởng đến kết quả gợi ý. Các đối tượng gợi ý khác nhau có cách thể hiện tính năng khác nhau nên phương pháp mô tả và kết quả gợi ý cũng khác nhau.

  • Thuật toán gợi ý: là cốt lõi của hệ thống gợi ý. Chất lượng của thuật toán gợi ý xác định trực tiếp chất lượng của hệ thống gợi ý.

Hai nhóm thuật toán chính

Dựa theo loại dữ liệu được áp dụng nhằm đề xuất sản phẩm cho người dùng, RS thường được chia làm ba hướng tiếp cận chính: Lọc dựa trên nội dung (Content-based Filtering), Lọc cộng tác (Collaborative Filtering - CF).

Hệ thống dựa trên nội dung (Content-based Filtering): nhóm thuật toán này gợi ý cho người dùng những sản phẩm tương tự như những sản phẩm mà người dùng đã có phản hồi tích cực. Hệ thống này cần xây dựng đặc trưng cho các sản phẩm sao cho những sản phẩm tương tự nhau có khoảng cách tới nhau nhỏ. Việc này khá tương tự như việc xây dựng các embedding cho các sản phẩm. Việc dự đoán cho mỗi người dùng hoàn toàn chỉ dựa trên lịch sử thông tin của người dùng đó.

Lọc cộng tác (Collaborative Filtering - CF): nhóm thuật toán này không chỉ dựa trên thông tin về sản phẩm tương tự mà còn dựa trên hành vi của những người dùng tương tự. Ví dụ: người dùng A, B, C đều thích các bài hát của Noo Phước Thịnh. Ngoài ra, hệ thống biết rằng B, C cũng thích các bài hát của Bích Phương nhưng chưa có thông tin về việc liệu user A có thích Bích Phương hay không. Dựa trên thông tin của những người dùng tương tự là B và C, hệ thống có thể dự đoán rằng A cũng thích Bích Phương và gợi ý các bài hát của ca sĩ này tới A.

Trên đây là các thuật ngữ cơ bản về hệ thống gợi ý. Ở bài viết tiếp theo chúng ta sẽ đi sâu vào phân tích hai thuật toán chính của hệ thống gợi ý và có một cái nhìn tổng quan về cách xây dựng một hệ thống gợi ý.


Getting Started with Gulp.js