Hello folks, I’m planning to initiate a series of (long running) ML/Deep Learning sessions here in Bangalore office twice a week, to start with. Since this is an area where we need more in depth knowledge, I think it’s going to be a good investment of our time if we can go deeper into the how and the why of things, while keeping an emphasis on the applicability as well. Besides that, it’d also be a good learning opportunity for me since I need to brush up my old knowledge, and it’s about time that I get myself familiarized with some of the cutting edge algorithms in the field of AI. Current timing is Monday and Friday, 10:15 - 11:15 am, as mornings work out best for me. Below are the high level topics that I intend to cover. It’d probably take around 4 - 6 months to complete all of these materials in sufficient depth. I’m planning to prepare a pdf and a jupyter notebook for each logical section. Do let me know your thoughts on this.
- Linear Algebra
- Probability
- Optimization
General concepts (cross validation, grid search etc.)- Supervised learning:
Naive BayesLinear regressionLogistic RegressionDecision Tree, Random ForestAdaboostK-nearest NeighboursSVM
- Unsupervised learning:
K-means clusteringmean-shift clusteringGaussian Mixture ModelBayesian Learning
- Applications in NLP:
SVDTF-IDFSentiment AnalysisLatent Symantic Analysis
- Deep Learning:
Basics of Neural NetworkBinary/Multi-class classificationBackpropagationConvolutional Neural NetworkRecurrent Neural Networks and its applications in NLP
We're gonna closely follow these four materials for our journey:
- CS229: Machine Learning course from stanford
- lazyprogrammer-udemy
- Hands-On Machine Learning with Scikit-Learn and Tensor Flow: Concepts, Tools, and Techniques to Build Intelligent System.
- (Update) The 2nd edition of this book is available now, which uses Tensorflow 2.0 for the Deep-Learning materials. I'd encourage you to pick up this book.
- deep-learning book by Goodfellow et al
- Basics of Linear Algebra for Machine Learning This book is a good introduction to LA for practitioners.
- Essence of linear algebra This is a good place to get started with the essential concepts of Linear Algebra.
If you're planning to get a stronger grasp on the math behind all of this, I'd suggest going through these three courses:
- MIT 6.041 Probabilistic Systems Analysis and Applied Probability
- MIT 18.06 Linear Algebra
- MIT 18.065 Matrix Methods in Data Analysis, Signal Processing, and Machine Learning
We'll be using Python for the duration of the course, so it'd become easier for all of us if we use the same distribution and version as we go. I'd suggest downloading anaconda python-3.7 version from this official link. It bundles jupyter notebook, so we should be good.
Once the installation is completed, create a conda environment with the command
conda create -n py3_ml python=3.6 anaconda
Now, we need to attach the newly created conda env to jupyter
conda activate py3_ml
conda install ipykernel
ipython kernel install --user --name=py3_ml
conda deactivate
Whenever we're going to use jupyter, please make sure we use this new kernel, py3_ml
.