Schachcomputer.info Community

Schachcomputer.info Community (https://www.schachcomputer.info/forum/index.php)
-   Die ganze Welt der Schachcomputer / World of chess computers (https://www.schachcomputer.info/forum/forumdisplay.php?f=2)
-   -   Tipp: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread) (https://www.schachcomputer.info/forum/showthread.php?t=5030)

StPohl 08.06.2020 14:40

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Sehr empfehlens- und lesenswert (und vielleicht noch nicht allen bekannt), ist die folgende Website, die laufend erweitert und verbessert wird:
http://lczero.org/

Hier finden sich viele nützliche Informationen. Für Laien (Einbindung von Lc0 in diversen GUIs, Download-Links von Netzen) bis hin zu Kennern (Rubrik Development ist sehr interessant!) auf jeden Fall sehr informativ. Aber (natürlich) alles auf Englisch, das ist klar.

Chessguru 08.06.2020 16:44

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hallo Stefan,

Zitieren:

Zitat von StPohl (Beitrag 91541)
Hoffe geholfen zu haben.

danke dir! Hast du definitiv.

Ich hatte Lc0 auf der Pi schon mehrfach getestet und wie du schon angemerkt hattest, das Teil spielt selbst auf dieser schwachen Hardware unglaublich stark auf.

Daher suche ich verschiedene Netze. Größere Netze sind nicht das Problem, funktioniert auch. Aber mir geht es darum, eine gewisse Variabilität zu erreichen. Soll ja auch für den Sterblichen interessant bleiben.

Gruß
Micha

BHGP 08.06.2020 18:17

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
[QUOTE=StPohl;91541]Ja, sicher. Für eine so langsame Hardware sind auf jeden Fall nur die 10x128 Netze zu empfehlen. Alle größeren werden viel zu langsam abgearbeitet. Zudem sind diese Netze auch nur gut 6MByte groß, nehmen also nicht viel Speicherplatz ein. Generell gilt für alle Netze, ganz besonders aber für die kleinen, daß elementare Endspiele oft nicht beherrscht werden. Es ist also dringend zu empfehlen, die 3&4er Syzygy Bases lc0 zur Verfügung zu stellen. Falls genügend Speicher vorhanden ist, noch besser die 3-5er Syzygy Bases (knapp 1 GByte Speicherbedarf). Dann werden viele Endspiele immer noch nicht sehr elegant gespielt, aber wenigstens erfolgreich.

Was mir nicht so ganz klar ist: Einerseits soll man auf schwacher Hardware die kleinen Netze nutzen, andererseits ist Lc0 auch dafür bekannt, quasi ohne Bedenkzeit gute Züge zu spielen. Warum also zumindest bei der Analyse nicht auch ein großen Netz mit viel Wissen nutzen? Bei Engine-Zweikämpfen sieht das natürlich anderes aus...

StPohl 08.06.2020 18:53

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von BHGP (Beitrag 91559)
Was mir nicht so ganz klar ist: Einerseits soll man auf schwacher Hardware die kleinen Netze nutzen, andererseits ist Lc0 auch dafür bekannt, quasi ohne Bedenkzeit gute Züge zu spielen. Warum also zumindest bei der Analyse nicht auch ein großen Netz mit viel Wissen nutzen? Bei Engine-Zweikämpfen sieht das natürlich anderes aus...

Ja, logisch, für Analysen auf dem PC nimmt man grosse Netze. Ich bezog mich jetzt auf die Nutzung im DGT Pi Brettcomputer. Der ist nun so langsam, dass man lc0 mit Berechnung nur mit kleinen Netzen sinnvoll betreiben kann. Oder eben alternativ ganz ohne MCTS-Suche und dann braucht man natürlich ein grosses Netz.

StPohl 08.06.2020 18:56

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von Chessguru (Beitrag 91555)
Hallo Stefan,



danke dir! Hast du definitiv.

Ich hatte Lc0 auf der Pi schon mehrfach getestet und wie du schon angemerkt hattest, das Teil spielt selbst auf dieser schwachen Hardware unglaublich stark auf.

Daher suche ich verschiedene Netze. Größere Netze sind nicht das Problem, funktioniert auch. Aber mir geht es darum, eine gewisse Variabilität zu erreichen. Soll ja auch für den Sterblichen interessant bleiben.

Gruß
Micha

Naja, es gibt noch älteren Kleinstnetze, von D.Kappe, die schwächer spielen. Die wären hier zu finden.
https://github.com/dkappe/leela-ches.../wiki/Bad-Gyal
https://github.com/dkappe/leela-ches...eela-style-net

Ob diese Netze aber noch vernünftig und mit lc0-Stil spielen, das kann ich nicht sagen. Müsstest du ausprobieren.

BHGP 12.06.2020 18:13

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Mal eher eine technische Frage:

Bei mir läuft Lc0 mit einer RTX-Karte auf 2 Threads. Warum zeigt mir der Ressourcenmonitor von Windoof 10 Prof. aber 8 Threads an? Ich bin mir ziemlich sicher, dass ich LC0 nur einmal gestartet habe?!

Robert 15.06.2020 17:23

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von BHGP (Beitrag 91753)
Bei mir läuft Lc0 mit einer RTX-Karte auf 2 Threads. Warum zeigt mir der Ressourcenmonitor von Windoof 10 Prof. aber 8 Threads an? Ich bin mir ziemlich sicher, dass ich LC0 nur einmal gestartet habe?!

Ich hoffe, ich habe Dich richtig verstanden, aber der Windows-Ressourcenmonitor zeigt doch nur CPU-Threads an?

Viele Grüße
Robert

Gerd v.d. Loo 16.06.2020 13:22

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hallo, eine Frage zu Lc0.
Bekanntlich erarbeitet sich Leela ihr Schachwissen durch Spielen gegen sich selbst, wobei ein selbstlernendes neuronales Netz (NN) zum Tragen kommt.

Wenn ich nun gegen Leela spiele, lernt dann das NN aus diesen Spielen immer noch dazu oder nicht?

Danke für Hinweise und viele Grüße,

Gerd

Mythbuster 16.06.2020 13:48

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hallo Gerd,
da musst Du schon sehr, sehr viele Partien spielen, dass das Auswirkungen haben könnte ... ich weiß aber nicht, ob dieses Feature überhaupt vorhanden ist.

By the way, an alle, die von dieser Art Engines begeistert sind: Ich habe FatFritz ... der Unterschied ist ja, dass hier das "Lernen" auf den Datenbanken von ChessBase basiert, mit all den von Menschen gespielten Partien.

Ich muss sagen, das, was FatFritz abliefert, begeistert mich unendlich. Ich habe neben der GPU Version auch die CPU Version installiert ... und die ist richtig interessant. Denn auf meiner nVidia 2080 Super MaxQ ist FatFritz einfach viel zu mächtig ...

Ich kann aber meine Notebook CPU auf 800 MHz drosseln und bei FatFritz nur einen CPU Kern zuweisen. Jetzt berechnet FatFritz, je nach Stellung, nur zwischen 20 und 50 Züge pro Sekunde ... das Ergebnis: Selbst auf diesem Niveau ist FatFritz ein würdiger Gegner für die Mephisto TM. Und der Stil ist herrlich aktiv und macht einfach nur Spaß.

Wer sich für solche Spielereien interessiert, sollte da auf jeden Fall ein Auge drauf werfen.

Gruß,
Sascha

StPohl 16.06.2020 13:52

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von Gerd v.d. Loo (Beitrag 91869)
Hallo, eine Frage zu Lc0.
Bekanntlich erarbeitet sich Leela ihr Schachwissen durch Spielen gegen sich selbst, wobei ein selbstlernendes neuronales Netz (NN) zum Tragen kommt.

Wenn ich nun gegen Leela spiele, lernt dann das NN aus diesen Spielen immer noch dazu oder nicht?
Gerd

Nein

StPohl 16.06.2020 14:04

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von Mythbuster (Beitrag 91874)
By the way, an alle, die von dieser Art Engines begeistert sind: Ich habe FatFritz ... der Unterschied ist ja, dass hier das "Lernen" auf den Datenbanken von ChessBase basiert, mit all den von Menschen gespielten Partien.

Das stimmt nur sehr bedingt. Damit ein halbwegs spielstarkes NN (der mittleren Größe, die auch FatFritz hat, also 20x256) überhaupt entstehen kann, benötigt es sehr viele Partien. Die diversen Lernruns, die es ja schon mit dieser Netzgröße gegeben hat (T10, T30, T40) erbrachten alle erst wirklich starke Leistungen, nachdem mind. 30-40 Millionen Lernpartien absolviert waren. So viele menschliche Partien gibt es nirgends. Was bei Fat Fritz gemacht wurde, war also lediglich eine Anreicherung eines selfplay-NNs (vermutlich ein spätes T30-Netz), daß eben auf zig Millionen selfplay-Partien basiert, mit ein oder ein paar Millionen Menschpartien. Welche aber sicher weniger als 10% der Gesamtmenge ausmachen. Fat Fritz hat also das selfplay-NN nur mit ein bißchen Menschenschach abgeschmeckt (oder verschmutzt, das ist eine Frage des Standpunktes).
So oder so basiert das Lernen im FatFritz NN nur zu einem sehr kleinen Bruchteil auf den Datenbanken von ChessBase, einfach weil es viel zu wenige Menschpartien gibt, um alleine daraus ein brauchbares NN aufzubauen. Natürlich überbetont ChessBase den Menschpartien-Lernfaktor in ihren Werbeartikeln, weil ja 100% des Lc0-Programmcodes nicht von Chessbase stammt und mehr als 90% des Lernmaterials und Lernprozesses nicht von Chessbase stammt. Und es so eigentlich kaum zu rechtfertigen ist, für so ein "Produkt" Geld zu verlangen. Also versucht ChessBase logischerweise von dieser eher peinlichen Tatsache stärkstmöglich abzulenken.
Es ist zwar richtig, daß Fat Fritz ein paar Millionen Menschpartien "intus" hat, aber und das muß man verstehen, das heißt eben nicht, daß Fat Fritz nun auch ein menschlich spielendes NN hat. Das wäre nur der Fall, wenn sonst keine weiteren Partien zum Lernen genutzt worden wären. Das aber ist schlicht unmöglich, weil man unterhalb von ca. 30 Millionen Partien an ein gut spielendes NN gar nicht zu denken braucht (der jetzt momentan laufende T60-Lernrun hat schon 90 Millionen Partien gespielt!). Fat Fritz spielt also bestenfalls einen Tick menschlicher als ein reines Selfplay- bzw. Zero-Netz. Mehr aber auch nicht.
Ich hoffe, ich habe jetzt keine Illusionen zerstört, aber ein menschlich spielendes NN gibt es nicht (außer im menschlichen Gehirn), und wird es auch in absehbarer Zeit nicht geben, eben weil es viel zu wenige Menschpartien gibt, die man für den Lernprozess nutzen könnte. Wenn die Megabase mal 30, 40 oder 50 Millionen Partien enthalten sollte, dann kann man mal über ein wirklich menschlich spielendes NN nachdenken. Aber das dürfte noch dauern.

Um es noch zu präzisieren, hab ich nochmal auf der Chessbase-Website nachgesehen und zitiere mal: "neuronales Netzwerk, das 7.000 Stunden trainiert wurde mit Millionen selbstgespielten Partien, Top-Großmeister-Partien aus ChessBase Megabase, Computerpartien und den Endgame-Tablebases."
Fat Fritz enthält also Top Großmeister Partien aus der Megabase. Wieviele sind das? Sicher nur 1-3 Millionen, oder?
Und Fat Fritz enthält auch Computerpartien, also Engine-Partien von normalen AB-Engines (das hatte A.Silver auch mal auf talkchess geschrieben). Dennoch schreibt ChessBase natürlich nun nicht, daß Fat Fritz wie eine klassische AB-Engine spielen würde - wäre ja auch ziemlich dumm. Aber es wäre genauso wahr bzw. falsch, wie zu schreiben, Fat Fritz würde eine menschlich spielendes NN haben (was ChessBase aber auch nicht explizit sagt, das muß man fairerweise anfügen).

Also kurz defaßt: Fat Fritz ist ein Lc0 Klon, was den Programmcode angeht und das NN basiert zum allergrößten Teil auf Selpfplay-Lernpartien, wie die klassischen Lc0 NNs auch und nur zu einem kleinen Teil auf hochklassigen Menschpartien und zu einem weiteren Teil aus Engine-Engine Partien konventioneller Schachprogramme. Einfach in Ermangelung einer ausreichend großen Zahl auch nur halbwegs hochklassiger Menschpartien. Damit ist die Spielweise (bestenfalls) ein wilder Mischmasch aus Zero-, Menschen- und konventionellem Engine-Schach.
Wer es mag. Ich bin davon nicht so begeistert. Mir ist der reine Zero-Ansatz lieber.

StPohl 16.06.2020 14:25

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Falls es jemanden hier interessiert, es gibt mittlerweile Stockfish nnue, ein Stockfish, der ein stark vereinfachtes NeuralNetz (mit direkt-verbundenen Layern) benutzt, welches auf Stockfishpartien beruht. Das NN ist, wie gesagt, sehr stark vereinfacht, was aber immerhin den Vorteil hat, daß Stockfish nnue wie eine normale AB-Engine funktioniert und auch eine normale AB-Baumsuche durchführt, im Gegensatz zu Lc0, (allerdings nur ca. 40% der Knotenleistung des "normalen" Stockfish) und auch normal auf CPU benutzt wird, eine GPU ist nicht erforderlich und wird auch nicht unterstützt.
Das Ganze war ursprünglich für Shogi gedacht und wurde erst kürzlich für das klassische Schach umgeschrieben, ist also noch in einem frühen Stadium. Allerdings spielt das Ganze schon recht ordentlich, bei mir läuft gerade ein 5000-Partien Testrun, nach 1200 Partien ist der Score so bei ca. 3400 SPCC-Elo, also ca. auf dem Level von Komodo 12.3/Komodo 13.1.
Auf meiner Website habe ich (ganz oben in den News) sowohl den Download der Binary, als auch des NNs verlinkt, welches ich zum Testrun benutze, sowie den Thread auf talkchess zu diesem Thema. Da ich im Moment wenig Zeit habe, wäre es schön, wenn sich mal jemand die Spielweise von Stockfish nnue ansehen und etwas dazu sagen könnte. Ein so tiefes Positionsverständnis wie Lc0 kann man aufgrund der viel simpleren NN-Struktur von Stockfish nnue sicher nicht erwarten. Trotzdem wären insbesondere wahrnehmbare Unterschiede zur Spielweise des normalen Stockfish (falls es welche gibt) interessant.


https://www.sp-cc.de

Mythbuster 17.06.2020 10:31

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hallo Stefan,
ich will mich gewiss nicht mit Dir streiten, dazu gibt es keinen Anlass. Allerdings möchte ich doch noch auf Deine Aussagen zu FatFritz eingehen.

Einerseits dazu die Aussagen von ChessBase (die übrigens vom ersten Tag klar kommuniziert haben, was FatFritz ist und auf welcher Basis es entwickelt wurde).

Zitat: Die neuronale Schachengine Fat Fritz

Im Dezember 2017 erschütterte eine Pressemitteilung von Google die Schachwelt: Das neuronale Netz AlphaZero hatte durch Millionen von Partien gegen sich selbst solche Spielstärke „erlernt“, dass es die zu dieser Zeit führende Schachengine Stockfish 8 in einem Match deutlich besiegen konnte. Diese Nachricht war ernüchternd und faszinierend zugleich. Ernüchternd in dem Sinne, dass jahrzehntelange Tradition der Schachprogrammierung durch ein selbstlernendes System in den Schatten gestellt wurde. Faszinierend, weil man darauf hoffen konnte, aus diesem radikalen Ansatz wirklich Neues über Schach zu lernen.

Es hätte niemand erwartet, dass schon bald eine Kooperation von Schachentwicklern diese Technologie allgemein verfügbar machen würde. Das Open-Source-Projekt LCZero begann, den von Google gezeigten Weg nachzuvollziehen und erreicht inzwischen beachtliche Stärke. Plötzlich war eine Schachengine verfügbar, die mit abweichenden Analyseergebnissen überall frische Ideen lieferte.

Auch LCZero folgt der Google-Philosophie, dass das neuronale Netz nur durch Partien gegen sich selbst lernt (Starting from „Zero“). Dieser Ansatz ist überzeugend, fordert jedoch eine massive Rechenleistung, weil Abermillionen von ausgespielten Partien notwendig sind.

Die Idee liegt nahe, unsere bestehende Basis von Hunderttausenden von guten Großmeisterpartien zu nutzen, um diesen Lernprozess abzukürzen. Diesen Ansatz hat unser langjähriger technischer Redakteur Albert Silver konsequent verfolgt und basierend auf der LCZero-Technologie ein neuronales Netz über ein Jahr lang mit GM-Partien trainiert. Das Ergebnis ist so überzeugend, dass wir dieses jetzt als „Fat Fritz“ mit Fritz17 veröffentlichen. Nach jetzigem Stand schlägt Fat Fritz im direkten Vergleich alle traditionellen Schachprogramme und auch LCZero. Die Zugvorschläge in der Analyse sind oft überaus menschlich und planvoll. Mit einer schmerzlichen praktischen Einschränkung: Fat Fritz braucht (wie LCZero) eine sehr leistungsfähige NVidia-Grafikkarte („GPU“), um seine volle Spielstärke zu erzielen. Auf dem nackten Prozessor eines handelsüblichen PC’s funktioniert die Engine, doch läuft sie bis zu Faktor 2000 langsamer.



Quelle: ChessBase Information zu FatFritz


OK, das sind natürlich Werbeaussagen. Auf der anderen Seite bin ich kein Statistiker oder jemand, der seinen Computer im Netz gegen andere Computer antreten lässt. Mir geht es um das Spiel.

Und was ich aus Vergleichen von Partien und Stellungen nun in persönlicher Meinung sagen kann: FatFritz spielt oftmals andere Züge und meiner Meinung nach das interessantere Schach.

Inwieweit da jetzt die "menschlichen Partien der CB Datenbanken" eine Rolle spielen oder aber geschicktes Feintuning der Einstellungen ... keine Ahnung. Wie heißt es so schön "hinten kackt die Ente" ... und das, was FatFritz liefert, ist für mich ein gutes Ergebnis. So gut, dass ich ihn mittlerweile lieber als Hiarcs nutze.

Natürlich sind 79,90 € nicht wenig, keine Frage. Auf der anderen Seite bietet CB hier ein "komplettes Paket" für das Geld:

- FatFritz wird in einer jeweils auf den eigenen PC angepassten Version für CPU und GPU installiert, ohne dass man selbst etwas einstellen muss.

- LC0 ist auch noch dabei.

- Eine "normale" Engine, die gar nicht so schlecht ist wenigstens keiner der üblichen "Verdächtigen"

- Die Fritz17 Oberfläche, die sich sehr gut konfigurieren lässt.

- Das Eröffnungstraining ist wirklich gut, wenn man sich in dem Bereich verbessern will.

- Und falls man es denn nutzen möchte, den 6 Monats Zugang für den Premiumbereich von CB ... immerhin rund 20,- Euro allein wert. ;)

Da es immer mal wieder Angebotstage mit 25% Nachlass gibt (wenn man deren Newsletter aboniert, wird man per Mail darauf hingewiesen, der letzte Aktionstag war der 27. Mai), ist das Paket aus meiner Sicht für all diejenigen, die nicht lange selbst puzzeln und in den Einstellungen wühlen wollen, um LC0 zu installieren, ein gutes Paket ... das dazu eine aus meiner Sicht einzigartige Engine enthält, die eben mit vielen "menschlichen Partien" trainiert wurde ... ;)

