Git Product home page Git Product logo

relex's Introduction

RelEx: Relationship Explainer Using Knowledge Base

Given a pair of objects, people are often interested to know if they are related and how they are related. For the purpose of better solving such problems, in this project we build a prototype system for explaining relationships between two objects from general domains. The system is powered by a large knowledge base (YAGO), has a clean user interface, and demonstrates useful relationships in an organized and intuitive manner.

The software does not include the Neo4j database, which has to be download separately. In addition, the system requires a Python interpreter for execution. Python 3 is preferred. All other components are included. By default, the system uses YAGO core data, but more data can be downloaded from http://www.mpi-inf.mpg.de/departments/databases-and-information-systems/research/yago-naga/yago/downloads.

Setup

To setup and use the system, follow the steps below:

  1. Download and setup Neo4j graph database. Start the database service by "bin/neo4j start".
  2. Configure database credentials in the code directory.
  3. Extract and import knowledge base data by "python3 code/parser.py < data/yagoFacts.tsv".
  4. Start the app by "python3 code/relex.py".

Usage

Now the web application is served at http://localhost:8080 (The url and port can also be configured). A clean interface will be shown in the browser. Users can simply type two objects of interest into the form and then click "Explain". Then the system will generate relationship results and display them in an organized manner. The user can also drag the nodes themselves to further adjust the layouts.

relex's People

Contributors

relex0 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.