Collaborative Filtering (CF) has become the standard approach to solve recommendation systems (RS) problems. Collaborative Filtering algorithms try to make predictions about interests of a user by collecting the personal interests from multiple users. There are multiple CF algorithms, each one of them with its own biases. It is the Machine Learning practitioner that has to choose the best algorithm for each task beforehand. In Recommender Systems, different algorithms have different performance for different users within the same dataset. Meta Learning (MtL) has been used to choose the best algorithm for a given problem. Meta Learning is usually applied to select algorithms for a whole dataset. Adapting it to select the to the algorithm for a single user in a RS involves several challenges. The most important is the design of the metafeatures which, in typical meta learning, characterize datasets while here, they must characterize a single user. This work presents a new meta-learning based framework named $\mu$-cf2vec to select the best algorithm for each user. We propose using Representation Learning techniques to extract the metafeatures. Representation Learning tries to extract representations that can be reused in other learning tasks. In this work we also implement the framework using different RL techniques to evaluate which one can be more useful to solve this task. In the meta level, the meta learning model will use the metafeatures to extract knowledge that will be used to predict the best algorithm for each user. We evaluated an implementation of this framework using MovieLens 20M dataset. Our implementation achieved consistent gains in the meta level, however, in the base level we only achieved marginal gains.
翻译:合作过滤(CF) 已成为解决建议系统问题的标准方法。 合作过滤算法试图通过从多个用户收集个人利益来预测用户的利益。 有多种CF运算法, 每个都有自己的偏差。 机器学习者必须事先为每项任务选择最佳算法。 在建议系统中, 不同的算法在同一数据集中为不同用户提供不同的性能。 Meta Learning (MtL) 已被用于为给定问题选择最佳算法。 通常将Meta Learning (MtL) 用于选择整个数据集的算法。 将它调整为单一用户的算法, 涉及若干挑战。 最重要的是设计元变法, 在典型的元化学习中, 将数据集定性为单一用户。 这项工作提出了一个新的基于元学习的框架, 名为 $\mu$- cfec2vec, 用于为每个用户选择最佳算法。 我们建议使用“ Explain Learlear” 技术来提取元算法。 演示试图将缩图转换为每个用户的表达方式, 但是, 将用一个边值框架来再利用一个元算法, 学习一个算法, 将用来学习一个不同的算法, 将用来完成一个层次。