Gruß,
Sascha

Hartmut 17.06.2020 12:38

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hi Sascha. In gewisser Weise habt ihr beide irgendwie recht. Allerdings bin ich hier eher bei Stefan, was die Aussagen von Chessbase betrifft:

Zitieren:

Zitat von Mythbuster (Beitrag 91908)
Zitat: [I]
[B]Die Idee liegt nahe, unsere bestehende Basis von Hunderttausenden von guten Großmeisterpartien zu nutzen, um diesen Lernprozess abzukürzen.

Allein dieser Satz sagt eigentlich alles aus. Bestehende Partien nutzen um den Prozess "abzukürzen" deutet im wesentlich darauf hin, dass diese Partien in erster Linie dazu dienen, dass weniger automatische Partien gespielt werden müssen. Nicht mehr und nicht weniger. Es wird keine Aussage darüber getroffen, wie hoch der Anteil der Partien ist. Sieht man sich die Partien genauer an, so stellt man fest, dass das Endspiel teilweise etwas stärker ist als bei LC0 (Trainiert mit den Tablebases) dass im Mittelspiel aber oft mehr Fehler gemacht werden. Dafür wirkt das Spiel aber tatsächlich durchaus menschlicher. Das ist allerdings witzigerweise auch bei LC0 der Fall.

