How can I automatically extract features from a position? I am working on a project where I take a chess board position (FEN string converted to binary) &amp; it's evaluation score and feed it to a neural network. My aim is to make the neural network differentiate between good and bad positions.

How I encode the position : There are 12 unique pieces in chess i.e pawn, rook, knight, bishop, queen and king for white as well as black. I encode each piece using 4 bits with 0000 denoting an empty square. So the 64 squares are encoded into 256 bits and I use 6 more bits to denote game state like whose turn it is to move, king-castle status, etc.

Problem : Since the input space for chess positions is neither smooth nor uni-modal (one small change in the board position can result in a huge change in the evaluation score), the neural network doesn't learn well. Now, the next logical thing to somehow extract useful features (like material difference, center control, etc) and feed it to the network.

I do not want to hand pick the features as I want the network to learn everything by itself. Therefore I am thinking of extracting features automatically using autoencoders. Is there any better way to accomplish this?

Summary : What is the best way to automatically extract features from a chess board position so that it can be fed into a neural network?

UPDATE : To generate training data, I have modified Stockfish to dump it's evaluation process into a log file. So every new move(position) it considers is written to a file as an FEN string along with it's eval score
I do not want to hand pick the features as I want the network to learn everything by itself. 


There is an AI-Koan concerning this situation:


  In the days when Sussman was a novice, Minsky once came to him as he
  sat hacking at the PDP-6. 
  
  "What are you doing?", asked Minsky. 
  
  "I am training a randomly wired neural net to play Tic-Tac-Toe" Sussman
  replied. 
  
  "Why is the net wired randomly?", asked Minsky. 
  
  "I do not  want it to have any preconceptions of how to play", Sussman said.
  
  Minsky then shut his eyes. 
  
  "Why do you close your eyes?", Sussman asked his teacher. 
  
  "So that the room will be empty." 
  
  At that moment, Sussman was enlightened.


Think about it.