How to Code a Neural Network with Backpropagation in Python (From Scratch)

The backpropagation algorithm is used in the classical feed-forward artificial neural network. It is the technique still used to train […] | Continue reading


@machinelearningmastery.com | 2 years ago

A Gentle Introduction to Serialization for Python

Serialization refers to the process of converting a data object (e.g. Python objects, Tensorflow models) into a format that allows […] | Continue reading


@machinelearningmastery.com | 2 years ago

A Tour of Attention-Based Architectures

As the popularity of attention in machine learning grows, so does the list of neural architectures that incorporate an attention […] | Continue reading


@machinelearningmastery.com | 2 years ago

Clustering Algorithms with Python

Clustering or cluster analysis is an unsupervised learning problem. It is often used as a data analysis technique for discovering […] | Continue reading


@machinelearningmastery.com | 2 years ago

A Gentle Introduction to Gradient Descent Procedure

A quick and easy to follow tutorial on the gradient descent procedure. The algorithm is illustrated using a simple example. | Continue reading


@machinelearningmastery.com | 2 years ago

Difference Between Backpropagation and Stochastic Gradient Descent

There is a lot of confusion for beginners around what algorithm is used to train deep learning neural network models. […] | Continue reading


@machinelearningmastery.com | 2 years ago

Why Machine Learning Does Not Have to Be So Hard

Technical topics like mathematics, physics, and even computer science are taught using a bottom-up approach. This approach involves laying out the topics in an area of study in a logical way with a natural progression in complexity and capability. The problem is, humans are not r … | Continue reading


@machinelearningmastery.com | 3 years ago

A Gentle Introduction to the Rectified Linear Unit (ReLU)

In a neural network, the activation function is responsible for transforming the summed weighted input from the node into the activation of the node or output for that input. The rectified linear activation function is a piecewise linear function that will output the input direct … | Continue reading


@machinelearningmastery.com | 3 years ago

How to Calculate Feature Importance with Python

Feature importance refers to techniques that assign a score to input features based on how useful they are at predicting a target variable. There are many types and sources of feature importance scores, although popular examples include statistical correlation scores, coefficient … | Continue reading


@machinelearningmastery.com | 4 years ago

Gentle Introduction to Eigenvalues and Eigenvectors for Machine Learning

Matrix decompositions are a useful tool for reducing a matrix to their constituent parts in order to simplify a range of more complex operations. Perhaps the most used type of matrix decomposition is the eigendecomposition that decomposes a matrix into eigenvectors and eigenvalue … | Continue reading


@machinelearningmastery.com | 4 years ago

A Gentle Introduction to Logistic Regression with Maximum Likelihood Estimation

Logistic regression is a model for binary classification predictive modeling. The parameters of a logistic regression model can be estimated by the probabilistic framework called maximum likelihood estimation. Under this framework, a probability distribution for the target variab … | Continue reading


@machinelearningmastery.com | 4 years ago

A Gentle Introduction to Bayesian Belief Networks

Probabilistic models can define relationships between variables and be used to calculate probabilities. For example, fully conditional models may require an enormous amount of data to cover all possible cases, and probabilities may be intractable to calculate in practice. Simplif … | Continue reading


@machinelearningmastery.com | 4 years ago

How to Implement Bayesian Optimization from Scratch in Python

Discover a Gentle Introduction to Bayesian Optimization. Global optimization is a challenging problem of finding an input that results in the minimum or maximum cost of a given objective function. Typically, the form of the objective function is complex and intractable to analyze … | Continue reading


@machinelearningmastery.com | 4 years ago

How to Develop a Naive Bayes Classifier from Scratch in Python

Classification is a predictive modeling problem that involves assigning a label to a given input data sample. The problem of classification predictive modeling can be framed as calculating the conditional probability of a class label given a data sample. Bayes Theorem provides a … | Continue reading


@machinelearningmastery.com | 4 years ago

A Gentle Introduction to Bayes Theorem for Machine Learning

Bayes Theorem provides a principled way for calculating a conditional probability. It is a deceptively simple calculation, although it can be used to easily calculate the conditional probability of events where intuition often fails. Bayes Theorem also provides a way for thinking … | Continue reading


@machinelearningmastery.com | 4 years ago

A Gentle Introduction to Uncertainty in Machine Learning

Applied machine learning requires managing uncertainty. There are many sources of uncertainty in a machine learning project, including variance in the specific data values, the sample of data collected from the domain, and in the imperfect nature of any models developed from such … | Continue reading