Zitieren:

[... Nach jetzigem Stand schlägt Fat Fritz im direkten Vergleich alle traditionellen Schachprogramme und auch LCZero.]
Die Aussage ist praktisch wertlos da hier nicht darauf eingegangen wird, welches Netz für LCZero verwendet wurde. Da könnte ich genauso schreiben, dass ich LC0 10:0 besiege... ich muss nur das richtige Netz nehmen, dann geht das. Leider gibt es hier wenige vernünftige Vergleichspartien, zumal FatFritz die LC0-Engine verwendet hat anstatt eine eigene Engine zu entwickeln. Dadurch ist eine Teilnahme beim TCEC-Turnier wo man wirklich unter nachvollziehbar gleichen Bediungengen aufeinandertreffen würde, leider nicht möglich. Die Testbedingungen bei den typischen ELO-Vergleichslisten wie CEGT etc. sind dagegen oft nicht nachvollziehbar, die Anzahl der Vergleichspartien manchmal recht willkürlich. Ein direkter Vergleichskampf unter vernünftigen Bedingungen wäre hier durchaus wünschenswert.

Zitieren:

Und was ich aus Vergleichen von Partien und Stellungen nun in persönlicher Meinung sagen kann: FatFritz spielt oftmals andere Züge und meiner Meinung nach das interessantere Schach.
Das liegt natürlich immer in den Augen des Betrachters. Daher will ich hier gar nicht widersprechen, sehe es aber aus meiner Analysearbeit heraus etwas anders. Aber wie gesagt, so eine Aussage wird immer subjektiv sein, insofern lassen wir es einfach mal so stehen.

