6

我正在寻找在 Objective-C 中编写一个基本的推荐系统,并且我正在为这项工作寻找一个基本的算法。不幸的是,现成的系统不在讨论范围内,因为似乎没有一个适用于 Objective-C。

我将有一个项目数据库,每个项目都有标签(想想带有“恐怖”、“动作”等标签的电影)。每个项目将有大约 5 个这些标签。当用户第一次使用该应用程序时,他们的个人资料将根据他们对一系列问题的输入进行准备,将一些标签与他们的个人资料相关联。

随着用户继续使用系统并对各种项目进行评分(基于讨厌/喜欢/喜欢),我想根据该反馈调整推荐标签的权重。随着他们的个人资料的增长,我还想考虑他们评级的其他一些属性,例如,如果涉及电影,则为“80 年代”。或者可能是导演,坚持电影主题。

我选择避免使用普通(或至少流行的)推荐系统,它会寻找相似的用户来生成推荐。这将有一个大型项目数据库和最少的用户来启动。

任何人都可以为这样的算法推荐一个好的起点,我不想重新发明轮子,而且还有很多吗?

4

2 回答 2

1

能否请您参考python-recsys:https ://github.com/ocelma/python-recsys ,该软件使用SVD算法,我认为它是一个基本算法但足够有效。所需的库是 numpy 和 scipy,它们是用 C 编写的,并由 Python 包装。我认为编译和移植到objective-c很容易

于 2013-06-03T07:54:01.540 回答
0

您可以使用听起来非常适合您需求的基于项目的推荐。您可以稍后开始将标签合并到权重中,但现在我建议只考虑项目。

您可以在http://www.cs.carleton.edu/cs_comps/0607/recommend/recommender/itembased.html了解更多信息。网上有一些很好的实现。

您在帖子中提到的将称为基于用户的协同过滤。

于 2012-05-14T22:13:54.127 回答