Skip to content

FO_SDP output significantly different to example in README.md #3

Description

@jcollyer-turing

Using the example from the README.md as part of the repository, I am able to get it running after a few minor tweaks (mostly around the precision of the Tensors as I am running this on an M3 Mac!). The final value though is orders of magnitude smaller than the one reported - The command used and output can be seen below

>> python3 main.py --data mnist --model dnn --epochs 50 --batch_size 256 --device 0 --method fo_solver --lanczos --init schur --fo_lr 0.04 --lan_steps 20 --groups 3
accuracy is 97.82%
Number of parameters: 203530
the constraint size of the SDP is: 1041
The FO SDP gives: 0.000201246 , which takes time 17.10497212409973

This is in contrast to the baseline norm-product approach which returns a similar figure:

>> python3 main.py --data mnist --model dnn --epochs 50 --batch_size 256 --device 1 --method product
accuracy is 97.82%
Number of parameters: 203530
The norm product is: 9.33021 , which takes time 0.007447004318237305

I have also looked at the appendix of the paper and re-run the experiments using the hyper parameters. I am getting similar results as the ones demonstrated above.

Is this the expected behaviour?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions