GithubHelp home page GithubHelp logo

mmu's Introduction

Multi-Modal Unpairing Framework

Introduction

This is the Python implementation for the Multi-Modal Unapiring Framework proposed in the paper "A Multi-Modal Data Unpairing Framework for Cross-Modal Hashing Information Retrieval". Within the aforementioned paper, the framework was utilsed alongside the methods DADH(https://github.com/Zjut-MultimediaPlus/DADH), AGAH(https://github.com/WendellGul/AGAH) and JDSH(https://github.com/KaiserLew/JDSH).

The flow of the MMU experiments is as follows:

  • Prepare the datasets: (1) Download the datasets MIR-Flickr25K and NUS-WIDE. Information on where to download the datasets is provided in the "Download Data" section. (2) Place the datsets in the correct directories for each method. Information regarding the correct directory is provided within each method folder.
  • Obtain the ranked loss for each training sample for the sample selection process of MMU, described in "Sample Selection" section.
  • Unpair the data through MMU, described in "Data Unpairing" section.
  • Train and evaluate methods on newly generated unpaired data.

Note

This is currently an informal version of the source code for MMU, subject to be formalised and made more accessible to readers pre-publishing.

Requirements and installation

We recommended the following dependencies.

  • Python 3.7.2
  • Pytorch 1.6.0
  • torchvision 0.7.0
  • CUDA 10.1 and cuDNN 7.6.4

Download Data

Data for the DADH method can be obtained from the DADH repository.

Data for the AGAH and JDSH methods can be obtained from the DCMH repository.

Sample Selection

Once the dataset files have been downloaded and placed in the correct location for DADH, a standard training procedure is conducted on the altered main_samples.py script. This training procedure follows the parameters listed by DADH

Data Unpairing

Once the datset files have been placed in their correct directory within MMU, run the visualize.py script. The default unpairing setting is set at 20% unpairing. To change this, follow the instructions within the source code of visualize.py.

Training with unpaired data

Place the newly created unpaired dataset files into the correct datasets. Configure the method to be tested to point towards the newly created unpaired dataset file during data loading.

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.