## These are the Step-by-Step Guides that You’ve Been Looking For!

### What do you want help with?

How Do I Get Started?

The most common question I’m asked is: “*how do I get started?*”

My best advice for getting started in machine learning is broken down into a 5-step process:

- Step 1: Adjust Mindset. Believe you can practice and apply machine learning.
- Step 2: Pick a Process. Use a systemic process to work through problems.
- Step 3: Pick a Tool. Select a tool for your level and map it onto your process.
- Beginners: Weka Workbench.
- Intermediate: Python Ecosystem.
- Advanced: R Platform.
- Best Programming Language for Machine Learning

- Step 4: Practice on Datasets. Select datasets to work on and practice the process.
- Step 5: Build a Portfolio. Gather results and demonstrate your skills.

For more on this top-down approach, see:

Many of my students have used this approach to go on and do well in Kaggle competitions and get jobs as Machine Learning Engineers and Data Scientists.

Applied Machine Learning Process

The benefit of machine learning are the predictions and the models that make predictions.

To have skill at applied machine learning means knowing how to consistently and reliably deliver high-quality predictions on problem after problem. You need to follow a systematic process.

Below is a 5-step process that you can follow to consistently achieve above average results on predictive modeling problems:

- Step 1: Define your problem.
- Step 2: Prepare your data.
- Step 3: Spot-check algorithms.
- Step 4: Improve results.
- Step 5: Present results.

For a good summary of this process, see the posts:

- Applied Machine Learning Process
- How to Use a Machine Learning Checklist to Get Accurate Predictions

Probability for Machine Learning

Probability is the mathematics of quantifying and harnessing uncertainty. It is the bedrock of many fields of mathematics (like statistics) and is critical for applied machine learning.

Below is the 3 step process that you can use to get up-to-speed with probability for machine learning, fast.

- Step 1: Discover what Probability is.
- Step 2: Discover why Probability is so important for machine learning.
- Step 3: Dive into Probability topics.

You can see all of the tutorials on probability here.

Statistics for Machine Learning

Statistical Methods an important foundation area of mathematics required for achieving a deeper understanding of the behavior of machine learning algorithms.

Below is the 3 step process that you can use to get up-to-speed with statistical methods for machine learning, fast.

- Step 1: Discover what Statistical Methods are.
- Step 2: Discover why Statistical Methods are important for machine learning.
- Step 3: Dive into the topics of Statistical Methods.

You can see all of the statistical methods posts here. Below is a selection of some of the most popular tutorials.

Linear Algebra for Machine Learning

Linear algebra is an important foundation area of mathematics required for achieving a deeper understanding of machine learning algorithms.

Below is the 3 step process that you can use to get up-to-speed with linear algebra for machine learning, fast.

- Step 1: Discover what Linear Algebra is.
- Step 2: Discover why Linear Algebra is important for machine learning.
- Step 3: Dive into Linear Algebra topics.

You can see all linear algebra posts here. Below is a selection of some of the most popular tutorials.

Understand Machine Learning Algorithms

Machine learning is about machine learning algorithms.

You need to know what algorithms are available for a given problem, how they work, and how to get the most out of them.

Here’s how to get started with machine learning algorithms:

- Step 1: Discover the different types of machine learning algorithms.
- Step 2: Discover the foundations of machine learning algorithms.
- Step 3: Discover how top machine learning algorithms work.

You can see all machine learning algorithm posts here. Below is a selection of some of the most popular tutorials.

Weka Machine Learning (no code)

Weka is a platform that you can use to get started in applied machine learning.

It has a graphical user interface meaning that no programming is required and it offers a suite of state of the art algorithms.

Here’s how you can get started with Weka:

- Step 1: Discover the features of the Weka platform.
- Step 2: Discover how to get around the Weka platform.
- Step 3: Discover how to deliver results with Weka.

You can see all Weka machine learning posts here. Below is a selection of some of the most popular tutorials.

Python Machine Learning (scikit-learn)

Python is one of the fastest growing platforms for applied machine learning.

You can use the same tools like pandas and scikit-learn in the development and operational deployment of your model.

Below are the steps that you can use to get started with Python machine learning:

- Step 1: Discover Python for machine learning
- Step 2: Discover the ecosystem for Python machine learning.
- Step 3: Discover how to work through problems using machine learning in Python.

You can see all Python machine learning posts here. Below is a selection of some of the most popular tutorials.

R Machine Learning (caret)

R is a platform for statistical computing and is the most popular platform among professional data scientists.

It’s popular because of the large number of techniques available, and because of excellent interfaces to these methods such as the powerful caret package.

Here’s how to get started with R machine learning:

- Step 1: Discover the R platform and why it is so popular.
- Step 2: Discover machine learning algorithms in R.
- Step 3: Discover how to work through problems using machine learning in R.

You can see all R machine learning posts here. Below is a selection of some of the most popular tutorials.

Code Algorithm from Scratch (Python)

You can learn a lot about machine learning algorithms by coding them from scratch.

Learning via coding is the preferred learning style for many developers and engineers.

Here’s how to get started with machine learning by coding everything from scratch.

- Step 1: Discover the benefits of coding algorithms from scratch.
- Step 2: Discover that coding algorithms from scratch is a learning tool only.
- Step 3: Discover how to code machine learning algorithms from scratch in Python.
- Machine Learning Algorithms From Scratch (
*my book*)

