Keras ANN
This merge request adds an ANN classifier using Keras.
There are several things to cover before we merge this into master:
- Need to get dependencies to play nice on LDG: Keras 2.2 needs numpy 1.12+ and scipy 0.14+ as far as I'm aware, and on LDG the versions are much older than this (numpy 1.7.x and scipy 0.12.x). I've tried manually installing newer versions from source, but ran into the issue of getting a NN backend (tensorflow, theano, etc.) Theano didn't work for me, and in order to get tensorflow to work, you need the tensorflow bindings (tensorflow-gpu or cpu). It appears that I don't have access to the source for this, only binary wheels, and I can't seem to find an alternate way of installing these other than using pip --user which doesn't play nice with system-level packages. It's certainly not installed on LDG resources.
- Need to test and make sure that the classifier works in the way we expect. It could be as simple as getting a sample configuration that is known to work, having a suitable Keras installation alongside iDQ and making sure it all works end-to-end with some of the iDQ batch/streaming jobs.
- A configuration that works: ANN_config.txt (Add to ~/idq.ini)
Edited by Patrick Godwin