网页推荐系统

2024-02-25

我正在尝试构建一个推荐系统,该系统会根据用户的操作(谷歌搜索、点击,他还可以明确地对网页进行评分)向用户推荐网页。为了了解谷歌新闻的做法,它会显示来自网络的有关特定主题的新闻文章。用技术术语来说就是集群,但我的目标是相似的。它将是基于用户操作的基于内容的推荐。

所以我的问题是:

  1. 我怎样才能在互联网上搜寻相关网页?
  2. 我应该使用什么算法从网页中提取数据?文本分析和词频是唯一的方法吗?
  3. 最后,什么平台最适合解决这个问题。我听说过 Apache mahout,它附带了一些可重用的算法,听起来很合适吗?

正如 Thomas Jungblut 所说,一个人可以就你的问题写出几本书;-) 我将尝试为您提供一系列简短的指示 - 但请注意,不会有现成的解决方案......

  1. 抓取互联网:有很多工具包可以完成此任务,例如用于 Python 的 Scrapy、用于 Java 的crawler4j 和 Heritrix,或用于 Perl 的 WWW::Robot。要从网页中提取实际内容,请查看boilerpipe。

    http://scrapy.org/ http://scrapy.org/

    http://crawler.archive.org/ http://crawler.archive.org/

    http://code.google.com/p/crawler4j/ http://code.google.com/p/crawler4j/

    https://metacpan.org/module/WWW::Robot https://metacpan.org/module/WWW::Robot

    http://code.google.com/p/boilerpipe/ http://code.google.com/p/boilerpipe/

  2. 首先,通常您可以使用协作过滤而不是基于内容的方法。但如果你想获得良好的覆盖率,尤其是长尾的覆盖率,就没有办法绕过分析文本。需要注意的一件事是主题建模,例如LDA。 Mallet、Apache Mahout 和 Vowpal Wabbit 中实现了多种 LDA 方法。 对于索引、搜索和文本处理,请查看 Lucene。这是一个很棒的、成熟的软件。

    http://mallet.cs.umass.edu/ http://mallet.cs.umass.edu/

    http://mahout.apache.org/ http://mahout.apache.org/

    http://hunch.net/~vw/ http://hunch.net/~vw/

    http://lucene.apache.org/ http://lucene.apache.org/

  3. 除了还包含 LDA(见上文)、集群和文本处理等内容的 Apache Mahout 之外,如果您想专注于协作过滤,还可以使用其他工具包:LensKit(也是用 Java 实现)和 MyMediaLite(免责声明:我我是主要作者),它是用 C# 实现的,但也有一个 Java 端口。

    http://lenskit.grouplens.org/ http://lenskit.grouplens.org/

    http://ismll.de/mymedialite http://ismll.de/mymedialite

    https://github.com/jcnewell/MyMediaLiteJava https://github.com/jcnewell/MyMediaLiteJava

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

网页推荐系统 的相关文章