@machinelearningmastery.com | 4 years ago

Generative Adversarial Networks with Python

Step-by-step tutorials on generative adversarial networks in python for image synthesis and image translation. | Continue reading


@machinelearningmastery.com | 4 years ago

How to Develop a 1D GAN from Scratch

Generative Adversarial Networks, or GANs for short, are a deep learning architecture for training powerful generator models. A generator model is capable of generating new artificial samples that plausibly could have come from an existing distribution of samples. GANs are compris … | Continue reading


@machinelearningmastery.com | 4 years ago

A Gentle Introduction to 1×1 Convolutions of Convolutional Neural Networks

Pooling can be used to down sample the content of feature maps, reducing their width and height whilst maintaining their salient features. A problem with deep convolutional neural networks is that the number of feature maps often increases with the depth of the network. This prob … | Continue reading


@machinelearningmastery.com | 5 years ago

Applied Machine Learning Is a Meritocracy

When making a start in a new field it is common to feel overwhelmed. You may lack confidence or feel as though you are not good enough or that you are lacking some prerequisite. You will explore these issues in this post and learn that such feelings can lead to actions that can c … | Continue reading


@machinelearningmastery.com | 5 years ago

Your First Machine Learning Project in Python Step-By-Step

Do you want to do machine learning using Python, but you’re having trouble getting started? In this post, you will complete your first machine learning project using Python. In this step-by-step tutorial you will: Download and install Python SciPy and get the most useful package … | Continue reading


@machinelearningmastery.com | 5 years ago

Three Must-Own Books for Deep Learning Practitioners

Developing neural networks is often referred to as a dark art. The reason for this is that being skilled at developing neural network models comes from experience. There are no reliable methods to analytically calculate how to design a “good” or “best” model for your specific dat … | Continue reading


@machinelearningmastery.com | 5 years ago

Equally, Linearly, and Exponentially Weighted Average of Neural Network Weights

The training process of neural networks is a challenging optimization process that can often fail to converge. This can mean that the model at the end of training may not be a stable or best-performing set of weights to use as a final model. One approach to address this problem i … | Continue reading


@machinelearningmastery.com | 5 years ago

Practical Deep Learning for Coders (Review)

Practical deep learning is a challenging subject in which to get started. It is often taught in a bottom-up manner, requiring that you first get familiar with linear algebra, calculus, and mathematical optimization before eventually learning the neural network techniques. This ca … | Continue reading


@machinelearningmastery.com | 5 years ago

Comparing Classical and Machine Learning Methods for Time Series Forecasting

Machine learning and deep learning methods are often reported to be the key solution to all predictive modeling problems. An important recent study evaluated and compared the performance of many classical and modern machine learning and deep learning methods on a large and divers … | Continue reading


@machinelearningmastery.com | 5 years ago

How to Model Human Activity from Smartphone Data

Human activity recognition is the problem of classifying sequences of accelerometer data recorded by specialized harnesses or smart phones into known well-defined movements. It is a challenging problem given the large number of observations produced each second, the temporal natu … | Continue reading


@machinelearningmastery.com | 5 years ago

How and When to Use ROC Curves and Precision-Recall Curves for Classification

It can be more flexible to predict probabilities of an observation belonging to each class in a classification problem rather than predicting classes directly. This flexibility comes from the way that probabilities may be interpreted using different thresholds that allow the oper … | Continue reading


@machinelearningmastery.com | 5 years ago

Taxonomy of Time Series Forecasting Problems

When you are presented with a new time series forecasting problem, there are many things to consider. The choice that you make directly impacts each step of the project from the design of a test harness to evaluate forecast models to the fundamental difficulty of the forecast pro … | Continue reading


@machinelearningmastery.com | 5 years ago

How to Calculate Nonparametric Rank Correlation in Python

Correlation is a measure of the association between two variables. It is easy to calculate and interpret when both variables have a well understood Gaussian distribution. When we do not know the distribution of the variables, we must use nonparametric rank correlation methods. In … | Continue reading


@machinelearningmastery.com | 5 years ago

Statistics Books for Machine Learning

Statistical methods are used at each step in an applied machine learning project. This means it is important to have a strong grasp of the fundamentals of the key findings from statistics and a working knowledge of relevant statistical methods. Unfortunately, statistics is not co … | Continue reading


@machinelearningmastery.com | 5 years ago