All Projects → entslscheia → GGNN_Reasoning

entslscheia / GGNN_Reasoning

Licence: other
PyTorch implementation for Graph Gated Neural Network (for Knowledge Graphs)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to GGNN Reasoning

teaching
Teaching material relevant to KGs
Stars: ✭ 61 (+79.41%)
Mutual labels:  knowledge-graph
amie plus
AMIE+ association rule mining
Stars: ✭ 24 (-29.41%)
Mutual labels:  knowledge-graph
ChineseTextAnalysisResouce
中文文本分析相关资源汇总
Stars: ✭ 71 (+108.82%)
Mutual labels:  knowledge-graph
kg-reeval
ACL 2020: A Re-evaluation of Knowledge Graph Completion Methods
Stars: ✭ 117 (+244.12%)
Mutual labels:  knowledge-graph
biograkn
BioGrakn Knowledge Graph
Stars: ✭ 169 (+397.06%)
Mutual labels:  knowledge-graph
news-graph
Key information extraction from text and graph visualization
Stars: ✭ 83 (+144.12%)
Mutual labels:  knowledge-graph
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+58.82%)
Mutual labels:  knowledge-graph
Shukongdashi
使用知识图谱,自然语言处理,卷积神经网络等技术,基于python语言,设计了一个数控领域故障诊断专家系统
Stars: ✭ 109 (+220.59%)
Mutual labels:  knowledge-graph
yang-db
YANGDB Open-source, Scalable, Non-native Graph database (Powered by Elasticsearch)
Stars: ✭ 92 (+170.59%)
Mutual labels:  knowledge-graph
semantic-python-overview
(subjective) overview of projects which are related both to python and semantic technologies (RDF, OWL, Reasoning, ...)
Stars: ✭ 406 (+1094.12%)
Mutual labels:  knowledge-graph
KGReasoning
Multi-Hop Logical Reasoning in Knowledge Graphs
Stars: ✭ 197 (+479.41%)
Mutual labels:  knowledge-graph
CaRE
EMNLP 2019: CaRe: Open Knowledge Graph Embeddings
Stars: ✭ 34 (+0%)
Mutual labels:  knowledge-graph
Knowledge Graph Wander
A collection of papers, codes, projects, tutorials ... for Knowledge Graph and other NLP methods
Stars: ✭ 26 (-23.53%)
Mutual labels:  knowledge-graph
harika
Offline-, mobile-first graph note-taking app focused on performance with the knowledgebase of any scale
Stars: ✭ 111 (+226.47%)
Mutual labels:  knowledge-graph
kglib
TypeDB-ML is the Machine Learning integrations library for TypeDB
Stars: ✭ 523 (+1438.24%)
Mutual labels:  knowledge-graph
calamus
A JSON-LD Serialization Libary for Python
Stars: ✭ 21 (-38.24%)
Mutual labels:  knowledge-graph
Capricorn
提供强大的NLP能力, low-code实现chatbot
Stars: ✭ 14 (-58.82%)
Mutual labels:  knowledge-graph
cowl
A lightweight C/C++ library for working with Web Ontology Language (OWL) ontologies
Stars: ✭ 18 (-47.06%)
Mutual labels:  owl2
skipchunk
Extracts a latent knowledge graph from text and index/query it in elasticsearch or solr
Stars: ✭ 18 (-47.06%)
Mutual labels:  knowledge-graph
neno
NENO is a note-taking app that helps you create your personal knowledge graph.
Stars: ✭ 65 (+91.18%)
Mutual labels:  knowledge-graph

GGNN_Reasoning

This is a Pytorch implementantion of Gated Graph Neural Network (Li, Yujia, et al. "Gated graph sequence neural networks." arXiv preprint arXiv:1511.05493 (2015)). This implementation follows the framework of JamesChuanggg/ggnn.pytorch. The main difference is that my implemantation are more suitable for graph datasets with tremendous edge types such as Knowledge Graphs as it's more memory-efficient. Note that, most other implementations you can find are designed for datasets with only several edge types, such as bAbI dataset.

Though our scenario is using GGNN to approximate the ABox consistency checking problem in OWL2 EL, where each ABox sample can be deemed as a small directed graph and thus the consistency checking can be modeled as a graph-level binary classification problem, the implementation is quite generic.

Requirements:

Python 3.6
PyTorch >=0.4

Usage:

  • For the input json data format:
    each sample has the format as follows,
    {'target': label of sample,
    'graph': all edges in the graph, each edge is represented as a triple: (source_id, edge_id, target_id),
    'node_features': task-specific innitial annotation for each node in the graph
    }

    (All ids start from 1)
  • To run the code, please use command python main.py.
  • To run it on GPU, please use command python main.py --cuda.

(For general use, you should only care about files without a suffix 'plus', as those files are for specific use of ABox reasoning model. Specifically, for GGNN_plus, there is no need for you to specify the initial annotations for each node by yourself, the annotation for all nodes are stored in an embedding layer, which is also learnable during the training process. Experiments demonstrate that GGNN_plus outperforms GGNN on ABox Reasoning in terms of both efficiency and effectiveness.)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].