随机推荐

  • 未知的指令类型“toctree”。 Pycharm 出错,但 index.html 有效

    在 PyCharm 中工作时 我在 Sphinx 中创建的文档的预览模式显示 System Message ERROR 3
  • “Where like”子句使用 2 列的串联值与雄辩

    我有一个查询 在多个列中搜索一个术语 其中之一必须是全名 我已将姓名和姓氏分开 因此在搜索时必须连接这两个值 我现在只有搜索名字 我如何将连接添加到姓氏 我正在调查突变体 但我不知道这是否是正确的方法 public function sea
  • 初学者的 C 套接字编程

    我刚刚开始学习套接字编程 发现它非常有趣 目前我正在制作服务器和客户端在同一台计算机上因此我可以拥有IP地址作为环回地址 127 0 0 1一切似乎都运行良好 但现在我正在考虑拥有两台计算机并做这件事 我有以下问题 假设一台计算机是服务器
  • Android SQLiteConstraintException:错误代码19:约束失败

    我已经看到了有关此异常的其他问题 但所有这些问题似乎都通过解决方案解决了 即已存在指定主键的行 对我来说似乎并非如此 我尝试用双引号替换字符串中的所有单引号 但出现了同样的问题 我正在尝试通过执行以下操作将一行插入到我创建的 SQLite
  • 使用 T & F 代替 TRUE & FALSE 有什么问题吗?

    我注意到使用T and F代替TRUE and FALSER 中的函数给了我相同的结果 当然 T and F更简洁 但是 我明白了TRUE and FALSE被更频繁地使用 我想知道两者之间有什么区别吗 使用有什么问题吗T and F T
  • oracle sqlplus中获取sql脚本的执行时间

    我有一个脚本 用于将数据加载到 Oracle 中的表中 通过插入语句列表 如何获取整个加载过程的执行时间 我尝试过set timing on 但这给了我每个插入语句的持续时间 而不是整个过程的持续时间 脚本如下所示 spo load log
  • 是否可以将 supertest 与 hapi 一起使用?

    我用的是hapi 不是express 超级测试还应该有效吗 如果是这样 有没有一种快速方法可以更改我的代码以使其运行 我的测试看起来像这样 基于文档 https github com visionmedia supertest import
  • 如何在 Mockito 中模拟 CompletableFuture 的完成

    我想模拟当某个代码被调用时CompletableFuture已成功完成 我有这门课 public class MyClassImplementRunner implements Runnable private final String p
  • 通过参数对函数调用进行反跳

    David Walsh 拥有出色的去抖动实现here https davidwalsh name javascript debounce function Returns a function that as long as it cont
  • Firebase:观察 childAdded 返回现有/旧记录?

    我有一个查询 用 swift 编写 FIRDatabase database reference withPath ORDERS PATH lId child orders observe childAdded with firebaseS
  • Bash sqlite3 行 |如何转换为JSON格式

    我想将数据库中的 sqlite 数据转换为 JSON 格式 我想使用这个语法 sqlite3 linemembers db 从成员LIMIT 3中选择 gt members txt OUTPUT id 1 fname Leif gname
  • TensorFlow 图像分类

    我对 TensorFlow 很陌生 我正在做图像分类使用我自己的训练数据库 然而 在我训练了自己的数据集之后 我不知道如何对输入图像进行分类 这是我的代码准备我自己的数据集 filenames 01 jpg 02 jpg 03 jpg 04
  • 下载极大文件时连接关闭

    我们有一个提供文件的网络服务 最近 我们遇到一个非常大的文件 超过 2 GB 无法复制到缓冲区中 我修改了代码以使用HttpCompletionOptions ResponseHeadersRead不使用缓冲区并直接复制到流 然而 大多数时
  • 如何防止部分视图中的脚本多次加载并在同一页面中多次使用部分时导致错误

    在 ASP NET MVC 中 我创建了一个局部视图 该视图在同一页面上呈现两次 我的问题是JavaScript 被包含的次数与分部视图的次数一样多JavaScript 不喜欢重新定义类 我的问题是 如何将 JavaScript 包含在部分
  • Page_ClientValidate() 问题

    function Subscribe if typeof Page ClientValidate function Page ClientValidate if Page IsValid do something CheckUser 该脚本
  • django 管理操作而不选择对象

    是否可以为 django 管理员创建一个自定义管理操作 而不需要选择某些对象来运行它 如果您尝试在不选择对象的情况下运行操作 您会收到以下消息 Items must be selected in order to perform actio
  • tsc 未被识别为内部或外部命令

    我从 VSCode 0 10 6 更新到 0 10 8 并第一次尝试使用 Typescript 不幸的是 当我告诉 VSCode 构建时 我收到错误 tsc 不被识别为内部或外部命令 以下是相关详情 I created a fresh He
  • 如何采用按单独列排序的 DISTINCT ON 子查询并使其快速?

    又名 查询和数据与问题非常相似 选择按某列排序且在另一列上不同的行 https stackoverflow com questions 9796078 selecting rows ordered by some column and di
  • 如何在 Angular 8 或 9 中发出同步 HTTP 请求(发出请求并等待)

    有三个按钮 单击第一个Request HTTP Data As Promise按钮获取其 HTTP 响应作为Promise 第二Request HTTP Data As Observable按钮的响应为Observable 这两个按钮都使用
  • 网页推荐系统

    我正在尝试构建一个推荐系统 该系统会根据用户的操作 谷歌搜索 点击 他还可以明确地对网页进行评分 向用户推荐网页 为了了解谷歌新闻的做法 它会显示来自网络的有关特定主题的新闻文章 用技术术语来说就是集群 但我的目标是相似的 它将是基于用户操