This course explores several data science and machine learning techniques that every data science practitioner should be familiar with. Fundamentally, the course pivots over four axis:
- Pandas and Matplotlib for working with data
- Keras for Deep Learning,
- Scikit-learn for machine learning
- Statsmodels for statistics
This course explores the fundamental concepts in these big four topics, and provides the student with an overview of the problems that can be solved nowadays.
I only focus on the computational and practical implications of these techniques, and it is assumed that the student is partially familiar with Statistics-ML-Data Science - or is willing to complement the techniques presented here with theoretical material. Python programming experience will be absolutely necessary, as we only explain how to define Classes in Python (as we will use them along the course)
The teaching strategy is to briefly explain the theory behind these techniques, show how these techniques work in very simple problems, and finally present the student with some real examples. I believe that these real examples add an enormous value to the student, as it helps understand why these techniques are so used nowadays (because they solve real problems!)
Some examples that we will attack here will be: Forecasting the GDP of the United States, forecasting London new houses prices, identifying squares and triangles in pictures, predicting the value of vehicles using online data, detecting spam on SMS data, and many more!
In a nutshell, this course explains how to:
- Define classes for storing data in a better way
- Plotting data
- Merging, pivoting, subsetting, and grouping data via Pandas
- Using linear regression via Statsmodels
- Working with time series/forecasting in Statsmodels
- Several unsupervised machine learning techniques, such as clustering
- Several supervised techniques such as random forests, classification trees, Naive Bayes classifiers, etc
- Define Deep Learning architectures using Keras
- Design different neural networks such as recurrent neural networks, multi-layer perceptrons,etc.
- Classify Audio/sounds in a similar way that Alexa, Siri and Cortana do using machine learning
The student needs to be familiar with statistics, Python and some machine learning concepts