Git Product home page Git Product logo

async_admm_consensus's Introduction

Asynchronous ADMM for Consensus Optimization

An implementation of the Asynchronous ADMM algorithm for Consensus Optimization presented in the paper

Zhang, Ruiliang, and James Kwok. "Asynchronous distributed ADMM for consensus optimization." International conference on machine learning. 2014.

in Python using PyTorch and TCP sockets.

Presentation and Problem Set

Implementation

For example run and more information see the example_run.ipynb notebook.

Files Description

  • The main scripts are mnist_avg.py and mnist_logistic.py which are experiments designed to average the MNIST dataset and run Multiclass Logistic Regression on the MNIST dataset respectively.

You need to specify the process id when running these files.

  • A (process id) = (number of workers) corresponds to the master
  • A process id from 0 to (number of workers - 1) are different workers The results are generated in the logs directory.
  • The run_workers.sh bash script is a tool to spawn multiple processes including all workers and the master.
  • The plotting_tool.py file can be used to produce plots from the logs.
  • mnist.npz and mnist_14.npz are 28x28 and 14x14 versions of the MNIST dataset respectively.
  • admm.py and tcp_server.py are library files used by the main scripts.
  • exampl_run.ipynb demonstrates how tor run and evaluate the experiments.

async_admm_consensus's People

Contributors

shamim-hussain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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.