Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Warum ist der Test positiv ausgefallen?
- - By Tom Paul Date 2014-01-29 10:32
Obwohl es mehr Niederlagen als Siege gibt?

28-01-14  Ye  eval_sim1  diff 
LLR: 2.95 (-2.94,2.94) [-4.00,0.00]
Total: 75530 W: 13772 L: 13875 D: 47883
sprt @ 15+0.05 th 1  Eval simplification 1
Parent - - By Patrick Götz Date 2014-01-29 18:01
deswegen:
[-4.00,0.00]
Parent - - By Klaus S. Date 2014-01-29 18:12
Hallo Patrick,

was bedeutet denn [-4.00,0.00] ?

Und vor allem was bedeutet LLR ?
gefolgt von fast immer  2.95 (-2.94,2.94) - bis auf's hundertstel genau immer wieder 2.95 (-2.94,2.94) 

MfG
Wilfried
Parent - - By Patrick Götz Date 2014-01-29 20:26 Edited 2014-01-29 20:28
Wilfried Lübkemann schrieb:

was bedeutet denn [-4.00,0.00] ?
Und vor allem was bedeutet LLR ?
gefolgt von fast immer  2.95 (-2.94,2.94) - bis auf's hundertstel genau immer wieder 2.95 (-2.94,2.94) 
MfG
Wilfried


LLR:
http://de.wikipedia.org/wiki/Likelihood-Quotienten-Test

2.95 (-2.94,2.94):
(-2.94,2.94) sind die Auslösegrenzen, werden diese in einer der beiden Richtungen überschritten wird der Test positiv (bei 2.95) oder negativ (bei -2.95) beendet.

[-4.00,0.00]
das ist nicht so einfach darzustellen, [-4.00,0.00] bedeuten in etwa, das der Test dann als erfolgreich angesehen wird, wenn nicht mehr als 1 ELO durch die neue Version verloren gehen.

andere Beispiele:
Ein [0.00,3.00] Test endet zu 50% erfolgreich, wenn durch die neue Version eine Verbesserung von 0,78 ELO  erzielt wird.
Ein [0.00,6.00] Test endet zu 50% erfolgreich, wenn durch die neue Version eine Verbesserung von 1,57 ELO  erzielt wird.
Ein [-1.50,4.50] Test endet zu 50% erfolgreich, wenn durch die neue Version eine Verbesserung von 0,97 ELO  erzielt wird.
Man kann es aber auch anders ausdrücken:
Ein 0 ELO Patch würde nur mit einer Wahrscheinlichkeit von 20% einen [-1.50,4.50] Test positiv beenden.
Ein 0 ELO Patch würde nur mit einer Wahrscheinlichkeit von 5% einen [0.00,6.00]  Test positiv beenden.

Gruß
Patrick
Parent - - By Karl Müller Date 2014-01-29 20:33 Edited 2014-01-29 20:40
das soll/muss jemand verstehen?
sorry, ich kapier z. Z. noch nicht?!

warum kann man denn nicht einfach den Elo-Verlust oder Zuwachs posten?

ok, Statistik, war noch nie meins

daher halte ich mich an meine Anwender-Praxis-Methode in der die Neuen erst mal immer gegen meine bisher stärksten Stocky spielen lasse und nicht nur 1:0oder 1:1, sondern Min 5:0. Wer dann vorne liegt ist i. d. R. auch der Beste. Daher stimmt ja auch irgendwie die Aussage vieler Schachfreundenicht, die das behaupten, der neueste Stockfish wäre der Beste oder?
Parent - - By Patrick Götz Date 2014-01-29 20:39
Weil dieser Teil des Frameworks von Mathematikern entwickelt worden ist die das Framework auf Effizienz getrimmt haben und sich an Wahrscheinlichkeiten orientieren.
Für die Enduser gibt es dann immer noch die Regressionstest, die regelmäßig den Fortschritt für (fast) jedermann in verständlichen ELOs beziffern.
Parent - - By Karl Müller Date 2014-01-29 20:55
an was orientiert sich der Fortschritt eigentlich?
ist es der Fortschritt gegenüber dem letzten oder gegenüber dem bisher besten Patch?

ist mir auch irgendwie noch nicht klar?

der Übersicht halber könnte man doch immer den bisher in ELO stärksten als Referenz gegenüber dem nun Neuen mit neustem Patch stellen - dann wäre alles klar.
z. Z., wenn ich das richtig sehe, dann wird doch immer nur gegenüber dem letzten Patch berichtet . . . oder?
wenn nun einige Patchs zwischen dem Patch der die beste Elo hatte auch nur leicht also 1 bis 3 Elo verlieren, dann könnte das doch in der Summe zu meinetwegen nach dem bisher stärksten Patch sogar eine Verschlechterung der ELO nach sich ziehen . . .

