如何构建知识图谱?

2024-01-10

我用 PageRank 制作了一个可以在我的计算机上运行的小型搜索引擎的原型。我有兴趣在其之上构建一个知识图,它应该只返回在正确上下文中的查询网页,类似于谷歌如何找到搜索问题的相关答案。我看到了很多关于知识图的宣传,但没有很多文献,而且几乎没有像构建知识图的指南这样的伪代码。有谁知道有关此类知识图在内部如何工作的良好参考资料,这样就无需创建有关知识图谱的模型?


知识图谱是一个流行词。它是为实现结果而组合的模型和技术的总和。 您旅程的第一站始于自然语言处理 http://en.wikipedia.org/wiki/Natural_language_processing, 本体论 http://en.wikipedia.org/wiki/Ontology_learning and 文本挖掘 http://en.wikipedia.org/wiki/Text_mining。人工智能是一个广阔的领域,去here http://soda.swedish-ict.se/3600/1/SICS-T--2009-06--SE.pdf进行该领域的研究调查。

在构建自己的模型之前,我建议您使用专用工具箱尝试不同的标准算法,例如gensim https://radimrehurek.com/gensim/。您将了解 tf-idf、LDA、文档特征向量等。

我假设您想使用文本数据,如果您想使用其他图像进行图像搜索,那就不同了。音频部分也一样。

构建模型只是第一步,谷歌知识图最困难的部分是实际上每天扩展到数十亿个请求......

一个好的处理管道可以“轻松地”构建在阿帕奇火花 https://spark.apache.org/、“当前一代 Hadoop”。它提供了一个有弹性的分布式数据存储,如果您想扩展,这是必需的。

如果您想将数据保留为图表,就像图论(如 pagerank)中那样,用于实时查询,我建议您使用Bulbs http://bulbflow.com/overview/这是一个“类似于图形的 ORM,但不是 SQL,而是使用图形遍历语言 Gremlin 来查询数据库”的框架。例如,您可以将后端从 Neo4j 切换到 OpenRDF(如果您做本体论,则很有用)。

对于图形分析,您可以使用 Spark,GraphX https://spark.apache.org/graphx/模块或GraphLab https://dato.com/products/create/.

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

