查找特定用户最常用的产品/项目

find most frequently used products / items by a specific user

我正在为企业应用程序开发 Web API。在当前情况下,当任何用户单击任何下拉控件时,都会向服务器发出请求,现在 ADO.Net 代码只是按 字母顺序从适当的 table 中获取列表 并且响应被 return 编辑为 JSON。这非常简单。

现在,我想做的是 return 我的回复中特定用户最常使用的项目。例如,我有一个公司所有项目的下拉菜单。现在,用户 A 主要使用项目 1、项目 2、项目 3,而用户 B 主要使用项目 4、项目 5、项目 6。现在,与其 return 每次都按字母顺序排列常量列表,我想 return 用户 A 的列表,其中项目 1、项目 2、项目 3 应位于顶部,而对于用户 B,项目 4、项目 5、项目 6 应位于顶部。

我搜索了一下,了解到我可以通过机器学习算法来做这类事情。我完全不知道这个域。我发现 AFORGE.NET 和 Accord.NET 作为 .NET 的一些很好的框架,但我仍然不清楚我该怎么做?

请指导我,我该如何实现?

此致

我相信 Saeb 是正确的。您可以修改数据库以在用户和产品之间建立多对多关系。 Users_And_Products table 应该存储已查看的任何项目的计数:

UserID ProductID Count
001    123       1      
001    010       4
002    123       5
002    050       4
002    051       3

如您所见,您不需要存储零次浏览的产品计数,而只需跟踪所有浏览过的产品。然后这就变成了一个简单的 SQL 查询 (where UserID='001' orderby Count desc).