Git Product home page Git Product logo

mirage's Introduction

Table of Contents

  1. Running the code
  2. Dependencies

This is the official repository of the code corresponding to the paper titled Mirage: Model-agnostic Graph Distillation for Graph Classification accepted in the Twelfth International Conference on Learning Representations (ICLR 2024).

Running the code

  • Mirage was evaluated on DD, IMDB-B, NCI1, ogbg-molbace, ogbg-molbbbp, and ogbg-molhiv.
  • To run Mirage on these corresponding datasets, navigate to their respective directories.
  • Mirage is implemented in two ways in these repositories, (a) fully in Python and (b) partially in C++.
  • The DD, ogbg-molbace, ogbg-molhiv implementations are of type (b) while the rest are of type (a).
  • To run Mirage using (a) implementation, navigate to the directory. The directory contains a single python script. Just run it.
  • To run Mirage using implementation (b) first complete the dependency installation described here, navigate to the directory. While being in the main directory run bash scripts/run_<dataset>.sh. This will produce outputs in the outputs directory.

Dependencies

  • Running Mirage requires NumPy, SciPy, PyTorch Geometric, PyTorch, NetworkX, scikit-learn, pyfpgrowth, Matplotlib, and tqdm with Python=3.9 on Linux operating systems.
  • Specifically for implementation (b):
    1. You will need to ensure that 1.11<=PyTorch<=1.13 is installed.
    2. The C++ implementation is written as a PyTorch extension so that it can be called inside the Python file. Within each dataset's corresponding folder that has a C++ implementation, this PyTorch extension is present inside directory called pygcanl.
    3. To work with pygcanl, you need to install it. From within the dataset's directory, run the following command: $ pip install -e pygcanl.
    4. If this runs without errors, then that's it, you can run Mirage now.

mirage's People

Contributors

frigategnn avatar atpugludrim avatar

Stargazers

Rock 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.