Metadata-Version: 2.1
Name: decopt
Version: 1.0.9
Summary: State of the art decentralized optimization library
Home-page: https://github.com/anishacharya/decentralized-opt
Author: Anish Acharya
Author-email: anishacharya@utexas.edu
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown

# Linearly Convergent Decentralized Learning with Arbitrary Communication Compression

How do I run the Code? 
```
A. Install our package: 
pip3 install decopt

B. Get Data: 
sh pull_data.sh breast_cancer

c. Run script with default parameters: 
python3 driver.py

With different parameters:
python3 driver.py --d 'mnist' --n_cores 10 --algorithms 'ours'


Parameter Options:

    parser.add_argument('--d', type=str, default='breast_cancer',
                        help='Pass data-set')
    parser.add_argument('--r', type=str, default=os.path.join(curr_dir, './data/'),
                        help='Pass data root')
    parser.add_argument('--stochastic', type=bool, default=False)
    parser.add_argument('--algorithm', type=str, default='ours')

    parser.add_argument('--n_cores', type=int, default=100)
    parser.add_argument('--n_proc', type=int, default=10)

    parser.add_argument('--topology', type=str, default='ring')
    parser.add_argument('--Q', type=int, default=3)
    parser.add_argument('--consensus_lr', type=float, default=0.34)

    parser.add_argument('--quantization_function', type=str, default='top')
    parser.add_argument('--num_levels', type=int, default=10)
    parser.add_argument('--coordinates_to_keep', type=int, default=5)

    parser.add_argument('--epochs', type=int, default=1000)
    parser.add_argument('--lr_type', type=str, default='constant')
    parser.add_argument('--initial_lr', type=float, default=0.0001)
    parser.add_argument('--epoch_decay_lr', type=float, default=0.9)
    parser.add_argument('--regularizer', type=float, default=0.2)

    parser.add_argument('--estimate', type=str, default='final')
```


