ML-powered analytics for following top-level chess, built by a data scientist and chess lover. Real-time tracking of current events, and deep analysis of World Championship matches, historical tournaments, and famous games: https://t.co/aw4QQvwzbn
A peril of live chess analysis -- the model is thoroughly confused by the nonsensical (and incorrect) end of @NodirbekGM vs @ArjunErigaisi at @Chennai_GM, as the feed from the board went wild. I guess it gets corrected later. Will need to build something to handle this! https://t.co/LxnkuDoOpI
Oops, 1970! Also interesting we were prepared to give !! to 14...Bxe3, but it's hard to argue with Spassky's ...Rh1! These annotations aren't directly produced by the models; they are human-tuned rules built on model outputs and features.
Perusing some famous #chess games with analysis from modern machine learning models (much more coming soon!) -- it predicted a 12% chance Spassky would under-promote here against Larsen in 1978. Do you think he considered it?! https://t.co/tPvKXEC9X9
For reference, a 0% number for "precision" corresponds to play at the expected level for a ~2600 GM in a classical game. The highest theoretical number is 100%, corresponding to avoiding all expected EV loss. And numbers far below 0% are common! This is maybe not so intuitive, but highly informative -- it's rare for both players to achieve numbers this high in a full game.
@BielFestival An extremely well-played game, according to ML-powered chess analytics: https://t.co/Z7e9iXnXmo The machine not only gives an exclam to 42. e5+!, but also 43. Nxe5! and saw no mistakes
One game finished before I woke up! ML result probabilities make it clear at a glance that @LevAronian managed a boring draw with black https://t.co/A908Vept9k
Hah .. we should chat! I'm using LightGBM, which is like XGBoost, but more recent. It performs better for me. And yeah -- for classical GM games I get better perf by excluding other time controls, even for less data. There are a lot of mistakes and random flagging etc. that happens in fast games which makes it more difficult.
I have a lot of features, some I think are quite clever :) but yes, this isn't super hard to do! Requires some cash to produce the evals for training which I have used AWS machines for. I don't need to make any money off this, it's a hobby project and I'm happy to sink my own cash into building and maintaining it.
It's possible to be more accurate for blitz games of course by training on them directly, but for now I think that's not the most interesting presentation. I wonder why chesscom doesn't do something similar! But I suspect they wouldn't do it as well as me if they tried :)
... there's nothing player-specific at all. I do have a rating-aware version which is more accurate but I think less interesting, and the site doesn't use it. It does know things like what opening was played, and the average rating level of the two players, which aids prediction. Write-up here: https://t.co/GodvyweNuT
SF evals are included but the model for result prediction has over 140 features total. There are: evals of various depths; evals for candidate moves and their policy probability (which is something like how natural they are, AlphaZero used this). Positional features (think pieces, mobility, etc.) and then also historical features for recent moves and some that span the entire game. Overall performance easily beats SF lines alone, and without the evals needing to be very deep.
@DanielRensch For example from yesterday’s action: https://t.co/rGgvJBApFE Follow classical Biel Masters tomorrow and Chennai later this week with me live!
Hi Danny! At https://t.co/PRsQ9ZE2FH I’m doing it by using machine learning to predict all three results in real time (predicting and annotating moves also). I’m a data scientist and ~2000 USCF player and for me, viewing the result probabilities bars move-by-move does exactly this: shows what happened in the game immediately at a glance, much better than raw evals
... and on the other hand, here's what it looks like when players decide to leave a fighting position unfinished, as Erdogmus stopped his bleeding in round 4: https://t.co/NtZasq2iAI
It's so informative viewing ML-powered #chess analysis move-by-move. Here's one of today's exciting rapid draws at @BielFestival, a fighting game where both sides had chances, then black held obtaining a clear draw: https://t.co/rGgvJBApFE
ok, make it 4/4 ?! I'm still learning X! @BielFestival is another tournament (like @NorwayChess ) where chessds won't show the correct tournament scoring. I'm treating rapid, classical, and blitz as three separate events with a default crosstable. Why is scoring so complicated?! It's on the to-do list :)
First ever coverage of fast #chess events happening now at ChessDS! Live, ML-powered analysis worked this morning for five rounds as Aronian raced out a lead at @BielFestival . The precision metric is lower than previous events -- as expected! It's calibrated for GM-level classical games.
3/3! Covering fast games we're using the fast model which gives predictions for new moves in fractions of a second. When the game is done, a full pass with deeper evals is completed to harden analysis. But the fast model is almost as accurate! Deep evals are not needed for this. Example game from today: https://t.co/dfpAQ9Wv5g