Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Lc0 trainiert neues Netz
- - By Clemens Keck Date 2023-05-07 15:27 Edited 2023-05-07 15:30 Upvotes 3
Hallo zusammen

seit kurzem wird ein neues Netzwerk trainiert. Die Basis dürfte wohl das Netz sein welches jüngst beim TCEC Bonus gegen Stockfish gewonnen hat.(t1-768x15x24h-swa-3905000.pb)
15 Blocks, 768 Filter. Größe 162 MB

binary https://ci.appveyor.com/project/borg323/lc0/builds/46730835
netzwerk
https://discord.com/channels/425419482568196106/425419483016855563/1104477685486465034
TCEC settings
Code:
Engine
LCZero
Version
dag-master-pr1821-1842e13-T1-3905000
Backend
demux
BackendOptions
backendcuda-fp16,(gpu0),(gpu1),(gpu2),(gpu3),multi_streamtrue,threads2
CacheHistoryLength
0
CPuct
2.2416
CPuctBase
45669
CPuctFactor
3.973
DrawScoreBlack
0
DrawScoreOpponent
0
DrawScoreSideToMove
0
DrawScoreWhite
0
FpuStrategy
reduction
FpuValue
0.5830
HistoryFill
fen_only
IdlingMinimumWork
0
MaxCollisionEvents
917
MaxCollisionVisits
80000
MaxCollisionVisitsScalingEnd
145000
MaxCollisionVisitsScalingPower
1.250000
MaxCollisionVisitsScalingStart
28
MaxConcurrentSearchers
1
MaxOutOfOrderEvalsFactor
2.400000
MinibatchSize
320
MinimumPerTaskProcessing
8
MinimumPickingWork
1
MinimumProcessingWork
20
MinimumRemainingPickingWork
20
MovesLeftConstantFactor
0.000000
MovesLeftMaxEffect
0.034500
MovesLeftQuadraticFactor
-0.652100
MovesLeftScaledFactor
1.652100
MovesLeftSlope
0.002700
MovesLeftThreshold
0.000000
MultiPV
1
NNCacheSize
2000
NodesPerSecondLimit
0.000000
OutOfOrderEval
true
PerPVCounters
false
PolicyTemperature
1.359000
Protocol
uci
ScoreType
centipawn
StickyEndgames
true
SyzygyFastPlay
false
SyzygyPath
/home/david/tb6/
TaskWorkers
3
ThreadIdlingThreshold
1
Threads
2
TwoFoldDraws
true
VerboseMoveStats
false


CK
Parent - - By Lothar Jung Date 2023-05-11 09:08
Der Link für die Engine funktioniert nicht mehr.

Hier das aktuelle Update:

https://ci.appveyor.com/project/borg323/lc0/branch/dag-update
Parent - - By Thomas Plaschke Date 2023-05-11 16:48
Verbirgt sich dahinter bestenfalls nur der Quellcode für die verschieden Versionen oder auch die compilierten Programme? Ich werde daraus nicht schlau.

Viele Grüße
Th. Plaschke
Parent - - By Lothar Jung Date 2023-05-11 17:24
Du wählst das Backend aus, wohl CUDA und nach dem klicken auf "artifacts" wird die Engine zum Laden angezeigt.
Parent - - By Thomas Plaschke Date 2023-05-11 18:52
Ahh, so läuft der Hase!
Vielen Dank
Th.
Parent - - By Clemens Keck Date 2023-05-12 17:36
Irgendwie ist alles rundum Lc0 kompliziert. Ich kapiere nicht mal 30%.
wenn man nicht dauernd am Ball bleibt hat man schnell was verpasst.
Settings, Netzwerke, Binaries, alles ist permanent im Wandel. Das spiegelt das offizielle Release nicht.
CK

Thomas Plaschke schrieb:

Ahh, so läuft der Hase!
Vielen Dank
Th.
Parent - - By Thomas Plaschke Date 2023-05-12 20:12
Aus dem Herzen gesprochen, denn das empfinde ich auch so!

Im Talkchess-Forum wurde kürzlich beklagt, dass so wenig aktuelle Compiles für M1-Macs zur Verfügung stünden. Er bekam den Rat, Lc0, Stockfish oder andere Programme selbst zu compilieren. Das dauere keine 20(!) Minuten.

Wer ein "Hello world!" compilieren kann, also den Gebrauch eines Compilers grundsätzlich beherrscht und eine Installation des erforderlichen Compilers besitzt, kann das mit Stockfish vielleicht schaffen, wenn der automatisierte Download der NNUE-Datei klappt. - Dann meinen allergrößten Respekt. Mit Lc0 halte ich das für aussichtslos bzw. ausgeschlossen. Ich habe auf meinem PC MSYS2 (mingw und clang C und C++), Cygwin (gcc und clang) und Visual Studio (MS C und C++ 2019) installiert und schaffe es nicht. Allein die fehlenden Bibliotheken ermitteln(!) und zu besorgen, ist eine Sisyphusarbeit. Aber ich bin auch nicht das Maß der Dinge.

Viele Grüße
Th. Plaschke
Parent - - By Lothar Jung Date 2023-05-13 08:07 Upvotes 1
Hier die Vorgehensweise unter Windows, generiert von GPT 4:

Wenn Sie Lc0 in einer Windows-Eingabeaufforderung kompilieren und ausführen möchten, benötigen Sie zuerst die notwendigen Werkzeuge. Für diese Anleitung benötigen Sie Git, um den Quellcode zu klonen, und Visual Studio 2019, um den Code zu kompilieren.