如何构建知识图谱? 的相关文章

  • 如何仅使用单个数组在 JavaScript 中模拟调用堆栈

    我正在看维基百科页面 https en wikipedia org wiki Call stack在调用堆栈上 并尝试理解这个图像 据我所知 哈哈 const memory memory 0 3 top of stack pointer m
  • 代表 Git 存储库的数学结构是什么

    我正在学习 Git 如果我能描述一下代表 Git 存储库的数学结构 那就太好了 例如 它是一个有向无环图 它的节点代表提交 它的节点有代表分支等的标签 每个节点最多一个标签 没有标签使用两次 我知道这个描述不正确 我只是想解释我正在寻找的内
  • shell脚本中关联数组的时间复杂度

    我想知道在 shell 脚本中使用关联数组时如何构造 实现 另外 我想知道基于 shell 脚本的关联数组的时间复杂度是否是最佳的 因为我们可以使用字母和数字作为它们各自的键 编辑 他们使用什么哈希函数 如果您使用关联数组 则不能通过 使用
  • 迭代任意大小的子集

    我可以迭代大小为 1 的子集 for int a 0 a lt size a 或大小为 2 的子集 for int a1 0 a1 lt size a1 for int a2 a1 1 a2 lt size a2 or 3 for int
  • 如何计算 Postgres 上图表中所有连接的节点(行)?

    我的桌子有account id and device id One account id可以有多个device ids 反之亦然 我正在尝试计算每个连接的多对多关系的深度 Ex account id device id 1 10 1 11
  • 归并排序中递归树的高度log(n)+1是怎么来的

    我按照 stackoveflow 的建议阅读了一些问题和答案 我正在遵循 cormen 的 算法简介 一书进行自学 那本书里已经解释得很清楚了 但唯一没有解释的是如何在合并排序分析中计算树的高度 如果在后面的章节中对此进行解释的话 我仍然在
  • 在鼠标光标位置添加 cytoscape 节点

    我想在画布上的单击事件上的鼠标箭头位置添加一个 cytoscape 节点 我怎样才能做到这一点 我的方法 效果不太好 我可以通过单击创建一个节点 但无法确保创建的节点的位置位于我单击的位置 使用这样的东西 cy click function
  • 以编程方式在 App Store 上运行搜索?

    是否可以从我的应用程序中打开 App Store 应用程序并运行搜索 我想看看是否有一个 appstore 类型的 URL 可以使用 就像 mailto 和 sms 分别打开邮件和短信一样 有谁知道这是否可能 编辑 更多信息 我一直在尝试使
  • 两组点之间的最佳匹配

    I ve got two lists of points let s call them L1 P1 x1 y1 Pn xn yn and L2 P 1 x 1 y 1 P n x n y n 我的任务是找到它们点之间的最佳匹配 以最小化它
  • 实施二分查找有哪些陷阱? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 二分查找比看起来更难实现 虽然二分搜索的基本思想相对简单 但细节可能出人意料地棘手 Donald Knuth 新的二分搜索实现中最有可
  • 在java中使用BUBBLE SORT对二维字符串数组进行排序

    类似的问题已经被问过 但从来没有关于二维字符串数组 因此在尝试了很长时间之后我找不到我想要的 我正在尝试使用 BubbleSort 对 java 中的 2D 字符串数组进行排序 作为输入 我收到一个二维字符串数组 一个表 以及您应该排序的
  • 解开 Knuth 的结:如何重构意大利面条式代码?

    这个问题的灵感来自如何将流程图转化为实施 https stackoverflow com questions 36647765它询问如何通过算法消除goto代码中的语句 这answer https stackoverflow com a 3
  • n 或 nlog(n) 比常数时间或对数时间更好吗?

    在 Coursera 上的普林斯顿教程中 讲师解释了遇到的常见增长顺序函数 他说 线性和线性算术运行时间是 我们努力的目标 他的推理是 随着输入大小的增加 运行时间也会增加 我认为这是他犯了错误的地方 因为我之前听过他提到线性增长顺序对于高
  • 每个术语出现的次数

    我得到了一个数组a n 2 where n can be 10 5最大时有n个科目和n个学生 全部编号为 1 2 n a i 0 and a i 1 1 lt i lt n 表示在第 i 个科目中 所有来自a i 0 to a i 1 通过
  • 如何使用 pybrain 黑盒优化训练神经网络来处理监督数据集?

    我玩了一下 pybrain 了解如何生成具有自定义架构的神经网络 并使用反向传播算法将它们训练为监督数据集 然而 我对优化算法以及任务 学习代理和环境的概念感到困惑 例如 我将如何实现一个神经网络 例如 1 以使用 pybrain 遗传算法
  • 在数据库中搜索时忽略空文本框

    此代码能够搜索数据并将其加载到DataGridView基于搜索表单文本框中提供的值 如果我将任何文本框留空 则不会有搜索结果 因为 SQL 查询是用 AND 组合的 如何在搜索 从 SQL 查询或 C 代码 时忽略空文本框 private
  • 如何对对象进行排序? (画家算法)

    所以我有 4 个矩形形状 我正在尝试应用排序算法 画家算法 https en wikipedia org wiki Painter 27s algorithm 来知道我需要先绘制哪些形状 在 3d 中 然后绘制哪个形状 Note 相机位于右
  • 使用 Java 进行树可视化 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个库来生成图形或树 例如组织图表 该库应该能够从该图中生成纯图像 有谁知道一个好的 希望开源
  • C# 存档中的文件列表

    我正在创建一个 FileFinder 类 您可以在其中进行如下搜索 var fileFinder new FileFinder new string C MyFolder1 C MyFolder2 new string
  • 如何计算排列? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个关于 Java 排列的问题 Suppose I have five different elements in an arra

随机推荐

  • SSL 安全 SaaS 应用程序的 URL 设计

    我正在使用 ASP NET MVC 平台开发一个应用程序 它将作为一项服务通过网络公开 SaaS http en wikipedia org wiki Software as a Service模型 我正在尝试确定为每个用户帐户划分 URL
  • 将静态库添加到同一解决方案中的项目 (Visual Studio 2012)

    我正在尝试创建一个将在项目中使用的静态库 该库编译良好并为其创建 lib 文件 为了测试我的代码 我向同一解决方案添加了另一个项目 当我尝试构建测试项目时 出现以下错误 错误 LNK1120 4 个未解析的外部 错误 LNK2019 函数
  • Mysql 慢查询日志正在记录更快的查询

    我在数据库服务器上设置了mysql慢查询日志 并将长查询时间设置为5 刚刚检查了日志及其日志查询 只需几毫秒 有人知道为什么会这样吗 这是一些日志 最后一个查询并不是最优化的 它说它检查了 450000 行 所以我在日志中看到它不会感到惊讶
  • 为 Jboss 启用 gzip 压缩

    Jboss 5 1 0 的 gzip 压缩是如何启用的 在 tomcat http 连接器内对吗 我不记得这个文件存储在哪里 server xml 编辑 jboss server default deploy jbossweb sar se
  • Go Flush() 不起作用

    请检查一下这个要点并告诉我 出了什么问题 为什么我看不到我的消息 要旨 https gist github com cnaize 895f61b762a9f5ee074c https gist github com cnaize 895f6
  • 如何在 Android 中使用 Intent 拨打电话?

    我正在使用以下代码在 Android 中拨打电话 但它给了我安全异常 请帮助 posted by 111 333 222 4 String uri tel posted by trim Intent intent new Intent In
  • 如何在 SQL 中找到连续的活跃周?

    我想做的是找到某人在周日活跃的连续周数并为其分配一个值 他们每天必须参加至少 2 场比赛才能算作本周的活跃比赛 如果它们连续 2 周活跃 我想指定值为 100 连续 3 周指定为 200 连续 4 周指定为 300 并持续最多连续 9 周
  • JUunit 测试用例中内部图形尚未初始化

    我正在使用 JavaFx 制作一个轻量级绘画应用程序 我的一些问题LayerController类及其方法addLayer所以我认为编写一些 JUnit 测试用例来检查我的方法的正确性是一个好主意 简而言之 我正在画一个Canvas使用它的
  • 如何创建具有格式的字符串?

    我需要创建一个String具有可以转换的格式Int Int64 Double等输入String 使用 Objective C 我可以通过以下方式做到这一点 NSString str NSString stringWithFormat d f
  • MySQL 类似断言的约束

    我是MySQL新手 我刚刚发现它不支持断言 我得到了这张表 CREATE TABLE guest ssn varchar 16 NOT NULL name varchar 200 NOT NULL surname varchar 200 N
  • UIImage 上的圆角

    我正在尝试使用圆角在 iPhone 上绘制图像 就像联系人应用程序中的联系人图像一样 我的代码通常可以工作 但它偶尔会在 UIImage 绘图例程中崩溃EXEC BAD ACCESS KERN INVALID ADDRESS 我认为这可能与
  • 为什么新的 AKSequencer 不发出任何声音?

    我有一个相当复杂的应用程序 到目前为止一直在使用 AKAppleSequencer 但由于该定序器时不时出现一些奇怪的行为和错误 我一直希望迁移到较新的 AKSequencer 不幸的是 新的音序器似乎没有在 Playgrounds 或太多
  • On Key Down 限制用户输入一些特殊字符

    我想限制用户在工具栏搜索中不允许他 她使用一些特殊字符 例如 gt tblFundComp bind keydown function e if e keyCode gt 48 e keyCode lt 57 return false el
  • Spring Security 配置 anyRequest().authenticated() 未按预期工作

    我对spring security配置的理解http anyRequest authenticated 是任何请求都必须经过身份验证 否则我的 Spring 应用程序将返回 401 响应 不幸的是 我的 spring 应用程序不会以这种方式
  • 如何解析命令行参数?

    我想解析 perl 脚本中的参数列表 例如我有这种情况 script pl h 127 0 0 1 u user p pass arg1 arg2 arg3 我该如何解析数组中不是选项的参数列表以及标量值中的选项参数 Thanks 好吧 如
  • 升级 3.0.3 -> 3.2.2 后,NServiceBus 端点寻找 RavenDB 超时

    使用 NuGet 我将项目中的所有 NServiceBus 引用从 3 0 3 升级到 3 2 2 对于此解决方案中的 4 个服务 我还为它们提供了对 NuGet 中的 NServiceBus Host 的引用 我将二进制文件部署到测试环境
  • formik中的submit Form、handleSubmit、onSubmit有什么区别?

    福米克医生说 https jaredpalmer com formik docs guides form submission https jaredpalmer com formik docs guides form submission
  • 从 Roslyn 方法调用中的相应参数获取方法参数的名称

    我想知道是否有一些现有的逻辑可以通过查看该特定方法 构造函数的调用来获取有关其包含的方法 构造函数签名中的参数定义的名称 或任何其他相关信息 基本上 我只是希望能够获得一个变量的默认名称 该名称将作为参数传递给调用 因此 如果一个方法定义如
  • Flexbox 使用align-items: flex-start 和align-content: center

    再会 我正在尝试使用 Flex 框在横轴上包含多余空间的 Flex 容器中强制执行以下行为 如果所有弹性项目都适合一行 那么它们应该在横轴的顶部对齐 但 一旦它们包裹起来 柔性项目应该凝结在横轴的中心 为此 我尝试了以下标记https js
  • 如何构建知识图谱?

    我用 PageRank 制作了一个可以在我的计算机上运行的小型搜索引擎的原型 我有兴趣在其之上构建一个知识图 它应该只返回在正确上下文中的查询网页 类似于谷歌如何找到搜索问题的相关答案 我看到了很多关于知识图的宣传 但没有很多文献 而且几乎