Frage nur daher, gut es sind ja nur 1 bis 3 ELO vielleicht,aber in der Summe bei etwa 5 Patchs gegenüber dem Stärksten würde man ja ggf. 5 bis 15 ELO verlieren, der neue Patch dann vielleicht 4 ELO mehr bringen, aber dann immer noch schlechter da stehen als der bisher Beste?????

Dies würde auch meine Eindrücke - teilweise - bestätigen, dass z.B. einige frühere Patchs min. genau so stark sind, als der letzte auf "abrok . . .": Z. B. der 111113IP ist nach wie vor mit einer meiner stärksten Patches von Stockfish. Könnte noch einige andere Stockys nennen, die ich ebenfalls als stärker sehe, als den letzten Patch . . .

Ok, Grüße
Parent - By Stefan Pohl Date 2014-01-30 08:43 Edited 2014-01-30 08:45
Karl Müller schrieb:

an was orientiert sich der Fortschritt eigentlich?
ist es der Fortschritt gegenüber dem letzten oder gegenüber dem bisher besten Patch?

ist mir auch irgendwie noch nicht klar?

der Übersicht halber könnte man doch immer den bisher in ELO stärksten als Referenz gegenüber dem nun Neuen mit neustem Patch stellen - dann wäre alles klar.
z. Z., wenn ich das richtig sehe, dann wird doch immer nur gegenüber dem letzten Patch berichtet . . . oder?
wenn nun einige Patchs zwischen dem Patch der die beste Elo hatte auch nur leicht also 1 bis 3 Elo verlieren, dann könnte das doch in der Summe zu meinetwegen nach dem bisher stärksten Patch sogar eine Verschlechterung der ELO nach sich ziehen . . .

Frage nur daher, gut es sind ja nur 1 bis 3 ELO vielleicht,aber in der Summe bei etwa 5 Patchs gegenüber dem Stärksten würde man ja ggf. 5 bis 15 ELO verlieren, der neue Patch dann vielleicht 4 ELO mehr bringen, aber dann immer noch schlechter da stehen als der bisher Beste?????

Dies würde auch meine Eindrücke - teilweise - bestätigen, dass z.B. einige frühere Patchs min. genau so stark sind, als der letzte auf "abrok . . .": Z. B. der 111113IP ist nach wie vor mit einer meiner stärksten Patches von Stockfish. Könnte noch einige andere Stockys nennen, die ich ebenfalls als stärker sehe, als den letzten Patch . . .

Ok, Grüße


Das Framework und die Testmethodik ist so konzipiert, daß es auf der Annahme basiert, daß der letzte Patch - also die neueste Version auf abrok.eu - auch der stärkste ist. Ob das wirklich immer so ist, darf gelegentlich bezweifelt werden (siehe meine letzten Tests von Stockfish 140118 und 140119). Aber ohne diese Annahme würde der Testaufwand sich erheblich erhöhen...Und in den allermeisten Fällen stimmt diese These ja auch durchaus.
Die zweite, den Testaufwand reduzierende Annahme der Frameworktests ist übrigens, daß ein Patch, der im Selftest (also gegen die Vorgängerversion der gleichen Engine (also Stockfish)) eine Verbesserung bringt, auch gegen andere Engines besser scort. Auch hier gilt: Das muß nicht immer der Fall sein, aber es stimmt in den allermeisten Fällen und hilft eben auch, den Testaufwand zu reduzieren.

Testen von Engines heißt letztendlich immer: zugunsten der Praxis auf realen Rechnern in der realen Welt in realer Zeit, gewisse Kompromisse zuungunsten der Ergebnissicherheit einzugehen...Aber das Framework von Stockfish macht da sicher vieles richtig, sonst wären die Fortschritte von Stockfish nicht so exorbitant. Aber ganz ohne Kompromisse, bzw. vereinfachende Annahmen, geht es auch dort nicht.

Stefan
Parent - - By Joe Boden Date 2014-01-29 20:49
genau Karl,

das finde ich auch ziemlich doof solche kryptischen Zahlen zu liefern, die kein Mensch versteht.
Parent - By Karl Müller Date 2014-01-29 20:55 Edited 2014-01-29 20:57
danke Joe, dachte schon ich wäre da alleine

meine, klar sieht man das die Verluste höher sind als die Winner, insofern war die anfangs gestellte Frage ja berechtigt
Parent - - By Tom Paul Date 2014-01-30 06:14
[-4.00,0.00]
Warum/in welchen Fällen wird der Test als erfolgreich angesehen,wenn nicht mehr als 1 Elo Verlust entsteht, es ist doch immerhin 1 Elo Verlust?

Ein [0.00,3.00] Test endet zu 50% erfolgreich, wenn durch die neue Version eine Verbesserung von 0,78 ELO erzielt wird.
Wäre hier nicht [0.00,1.50] 0,39 Elo besser?
Es ist doch auch ein Gewinn und falls 0,60 Elo herausspringen wäre der Test bei [0.00,3.00] durchgefallen.

Ein 0 ELO Patch würde nur mit einer Wahrscheinlichkeit von 5% einen [0.00,6.00]  Test positiv beenden.
Kann es dann passieren, dass jeder zwanzigste 0 Elo Patch positiv beendet wird?
Sollte man nicht die Wahrscheinlichkeit auf 4-1% senken?
Wie würde das dann aussehen [_.__,_.__]?
Parent - By Patrick Götz Date 2014-01-30 10:15
Tom Paul schrieb:

Ein [0.00,3.00] Test endet zu 50% erfolgreich, wenn durch die neue Version eine Verbesserung von 0,78 ELO erzielt wird.
Wäre hier nicht [0.00,1.50] 0,39 Elo besser?


Grundsätzlich ist es so, dass ein nur halb so großer Intervall, welcher eine doppelte Genauigkeit entspricht, im Schnitt viermal so viele Partien benötigt.
Ein [0.00,1.50] würde also im Schnitt 4x so viele Partien benötigen wie ein [0.00,3.00] Test, welcher wiederum im Schnitt 4x so viele Partien benötigen wie ein [0.00,6.00] Test.
Deswegen werden [0.00,3.00] Tests nur dann angewendet, wenn das Framework überschüssige Ressourcen frei hat und ein [0.00,1.50] Test kommt erst gar nicht in Betracht.

Hier eine Statistik aus dem Stockfish-Forum für einen  [-4.00,0.00] Test.
Link der tatsächliche Elowert der neuen Version, rechts die sich daraus ergebende durchschnittliche Partiezahl die benötigt wird um den Test abzuschließen.
ELO  avg(stop)
-3.85  21576
-3.53  24468
-3.21  28714
-2.89  32979
-2.57  39245
-2.25  45698
-1.93  54843
-1.60  61313
-1.28  63715
-0.96  60291
-0.64  54792
-0.32  46367
-0.00  39147
0.32  33348
0.64  28224
0.96  24504
1.28  21577
1.60  19228
1.93  17385
2.25  15793
2.57  14555
2.89  13359
3.21  12330
3.53  11689
3.85  10886
Parent - By Stefan Pohl Date 2014-01-30 08:22 Edited 2014-01-30 08:25
Tom Paul schrieb:

Obwohl es mehr Niederlagen als Siege gibt?

28-01-14  Ye  eval_sim1  diff 
LLR: 2.95 (-2.94,2.94) [-4.00,0.00]
Total: 75530 W: 13772 L: 13875 D: 47883
sprt @ 15+0.05 th 1  Eval simplification 1


Es ist wohl so, daß ein Patch eigentlich eine Verbesserung bringen muß, also mehr Siege als Niederlagen. Wenn es sich aber um einen simplification-Patch handelt, dann reicht auch ein (fast) gleich gutes Ergebnis, da es ja bei dieser Art von Patch darum geht, den Code zu entschlacken, zu vereinfachen, nicht darum Elo hinzuzugewinnen.
Es gibt also, so wie ich es verstehe, 3 Arten von Patches, nämlich

1. no-functional-changes Patches, also Codemodifikationen, die die Schachleistung nach menschlichem Ermessen nicht beeinflussen. Diese werden meist gar nicht getestet, zumindest nicht mit tausenden von Partien im Framework.
2. simplification-Patches, also Codevereinfachungen. Da reicht es aus, wenn die Tests im Framework etwa gleich gut ausfallen (minimal schlechter ist eben auch erlaubt (s.o.))
3. functional-changes-Patches, also Patches, die die Engine wirklich elomäßig voranbringen sollen. Da muß in den Frameworktests ein echtes Plus rauskommen, damit sie in die Engine eingebaut werden.

Stefan
- - By Karl Müller Date 2014-01-30 16:13
unbestritten hat man ja mit den Entwicklungstests etc. unglaubliche Fortschritte gemacht. Daher mein Respekt an alle die da mitwirken, sonst wäre ja Stockfish nicht die Nummer 1 in der Welt Houdini 4 nur kurz nach dem Erscheinen zu überholen, ist eine Hausnummer. . .
Will das ja nur ansatzweise kapieren,was da so läuft.

Ich bin ein Fan der Stockfish-Engine, das steht fest. Z. Z. teste bzw. lass ich den "DD", version Ipmann mit syzygy und LP laufen - wunderbar . . . Obwohl datiert mit dem 30.11.13.

Also, macht weiter so . . .

Grüße
Parent - By Karl Müller Date 2014-01-30 22:21 Edited 2014-01-30 22:30
nö lassen wir das edit
Up Topic Hauptforen / CSS-Forum / Warum ist der Test positiv ausgefallen?

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill