Level 1 Preparation
Introductory Data and Neural Network Concepts
To begin at this level you should have:
- Familiarity with Python 3 for general purpose programming. See the Python section for more.
- Working knowledge of traditional ML (when to use what)
- Jupyter notebook skills. Chapter 1 Python Data Science Handbook
- Get a good grasp of Python for data-related tasks:
- How to read data (
matplotlib
, Pillow/PIL
,opencv-python
) - How to manipulate data (
numpy
,pandas
,scikit-learn
) - How to plot data (
matplotlib
,seaborn
) - Traditional ML (
scikit-learn
)
- How to read data (
Concepts and Resources
Dealing with Image Data
- Read through this excellent first taste of Image Classification from this Stanford CS231n course Ref
Traditional ML for Image Analysis
Read through this article on Histogram of Oriented Gradients, an older technique, not often used anymore, but still a quick and easy way to detect objects.
Neural Networks
Read through this excellent explanation of a single-layer neural network. This information will lay the foundation for these sets of challenges and help you get started from the ground-up, quickly with key concepts and Python code snippets.
You should now understand the single-layer network, a perceptron, that uses a threshold activation function to perform binary classification:
Attributed to Sebastian Raschka
- IMPORTANT: The perceptron is not capable of performing well on non-linearly separable inputs.
A multi-layer network, such as the mutli-layer perceptron (MLP), can address the problem of non-linearly separable data. An MLP, a fully-connected set of perceptrons organized into layers, can also have arbitrary activation functions making it more verstatile for classification and regression problems. These sorts of networks are also known as dense neural networks and the layers as fully-connected.
Read this article for additional information.
In addition, here is an excellent, free introductory e-Book on Deep Learning.
Tools
- Git and GitHub for version control.
Additional Resources
Scikit-Learn
Excellent 3-hr scikit-learn tutorials from PyCon 2015:
- Watch this scikit-learn tutorial by Jake VanderPlas (Part 1) and the next tutorial by Olivier Grisel (Part 2).
Learn about ML and Python scikit-learn in this video series