Machine learning coding challenges

Practise machine learning with 42 coding challenges, from easy to hard. Every challenge runs in your browser with instant tests, an AI review of your code and community solutions to compare.

Easy · 18 Medium · 20 Hard · 4

Skills you'll practise: Gradient descentBackpropagationChain ruleDecision treesRegressionTransformersActivationsAdamAttentionBPEBanditsBayes' theorem
  • Python · C++ · C#
  • Automated tests
  • AI code review
  • Community solutions
226
Challenges
2
Solutions shared
3
Languages

All challenges

Search by topic, language, or difficulty.

42 challenges
Medium

Value Iteration

Compute how valuable each state of a Markov decision process is by repeatedly applying the Bellman optimality update.

You'll learn Bellman equationMDPs
Reinforcement learningaimachine learning
No solutions yet
Medium

Perceptron Learning Algorithm

Train the original perceptron, which updates its weights only when it makes a mistake.

You'll learn PerceptronOnline learning
Neural networksaimachine learning
No solutions yet
Easy

Epsilon-Greedy Multi-Armed Bandit

Balance exploration and exploitation on a multi-armed bandit with epsilon-greedy action selection.

You'll learn Explore vs exploitBandits
Reinforcement learningaimachine learning
No solutions yet
Medium

Q-Learning Updates

Apply the Q-learning update to a stream of experiences and watch rewards flow back to earlier states.

You'll learn Q-learningDiscounted rewards
Reinforcement learningaimachine learning
No solutions yet
Medium

Forward Propagation in a Two-Layer Network

Run inputs through a hidden ReLU layer and a sigmoid output layer.

You'll learn Forward passMulti-layer networks
Neural networksaimachine learning
No solutions yet
Easy

Activation Functions

Apply sigmoid, ReLU, Leaky ReLU or tanh to every value in a list.

You'll learn SigmoidReLU and tanh
Neural networksaimachine learning
No solutions yet
Medium

Layer Normalization

Normalize each row to zero mean and unit variance, then scale and shift it, as every Transformer block does.

You'll learn Layer normTransformers
Neural networksaimachine learning
No solutions yet
Medium

Gradients of a Single Neuron

Use the chain rule to find how the loss changes with each weight and the bias of a sigmoid neuron.

You'll learn Chain ruleGradients
Neural networksaimachine learning
No solutions yet
Easy

Loss Functions: MSE, MAE and Cross-Entropy

Measure how wrong a model's predictions are with mean squared error, mean absolute error or binary cross-entropy.

You'll learn MSECross-entropy
Neural networksaimachine learning
No solutions yet
Easy

Single Artificial Neuron

Compute the output of one neuron: weighted sum of the inputs plus a bias, passed through sigmoid.

You'll learn NeuronsWeighted sums
Neural networksaimachine learning
No solutions yet
Easy

Derivatives of Activation Functions

Compute the derivative of sigmoid, ReLU, Leaky ReLU or tanh at each value, the slopes backpropagation needs.

You'll learn DerivativesBackpropagation
Neural networksaimachine learning
No solutions yet
Medium

Dense Layer Forward Pass

Compute the outputs of a fully connected layer of neurons with a choice of activation.

You'll learn Dense layersActivations
Neural networksaimachine learning
No solutions yet
Hard

Backpropagation in a Two-Layer Network

Compute every weight and bias gradient of a network with one sigmoid hidden layer and one sigmoid output.

You'll learn BackpropagationChain rule
Neural networksaimachine learning
No solutions yet
Medium

Mini-Batch Gradient Descent

Train a linear model by updating the weights after every small batch of samples instead of the whole dataset.

You'll learn Mini-batchesGradient descent
Neural networksaimachine learning
No solutions yet
Easy

Gradient Descent with Momentum

Apply momentum updates, which keep part of the previous step so training speeds up along consistent directions.

You'll learn MomentumOptimizers
Neural networksaimachine learning
No solutions yet
Hard

Multi-Head Self-Attention

Project the input into queries, keys and values, run attention in several heads in parallel, and combine them.

You'll learn Multi-head attentionMatrix projections
aimachine learning
No solutions yet
Easy

Xavier and He Weight Initialization

Compute the range or standard deviation used to initialize the weights of a layer.

You'll learn Xavier and He initTraining stability
Neural networksaimachine learning
No solutions yet
Hard

Train a Neural Network to Solve XOR

Combine everything: train a 2-2-1 sigmoid network with backpropagation until it learns XOR.

You'll learn Neural network trainingXOR problem
Neural networksaimachine learning
No solutions yet