- Machine Learning Algorithms From Scratch (

You can see all of the Code Algorithms from Scratch posts here. Below is a selection of some of the most popular tutorials.

Introduction to Time Series Forecasting (Python)

Time series forecasting is an important topic in business applications.

Many datasets contain a time component, but the topic of time series is rarely covered in much depth from a machine learning perspective.

Here’s how to get started with Time Series Forecasting:

- Step 1: Discover Time Series Forecasting.
- Step 2: Discover Time Series as Supervised Learning.
- Step 3: Discover how to get good at delivering results with Time Series Forecasting.

You can see all Time Series Forecasting posts here. Below is a selection of some of the most popular tutorials.

XGBoost in Python (Stochastic Gradient Boosting)

XGBoost is a highly optimized implementation of gradient boosted decision trees.

It is popular because it is being used by some of the best data scientists in the world to win machine learning competitions.

Here’s how to get started with XGBoost:

- Step 1: Discover the Gradient Boosting Algorithm.
- Step 2: Discover XGBoost.
- Step 3: Discover how to get good at delivering results with XGBoost.

You can see all XGBoosts posts here. Below is a selection of some of the most popular tutorials.

Deep Learning (Keras)

Deep learning is a fascinating and powerful field.

State-of-the-art results are coming from the field of deep learning and it is a sub-field of machine learning that cannot be ignored.

Here’s how to get started with deep learning:

- Step 1: Discover what deep learning is all about.
- Step 2: Discover the best tools and libraries.
- Step 3: Discover how to work through problems and deliver results.

You can see all deep learning posts here. Below is a selection of some of the most popular tutorials.

Better Deep Learning Performance

Although it is easy to define and fit a deep learning neural network model, it can be challenging to get good performance on a specific predictive modeling problem.

There are standard techniques that you can use to improve the learning, reduce overfitting, and make better predictions with your deep learning model.

Here’s how to get started with getting better deep learning performance:

- Step 1: Discover the challenge of deep learning.
- Step 2: Discover frameworks for diagnosing and improving model performance.
- Step 3: Discover techniques that you can use to improve performance.

You can see all better deep learning posts here. Below is a selection of some of the most popular tutorials.

Long Short-Term Memory Networks (LSTMs)

Long Short-Term Memory (LSTM) Recurrent Neural Networks are designed for sequence prediction problems and are a state-of-the-art deep learning technique for challenging prediction problems.

Here’s how to get started with LSTMs in Python:

- Step 1: Discover the promise of LSTMs.
- Step 2: Discover where LSTMs are useful.
- Step 3: Discover how to use LSTMs on your project.

You can see all LSTM posts here. Below is a selection of some of the most popular tutorials using LSTMs in Python with the Keras deep learning library.

Deep Learning for Natural Language Processing (NLP)

Working with text data is hard because of the messy nature of natural language.

Text is not “solved” but to get state-of-the-art results on challenging NLP problems, you need to adopt deep learning methods

Here’s how to get started with deep learning for natural language processing:

- Step 1: Discover what deep learning for NLP is all about.
- Step 2: Discover standard datasets for NLP.
- Step 3: Discover how to work through problems and deliver results.

You can see all deep learning for NLP posts here. Below is a selection of some of the most popular tutorials.

Deep Learning for Computer Vision

Working with image data is hard because of the gulf between raw pixels and the meaning in the images.

Computer vision is not solved, but to get state-of-the-art results on challenging computer vision tasks like object detection and face recognition, you need deep learning methods.

Here’s how to get started with deep learning for computer vision:

- Step 1: Discover what deep learning for Computer Vision is all about.
- Step 2: Discover standard tasks and datasets for Computer Vision.
- Step 3: Discover how to work through problems and deliver results.

You can see all deep learning for Computer Vision posts here. Below is a selection of some of the most popular tutorials.

Deep Learning for Time Series Forecasting

Deep learning neural networks are able to automatically learn arbitrary complex mappings from inputs to outputs and support multiple inputs and outputs.

Methods such as MLPs, CNNs, and LSTMs offer a lot of promise for time series forecasting.

Here’s how to get started with deep learning for time series forecasting:

- Step 1: Discover the promise (and limitations) of deep learning for time series.
- Step 2: Discover how to develop robust baseline and defensible forecasting models.
- Step 3: Discover how to build deep learning models for time series forecasting.

You can see all deep learning for time series forecasting posts here. Below is a selection of some of the most popular tutorials.

Generative Adversarial Networks (GANs)

Generative Adversarial Networks, or GANs for short, are an approach to generative modeling using deep learning methods, such as convolutional neural networks.

GANs are an exciting and rapidly changing field, delivering on the promise of generative models in their ability to generate realistic examples across a range of problem domains, most notably in image-to-image translation tasks.

Here’s how to get started with deep learning for Generative Adversarial Networks:

- Step 1: Discover the promise of GANs for generative modeling.
- Step 2: Discover the GAN architecture and different GAN models.
- Step 3: Discover how to develop GAN models in Python with Keras.

You can see all Generative Adversarial Network tutorials listed here. Below is a selection of some of the most popular tutorials.

Need More Help?

I’m here to help you become awesome at applied machine learning.

If you still have questions and need help, you have some options:

- Ebooks: I sell a catalog of Ebooks that show you how to get results with machine learning, fast.
- Blog: I write a lot about applied machine learning on the blog, try the search feature.
- Frequently Asked Questions: The most common questions I get and their answers
- Contact: You can contact me with your question, but one question at a time please.