Zitieren:

Natürlich sind 79,90 € nicht wenig, keine Frage. Auf der anderen Seite bietet CB hier ein "komplettes Paket" für das Geld:
Naja, wenn sie nicht nur ein eigenes Netz trainiert hätten (die Partien waren ja schon da, da musste man wenig tun) sondern auch eine eigene Engine kreiert hätten, würde ich Dir recht geben. Aber so finde ich es etwas überzogen... Aber das ist meine private und damit ebenfalls subjektive Meinung.

Zitieren:

Da es immer mal wieder Angebotstage mit 25% Nachlass gibt (wenn man deren Newsletter aboniert, wird man per Mail darauf hingewiesen, der letzte Aktionstag war der 27. Mai), ist das Paket aus meiner Sicht für all diejenigen, die nicht lange selbst puzzeln und in den Einstellungen wühlen wollen, um LC0 zu installieren, ein gutes Paket ... das dazu eine aus meiner Sicht einzigartige Engine enthält, die eben mit vielen "menschlichen Partien" trainiert wurde ... ;)
Was die Angebote betrifft gebe ich Dir recht. Ähnliche Angebote erhalten wir Fernschachspieler als BdF-Mitglieder auch öfter mal. Wobei die Eröffnungsdatenbanken für mich als Fernschächler jetzt oft nicht so viel Sinn machen. Die Remisquoten im Fernschach sind zwischenzeitlich so immens hoch, dass ich in der Eröffnung gerade die beliebten ausgetretenen Pfade meide und Eröffnungsideen oftmals mit LC0 prüfe (den das Eröffnungsbuch von Chessbase nun ja relativ wenig interessiert), mich aber stets freue, wenn ein Gegner eine gerade aktuelle Nahschach-Modevariante wählt, da diese im Fernschach oftmals nicht ganz so brauchbar sind, wie im Nahschach... Ist also immer eine Frage der Anwendung.

