Atwork credit:

Machine Learning for Knowledge Graphs is an incomplete and exciting field

Grakn lets us create Knowledge Graphs from our data. But what challenges do we encounter where querying alone won’t cut it? What library can address these challenges?

Knowledge Graph Tasks

Below is a set of tasks to be conducted over Knowledge Graphs (KGs) that we have identified from real Grakn use cases. The objective of KGLIB is to implement a portfolio of solutions for these tasks for Grakn Knowledge Graphs.

  • Attribute Prediction
  • Subgraph Prediction
  • Building Concept Embeddings
  • Rule Mining (a.k.a. Association Rule Learning)
  • Ontology Merging
  • Automated Knowledge Graph Creation
  • Expert Systems
  • Optimal Pattern Finding
  • System Design Automation and…

This project introduces a novel model: the Knowledge Graph Convolutional Network (KGCN), available free to use from the GitHub repo under Apache licensing. It’s written in Python, and available to install via pip from PyPi.

The principal idea of this work is to forge a bridge between knowledge graphs, automated logical reasoning, and machine learning, using Grakn as the knowledge graph.


A KGCN can be used to create vector representations, embeddings, of any labelled set of Grakn Things via supervised learning.

  1. Future work will…

Why haven’t machines taken over the world yet?

It seems quite clear that machines should be able to outperform humans in many more tasks than they currently can, or at least that they should be able to make truly smart predictions. I’m sure we can all relate to a moment when an app made us a recommendation that didn’t make any logical sense. You only have to look as far as the recommender system that recommended the product you only just bought, or the spam filter that stole a reply from someone you messaged. In practice, we find that we can’t trust machines with decision-making on our behalf.

We know Grakn can be leveraged to model highly complex data, but how do we go about building a detailed model of a real-world system?

Here we delve in to Transport for London (TFL) data to understand and gain insights into the operation of the London Underground Network.

We go on to build surely the most desirable tool for such a network: a journey planner. (Because who doesn’t want to shave 0.3 minutes off their commute?)

All of the code is written in Python and Graql, using the Grakn Python Client, and is available on GitHub.

The schema

In case you really…

James Fletcher

Principal Scientist at GRAKN.AI. Researching the intelligent systems of the future, enabled by Knowledge Graphs.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store