I can see my Accuracy in Chess Insights, but can't see my average opponent's Accuracy. Relative Accuracy (advantage or performance) would be interesting.
Relative Accuracy = my Accuracy minus my opponent's Accuracy
Boring games have high accuracy, while wild games have low accuracy, for both players. I prefer wild games, but don't like the low accuracy.
Filtering Relative Accuracy by game phase could indicate a player's weakness (opening, middlegame, endgame), and so guide a study plan.
I can see my Accuracy in Chess Insights, but can't see my average opponent's Accuracy. Relative Accuracy (advantage or performance) would be interesting.
Relative Accuracy = my Accuracy minus my opponent's Accuracy
Boring games have high accuracy, while wild games have low accuracy, for both players. I prefer wild games, but don't like the low accuracy.
Filtering Relative Accuracy by game phase could indicate a player's weakness (opening, middlegame, endgame), and so guide a study plan.
I don't think the idea is bad in principle but what would be completely wrong, IMHO, is using simple subtraction of the accuracy values which are calculated in a very nonlinear way.
I don't think the idea is bad in principle but what would be completely wrong, IMHO, is using simple subtraction of the accuracy values which are calculated in a very nonlinear way.
Yes, the Accuracy calculations are not easy to understand. The Win% is easy to understand: losing a pawn in an equal position will decrease winning chances by about 10%. Losing a pawn in a lopsided position has litle effect. The scale seems correct to me, and is easy to understand.
Converting change in Win% to Move Accuracy is less intuitive. A move that decreases Win% by 10% has a 64% Move Accuracy. A move that decreases Win% by 20% has a 40% Move Accuracy.
Converting Move Accuracy to Game Accuracy is beyond explanation, which makes Game Accuracy useless, to me anyway.
=== game accuracy ===
Game Accuracy not explained well on website #15164
https://github.com/lichess-org/lila/issues/15164
Game Accuracy is the average of the volatility-weighted mean and the harmonic mean of the Move Accuracy. For example, one bad move out of ten (ignoring volatility weighting):
one move with (winPercentBefore - winPercentAfter = 30): Accuracy = 25
9 moves with 100 Accuracy.
mean = 92.5
harmonic mean = 76.9
average of these = 84.7
The bad move gets extra weight.
Yes, the Accuracy calculations are not easy to understand. The Win% is easy to understand: losing a pawn in an equal position will decrease winning chances by about 10%. Losing a pawn in a lopsided position has litle effect. The scale seems correct to me, and is easy to understand.
Converting change in Win% to Move Accuracy is less intuitive. A move that decreases Win% by 10% has a 64% Move Accuracy. A move that decreases Win% by 20% has a 40% Move Accuracy.
Converting Move Accuracy to Game Accuracy is beyond explanation, which makes Game Accuracy useless, to me anyway.
=== game accuracy ===
Game Accuracy not explained well on website #15164
https://github.com/lichess-org/lila/issues/15164
Game Accuracy is the average of the volatility-weighted mean and the harmonic mean of the Move Accuracy. For example, one bad move out of ten (ignoring volatility weighting):
one move with (winPercentBefore - winPercentAfter = 30): Accuracy = 25
9 moves with 100 Accuracy.
mean = 92.5
harmonic mean = 76.9
average of these = 84.7
The bad move gets extra weight.
Number of mistakes and blunders is a good indicator of game quality for me. A single game quality number could be calculated using the worst 5 moves of the game (call this metric 5WinChg, lower is better). 5WinChg will range from 0 to 500, and the difference between white and black will be close to 50. Many games are determined by a few moves. The 5WinChg metric is easy to understand. 5WinChg is the change in winning chances from the worst 5 moves.
For each move, WinChg = Win%Before - Win%After
5WinChg = sum of the largest 5 WinChg for each player.
The 5WinChg metric will not help evaluate performance by game phase. All that is needed for that is the evaluation at the end of each game phase. Convert these evaluations (centipawns) into Win%, and find the changes in Win% during each game phase.
WinChgOpen = Win%start - Win%Opening
WinChgMid = Win%Opening - Win%Mid
WinChgEnd = Win%Mid - Win%End
=====
For example, look at this game:
https://lichess.org/study/GNy9HDqD/c8vWS3K4
White makes 2 Blunders in this 25 move game, with a 5WinChg of 105. Black makes 1 Blunder with a 5WinChg of 41.
For white in the example game:
WinChgOpen = -5
WinChgMid = 38
WinChgEnd = -80
phase, eval, Win%, chgWin
start, 0.20, 52
open, -0.31, 47, -5
mid, 4.85, 86, 38
end, -7.79, 5, -80
Number of mistakes and blunders is a good indicator of game quality for me. A single game quality number could be calculated using the worst 5 moves of the game (call this metric 5WinChg, lower is better). 5WinChg will range from 0 to 500, and the difference between white and black will be close to 50. Many games are determined by a few moves. The 5WinChg metric is easy to understand. 5WinChg is the change in winning chances from the worst 5 moves.
For each move, WinChg = Win%Before - Win%After
5WinChg = sum of the largest 5 WinChg for each player.
The 5WinChg metric will not help evaluate performance by game phase. All that is needed for that is the evaluation at the end of each game phase. Convert these evaluations (centipawns) into Win%, and find the changes in Win% during each game phase.
WinChgOpen = Win%start - Win%Opening
WinChgMid = Win%Opening - Win%Mid
WinChgEnd = Win%Mid - Win%End
=====
For example, look at this game:
https://lichess.org/study/GNy9HDqD/c8vWS3K4
White makes 2 Blunders in this 25 move game, with a 5WinChg of 105. Black makes 1 Blunder with a 5WinChg of 41.
For white in the example game:
WinChgOpen = -5
WinChgMid = 38
WinChgEnd = -80
phase, eval, Win%, chgWin
start, 0.20, 52
open, -0.31, 47, -5
mid, 4.85, 86, 38
end, -7.79, 5, -80
@Adessertfox said in #4:
Number of mistakes and blunders is a good indicator of game quality for me.
What a coincidence, just a few minutes ago I wrote this comment about this:
https://lichess.org/forum/lichess-feedback/no-mistakes-no-blunders-yet-lost-by-move-14-and-93-accuracy#10
Another problem I didn't mention there is that the engine does not distinguish between the usual "game losing" blunder and "missed opportunity". Thus you can sometimes see a series of blunders from both sides when both players keep consistently missing some difficult tactic.
@Adessertfox said in #4:
> Number of mistakes and blunders is a good indicator of game quality for me.
What a coincidence, just a few minutes ago I wrote this comment about this:
https://lichess.org/forum/lichess-feedback/no-mistakes-no-blunders-yet-lost-by-move-14-and-93-accuracy#10
Another problem I didn't mention there is that the engine does not distinguish between the usual "game losing" blunder and "missed opportunity". Thus you can sometimes see a series of blunders from both sides when both players keep consistently missing some difficult tactic.
My examples show a blunder reduces Win% by more than 15, a mistake by 10 to 15 and inaccuracy by 5 to 10. For example, in the OP game, black's move 14 is not an Inaccuracy, and move 21 is an Inaccuracy. ChgWin% is 4.3 for move 14, and 5.7 for move 21.
moves, eval1, eval2, Win%1, Win%2, ChgWin%,
14. Bb5 { [%eval -2.68] } 14... Qc7 { [%eval -2.11] } , -2.68, -2.11, 27.2, 31.5, 4.3,
21. Nd2 { [%eval -5.26] } 21... Bh4?! { [%eval -4.06] }, -5.26, -4.06, 12.6, 18.3, 5.7, { Inaccuracy }
Another example:
- e4 c5 2. Nf3 Nc6 3. Bb5 Qc7 4. O-O Ne5 5. d4 Nxf3+ 6. Qxf3 cxd4 7. Bf4 e5 8. Bc1 Nf6 9. c3 Bc5 10. Bg5 a6 11. Bxf6 axb5 12. Bxg7 Rg8 13. Bf6 b4 14. cxb4 Bxb4 15. Qh5 d6 16. Qxh7 { [%eval 0.81] } 16... Rg6?? { [%eval 2.84] } { Blunder }
Black's move 16 is a blunder and changes Win% by 17.
%eval 0.81 transforms to Win% 57
%eval 2.84 transforms to Win% 74
Sometimes move 16 is a mistake (eval 1.1 -> 2.7) and sometimes a blunder (eval 0.6 -> 3.2).
eval -> Win%
110 -> 60
270 -> 73
change in Win% of 13 is a Mistake.
eval -> Win%
60 -> 56
320 -> 76
change in Win% of 20 is a Blunder.
My examples show a blunder reduces Win% by more than 15, a mistake by 10 to 15 and inaccuracy by 5 to 10. For example, in the OP game, black's move 14 is not an Inaccuracy, and move 21 is an Inaccuracy. ChgWin% is 4.3 for move 14, and 5.7 for move 21.
moves, eval1, eval2, Win%1, Win%2, ChgWin%,
14. Bb5 { [%eval -2.68] } 14... Qc7 { [%eval -2.11] } , -2.68, -2.11, 27.2, 31.5, 4.3,
21. Nd2 { [%eval -5.26] } 21... Bh4?! { [%eval -4.06] }, -5.26, -4.06, 12.6, 18.3, 5.7, { Inaccuracy }
Another example:
1. e4 c5 2. Nf3 Nc6 3. Bb5 Qc7 4. O-O Ne5 5. d4 Nxf3+ 6. Qxf3 cxd4 7. Bf4 e5 8. Bc1 Nf6 9. c3 Bc5 10. Bg5 a6 11. Bxf6 axb5 12. Bxg7 Rg8 13. Bf6 b4 14. cxb4 Bxb4 15. Qh5 d6 16. Qxh7 { [%eval 0.81] } 16... Rg6?? { [%eval 2.84] } { Blunder }
Black's move 16 is a blunder and changes Win% by 17.
%eval 0.81 transforms to Win% 57
%eval 2.84 transforms to Win% 74
Sometimes move 16 is a mistake (eval 1.1 -> 2.7) and sometimes a blunder (eval 0.6 -> 3.2).
eval -> Win%
110 -> 60
270 -> 73
change in Win% of 13 is a Mistake.
eval -> Win%
60 -> 56
320 -> 76
change in Win% of 20 is a Blunder.
not a bad suggestion as a principle, the one issue may be that everyone has the choice to leave all their insights private (default) or public. I leave mine public and nothing wrong with the idea of everyone being public, open transparent as much as possible, then it would be easier to look at more data for everyone and see how players of different levels compare or indeed differences between players of same levels due to playing style etc. but if the option to allow privacy for these insights needs to be kept then your idea would allow some data from others insights to be viewed even if they prefer to keep it private - but other than that as an idea not bad..
not a bad suggestion as a principle, the one issue may be that everyone has the choice to leave all their insights private (default) or public. I leave mine public and nothing wrong with the idea of everyone being public, open transparent as much as possible, then it would be easier to look at more data for everyone and see how players of different levels compare or indeed differences between players of same levels due to playing style etc. but if the option to allow privacy for these insights needs to be kept then your idea would allow some data from others insights to be viewed even if they prefer to keep it private - but other than that as an idea not bad..
I don't think Relative Accuracy is worthwhile. Instead, I am trying out the following:
- Download my games from lichess.
- Identify the end of each game phase: opening, middlegame, endgame.
- Use an engine to evaluate the positions at the end of each game phase.
- Convert the centipawn evaluations into Win%. Win%open, Win%mid, Win%end.
- Calculate the Win% change for each phase.
WCopen = Win%open - Win%start
WCmid = Win%mid - Win%open
WCend = Win%end - Win%mid
Win% = 50 + 50 * (2 / (1 + exp(-0.00368208 * centipawns)) - 1)
This is similar to this study:
Performance by Game Phase, Expectations vs. Reality, Dec 27, 2020
"The results were somewhat inconclusive: the raw data did not seem to show me getting weaker as the game went on, but after the sigmoid transformation they did. I'm inclined to trust the sigmoid version more for the reasons discussed above, but my self-assessment of my endgame skills may have been overblown: the difference, if it exists, was not large or obvious."
https://natesolon.github.io/blog/endgame
I don't think Relative Accuracy is worthwhile. Instead, I am trying out the following:
1. Download my games from lichess.
2. Identify the end of each game phase: opening, middlegame, endgame.
3. Use an engine to evaluate the positions at the end of each game phase.
4. Convert the centipawn evaluations into Win%. Win%open, Win%mid, Win%end.
5. Calculate the Win% change for each phase.
WCopen = Win%open - Win%start
WCmid = Win%mid - Win%open
WCend = Win%end - Win%mid
Win% = 50 + 50 * (2 / (1 + exp(-0.00368208 * centipawns)) - 1)
This is similar to this study:
Performance by Game Phase, Expectations vs. Reality, Dec 27, 2020
"The results were somewhat inconclusive: the raw data did not seem to show me getting weaker as the game went on, but after the sigmoid transformation they did. I'm inclined to trust the sigmoid version more for the reasons discussed above, but my self-assessment of my endgame skills may have been overblown: the difference, if it exists, was not large or obvious."
https://natesolon.github.io/blog/endgame
Nnnnn