Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / experience.bin defragmentieren
- - By Eduard Nemeth Date 2020-03-09 20:03 Edited 2020-03-09 20:08
Weiss jemand was bei Eman mit experience depth gemeint ist? Ich frage deshalb weil es diese Option nur bei Eman gibt. Bei Eman lässt sich diese Tiefe von 0 bis 127 einstellen. Eman bietet zudem ein Tool an (im InfinityChess Forum downloadbar) mit dem man ua. diese Tiefe auch nachträglich verringern kann, indem man ein Defrag durchführt. Ich habe eine 300 kb grosse experience.bin auf Tiefe 20 defragmentiert, und danach war die Datei nur noch 90 kb gross. Jetzt weiss ich aber nicht ob - und wann ein solches Defragmentieren gut ist und wann nicht?

Ich war auf der Eman Homepage, dort sind alle Eman Parameter erklärt aber dieser eine leider nicht.
Parent - - By Peter Martan Date 2020-03-09 20:18 Edited 2020-03-09 20:36 Upvotes 1
Schreib doch dem Autor, Eduard, bevor ich dir irgendwelche Vermutungen meinerseits weitergebe, die dann vielleicht auch nicht stimmen. Omar Khalid ist im Allgemeinen recht gut ansprechbar für die Leute auf seiner Mailing- List.
Auch macht es möglicher Weise böses Blut in diesem Forum hier über eine private Engine zu diskutieren, die, was in der Natur privater Engines liegt, nicht allgemein zugänglich ist.

Die Experience Min Depth, soviel ich weiß, gibt die Halbzug- Zahl an, ab der Lerneinträge gespeichert werden. Das waren bei den früheren Versionen größere Zahlen, die 12 bei 5.0 finde ich schon sehr niedrig. Schadet wohl nicht, wenn du trotzdem mit langen TCS spielst, weil dann ja schon im Hash größere Rechentiefen die früheren überschreiben und nur das, was zuletzt im Hash ist, teilweise in die Lerndatei kommt.  Damit beeinflusst du aber jedenfalls, wie schnell wieviel "gelernt" wird, jedenfalls, wie schnell die Lerndatei wächst. Das Defragmentieren hab' ich noch nie gemacht, nehme aber an, es wird so ähnlich wie das "Jäten" eines Buches funktionieren, wie auch immer das funktionieren mag.

Wenn du viele Partien aus sehr unterschiedlichen Eröffnungen zum Lernen Lassen verwendest, überschneiden sich wahrscheinlich irgendwann mehr und mehr Einträge (und könnten dann vielleicht auch mehr und mehr kollidieren?) und dagegen wird wohl defragmentiert.
Erspare ich mir schon dadurch, dass ich lieber viele einzelne .exp- Files habe als eine riesengroße, von der ich dann bald keine Ahnung mehr habe, was woher kommt.
So wie bei denn NNs, da weiß ja auch keiner mehr, was eigentlich gespeichert wird.
Parent - - By Eduard Nemeth Date 2020-03-09 20:29
Ich habe im Infinity Chess Forum geschrieben. Dort ist ein Diskutieren kaum möglich weil alles erst durch den Admin freigeschaltet werden muss. Aber man wird doch auch über private Engines diskutieren dürfen, denke ich. Auf der Eman Homepage ist auch das Meiste schön erklärt, nur dieser eine Parameter nicht. Ausserdem: Die anderen Lern-Engines produzieren dieselbe Datei. Und wenn es eine Möglichkeit gibt AUCH diese Dateien sinnvoll abzuspecken, dann wäre ich dumm wenn ich es nicht nutzen würde. Warum soll man darüber nicht auch diskutieren?
Parent - - By Peter Martan Date 2020-03-09 20:35 Edited 2020-03-09 20:46
Du hast recht und ich habe, wenn du nochmal liest, auch noch einiges mehr geschrieben, während du schon geantwortet hast.
Es sind halt Informationen aus zweiter Hand, die du da von mir bekommst, drum meinte ich, schreib Omar Khalid ruhig direkt an. Der hat, was meine Erfahrung mit ihm angeht, keine Berührungsängste mit interessierten Usern, besonders, wenn sie auch eigene Erfahrungen zu seiner Engine mit ihm teilen.
Parent - - By Eduard Nemeth Date 2020-03-09 20:47
Khalid Omar hat im Infinity Forum schon geantwortet, mit einer schönen und ausführlichen Erklärung. Einfach klasse! Dort im Forum kann sich jeder registrieren, ist kostenlos genauso wie der Server.