Wie gesagt... ein direkter Vergleichskampf bei dem die verwendeten Netze und die Wettkampfbedingungen klar und nachvollziehbar sind, wäre hier mal wünschenswert.

StPohl 17.06.2020 12:44

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Ich hab mir ja Fritz 17 auch geholt, schon, um FatFritz testen zu können. Und das FatFritz 1.1 Netz spielt ja auch ganz ordentlich.
Ob die Spielweise nun persönlich gefällt oder nicht, ist sowieso Geschmackssache. Mir war nur wichtig zu betonen, daß der Menschpartien-Anteil viel zu klein ist, um wirklich ein menschlich spielendes NN zu bekommen. Aber es ist ja generell so, daß lc0 per se viel menschlicher spielt, als klassische Engines, eben weil die Benutzung des NeuralNetzes ein zutiefst bionischer Ansatz ist. Weswegen lc0 eben auch typisch menschliche Schwächen (taktische Aussetzer) und Stärken (üerragendes positionelles Verständnis, Fähigkeit zu spekulativem Spiel) zeigt, die ja genau diametral zu den Stärken und Schwächen klassischer Engine sind.

Problematisch sind diese Passagen, die einfach einige krasse Falschaussagen seitens ChessBase enthalten:
"Auch LCZero folgt der Google-Philosophie, dass das neuronale Netz nur durch Partien gegen sich selbst lernt (Starting from „Zero“). Dieser Ansatz ist überzeugend, fordert jedoch eine massive Rechenleistung, weil Abermillionen von ausgespielten Partien notwendig sind.
Die Idee liegt nahe, unsere bestehende Basis von Hunderttausenden von guten Großmeisterpartien zu nutzen, um diesen Lernprozess abzukürzen. Diesen Ansatz hat unser langjähriger technischer Redakteur Albert Silver konsequent verfolgt und basierend auf der LCZero-Technologie ein neuronales Netz über ein Jahr lang mit GM-Partien trainiert. Das Ergebnis ist so überzeugend, dass wir dieses jetzt als „Fat Fritz“ mit Fritz17 veröffentlichen. Nach jetzigem Stand schlägt Fat Fritz im direkten Vergleich alle traditionellen Schachprogramme und auch LCZero."