Schritt 1: Git installieren

1. Laden Sie Git von der offiziellen Website herunter: https://git-scm.com/download/win und installieren Sie es.

Schritt 2: Visual Studio 2019 installieren

1. Laden Sie die Community-Version von Visual Studio 2019 von der offiziellen Website herunter: https://visualstudio.microsoft.com/vs/ und installieren Sie es. Stellen Sie sicher, dass Sie während der Installation die "Desktop-Entwicklung mit C++" auswählen.

Schritt 3: Den Lc0-Quellcode klonen

1. Öffnen Sie die Eingabeaufforderung (cmd).
2. Navigieren Sie zu dem Verzeichnis, in dem Sie Lc0 speichern möchten, und klonen Sie das Repository:

   ```cmd
   git clone https://github.com/LeelaChessZero/lc0.git
   ```

3. Wechseln Sie in das lc0-Verzeichnis:

   ```cmd
   cd lc0
   ```

Schritt 4: Den Code mit Visual Studio 2019 kompilieren

1. Öffnen Sie die lc0-Lösung in Visual Studio (die Datei lc0.sln).
2. Stellen Sie sicher, dass der Build auf "Release" und die Plattform auf "x64" eingestellt ist.
3. Klicken Sie auf "Build" -> "Solution build".

Nach diesen Schritten sollte Lc0 kompiliert und bereit zur Ausführung sein. Die ausführbare Datei finden Sie im Verzeichnis "x64/Release". Sie können Lc0 in einer Eingabeaufforderung starten, indem Sie zu diesem Verzeichnis navigieren und `lc0` eingeben.
Parent - - By Thomas Plaschke Date 2023-05-13 15:26
Hat ChatGPT 4 das Rezept  schon ausprobiert? Ein kurzer Blick in den Quellcode auf github zeigt mir, dass es dort keine .sln-Datei gibt. Lc0 mit Visual Studio wird über eine (anzupassende) .cmd-Datei "zubereitet". Im Moment wird dafür bereits VS 2022 vorausgesetzt. Diese Lösung finde ich für VS subotimal - allein, wie viel Pfade anzupassen sind! Eine sln-Datei wäre natürlich besser.

Danke für den Versuch. Aber es ist genau das, was Clemens Keck und ich bedauern: Lc0 merkt man an, dass viele Zeichner den Stift führen und keine gerade Linie dabei herauskommt. Obwohl man fairerweise sagen muss, dass hier ChatGPT in die Irre führt. - Was aber wieder auf das Grundproblem mit Lc0 zurückzuführen ist, das seine Nutzer immer auf unerwartete Veränderungen gefasst sein müssen. Denn zu dem Zeitpunkt als für ChatGPT die Informationen gesammelt wurden, mag es eine Lösung wie die von ihm vorgeschlagene gegeben haben.

Viele Grüße
Th. Plaschke
Parent - By Lothar Jung Date 2023-05-13 17:54
Chat GPT 4 hatte mir - außer Linux -  noch eine weitere Alternative offenbart:

Unter Windows ist der Kompilierungsprozess etwas komplizierter, aber immer noch machbar. Hier ist eine allgemeine Anleitung, wie Sie Lc0 auf Windows kompilieren können:

1. Installieren Sie zuerst die notwendigen Tools. Sie benötigen Git, um den Quellcode zu klonen, und MSYS2, um ein Unix-ähnliches Terminal zur Verfügung zu haben.

   Sie können Git von hier herunterladen: https://git-scm.com/download/win

   Und MSYS2 von hier: https://www.msys2.org/

2. Öffnen Sie MSYS2 MinGW 64-bit (oder 32-bit, je nach Ihrer Windows-Version).

3. Aktualisieren Sie das Paketsystem und installieren Sie die erforderlichen Pakete:

   ```bash
   pacman -Syu
   pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-meson mingw-w64-x86_64-ninja mingw-w64-x86_64-python3-pip
   ```

   Schließen Sie das Terminal und öffnen Sie es erneut, falls Sie während der Installation dazu aufgefordert werden.

4. Klonen Sie das Lc0-Repository und wechseln Sie in das erstellte Verzeichnis:

   ```bash
   git clone https://github.com/LeelaChessZero/lc0.git
   cd lc0
   ```

5. Initialisieren und aktualisieren Sie die Submodule:

   ```bash
   git submodule update --init --recursive
   ```

6. Erstellen Sie ein neues Verzeichnis zum Bauen und wechseln Sie in dieses Verzeichnis:

   ```bash
   mkdir build
   cd build
   ```

7. Kompilieren Sie Lc0:

   ```bash
   meson ..
   ninja
   ```

Wenn alles erfolgreich war, sollte Lc0 jetzt in Ihrem `build`-Verzeichnis kompiliert worden sein.

Bitte beachten Sie, dass diese Anleitung unter der Annahme erstellt wurde, dass Sie ein Standard-Windows-System verwenden. Die genauen Befehle und Abhängigkeiten können je nach Ihrem speziellen System variieren. Bei Problemen empfehlen wir, die offizielle Dokumentation zu Lc0 zu konsultieren oder sich an die Lc0-Community zu wenden.
Up Topic Hauptforen / CSS-Forum / Lc0 trainiert neues Netz

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill