locuslab/SATNet

Instructions to fine-tune the hyper-parameters?

happily-study opened this issue · 2 comments

Hello,

Thank you for your work. It all looks very interesting.

So I installed your code and try running it on more sudoku puzzles. In terms of the number of non-empty cells, I noticed that your sudoku training data is with a mean of 36. When I tried a mean of 26, the sudoku acc dramatically drops to 0.66% on test set (aka, only got 66 right out of 10000). I trained on 10000 such sudoku puzzles with your default parameters. Is there any advice for me to fine-tune the parameters when there are fewer cells with filled digits?

Thank you in advance for any help you might be able to give me.

For fewer cells, I would suggest using more training examples (e.g. 1M) and a higher rank (e.g. m=600). For the hardest Sudoku problems (17 cells), it may be necessary to take additional measures and/or introduce some structural assumptions.

There's recently a NeurIPS paper discussing how to tune the parameters of the SATNet.
Ref: https://papers.nips.cc/paper/2020/file/0ff8033cf9437c213ee13937b1c4c455-Paper.pdf