Mô hình hệ số ma trận cho các hệ thống đề xuất làm thế nào để xác định số lượng các tính năng tiềm ẩn?


8

Tôi đang cố gắng thiết kế một kỹ thuật nhân tố ma trận cho một mục người dùng đơn giản, hệ thống đề xuất xếp hạng. Tôi có 2 câu hỏi về điều này.

Trước tiên, trong một triển khai đơn giản mà tôi thấy về kỹ thuật nhân tố ma trận cho đề xuất phim, tác giả chỉ khởi tạo các kích thước của các tính năng tiềm ẩn, hãy gọi nó là K của hai ma trận người dùng và vật phẩm tiềm ẩn, với một số hằng số K hãy nói 2 và do đó mỗi các ma trận tính năng tiềm ẩn của anh ta P và Q là NXK và MXK trong đó R là ma trận xếp hạng mục người dùng ban đầu mà chúng tôi đang cố gắng xấp xỉ với các kích thước NXM (N người dùng và các mục M). Vì vậy, câu hỏi của tôi là làm cách nào để xác định 'K' (số tính năng tiềm ẩn) tối ưu trong trường hợp này thay vì chỉ đặt nó ở một số hằng số?

Ngoài ra, có bất kỳ cách nào để kết hợp thông tin người dùng hoặc mục mà tôi đã có trong tập dữ liệu của mình, chẳng hạn như xếp hạng trung bình của một người dùng cụ thể, giới tính của người dùng, user_location, v.v. vào kết quả của yếu tố ma trận trong khi đưa ra khuyến nghị cuối cùng của tôi (tôi đoán có thể một mô hình pha trộn với thông tin người dùng và thông tin vật phẩm được trình bày trong một số mô hình lọc dựa trên nội dung khác cùng với mô hình nhân tố ma trận của tôi sẽ hoạt động?).

1> Câu hỏi đầu tiên của tôi là làm thế nào để xác định số lượng tính năng tiềm ẩn tối ưu K 2> có ai biết về tài liệu gần đây thực hiện mô hình pha trộn giữa yếu tố ma trận và lọc dựa trên nội dung (vì tôi đoán đó là cách duy nhất để thể hiện thông tin nhân khẩu học của người dùng và vật phẩm trong một không gian tính năng chung.)

Câu trả lời:


3

Để trả lời câu hỏi đầu tiên của bạn, xác nhận chéo là một cách tiếp cận được sử dụng rộng rãi. Một kế hoạch có thể là như sau.

Đối với mỗi giá trị K trong phạm vi được chọn trước, hãy sử dụng xác thực chéo để ước tính hiệu suất mô hình (ví dụ: độ chính xác dự đoán). Điều này sẽ cung cấp một số liệu hiệu suất mô hình ước tính trên mỗi giá trị k. Sau đó, chọn k tương ứng với hiệu suất cao nhất.

Để trả lời câu hỏi thứ hai của bạn, tôi sẽ xem xét các ví dụ về 'cách tiếp cận hỗn hợp', ví dụ như trong http://www.stanford.edu/~abhijeet/ con / cs345areport.pdf


0

Để trả lời câu hỏi đầu tiên của bạn, tôi sẽ thực hiện xác nhận chéo và đối với câu hỏi thứ hai, tôi sẽ nói bạn nên xem xét đến yếu tố tenor. Nếu bạn có biểu diễn dữ liệu đa chiều, bạn chắc chắn có thể xem xét hệ số căng cho phép bạn chơi với một số dữ liệu bổ sung dưới dạng các kích thước khác.

Bạn có thể kiểm tra các liên kết sau cho nó.

https://github.com/kuleshov/tensor-factorization
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.