← All questions
Question 3 · Choose any 2 of questions 2, 3 and 4 · Due Friday, 20 November 2026, 11:59 pm IST

DeepSeek's "aha moment"

Explain the DeepSeek-R1 "aha moment" in as much depth as you can. Go as far back as you like and build a story around it: what reinforcement learning is, what GRPO does, how rewards work, what actually happened during training, and what it means. Show the mathematics.

New to this topic? That is completely fine. It is completely fine if you have never studied some of these topics before. We want to see how fast you can learn something new, grasp it, and teach it from first principles.

This page is a quick primer, not a script. Use it to get your bearings, then read the links below and anything else you find: other blogs, papers, videos, code. We are judging the story you build, your examples and metaphors, your first-principles thinking, and any experiments you run yourself.

A quick primer

In January 2025, DeepSeek reported something remarkable. They trained a model called DeepSeek-R1-Zero with pure reinforcement learning: no human-written examples of reasoning, only a reward for getting maths and coding answers right in the right format. During training, the model started to stop, re-evaluate and correct itself in the middle of its answers. The paper calls it an “aha moment”.

The algorithm underneath: GRPO

Question"What is 17 × 24?"answer o₁ … 408r = 1A = +1answer o₂ … 418r = 0A = −1answer o₃ … 408r = 1A = +1answer o₄ … 418r = 0A = −1A = (r − mean) / stdrule-based reward: is it correct? is it in the right format?
Group Relative Policy Optimization. Sample a group of answers to the same question, score each one, and push the model towards the answers that did better than the group average. No separate critic network is needed.

For each question qq, sample a group of GG answers o1,…,oGo_1,\dots,o_G from the current policy and score them with rewards rir_i. The advantage of each answer is how much better it did than its group:

A^i=ri−mean(r1,…,rG)std(r1,…,rG)\hat{A}_i = \frac{r_i - \mathrm{mean}(r_1,\dots,r_G)}{\mathrm{std}(r_1,\dots,r_G)}

The model is then updated with a clipped objective, much like PPO, plus a penalty that keeps it close to a reference model:

J(θ)=E[1G∑i=1Gmin⁡ ⁣(ρiA^i, clip(ρi,1−ε,1+ε) A^i)−β DKL(πθ ∥ πref)],ρi=πθ(oi∣q)πθold(oi∣q)\mathcal{J}(\theta) = \mathbb{E}\left[\frac{1}{G}\sum_{i=1}^{G} \min\!\Big(\rho_i \hat{A}_i,\ \mathrm{clip}(\rho_i, 1-\varepsilon, 1+\varepsilon)\,\hat{A}_i\Big) - \beta\, \mathbb{D}_{KL}\big(\pi_\theta \,\|\, \pi_{\mathrm{ref}}\big)\right], \quad \rho_i = \frac{\pi_\theta(o_i\mid q)}{\pi_{\theta_{\mathrm{old}}}(o_i\mid q)}
RL training steps →avg. response length →"Wait, wait. Wait…"the model re-checks its workschematic, not real data
What the paper reports, drawn as a sketch: as RL training goes on, responses get longer as the model learns to spend more time thinking, and reflective behaviour appears.

Questions worth exploring

Read

Watch

Go beyond this list. These are starting points. The best submissions usually bring in something we did not link: an experiment, a paper, a story of their own.

Any doubts or questions?

Just email us. We read every message and are happy to help.

rajatdandekar@vizuara.com