I would like to start a machine learning project that should recognize whether a player is a person or a computer.

I have a data set with labeled labels (computer or human).

In your opinion, what would be good input parameters? I would like to also include use the chess position and the move. But which coding would be appropriate?

Other parameters would be some positional and material evaluation values and the centipawn loss


Coming from a machine learning background, although this sounds like a supervised learning task, do not expect any decent results.

Most players today use the computer to analyze positions and prepare quite deep with the engines. So the distinction there is lost in most medium to high level game play.

Also, simply knowing whether a game was played by a computer or not is not sufficient. To train any model, you need to have an intuitive understanding of your data. In this case, simply the sequence of moves played is not sufficient.

But if you're still bent on trying your hand at this, you could look into sequence classification using LSTM networks using an encoded matrix as inputs, but I don't see it working very well at all. If a human can't tell the difference, any model you develop won't be able to either.

  • 1
    "So the distinction there is lost in most medium to high level game play." Disagree. It's certainly possible to seperate GM and Stockfish, although maybe not GM and Lc0. – null Aug 23 '20 at 10:12
  • What you're describing is hindsight bias and is very important to root out. What differentiates a move between an engine and a human? You can't unless you know which is which. It is then you get the feeling of "i knew it all along" and think it can be predicted. Take my word on this, what you're trying to achieve is a classification task and it can't be done the way you want to. – tehem Aug 23 '20 at 13:14
  • They can do that based on decades of studying and instinct. But sure, you seem to have it all figured out. Go ahead. I'm sure you're smart enough to develop the model. – tehem Aug 23 '20 at 15:55
  • 1
    For the first point discussing preparation, the project could only use moves in a game once it is clearly out of known theory. – Inertial Ignorance Aug 23 '20 at 22:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.