Post date: Jan 20, 2018 1:45:46 PM
1. Open source framework/platform/tools:
Keras, developed by Google engineer, is a front-end for TensorFlow, Theano, MXNet, CNTK, or deeplearning4j.
https://en.wikipedia.org/wiki/Comparison_of_deep_learning_software
References:
https://deeplearning4j.org/compare-dl4j-tensorflow-pytorch
https://deeplearning4j.org/neuralnet-overview
https://deeplearning4j.org/convolutionalnetwork
https://github.com/thedataincubator/data-science-blogs/blob/master/deep-learning-libraries.md
http://deeplearning.net/software/theano/
https://datahub.packtpub.com/deep-learning/top-10-deep-learning-frameworks/
2. Pr-trained models:
In practice, we use pre-trained models, then fine-tune it to fit a specific purpose.
Here is a list of popular models:
References:
https://flyyufelix.github.io/2016/10/03/fine-tuning-in-keras-part1.html
https://github.com/BVLC/caffe/wiki/Model-Zoo
https://keras.io/applications/
https://github.com/dmlc/mxnet-model-gallery
https://github.com/tensorflow/models/tree/master/research/slim
https://flyyufelix.github.io/2016/10/08/fine-tuning-in-keras-part2.html
https://machinelearningmastery.com/use-pre-trained-vgg-model-classify-objects-photographs/
3. Application AI architecture
References:
https://en.wikipedia.org/wiki/Artificial_neural_network
4. Books, Courses and learning sites
http://www.deeplearningbook.org/
http://wiki.fast.ai/index.php/Main_Page
Some Videos:
5. History and Theory:
http://news.mit.edu/2017/explained-neural-networks-deep-learning-0414
http://beamandrew.github.io/deeplearning/2017/02/23/deep_learning_101_part1.html
References:
https://en.wikipedia.org/wiki/Artificial_neural_network
https://en.wikipedia.org/wiki/Deep_learning
https://en.wikipedia.org/wiki/Convolutional_neural_network
https://machinelearningmastery.com/5-machine-learning-areas-you-should-be-cultivating/
Notes from LinkedIn:
Deep Learning & Artificial Neural Networks >> A reality-check
#DeepLearning is mostly about constructing machine learning models that work by processing "hierarchical representations of the data." This can be achieved by building Artificial #NeuralNetworks (ANNs), which are modeled from the human brain -- #neuron and #synapse structures.
Many experts believe that neural networks are overused... It seems like every developer is trying to apply #ANNs to almost everything, even #machinelearning algorithms that don’t require it.
What are some of the pros & cons of neural networks?
PROS >> Developers say:
• ANNs are relatively easy to use
• They work well for image, sound & text recognition
• They loosely mimic the brain -- this is controversial
• They're responsible for rapid development in machine learning
CONS >> Developers say:
• They're used where simpler solutions like statistical reasoning work
• They're finicky and hard to train/tune
• They work like a #blackbox and can't explain the basis for decisions
• They're not stable for real-time use with fast data & continuous learning
For complex applications -- at scale -- such as security predictions, global finance, military & weapon systems, etc., ANN technology may not yet be ready for prime-time.