Coder Social home page Coder Social logo

junchen14 / dl2vec Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bio-ontology-research-group/dl2vec

0.0 1.0 0.0 563 KB

Convert Description Logic axioms into a graph, and generate embedding representation for the nodes.

License: GNU General Public License v3.0

Groovy 16.45% Python 83.55%

dl2vec's Introduction

DL2vec

DL2vec is a method that can convert different types of Description Logic axioms into graph representation, and then generate an embedding for each node and edge type.

The main covnertion tool is in DL2vec_embed folder.

Required packages

python >= 3.4
pandas >=0.24.2
numpy >= 1.16.2
torch >= 1.0.1
networkx >= 2.3
scipy >= 1.2.1
scikit-learn >=0.20.3
Groovy (Groovy Version: 2.4.10 JVM: 1.8.0_121) with Grape for dependency management.

Experiment

Details for predicting gene-disease associations with DL2Vec can be found in the experiment folder.

Running DL2vec

  1. Git clone this repository git clone https://github.com/bio-ontology-research-group/DL2Vec.git

  2. Generate the embeddings for each entity:

    Generate the embeddings

     python runDL2vec.py -ontology "ontology file" -associations "association_file" -outfile "embedding output file" -entity_list "entities list need generating embeddding"
    

Where the following are mandatory arguments:

  1. ontology_file: ontology file contains ontology in OWL format
  2. association_file: file contains entity-class associations
  3. outfile: output file contains the embedding model

If one of these two mandatory files is missing, an error message will be displayed
you can also specify the following optional arguments:

  1. -h/--help show the help message and exit
  2. -window_size : window size for Word2Vec
  3. -mincount minimum count value for Word2Vec
  4. -entity_list: the entity file in which each entity need to start the random walk and generate the embedding

The main embedding learning process

Output

The script will save a model that can generate embeddings for each entity.

Reference

If you find DL2vec useful for your research, please cite:
Jun Chen, Azza Althagafi, and Robert Hoehndorf. "Predicting candidate genes from phenotypes, functions, and anatomical site of expression." (2020). DOI: 10.1093/bioinformatics/btaa879

Acknowledgement

We use two scripts which, ProcessOntology.groovy and getMetadata.groovy that are adapted from OPA2vec.

dl2vec's People

Contributors

azzatha avatar junchen14 avatar leechuck avatar mammal-net avatar

Watchers

 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.