Giter Site home page Giter Site logo

oracle-ml-contest's Introduction

Abstract

Our task is to perform multi-label vertex classification on a PPI network to predict labels of unseen proteins and generate a powerful embedding of the graph in a low dimensional space. The protein-protein interaction network is represented with 24 different subgraphs ( 20 are used as training set and 4 as test set ). Each one of our proteins has a binary feature vector, a list of undirected edges which explicit the connections with other proteins and a binary label vector that represents its role ( if the protein is in the training set ). We build our embeddings trying to get the best information out of connections, features and labels.

Key Issue

Coming up with a model that is able to capture graph structural information is really difficult. There is no straightforward way to encode this high-dimensional, non-Euclidean information into a feature vector. In order to extract structural information from graphs, traditional approaches often rely on summary graph statistics or carefully engineered features to measure local neighborhood structures (pre processing). However, these approaches are limited because these hand-engineered features are inflexible, i.e. they cannot adapt during the learning process, and designing these features can be a time-consuming and expensive process.

Recent Developments

The idea behind the latest approaches is to learn a mapping that encodes each node as a point in a low-dimensional vector space . Embedding should capture the graph topology, vertex-to-vertex relationship, and other relevant information about graphs, subgraphs, and vertices. Therefore, this mapping is constructed carefully so that geometric relationships in the embedding space reflect the structure of the original graph.

Our Approach

Throughout the repository :

  • We'll implement Node2Vec, GCN, GraphSAGE and GAT combining them with our ideas to emphasize the importance of encoding graph structural information together with features in order to achieve a good vertex classification.
  • We'll show that in this specific setting the dataset is not good enough to create a good predictor and that it is possibile to achieve the same performance with statistical methods alone ( not taking into account the graph and the features). We must not forget that Machine Learning is not magic!

Not enough?

Our thinking process is carefully explained in the main jupyter notebook, you should go take a look. Enjoy!

oracle-ml-contest's People

Contributors

pdebartol avatar riccardocadei avatar

Stargazers

Shengyu Pei 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.