Die Bewertungsfunktion einer Schachengine, unabhängig davon, ob sie als neuronales Netz oder als expliziter Code instanziiert ist, kann jeder Brettposition immer einen Wert zuweisen. Wenn Sie ihm eine Brettposition geben, selbst absurde, die in einem Spiel niemals vorkommen würden, kann es eine Zahl ausspucken, die angibt, wie günstig es für den einen oder anderen Spieler ist. Da die Anzahl der Brettpositionen im Schach unüberschaubar ist, kann das Training nur an einer infinitesimalen Stichprobe des Spielbaums stattfinden. Der Motor ruft nicht einfach zuvor berechnete Werte der Platinenpositionen ab, sondern führt Berechnungen basierend auf der Anordnung der Teile durch. Für ein Beispiel ohne neuronales Netz könnte ein Teil der Bewertung einer Schachmaschine darin bestehen, den Wert jeder Figur auf ihrer Seite zu addieren und den Gesamtwert der Figuren des Gegners zu subtrahieren. Dann,
Wenn der Motor nicht trainiert ist, können die einer Position zugewiesenen Werte genauso gut zufällig sein, da die Parameter der Bewertungsfunktion mit (normalerweise) zufälligen Werten beginnen. Das Ziel einer Trainingsphase ist es, die Parameter der Engine so anzupassen, dass sie den Board-Positionen, bei denen es sich wahrscheinlich um Gewinnzustände für den Spieler handelt, hohe Punktzahlen zuweist.
Aus dem Artikel über AlphaZero (Seite 3):
Die Parameter des tiefen neuronalen Netzwerks in AlphaZero werden durch selbstspielendes Verstärkungslernen ausgehend von zufällig initialisierten Parametern trainiert. Spiele werden gespielt, indem MCTS für beide Spieler Züge auswählt. Am Ende des Spiels wird die Endposition gemäß den Spielregeln bewertet, um das Spielergebnis zu berechnen: -1 für einen Verlust, 0 für ein Unentschieden und +1 für einen Sieg. Die neuronalen Netzwerkparameter werden aktualisiert, um den Fehler zwischen dem vorhergesagten Ergebnis und dem Spielergebnis zu minimieren und die Ähnlichkeit des Richtlinienvektors mit den Suchwahrscheinlichkeiten zu maximieren.
[mathematische Symbole aus dem Zitat entfernt]
Zusammenfassend spielte AlphaZero während des Trainings ein Spiel gegen sich selbst. Wenn das Spiel vorbei ist, wurden das Ergebnis des Spiels und die Genauigkeit seiner Vorhersagen in Bezug auf den Spielverlauf verwendet, um das neuronale Netz so anzupassen, dass es im nächsten Spiel genauer wird. AlphaZero zeichnet nicht jede Position auf, die es gesehen hat, sondern passt sich selbst an, damit es jedes Board, das es in Zukunft sieht, genauer bewerten kann.