Leapfrog in Deep Learning
Submitted by Sameer Mahajan (@sameermahajan) on Friday, 3 November 2017
Machine learning (ML) gives computers the ability to learn without being explicitly programmed. Evolved from the study of pattern recognition and computational learning theory in artificial intelligence, ML explores the study and construction of algorithms that can learn from and make predictions on data through building a model from sample inputs. It’s a really exciting & impactful phase in the ML journey. Today, every time you go to a website, most likely there’s a ML algorithm behind the scenes, analysing the data and interactions, radically heightening your experience using ML
This fast paced hands on worskhop is designed to bootstrap your Deep Learning. It quickly on boards Machine Learning concepts like regression, classification,matrix factorization etc. It introduces algorithms like k Nearest Neighbors, k means, recommender systems etc. It brings in tools like python for quick coding,pandas and numpy for data munging, matplotlib for visualization, scikit-learn for ready made machine learning algorithms. It does so with real life use cases like predicting house sale prices, sentiment analysis using restaurant reviews; real life data like people wikipedia, adult income data etc. and lots of hands on coding. We dive into intuition behind commonly popular algorithm of gradient descent, forward and backward propagation in neural networks. This approach helps imbibe the concepts effectively. We go onto implementing logistic regression as single layer neural network from scratch completely in python. Later we implement generic multi layer neural network in tensorflow.
You can download the entire course content (follow along slides, data for hands on assignments, developed code for all hands on assignments) from github repository of https://github.com/sameermahajan/MLWorkshop During the course you will develop all the code outlined here from scratch under the guidance of the instructor. I hope that you continue referring to programs developed here for tools, technologies and techniques (3 Ts) even as you progress through your Deep Learning career! Good Luck!
- Machine learning overview : 15 minutes
- Introduction to python, pandas, numpy, jupyter and sci-kit learn: 45 minutes
- Regression for predicting house prices: 30 minutes
- Classification for sentiment analysis: 30 minutes
- Clustering and introduction to unsupervised learning: 30 minutes
- Recommenders: 30 minutes
- Deep learning and neural networks: 30 minutes
- Tensorflow: 30 minutes
- Writing neural network algorithm from scratch in tensorflow: 30 minutes
- Next steps, closing remarks and QA: 30 minutes
• Laptop with Ubuntu / linux, charged battery + charger, docker installed. • You can use readymade public docker image with everything installed including tensorflow from gcr.io (run it as sudo docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow) • If people come with windows laptop we can provide opensource tools like graphlab create etc. We can publish the details upfront so that they can come prepared with all these pre installed.
Maths Knowledge Requirements
It would help if you brush up the following topics from high school. Although these are not mandatory, we will cover enough details at the time of workshop.
• Basics of derivatives and concept of maxima-minima. • Basics of matrix and vector manipulation from linear algebra. Programming Knowledge Requirements
o Basic programming
o Reading and Writing files
o Flow controls (if-else)
o Looping constructs like for loop, while
o Variable assignments
I am a mentor for Machine Learning Foundations course in Machine Learning Specialization on coursera. I have also successfully completed Andrew Ng – Stanford’s machine learning course, the complete set of Machine Learning specialization and deep learning specialization courses on coursera. I have 22 years of experience in software industry in companies like Microsoft, Symantec etc. across US and India. I hold 8 US patents issued in my name with a few more in the pipeline. I am an alumnus of IIT Bombay and Georgia Tech CS departments. I have taught ML 101 to over 100 students in my current company GS Lab where I work as a Principal Architect.