Mit hunderttausenden Großmeisterpartien kann man den Lernprozess nicht "abkürzen". Das ist schlicht falsch. Zudem wird hier suggeriert, daß man dank der Großmeisterpartien eben nicht Abermillionen von ausgespielten (Selfplay)-Partien benötigte, um das Fat Fritz NN zu erstellen. Auch das ist schlicht falsch (und das hat A.Silver selbst auch nie gesagt) - ohne eine Basis von ca. 30-40 Millionen Selfplay-Partien spielt jedes NN nur Schrott. A.Silver hat also ein bereits starkes Selfplay-NN genommen und dann noch GM-Partien und Engine-Partien klassischer Engines zusätzlich eingespeist, was er auch nie anders kommuniziert hat. Ebenso falsch ist der Satz, ein neuronales Netz wäre über ein Jahr lang mit GM-Partien trainiert worden. Dazu bräuchte man Abermillionen von GM-Partien, die es schlicht nicht gibt.
Und, daß nach "jetzigem Stand" Fat Fritz im direkten Vergleich auch Lc0 schlägt ist ebenfalls falsch. Zu keinem beliebigen Zeitpunkt war das Fat Fritz NN besser als die zum gleichen Zeitpunkt stärksten Lc0-NNs. Im Gegenteil. Fat Fritz 1.0 war sogar sehr deutlich schwächer. Und auch das FatFritz1.1 Netz war nie besser als die besten Selfplay NNs.
http://www.fastgm.de/16-60-0.6.html

(zwar sind die Leelenstein NNs keine reinen SelfplayNNs, sehr wohl aber das t40-1541 und dieses gab es schon, als Fat Fritz 1.1 erschien).

Hartmut 17.06.2020 13:27

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von StPohl (Beitrag 91911)
Und, daß nach "jetzigem Stand" Fat Fritz im direkten Vergleich auch Lc0 schlägt ist ebenfalls falsch. Zu keinem beliebigen Zeitpunkt war das Fat Fritz NN besser als die zum gleichen Zeitpunkt stärksten Lc0-NNs. Im Gegenteil. Fat Fritz 1.0 war sogar sehr deutlich schwächer. Und auch das FatFritz1.1 Netz war nie besser als die besten Selfplay NNs.
http://www.fastgm.de/16-60-0.6.html

Wobei diese Aussage leider nur aus dem ELO-Ergebnis der verlinkten Liste getroffen wird. Dies ist leider etwas irreführend. Es ist ja z.B. bekannt (vor allem durch die TCEC-Turniere), dass LC0 oftmals gegen schwächere Engines mehr Probleme hat als z.B. gegen starke Engines (warum auch immer). Insofern ist die verlinkte Liste leider nicht so aussagekräftig wie man sich das wünschen würde. Im besagten Test ging es ja um den Vergleich zwischen NN-Engines mit RTX2070 gegen herkömmliche Engines auf einem 16core-Rechner. Entsprechend gibt es auch in dieser FGRL-Liste hier keinen direkten Vergleich zwischen FatFritz und LC0 mit der man jetzt wirklich vergleichen könnte, was jetzt besser ist. Auch wenn die Auflistung natürlich hier einen Vorteil für LC0 impliziert bleibt hier der direkte Vergleich der Kontrahenten leider außen vor.

