问题标签 [recommendation-engine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2085 浏览

ruby-on-rails - Rails 中的协同过滤

我正在寻找在 Rails 甚至可能的示例中进行协作过滤的解决方案。到目前为止,我只发现acts_as_recommendable 看起来很有用,但我注意到它在过去2 年没有任何更新。

有谁知道任何其他解决方案和/或示例?

0 投票
4 回答
1709 浏览

wpf - 关于在不使用 MVVM 或类似工具的情况下开发 WPF 应用程序的建议

我们正在使用WPF/Prism(复合应用程序库)构建下一个版本的内部胖客户端应用程序。由于我们几乎完成了与客户的合作,我们的团队被置于新的管理之下,此后不久:

  1. 然后我们被指示放弃 Prism 框架以保持简单。这包括不使用任何类型的控制反转。

  2. 我们被指示在不使用 MVVM 或类似工具的情况下构建 WPF 应用程序;以及更多类似于传统 WinForm 应用程序的内容。这个想法是,如果开发人员在 Visual Studio 的设计器视图中看到一个控件,那么 (s) 他应该能够单击该控件并确切地看到它在做什么,而无需遍历视图模型(或类似的)。

  3. 我们现在的任务是使用一个主窗口构建 WPF 应用程序,使用框架控件来包含内容,并在框架之外为菜单项使用功能区。我们被提供使用帧控制的原因:

    一种。我们将在 Frame 中显示一个带有Page(不是用户控件)的视图,然后在 Frame 中加载该页面。

    湾。当要在框架中显示新视图时,当前视图(页面)将被关闭/处置,新视图(页面)将在框架中取而代之。

    C。当开发人员在设计视图中查看页面时,(s)他将能够单击任何控件并准确查看正在执行的操作。

鉴于上述 1 和 2 的限制,我们想介绍另一种构建应用程序的方法:

  1. 可以作为使用“框架方法”(以上第 3 项)的替代方案,但仍提供相同类型的功能。

  2. 不使用 MVVM(参见上面的 #1 和 #2)。

如果我们得到了指导,关于我们可以提出的替代方案有什么建议吗?我要求将回复保持在专业水平,并提前感谢您。

0 投票
2 回答
1439 浏览

social-networking - 亚马逊喜欢电子商务网站和推荐系统

我计划实施一个基本的推荐系统,它使用 Facebook Connect 或类似的社交网站 API 来连接用户的个人资料,基于标签进行分析并使用结果在我的电子商务网站上生成项目推荐(类似于亚马逊)。

我确实相信我需要将部分划分为:

  1. 通过 API 获取社交网络数据。(实际上用户允许这样做)

  2. 分析这些数据并生成令牌。

  3. 通过使用信息令牌,在我的电子商务网站上进行商品推荐。

EG:我在我的 Facebook 帐户上是“The Strokes”乐队的粉丝,系统对此进行了分析并推荐给我“The Strokes Live”CD。

对于任何部分(获取数据,基于标签进行推荐......),您会推荐/使用什么算法和方法?

0 投票
1 回答
2834 浏览

python - Python推荐引擎

是否有类似于Java Taste的 Python 推荐引擎?

0 投票
2 回答
621 浏览

email - 寻找带有数据库后端的电子邮件/报告模板引擎 - 面向最终用户

我们有许多客户,我们也必须每月发送发票。现在,我正在管理一个代码库,该代码库对我们的客户数据库和计费数据库进行 SQL 查询,并将这些数据放入电子邮件中并发送出去。

每次我们想要包含新的促销活动或更改我们的客户服务电话号码时,我都会厌倦维护它。所以,我正在寻找一个替代品,以便将更多内容交给那些要求更改的人。

在我的理想世界中,我需要:

  • 一个所见即所得(伙计,现在还有人这么说吗?)电子邮件编辑器,它根据数据库查询的输出生成模板。
  • 能够将各种字段从数据库查询拖放到电子邮件模板中。
  • 使用数据库查询显示示例电子邮件结果。
  • Web 应用程序,最好不需要 IIS。
  • 为最终用户涉及尽可能少的代码,但允许基本功能(即数组/for循环)
  • 要么带有它自己的电子邮件传递引擎,要么以我可以轻松编写 Python 脚本来传递电子邮件的方式编写输出。
  • 支持通用数据库连接器。(我需要 MSSQL 和 MySQL)
  • F/OSS

所以......任何人都可以建议这样的项目,或者一些对我自己有用的工具吗?

(我目前的替代想法是使用 ERB 或Tenjin之类的东西,让他们编写代码,但没有编辑器的实时预览会很糟糕......)

0 投票
1 回答
1128 浏览

algorithm - 用于在 Google 新闻中生成推荐的算法?

我正在研究推荐引擎,我阅读了这篇论文,该论文定义了 Google 新闻如何基于协同过滤为用户生成他们可能感兴趣的新闻项目的推荐。

他们提到的一种有趣的技术是 Minhashing。我经历了它的作用,但我很确定我的想法很模糊,而且很有可能我错了。以下是我可以从中得出的结论:-

  1. 收集一组所有新闻项目。
  2. 为用户定义哈希函数。此哈希函数返回该用户查看的新闻条目中第一个条目在所有新闻条目列表中的索引。
  3. 收集,说“n”个这样的值,并用这个值列表代表一个用户。
  4. 根据这些列表之间的相似度计数,我们可以将用户之间的相似度计算为共同项目的数量。这大大减少了比较的次数。
  5. 基于这些相似性度量,将用户分组到不同的集群中。

这正是我认为的可能。在第 2 步中,我们可能没有定义一个常量散列函数,而是改变散列函数,使其返回不同元素的索引。所以一个哈希函数可以返回用户列表中第一个元素的索引,另一个哈希函数可以返回用户列表中第二个元素的索引,依此类推。因此,满足minwise 独立排列条件的散列函数的性质,这听起来确实是一种可能的方法。

谁能确认我的想法是否正确?还是 Google 新闻推荐的 minhashing 部分以其他方式发挥作用?我对建议的内部实施不熟悉。非常感谢任何帮助。

谢谢!

0 投票
5 回答
5494 浏览

algorithm - 基于标签/关键字的推荐

我想知道在标签驱动的电子商务环境中使用什么算法会很聪明:

  • 每个项目都有几个标签。IE:

    产品名称:《Metallica - Black Album CD》,标签:《metallica》、《black-album》、《摇滚》、《音乐》

  • 每个用户都有几个绑定到他们的标签和朋友(其他用户)。IE:

    用户名: “testguy”,兴趣: “python”、“rock”、“metal”、“computer-science” 朋友: “testguy2”、“testguy3”

我需要通过检查他们的兴趣标签并以复杂的方式生成推荐来向这些用户生成推荐。

想法:

  • 当每个用户都有朋友时,可以使用混合推荐算法。(协作+基于上下文的推荐的混合)。
  • 也许使用用户标签,可以找到相似的用户(同行)来生成推荐。

  • 也许通过标签直接匹配用户和项目之间的标签。

欢迎任何建议。也欢迎任何基于 python 的库,因为我将在 python 语言上做这个实验引擎。

0 投票
2 回答
530 浏览

python - Google App Engine 数据库索引

我需要在 Google App Engine 数据库中存储一个无向图。出于优化目的,我正在考虑使用数据库索引。使用 Google App Engine,有没有办法定义数据库表的列来创建索引?

我需要一些优化,因为我的应用程序在基于内容的过滤上使用这个存储的无向图来进行项目推荐。此外,推荐算法会更新一些图边的权重。

如果无法使用数据库索引,请建议另一种方法来减少图形表的查询时间。我相信我的算法从图表中进行的数据检索操作比写入操作更多。

PS:我正在使用Python。

0 投票
9 回答
775 浏览

automation - 基于收听习惯的自动音乐评级

我在 Delphi 中创建了一个类似 Winamp 的音乐播放器。当然,没那么复杂。只是一个简单的。

但现在我想添加一个更复杂的功能:库中的歌曲应该根据用户的收听习惯自动评分。

这意味着:应用程序应该“理解”用户是否喜欢一首歌。不仅是他/她是否喜欢,还有多少。

到目前为止我的方法(可以使用的数据):

  • 只需测量每次播放歌曲的频率。开始计算歌曲添加到库中的时间,以便最近的歌曲没有任何劣势。
  • 衡量一首歌曲的平均播放时长(分钟)。
  • 开始一首歌曲但直接更换另一首歌曲应该会对排名产生不良影响,因为用户似乎不喜欢这首歌。
  • ...

你能帮我解决这个问题吗?我只是想有一些想法。我不需要在 Delphi 中实现。

0 投票
6 回答
2996 浏览

c++ - 使用独立的 C++ 应用程序存储数据

我使用 Apache、PHP 和 MySQL 进行 Web 开发和本地应用程序。在过去的几年里,我一直在慢慢学习 C++,并想在今年夏天构建一个应用程序。具体来说,我想制作一个“图书馆”应用程序,我可以在其中存储有关我拥有的书籍、CD 和记录的信息。我知道存在这种类型的应用程序,但我想学习 C++,这似乎是一个很好的方法。

这里有几个问题:

  1. 是否可以创建一个不需要数据库来存储数据的独立应用程序?

  2. 如果上面#1 的答案是“是”,那么对于可能需要管理大量数据的应用程序执行此操作是否是个好主意?

  3. 您会推荐哪些数据存储选项用于 C++ 应用程序?

谢谢!

更新 好吧,对此有很多很好的答案。这是一个很棒的网站,有很多贡献者。事实证明,我现在可能真的不需要走 C++ 路线。我现在意识到我最感兴趣的是编写一个可以用作“库”组织系统的应用程序,而不是我想要追求 C++。感谢大家的回答!