4 ms·
> Obviously we know they were the result of a deep minimax-style parallel search with a certain evaluation function, and we could simulate a similar search by h
by tromp 4y ago
> Obviously we know they were the result of a deep minimax-style parallel search with a certain evaluation function, and we could simulate a similar search by hand if we wanted to.
You don't really need to though. The computer can justify its evaluation with a principal variation (best play by both sides) leading to a leaf position of the same value. And if a human were to wonder why at any point in this variation, some other move is inferior, the computer can again easily show a principal variation branching off from that other move, leading to a worse (or equal) result for the deviating player. In this way, minimax results are FAR better justifiable than neural net results.
- bombcar 4y agoExactly, the Deep Blue's move explanations are boring - they all boil down to "based on the inputs and rules programmed, this line of moves has the best overall outcome to a depth of X" where X is however deep it goes. You can try to translate that to human methods of understanding, but that's not how the computer "thinks", and attempting to do that translation leads to misunderstanding. Kasparov may make moves because he wants to get a better board position or knows his opponent is weak to certain positions (I have no idea how experts explain moves) but the computer isn't programmed that way.
- Spivak 4y agoI don’t think that’s weird at all, I think humans can intuitively grasp “I simulated 100,000 games starting from the current board state and going at most 50 moves ahead and in games where you did X you reached a strong position most often.” Is that a useful explanation for a human who is training a wetware ML model, not really. But it’s really understandable compared to trying to explain neural nets.
- nanidin 4y ago>in games where you did X you reached a strong position most often. FYI in standard minimax, the search is for the move that leads to the strongest outcome - the "most often" bit doesn't factor into the decision making process.
- karpierz 4y agoThat's punting the problem of explaining down the line. All the PV tells you is the computer is making this move because it thinks that 20 moves down the line, you'll end up in some desirable position. It doesn't abstract or summarize any understanding. If you say, "well, what if they do Kf3 instead", all it can show is another PV. It can't tell you "knights on the rim are dim", or "this pawn needs to move now to prevent the bishop entering the position in 5 moves". You can try to build an explanation on top of a chess engine, but it's very difficult to come up with generalizable or clear explanations beyond very broad heuristics (like "knights on the rim are dim").
- deleted 4y ago[deleted]
- tromp 4y agoIt doesn't provide a clear explanation in those terms, and in some fraction of positions, there is no simple such explanation. But I believe that in a decent fraction of cases, a human chess player probing PVs will gain a reasonable understanding of the winning or drawing strategy involved, and that such interactive PV probing is often a better form of explanation than a concise non-interactive textual one could offer. There is no equivalent to that in neural networks. Note that PVs explain the connection between the root position of minimax search and a leaf positions. Evaluation at the latter is easy to explain in terms of features like material, mobility, pawn structure, king safety, etcetera.
- karpierz 4y agoI agree that a human can use the PV to get insight into why a move might be good. I also agree that non-interactive explanations provided by a chess engine will often be inferior. I think one way to break it down might be that the PV (or sets of PVs) can provide a useful explanation of tactical value (Kf3 leads to mate in 6), but struggles to explain strategic value (Kf3 leads to the positioning opening up, which broadly makes it harder for you to press your advantage). > There is no equivalent to that in neural networks. The first example that comes to mind is using backpropagation to determine how much influence each value had on the output result, and then rendering it in a human-readable way. Stuff like this: https://miro.medium.com/max/4800/0*Y3Yi7cEueF0XLZP- https://miro.medium.com/max/4800/0*Y3Yi7cEueF0XLZP- https://miro.medium.com/max/1100/1*IPhQ12OKnxH31AQNja6FnQ.png https://miro.medium.com/max/1100/1*IPhQ12OKnxH31AQNja6FnQ.pn...