StPohl 18.07.2020 15:01

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von StPohl (Beitrag 91880)
Falls es jemanden hier interessiert, es gibt mittlerweile Stockfish nnue, ein Stockfish, der ein stark vereinfachtes NeuralNetz (mit direkt-verbundenen Layern) benutzt, welches auf Stockfishpartien beruht. Das NN ist, wie gesagt, sehr stark vereinfacht, was aber immerhin den Vorteil hat, daß Stockfish nnue wie eine normale AB-Engine funktioniert und auch eine normale AB-Baumsuche durchführt, im Gegensatz zu Lc0, (allerdings nur ca. 40% der Knotenleistung des "normalen" Stockfish) und auch normal auf CPU benutzt wird, eine GPU ist nicht erforderlich und wird auch nicht unterstützt.
Das Ganze war ursprünglich für Shogi gedacht und wurde erst kürzlich für das klassische Schach umgeschrieben, ist also noch in einem frühen Stadium. Allerdings spielt das Ganze schon recht ordentlich, bei mir läuft gerade ein 5000-Partien Testrun, nach 1200 Partien ist der Score so bei ca. 3400 SPCC-Elo, also ca. auf dem Level von Komodo 12.3/Komodo 13.1.
Auf meiner Website habe ich (ganz oben in den News) sowohl den Download der Binary, als auch des NNs verlinkt, welches ich zum Testrun benutze, sowie den Thread auf talkchess zu diesem Thema. Da ich im Moment wenig Zeit habe, wäre es schön, wenn sich mal jemand die Spielweise von Stockfish nnue ansehen und etwas dazu sagen könnte. Ein so tiefes Positionsverständnis wie Lc0 kann man aufgrund der viel simpleren NN-Struktur von Stockfish nnue sicher nicht erwarten. Trotzdem wären insbesondere wahrnehmbare Unterschiede zur Spielweise des normalen Stockfish (falls es welche gibt) interessant.

Mittlerweile hat es bei Stockfish nnue rapide Fortschritte gegeben. Die "offiziellen" Binaries, die zumindest bei mir am schnellsten sind, laufen leider nicht in der FritzGUI, und da hier im Forum sicher nicht unbedingt nur PC-Experten sind, verlinke ich hier mal einen Download von Pleonati, der drei Binaries enthält (AVX für AMD Ryzen und Threadripper, popc für ältere AMD und bmi2 für Intel CPUs), sowie das z.Zt. stärkste Netz (GK200627). Diese Binaries laufen auch in der FritzGUI, sind aber ca. 7% langsamer.
https://workupload.com/file/ggEUrvNVgmH

Diesen Stockfish nnue hat Andreas Strangmüller bereits getestet (mit Slow mover =60, was bei dieser Binary gar nicht nötig bzw. sinnvoll ist, hier kann und sollte manSlow Mover auf 100 belassen). Dennoch ist das Ergebnis schon beeindruckend:
http://www.fastgm.de/16-60-0.6.html

Meine Testruns mit der "offiziellen" Binary und dem GK200627 Netz laufen noch und werden wahrscheinlich noch besser ausfallen...Das dauert aber noch einige Tage.
Wenn man bedenkt, daß es das ganze Projekt erst seit einigen Wochen gibt und das GK200627 Netz auch auf die Schnelle zusammengeklempnert wurde, ist die schon erreichte Spielstärke kaum zu glauben. Und da diese primitiven Neuralnetze ganz normal und relativ schnell (etwa halb so schnell wie ein normaler Stockfish) auf CPU laufen, wären sie auch auf Smartphones, DGT Pi etc. sicher superstark...
Wer das Projekt verfolgen möchte, muß das auf discord tun. Alles Aktuelle findet man nur dort:
https://discord.com/channels/4359437...53716266188890

BHGP 19.07.2020 13:40

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hallo Stefan,

danke für Deinen informativen Beitrag!
Ich hätte gerne einen Tipp: Welche "Version" von Lc0, also die mit dem besten Netz, würdest Du mir aktuell jetzt für ein potentes Android-Smartphone empfehlen?

Viele Grüße
Uwe

StPohl 19.07.2020 20:23

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von BHGP (Beitrag 92912)
Hallo Stefan,

danke für Deinen informativen Beitrag!
Ich hätte gerne einen Tipp: Welche "Version" von Lc0, also die mit dem besten Netz, würdest Du mir aktuell jetzt für ein potentes Android-Smartphone empfehlen?

Viele Grüße
Uwe

Für CPU Lc0 sind die kleinen 10x128 Netze am stärksten, das gilt somit auch für Smartphones.
Laut meiner MEA-tests
https://www.sp-cc.de/nn-mea-testing.htm
ist das finale Netz des vor kurzem beendeten T70-Trainingsrun am stärksten, also das Netz 703810.

BHGP 19.07.2020 21:21

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Hallo Stefan,

das Netz liegt auf diesen Seiten, oder?

http://training.lczero.org/networks/?show_all=1

bzw. Direktlink:

http://training.lczero.org/get_netwo...8758f1a3107ae3


Wie sind denn die Empfehlungen auf https://lczero.org/play/networks/bestnets/

einzuschätzen? Sind die nicht unbedingt "uptodate"? Deine Empfehlung taucht dort zumindest nicht auf.

StPohl 20.07.2020 03:55

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von BHGP (Beitrag 92922)
Hallo Stefan,

das Netz liegt auf diesen Seiten, oder?

http://training.lczero.org/networks/?show_all=1

bzw. Direktlink:

http://training.lczero.org/get_netwo...8758f1a3107ae3


Wie sind denn die Empfehlungen auf https://lczero.org/play/networks/bestnets/

