zincbase  by tomgrek

Deprecated knowledge base for graph-based reasoning

created 6 years ago
284 stars

Top 93.1% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

ZincBase is a deprecated Python kit for building knowledge graphs from unstructured data, targeting researchers and developers interested in combining neural networks with symbolic logic for complex querying. It extracts facts (triples), stores them efficiently, builds a graph, and supports querying via graph neural networks, enabling probabilistic reasoning and classification.

How It Works

ZincBase integrates neural network embeddings with symbolic logic, inspired by expert systems and Prolog. It represents facts as triples and uses graph search and neural models (like RotatE) to infer relationships and probabilities, allowing queries such as "what is the probability that Tom likes LARPing". This hybrid approach aims to provide a richer understanding and querying capability than purely symbolic or neural methods.

Quick Start & Requirements

  • Install via pip install -r requirements.txt.
  • Requires Python 3. GPU is preferable for large graphs but not strictly required.
  • Official documentation: [link to docs]
  • Quickstart example: from zincbase import KB; kb = KB(); kb.store('eats(tom, rice)'); print(kb.query('eats(tom, Food)'))

Highlighted Details

  • Includes validation scripts for performance comparison against the RotatE paper on the Countries dataset (AUC ROC ~0.95, ~30 min on GPU).
  • Supports loading data from CSV files and includes sample datasets like "Countries" and "FB15k".
  • Offers basic Prolog-like querying and probability estimation for triples.
  • Aims to integrate context from unstructured text via BERT/ULM/GPT-2 embeddings.

Maintenance & Community

This repository is deprecated. The active development has moved to a new owner, ComplexDB, at [link to new repo].

Licensing & Compatibility

The repository does not explicitly state a license in the README. The citation format suggests a permissive license, but users should verify compatibility for commercial or closed-source use.

Limitations & Caveats

The project is explicitly marked as deprecated, with active development moved to a new repository. The to_csv/from_csv methods do not support node attributes, and relation extraction from arbitrary text is a planned but not yet implemented feature.

Health Check
Last commit

4 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
1 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.