README 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. https://bitbucket.org/rshegde/deepmie-deep-learning-electromagnetic-scattering
  2. Abstract
  3. ===============================================================
  4. We propose the use of Deep Convolutional Neural Networks (DCNN)
  5. in concert with Differential Evolution for solving inverse problems in
  6. electromagnetics. We show that networks built using innovations like
  7. convolutional layers, batch normalization, parametric REctified Linear Unit
  8. (ReLU) and residual blocks achieve comparable performance to previously
  9. reported dense fully-connected networks but achieve drastic reduction in
  10. parameter weights and training epoch lengths. The proposed lightweight CNNs
  11. are used in concert with Differential Evolution global optimization to achieve
  12. 8x speedup in convergence time. Systematic hyperparameter grid searches are
  13. reported to permit faster model discovery for application to other problems.
  14. See the following arxiv paper for details
  15. Requirements
  16. ================================================================
  17. 1) CUDA capable GPU
  18. 2) Python 3.5
  19. 3) Numpy, Matplotlib, Pandas, Scipy, Scikitlearn
  20. 4) Cudatooklit 9.0, CuDNN 7.1
  21. 5) Mxnet-GPU, Mxnet-cumkl
  22. 6) Keras, Keras-mxnet
  23. 7) Scattnlay -- needed if you want to generate other datasets
  24. 8) Jupyter notebook
  25. 9) ipyparallel for calling multiple runs at the same time
  26. Getting started
  27. ==================================
  28. Most of the code is placed in Jupyter notebooks for interactivity.
  29. PyMIEtest.ipynb -- familiarizes you with generating datasets
  30. Scatternets.ipynb -- allows building and visualizing models
  31. hypoptim.ipynb -- hyperparameter grid search using scikit CV grid search
  32. scipydiffe -- differential evolution using compiled models.