einzuschätzen? Sind die nicht unbedingt "uptodate"? Deine Empfehlung taucht dort zumindest nicht auf.

Doch, meine Empfehlung taucht dort auf "Latest T70", nur der Link dahinter ist nicht mehr aktuell und führt zum neuen T72 TrainingsRun 2.

BHGP 20.07.2020 07:27

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Die Lc0-Seite ist mittlerweile ziemlich "optimiert" worden. Bei der Installation auf Android bin ich folgendermaßen vorgegangen, vielleicht interessiert es den einen oder anderen mal im Detail, wo man das ganze "Zubehör" so findet:

Ich habe die Android-Lc0 von

https://github.com/LeelaChessZero/lc....1-android.apk

installiert, also die mit integriertem Netz und alternativ die Lco für Android mit frei konfigurierbarem Netz (armv7-a) von:

https://ci.appveyor.com/api/buildjob...rmeabi-v7a/lc0

In Droidfish (entsprechende Verzeichnisse mit Engine und Netz gefüllt) stehen mir nun beide Engines zur Verfügung.
Das ganze werde ich dann für Chess für Android wiederholen und dann müsste es auch mit den Brettern von Millennium und Certabo oder auch DGT funzen.

StPohl 20.07.2020 17:37

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Zitieren:

Zitat von BHGP (Beitrag 92927)
Die Lc0-Seite ist mittlerweile ziemlich "optimiert" worden. Bei der Installation auf Android bin ich folgendermaßen vorgegangen, vielleicht interessiert es den einen oder anderen mal im Detail, wo man das ganze "Zubehör" so findet:

Ich habe die Android-Lc0 von

https://github.com/LeelaChessZero/lc....1-android.apk

installiert, also die mit integriertem Netz und alternativ die Lco für Android mit frei konfigurierbarem Netz (armv7-a) von:

https://ci.appveyor.com/api/buildjob...rmeabi-v7a/lc0

In Droidfish (entsprechende Verzeichnisse mit Engine und Netz gefüllt) stehen mir nun beide Engines zur Verfügung.
Das ganze werde ich dann für Chess für Android wiederholen und dann müsste es auch mit den Brettern von Millennium und Certabo oder auch DGT funzen.

Das sollte so sein. Generell ist es natürlich so, dass lc0 mit einem kleinen 10x128 auch in einem Smartphone als Gegner für einen Menschen viel zu stark ist. Wenn man also lc0 auf den richtigen Brettern als Gegner nutzen will, würde ich immer anraten, ein starkes grosses 30x384 Netz zu benutzen und lc0 die MCTS-Suche ganz zu verbieten. Es wird dann immer nur die aktuelle Brettstellung durch das NeuralNetz gejagt und dann wird gezogen. Ein grosses Netz lässt sich ebenso leicht installieren, wie ein kleines Netz und dann muss man nur noch slowmover auf 0 stellen. Dann zieht lc0, ohne die Suche zu starten. Das ergibt sehr kurzweiliges Schach, aber mit echten Chancen, auch mal zu gewinnen. Die grossen Netze sind so komplex, dass selbst nur das Beurteilen der Brettstellung durchaus 1 oder 2 Sekunden auf einem Smartphone dauern kann.

Laut meiner MEA Tests, die ebenfalls ohne Suche ablaufen, also mit slowmover=0,
https://www.sp-cc.de/nn-mea-testing.htm
https://www.sp-cc.de/files/mea_1node_30x384.txt

Ist das Netz von S.Vieri t60-4175 am stärksten. Zu finden hier:
https://www.comp.nus.edu.sg/~sergio-v/t60/384x30/

Diese Konfiguration spielt besonders menschlich, also positionell sehr, sehr stark (wegen des grossen Netzes), aber auch taktisch anfällig (wegen der nicht vorhandenen Suche). Das finde ich persönlich echt cool, weil es auch total entgegengesetzt zu den Stärken und Schwächen normaler Brettcomputer und Schachengines ist!
Und wer glaubt, damit wäre es leicht gegen lc0 zu gewinnen, der wird sich wundern, wie stark lc0 mit einem grossen Netz selbst ohne Suche wirklich ist. Zumindest bis zum Endspiel. Da kann es sinnvoll sein, wieder auf lc0 mit kleinem Netz und MCTS-Suche zu wechseln.

BHGP 20.07.2020 21:48

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Also im aktuellen Release gibt es slowmover als eigenständige Option nicht mehr. Dafür wurde der TimeManager eingeführt. Wie der aber zu konfigurieren ist, ist wohl noch ziemliches Neuland.
Ich habe jetzt mal die Default-Option "Legacy" erweitert mit Legacy (slowmover=0.00). Die Engine startet mit dem großen Netz und spielt auch sofort die Antwortzüge.

StPohl 21.07.2020 05:35

AW: Selbstlernende KI: Neue Engine spielt auf Profi-Niveau (Der LC0 Thread)
 
Aha, gut zu wissen. Wenn lc0 aber sowieso nicht rechnen soll, kann man auch durchaus eine etwas ältere Version benutzen.


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:33 Uhr.

Powered by vBulletin (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
©Schachcomputer.info