Problems with a purpose
Implement the pieces you actually use: broadcasting, gradient descent, normalization, attention, and more.
From your first tensor to a transformer from scratch. Build real ML intuition, one working implementation at a time.
Turn the equation into something that runs.
def attention(q, k, v):
# All you need is a few good primitives.
d = q.shape[-1]
scores = q @ k.transpose(-2, -1)
scores = scores / math.sqrt(d)
weights = torch.softmax(scores, dim=-1)
return weights @ vReading a paper and implementing it are different skills. This is where you practice the second one.
Implement the pieces you actually use: broadcasting, gradient descent, normalization, attention, and more.
Run sample checks as you work. Submit against the full test suite and see exactly where your next attempt should focus.
Follow a study plan, save a tricky problem, and pick up your code where you left it. Your progress stays with your account.
Browse freely. Create an account to run code and save your progress.