Recommendation system: Cách giải bài Cold Start trong các hệ thống Recommendation system ?

  1. Trí tuệ nhân tạo

Xin chuyên gia chia sẻ những phương pháp và cả kinh nghiệm giải các bài Cold Start - làm sao để user mới nhận được những recommendation sát nhất và nhanh nhất khi chỉ mới vừa tương tác với hệ thống

Từ khóa: 

trí tuệ nhân tạo

Mỗi hệ thống gợi ý [Recommendation system], có những [thông tin dữ liệu] và [thông tin sẽ gợi ý] có khác nhau, và có cả trọng số cho cái nào quan trọng, cái nào không. Nhưng về tư tưởng cơ bản, mình có 1 vài chia sẻ như sau (Quan điểm cá nhân):


Mục tiêu chung của hệ thống gợi ý: Phải đưa ra gợi ý phù hợp với cả sở thích, mong muốn của người dùng. Để làm sao, xác xuất người dùng bấm vào nội dung gợi ý, sử dụng thời gian để đọc nội dung được gợi ý, càng cao càng tốt. Nội dung gợi ý nhận được Rating cao từ người dùng => Sự hài lòng


Nguyên lý: Phải có thông tin về khách hàng thì mới đi đến đúng với mục tiêu.


Vậy thì cần có dữ liệu, dữ kiện về người dùng. Vậy dữ liệu đó là gì?


Dữ liệu ban đầu về người dùng thường là thông tin đăng ký, sau đó là hành vi sử dụng sơ khai, cuối cùng là thói quen sử dụng về lâu dài, ổn định. Ngoài ra, tính kết nối của người dùng đó với người dùng khác cũng là 1 dữ liệu. Ví dụ, Noron có thể xây dựng Network [ A trả lời hay Like đối B] , ta đã có 1 dữ kiện Đồ thị cho việc Gợi Ý.


Về mặt giải thuật, giải quyết vấn đề Cold Start, mình nghĩ ban đầu dùng [Học Chủ Động]-[Active learning], Một dạng học Bán giám sát [Semi-supervised Learning]. Sau đó kết hợp với [Collaborative Filtering Model] và một vài cái khác (Mình cũng chưa rõ :D) . Ta được một mô hình tổng hợp.



Ở trên, mình đang nói đến vấn đề Làm hài lòng người dùng. Còn dạng đưa ra định hướng [Trend] , để gợi ý cho khách hàng, thì mình nghĩ vấn đề hơi khác 1 chút. Nó chỉ đến khi khách hàng đã sử dụng trong một khoảng thời gian mà ta Coi đó là Ổn định.

Trả lời

Mỗi hệ thống gợi ý [Recommendation system], có những [thông tin dữ liệu] và [thông tin sẽ gợi ý] có khác nhau, và có cả trọng số cho cái nào quan trọng, cái nào không. Nhưng về tư tưởng cơ bản, mình có 1 vài chia sẻ như sau (Quan điểm cá nhân):


Mục tiêu chung của hệ thống gợi ý: Phải đưa ra gợi ý phù hợp với cả sở thích, mong muốn của người dùng. Để làm sao, xác xuất người dùng bấm vào nội dung gợi ý, sử dụng thời gian để đọc nội dung được gợi ý, càng cao càng tốt. Nội dung gợi ý nhận được Rating cao từ người dùng => Sự hài lòng


Nguyên lý: Phải có thông tin về khách hàng thì mới đi đến đúng với mục tiêu.


Vậy thì cần có dữ liệu, dữ kiện về người dùng. Vậy dữ liệu đó là gì?


Dữ liệu ban đầu về người dùng thường là thông tin đăng ký, sau đó là hành vi sử dụng sơ khai, cuối cùng là thói quen sử dụng về lâu dài, ổn định. Ngoài ra, tính kết nối của người dùng đó với người dùng khác cũng là 1 dữ liệu. Ví dụ, Noron có thể xây dựng Network [ A trả lời hay Like đối B] , ta đã có 1 dữ kiện Đồ thị cho việc Gợi Ý.


Về mặt giải thuật, giải quyết vấn đề Cold Start, mình nghĩ ban đầu dùng [Học Chủ Động]-[Active learning], Một dạng học Bán giám sát [Semi-supervised Learning]. Sau đó kết hợp với [Collaborative Filtering Model] và một vài cái khác (Mình cũng chưa rõ :D) . Ta được một mô hình tổng hợp.



Ở trên, mình đang nói đến vấn đề Làm hài lòng người dùng. Còn dạng đưa ra định hướng [Trend] , để gợi ý cho khách hàng, thì mình nghĩ vấn đề hơi khác 1 chút. Nó chỉ đến khi khách hàng đã sử dụng trong một khoảng thời gian mà ta Coi đó là Ổn định.

Làm giống noron, hoặc sử dụng popular items. Sử dụng kỹ thuật học chủ động (active learning) hỏi và gợi ý.

em có cùng câu hỏi ạh :D