Learn from Your Mistakes
by Post Master · Published · Updated
Train tactics from your own games
Today we’re delighted to announce a new and: dare I say: revolutionary feature. Are you ready to dramatically improve your chess? Then read on.
This new feature takes your hand and walks you through the mistakes you made in a game. It lets you figure out a better move for each of them. And finally, if you request it, lichess tells you what the best move was.
Instead of telling you right away what you should have played, this feature gives you a chance to rethink the position by yourself. That’s how we learn.
How to use it
After playing a game, click on the Analysis board button.
Then, at the bottom of the analysis page, click Request a computer analysis:
Your game is now being analysed by the latest Stockfish (best chess artificial intelligence in the world!) on our powerful servers.
Soon you will see the Learn from your mistakes button appear on bottom right:
And now the fun begins!
Lichess has found 10 mistakes I can improve upon. The first one was playing 19…Nf3. It shows my bad move in red, and asks me make another try.
Let’s see… the white king is very exposed…
Hang on! Knight to c4 threatens white queen, and also a mate in two! If white tries to save their queen, then I proceed with Queen to g3, King to h1, Queen to h2 checkmate.
So I play Nc4 and lichess confirms that it is a much better move: and it suggests some continuations for black. Indeed they must defend against mate, at the cost of their queen. I wish I had seen that cute tactic while playing the game.
From here I can either click Next to review another mistake, or put moves on the board to see how the position unfolds.
Pretty cool, isn’t it?
Available on every game!
It’s not only for the game you just played, it’s for every game on the site. Go review your old games, or learn from other players’ games! You can also learn from your opponent’s mistakes by flipping the board (from the analysis options menu, or by pressing f).
It also works on imported games.
And it works with all variants: Chess960, Crazyhouse, Antichess, Horde… you name it.
Here’s the game I used in the example above, if you want to quickly try the feature.
How does it work ?
Here’s some technical details.
For every position of the game, lichess computes the player winning chances. It’s a function of stockfish evaluation in centipawns, but it takes into account the quality of the position.
A move that changes the evaluation by +1 is considered a mistake on an equal position, but not so much if the position was already won or lost. In this case, the evaluation swing must be more important to be considered worth reviewing.
winning chances = 50 + 50 (2 / (1 + exp(-0.004 centipawns)): 1)
Here we see that:
- an advantage of 0 centipawns (+0) grants 50% chances of winning (it’s an equal position).
- an advantage of 100 centipawns (+1) grants 60% chances of winning.
- an advantage of 400 centipawns (+4) is only 83% chances of winning.
This non-linear function helps the trainer select the mistakes that really matter: the ones that decide if a game will be won or lost.
But computers are not so smart in the opening…
I tested the new feature on my favorite opening: 1.e4 e5 2.f4!, a.k.a. the mighty King Gambit (Eco Code C30). Stockfish hates it, and asked me to review it like it was a mistake! Yet it’s considered playable. Actually Carlsen played it against Aronian in 2015.
Not acceptable, Mr Stockfish!
So I plugged lichess masters games database into the Learn from your mistakes feature. The database contains 2 millions of the greatest tournament games ever played.
If at least two masters have played a move in tournament situation, then the move must be playable! So that’s how it works now. The learning feature doublechecks Stockfish’s decisions against the masters database, and if you play a master move, then you won’t be told it was a mistake.
Similarly, if you propose a candidate move while learning, that Stockfish dislikes, but masters did play, then the move is considered correct.
Stockfish + Opening database = success!