Hier ein Auszug:
If the engine is about to store a move to the experience file, it will check the depth to which this move was searched. If the depth is less than the configured Experience Min Depth then the move is ignored (not stored in experience file)

Wer mehr wissen möchte, es steht im Infinity Forum.
https://cumnor-chess-server.com/phpbb/index.php
Parent - - By Peter Martan Date 2020-03-09 21:02 Edited 2020-03-09 21:06
Na, da lag ich ja nicht so falsch.


Was ich nur meinte über die Diskussion über Eman hier, Omar Khalid schreibt und (ich vermute) liest hier nicht mit, es hat also weniger Sinn, hier Detail- Fragen zu seiner Engine zu stellen, die er dir anderswo direkt beantworten kann.
Das gilt übrigens mittlerweile wohl auch fürs Outskirts- Forum und ihn, er schrieb dort eine Zeit lang, mittlerweile glaube ich eher nicht mehr.

Ich glaube halt auch, dass es wichtig ist für ihn, seine Engine eben nicht allgemein zugänglich zu machen, um sich die Diskussionen darüber zu ersparen, dass er die Eman- Sourcen nicht mitveröffentlicht. Was er eben nicht muss, wenn die Engine nicht nur als privat bezeichnet wird, sondern auch nur an Einzelne, die ihn direkt anschreiben, mit Einzellizenz von ihm vergeben wird.
Hacken kann man alles, aber das ist dann nicht seine Verantwortung, immerhin war und ist Eman ja gratis und er investiert da schon eine ganze Weile ziemlich viel und ziemlich gute Arbeit, finde ich.
Parent - - By Eduard Nemeth Date 2020-03-09 21:12 Edited 2020-03-09 21:18 Upvotes 1
Er macht viel, inzwischen gibt es version 5.01 (Bugfix).

Mir geht es nicht nur um Eman, sondern auch um die experience.bin anderer Engines wie jetzt auch bei Stockfish TS oder Brainlearn.

Man kann auch Unsinniges Lernen speichern. Das tun derzeit offensichtlich einige Engines. Die speichern wohl alles ab, jede Tiefe, und die Datei bläht sich nur auf. Bei Eman ist das viel besser gemacht. Da kann man auch noch neben der Tiefe, auch noch angeben von welchem bis zu welchem Zug gelernt werden soll. Denn was nutzt mir eine 10 MB grosse experience.bin die 90% Schrott enthält?

Edit:
Mit dem Eman Tool lässt sich nun zum Glück die Tiefe nachträglich filtern und die Datei wird abgespeckt.
Parent - By Eduard Nemeth Date 2020-03-10 21:47 Edited 2020-03-10 22:00
Habe heute ein Experiment durchgeführt auf InfinityChess. Da ich tagsüber fast nie zuhause bin nahm ich meinen Laptop mit um ab 13 Uhr am heutigen Turnier teilnehmen zu können. Ich hatte eine experience.bin mit, die ich mit Stockfish TS und meinem Eröffnungsbuch trainiert hatte. Ich habe sie in Eman.exp umbenannt und dann auf Tiefe 20 mit Eman defragmentiert. Vor dem Turnier habe ich dann 5 oder 6 Partien 12+2 damit gespielt, und ich sah dass die Lerndatei bei Eman gut ankam! Trotzdem rechnete ich mir im Turnier nicht viel aus, weil dort neben vielen 2070 Lc0 Spielern auch sonst Monsterhardware am Start war (ich erinnere mich, sogar gegen 44 Kerne gespielt zu haben). Mein Core Duo i3 ist übrigens langsamer als mein Smartphone!! Auf dem Smartphone komme ich auf nur 4 von 8 Kernen mit Stockfish auf 2500 kns. Der Laptop schafft mit Eman nur 2200 kns in der Grundstellung. Aber ich kam aus dem Staunen nicht heraus als mein Laptoplein in Runde 2 gewinnen konnte. Und danach kamen erstmal Monster als Gegner. Tja, aber nach Runde 9 lag das Laptoplein sogar auf Platz 1. Ich dachte, ich seh schlecht. Nach Runde 11 am Ende lag mein kleiner Prozessor dann immerhin auf Platz 2, von 26 Teilnehmern. *Lach*

Khalid Omar hat seine Engine 5.01 offenbar auch gut optimiert. Speziell dachte er, so seine Beschreibung, an Leute mit weniger als 12 Threads. Er hat wieder Grossartiges geleistet, und mit einem gut trainierten Lernfile kann man auch mit schwacher Hardware gut abschneiden.
Up Topic Hauptforen / CSS-Forum / experience.bin defragmentieren

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill