Papergraph:带有Postgres和GraphQL的AI/ML引文图

2020-05-03 22:40:05

纸质图是构建和管理“语义学者”引文图的可靠库和二进制文件,目前主要集中在AI/ML论文上。数据存储在Postgres数据库中,顶部有一个Hasura GraphQL后端(模式),以便于图形查询。它附带Jupyter笔记本,向您展示如何分析和可视化数据。

下面的笔记本使用数据的公开API端点开箱即用。你可以在本地运行它们,也可以通过Google Colab在云中运行它们。请阅读下面有关公共终结点的注意事项!

简单分析|以熊猫为例查询某篇论文的引文图表并进行分析。

寻找具有里程碑意义的论文-具有大量引用的论文可以被认为是具有里程碑意义的论文。这类论文中的想法通常构成增量改进的基础。给出一些你感兴趣的随意的论文,你可能想知道你应该学习哪些里程碑式的论文来获得所需的背景知识。

参考研究--写论文时,你不想错过之前的工作。浏览相关论文的引文图表可以帮助你找到可以阅读和引用的潜在有趣的论文。

该数据库在http://papergraph.dennybritz.com/v1/graphql,上公开可用,因此请温和处理您的查询!这是在一个小型Postgres服务器上运行的,这是我付费的,所以请不要用自动化脚本使其过载。要友善:)只要你通过笔记本手动运行查询,一切都会好起来的。

如果您想要执行大量查询,您应该克隆此repo,然后自己在本地或云中构建数据库。有关这方面的说明如下。如果您运行的是Kubernetes,您还可以使用Deploy/中的脚本。

如果您想从头开始构建数据库,则必须下载完整的S2研究语料库。当前总压缩大小约为120 GB。

export DATABASE_URL=postgres://papergraph:papergraph@postgres:5432/papergraph export RUST_LOG=INFO#运行postgres docker容器docker-组成postgres#设置数据库并运行迁移docker run--rm--network Papgraph_default\-e DATABASE_URL\dennybritz/Papgraph\DIESEL数据库设置。

现在我们已经有了运行正确数据库模式的Postgres服务器,我们需要插入数据:

#假设您已将数据下载到/DATA#,如aws命令aboveDATA_PATH=data/s2-research-corpus/s2-corpus-017.gz所示#对您要插入的所有文件重复此操作#这将需要一段时间。在我的笔记本电脑上,每个文件大约需要1分钟。docker run--rm-it--network Papgraph_Default\-e DATABASE_URL-e RUST_LOG\-v`pwd`/${data_path}:/data/${data_path}\dennybritz/Papgraph\Papgraph INSERT-d/data/${data_path}。

现在已经为数据库设定了种子,我们还可以启动Hasura来服务GraphQL API。使用ctrl+c停止postgres docker进程,然后运行。

当有新的数据快照可用时,将更新Papgraph。这种情况通常每月发生一次。这意味着它不会包含所有最新的文件。