问题标签 [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.
recommendation-engine - 了解皮尔逊相关系数
作为生成Pearson 相关系数的计算的一部分,执行以下计算:
在第二个公式中:p_a,i
是用户 a 会给项目的预测评分i
,n
是被比较的相似用户的数量,并且是用户ru,i
对项目的评分。 i
u
u
如果用户没有评价这个项目,将使用什么值?我在这里误会了什么吗?
php - 如何实施推荐系统?
我有集体智慧书,但我不确定它如何在实际中应用。
假设我有一个带有 mySQL 数据库的 PHP 网站。用户可以在数据库中插入带有标题和内容的文章。为了简单起见,我们只比较标题。
- 如何煮咖啡?
- 关于咖啡的 15 件事。
- 大问题。
- 如何削铅笔?
- 被球击中的家伙
我们打开“如何制作咖啡?” 文章,并且由于与第二和第四个标题的单词相似,它们将显示在相关文章部分。
如何使用 PHP 和 mySQL 来实现它?如果我必须使用 Python 也没关系。提前致谢。
web-services - 从 twitter 获得稳定的消息流
我想尝试制作一个简单的 twitter 客户端,它可以了解我的品味并自动找到朋友和有趣的推文,为我提供相关信息。
开始之前,我需要获得大量随机 Twitter 消息,这样我就可以在它们上测试一些机器学习算法。
我应该为此使用哪些 API 方法?我是否必须定期轮询以获取消息,或者有没有办法让 Twitter 在消息发布时推送消息?
我也有兴趣了解任何类似的项目。
asp.net-mvc - ASP.NET MVC 控件
任何人都可以推荐一个在每一行上都有复选框的组合框/下拉列表控件吗?它还需要支持多选。
谢谢。
artificial-intelligence - 向用户组推荐商品的最有效算法是什么?
使用协同过滤通常适用于给单个用户评分,但是当需要向多人推荐一个或多个项目时(例如:想看电影或想一起选择假期的朋友),这些算法将如何变化?
php - (穷人)产品推荐实施
我正在尝试为在线商店建立一个穷人的推荐系统。我想实现这种亚马逊“购买此商品的客户也购买了”功能,我读了很多关于它的内容。我知道有 Apache Mahout 的东西,但我无法以这种方式调整服务器。然后会有谷歌预测 API,但它要花钱,所以我开始自己试验。
我有一个包含 250.000 多个项目的订单历史记录,我编写了一个嵌套的 MySQL 查询来查找包含当前文章的订单,对其他订单项目进行排名并对表进行排序以进行排名,所以我得到了一组其他人订购的产品以及当前文章。
问题是,查询可能需要 10 秒 - 所以不能直接使用。我想到了一个缓存表,但这个查询在 20 分钟后停止(有 60.000 个产品和 250.000 个订购项目)所以我无法填写该表。
我当前的解决方法如下:推荐 HTML 是通过 AJAX ondocumentready 加载的,因此会加载网站,而推荐会在后台加载。推荐数据被处理一次并存储在文件缓存(PEAR 简单缓存)中,因此下次加载速度更快。因此,如果有人访问该站点并存储一天或一周,则按需生成缓存。
我问自己和你,这是一种可以接受的方法,还是愚蠢和无能?将缓存的数据存储在数据库或文件中会更好(我考虑性能和并行命中)。我的意思是,在最坏的情况下,我最终会得到 60.000 个缓存文件。
我更喜欢一个包含所有数据的预先计算的表,但正如我所说,这需要很长时间,而且我不知道如何优化它。(等 SQL Dude 放假回来^^)
感谢您的任何提示,意见。
顺便提一句。这是查询:
编辑:
我考虑了给定的答案,我认为它们与我最初的想法相似。上面的代码结果如下表:
ParentID 是当前项目,ChildID 是过去与 ParentID 一起订购的项目,Rank 是预计算的孩子订购当前项目的频率的计数。现在,我可以在每个新订单上更新或插入相关项目,并计算排名(如果它已经存在于数据库中)。我唯一担心的是,我最终会坐在一张非常大的桌子上。如果我每周离线一次预先计算,也许这应该不是问题?但随后我必须优化查询,以便每个项目不需要 10 秒。
你怎么看?
php - drupal 模块根据用户行为建议相关内容
类似“阅读这篇文章的用户也阅读了这个:......”
我希望能够根据用户行为建议相关和相关的内容。用户通常都经过身份验证,如果这可能有用的话..
任何脚本、模块、想法?
algorithm - 根据他的推荐向用户推荐链接
我正在构建一个服务,用户可以提交他推荐/喜欢的链接“列表”(文章,网站......等),系统将向他显示他可能喜欢的其他链接列表。
在我的脑海中执行此过程的唯一想法是:
- 用户 A 将提交他的链接列表(例如 10 个链接)
- 系统将查找其他用户(比如用户 B)列表,其中用户 A 和用户 B 链接之间的链接有 80% 相同
- 向用户 A 显示 20% 的新链接(来自用户 B 列表)
您还有其他方法可以做到这一点吗?或者你有没有做同样事情的开源项目?
任何语言都可以,但我更喜欢 Perl、PHP、Java、SQL
java - 有谁知道将根据时间间隔操作数据的库?
有谁知道可以根据时间间隔操作/组织数据的库?
例如:
- 我有一组按日期/时间映射到对象的数据[可以是任何东西,不相关数据的列表、字符串、数字等]
- 我希望 Collection 足够通用,以便它可以处理间隔搜索、组织、合并、交叉点、差异和间隔更改 [即,该集合将重新组织 15 分钟间隔到 1 天间隔]
我正在考虑写其中一个,但我不想重新发明轮子。
另外,最后一个规定是我希望它使用 Java。
例如:
您有以下数据:
- 1/1/11 1:01 - “鲍勃进入房间”
- 1/1/11 12:01 - “杰瑞进入房间”
- 1/1/11 1:31 - “莎莉进入房间”
- 1/1/11 1:51 - “豪尔赫进入房间”
- 1/1/11 2:01 - “呆伯特进入房间”
- 1/2/11 1:01 - “鲍勃进入房间”
- 1/3/11 12:01 - “杰瑞进入房间”
- 1/2/11 1:31 - “莎莉进入房间”
- 1/2/11 1:51 - “豪尔赫进入房间”
此处所述的所有条目 [作为 2 值数据] 将进入集合 [ie]: add(Date, object) 但是在初始化时将设置间隔。[即15分钟]所以如果间隔是15分钟[并查询特定时间。它会产生:
- 1/1/11 12:00-12:15
- “杰瑞进了房间”
- 1/1/11 1:00-1:15
- “鲍勃进入房间”- 1/1/11 1:15-1:30
1/1/11 1:30-1:45
- 1/1/11 1:31 - “莎莉进入房间” ....
如果您尝试查询 1/1/11 12:09,您将获得 1/1/11 12:00-12:15 的结果。是的,我意识到有边缘情况,但这是一个例子。
c# - 模块化编程以适应未来的变化(用于抓取网站的软件)
我用 C# 开发了一个软件,使用 Windows 窗体来抓取选定的网站以获取图像。
我遇到的第一个问题是我监控的网站不断地改变它们的外观和感觉,从而使我的代码需要更新。我已经切换到使用 XPaths 来隔离我要查找的 div,但是 div id 也发生了变化。我曾考虑为软件将通过的每个站点使用带有 div xpath 的文本文件,从而节省了我编辑和重新编译代码的时间。有没有更好的方法来解决这个问题?也许 CodeDom ?
其次,由于每个网站都使用不同的格式和编码,我不得不用 HtmlDocument、HtmlWebResponse、HtmlNodes 等为每个网站重写部分代码,这最终占了我代码的近一半。我无法将它们放在一起,因为有些需要额外的刮擦和分页,有些则不需要。有没有办法简化这个问题?
最后,我将整个代码放在一个包含大约 600 行代码的类文件中。我拥有的唯一方法是后台工作程序、ui 事件处理程序、每个站点的抓取方法以及保存图像的一种方法。将整个代码放在一个类中可以吗?当我使用 Java 编写代码时,我经常使用多个类并将它们称为对象,这有助于更轻松地更改特定部分。我可以用 C# 做同样的事情吗?
有没有更有效的方法来制作软件?我正在考虑为每个站点创建一个类,以便可以直接对相关类进行修改,但这会导致在每个类中重复很多行。还是可以将整个文件放在一个类文件中?
谢谢。
PS:本软件仅供个人使用,但我认为这是一个学习和应用好的编程的好机会。