Re: [Neo] Eure Wünsche für den Optimierer
Am 08.01.2011 02:02, schrieb Arne Babenhauserheide: > On Friday 07 January 2011 16:28:25 Dennis Heidsiek wrote: >> Mich würde interessieren, was der Optimierer für Resultate produziert, >> wenn man die Position der Mod-2-Tasten variabel macht. > > Das sollte recht einfach gehen: Einfach in der config.py > abc = "abcdefghijklmnopqrstuvwxyzäöüß,.⇧⇗" > > Ich lasse das gerade durchlaufen :) > > Interessanterweise wandern die shifts recht schnell nach innen ⇒ du bist > vermutlich auf was gestoßen. > Das klingt ja mal wie eine wirklich spannende Idee. Man sollte mal weiterverfolgen was damit noch alles möglich ist. Grüße, Wolf
Re: [Neo] Eure Wünsche für den Optimierer
Moin Dennis, On Friday 07 January 2011 16:28:25 Dennis Heidsiek wrote: > Mich würde interessieren, was der Optimierer für Resultate produziert, > wenn man die Position der Mod-2-Tasten variabel macht. Das sollte recht einfach gehen: Einfach in der config.py abc = "abcdefghijklmnopqrstuvwxyzäöüß,.⇧⇗" Ich lasse das gerade durchlaufen :) Interessanterweise wandern die shifts recht schnell nach innen ⇒ du bist vermutlich auf was gestoßen. Das erste Ergebnis ist das hier: yo,f. qvdpkx´ ⇧aieu rnths⇗ ⇚gäücö lmjbw ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬──┐ │ ^ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ ` │ ←│ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬┤ │ ⇥ │ y │ o │ , │ f │ . │ q │ v │ d │ p │ k │ x │ ´ │ Ret│ ├─┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ │⇩ │ ⇧ │ a │ i │ e │ u │ r │ n │ t │ h │ s │ ⇗ │ ⇘ │ │ ├┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴───┤ │ z │ ⇚ │ g │ ä │ ü │ c │ ö │ l │ m │ j │ b │ w │ ß │ ├┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴─┬─┴──┬┴───┼┬┤ │Strg│ Fe │ Alt│ Leerzeichen │ M4 │ Fe │ Me │Strg│ └┴┴┴───┴┴┴┴┘ # 0.931500854918 x100 total penalty per letter # 0.0103089385914 x10 billion total penalty compared to notime-noeffort # 4.86585639133 mean key position cost in file 1gramme.txt ( 0.05385053 ) # 2.23579993038 % finger repeats in file 2gramme.txt ( 0.012668733536 ) Die shifts sind also in Neo-Terminologie auf u und y gelandet, und z und ß wurden auf ihre Plätze verdrängt. Liebe Grüße, Arne
Re: [Neo] Eure Wünsche für den Optimierer
Hi Miche, On Thursday 06 January 2011 01:15:55 Arne Babenhauserheide wrote: > > • Linear: > > alles über dem Schwellwert wird doppelt gezählt (rote Linie). > > Diese Variante würde weniger Rechenaufwand erfordern. > > > > Was haltet ihr davon? > > Grundlegend finde ich es gut. Wir brauchen dafür allerdings eben die > Schwellwerte, ab wann ein Kostenfaktor teurer werden soll. Die sollten wir > allerdings bald definieren können. Ich habe jetzt erstmal etwas in der Art für Fingerwiederholungen implementiert. Wenn es eine Fingerwiederholung bei einem Bigramm gibt, das über 0.1% der Tasteneinsätze ausmacht, dann wird der Teil, der über 0.1% liegt verfünffacht (und gerät dadurch in den Layout-SVGs schnell in den tiefgelben Bereich). Bei AdNW betrifft das z.B. das „ln“, bei dem, das ich aktuell teste betrifft es ln und rs: xzo., pcslvß´ haeiu dtrnmf ⇚kyäüö bgjqw (die Belegung nenne ich liebevoll pcslave – Abwandlung eines Namens von Effchen :) ) Der kritische Wert (0.1%) und der Multiplikator können in config.py angepasst werden. Eine weitere Anpassung ist, dass Fingerwiederholungen des Zeigefingers nur halb gewertet werden, weil die weniger weh tun. Wenn das für euch nicht so ist, sagt es bitte! Rückgängig gemacht ist schnell… Liebe Grüße, Arne signature.asc Description: This is a digitally signed message part.
Re: [Neo] Eure Wünsche für den Optimierer
Moin Arne, man sollte bekanntlich damit aufpassen, was man sich wünscht … man könnte es bekommen ;). Mich würde interessieren, was der Optimierer für Resultate produziert, wenn man die Position der Mod-2-Tasten variabel macht. Bei der Entwicklung eines optimalen neuen Layouts sollte man schließlich Alles wenigstens einmal in Frage gestellt haben … und wenn ich mir die (wirklich tollen!) Bigramm-Diagramme so ansehe, produzieren die dicken blauen Striche, die bei Neo 2 von den Großschreibtasten ausgehen, einfach die größte Abweichung von der Grundlinienposition. Deshalb fände es schon interessant, wie ein Layout abschneiden würde, wo die Mod-2-Tasten auf (Neo-Terminologie) ü und j liegen würden – oder gar auf u und d. Ach verdammt noch mal, warum kann eine Standardtastatur keine zweigeteilte Leertaste haben! Viele Grüße, Dennis-ſ
Re: [Neo] Eure Wünsche für den Optimierer
Hi Miche, On Saturday 25 December 2010 22:20:06 Michael Ostermeier wrote: > wen jucken hier schon Traditionen, auf einer Ketzer-Layout-Liste? ;) :) > Ok, ‚Wünsch dir was‘ ist gut. Was haltet ihr von einer nichtlinearen > Gewichtung der einzelnen Kriterien? Momentan kann ein Layout Schwächen > bei einem Kriterium leicht durch entsprechende Vorteile in anderen > Kategorien ausgleichen. Eine nichtlineare Gewichtung könnte dazu > führen, dass negative Ausreißer bei Einzelkriterien seltener werden und > somit ausgewogene Layouts gefördert werden. > > Das Ganze kostet dann natürlich Rechenzeit. Ein weiterer Nachteil ist, > dass bei Optimierungsrunden keine so große Streuung mehr vorkommt. Die Rechenzeit tut dabei nicht weh, das ist nur eine Quadrierung am Ende. Was weh tut sind komplexe Rechnungen auf jedem einzelnen N-Gram. > Die > Auswahl an Layouts für Tipptests würde also enger. Dies spräche dafür, > dass diese nichtlineare Auswahl erst am Ende auf den Pool von Layouts > angewendet werden sollte um ‚das Beste‘ auszuwählen (oder vielleicht > gar lokal nachzuoptimieren). Denke ich auch. Um das zu machen brauchen wir nämlich Referenzwerte, sonst ist plötzlich nur noch das größte Kriterium relevant. > • Quadratisch: > linear bis zu einem Schwellwert (a), danach parabelförmig weiter. > Eine mögliche Formel wäre: y=m/(2a)x²+(1-m)x+ma/2 (die blaue Linie im > Anhang hat den Steilheitsfaktor m=5). > > • Linear: > alles über dem Schwellwert wird doppelt gezählt (rote Linie). > Diese Variante würde weniger Rechenaufwand erfordern. > > Was haltet ihr davon? Grundlegend finde ich es gut. Wir brauchen dafür allerdings eben die Schwellwerte, ab wann ein Kostenfaktor teurer werden soll. Die sollten wir allerdings bald definieren können. > Da ja gerade eine Optimierungsrunde läuft, würde ich gern wissen, was > denn im Vergleich zur letzten Runde geändert wurde. Sind neue Kriterien > hinzugekommen (ich denke da an die Anzahl unterschiedlicher > Fingerkollisionen)? Gibt’s was neues, das im Wiki¹ ergänzt werden > könnte? Ich setze mich die nächste Zeit nochmal (endlich) ans Dokumentieren. Dann sollte ich das klarer beantworten können als jetzt :) Liebe Grüße, Arne signature.asc Description: This is a digitally signed message part.
Re: [Neo] Eure Wünsche für den Optimierer
Hallo, Arne Babenhauserheide schrieb: > Ich weiß, eigentlich fragt man vor Weihnachten nach dem Wunschzettel > und erfüllt die Wünsche dann an Weihnachten. Aber ich lasse mich > ungerne durch Traditionen von einer schönen Idee abhalten :) wen jucken hier schon Traditionen, auf einer Ketzer-Layout-Liste? ;) > Am 3.1. habe ich Abgabe meiner Diplomarbeit und damit etwas mehr freie > Zeit. Viel Erfolg mit deiner Diplomarbeit. > Daher würde ich gerne von euch wissen, was ihr euch vom Optimierer > wünscht. Ok, ‚Wünsch dir was‘ ist gut. Was haltet ihr von einer nichtlinearen Gewichtung der einzelnen Kriterien? Momentan kann ein Layout Schwächen bei einem Kriterium leicht durch entsprechende Vorteile in anderen Kategorien ausgleichen. Eine nichtlineare Gewichtung könnte dazu führen, dass negative Ausreißer bei Einzelkriterien seltener werden und somit ausgewogene Layouts gefördert werden. Das Ganze kostet dann natürlich Rechenzeit. Ein weiterer Nachteil ist, dass bei Optimierungsrunden keine so große Streuung mehr vorkommt. Die Auswahl an Layouts für Tipptests würde also enger. Dies spräche dafür, dass diese nichtlineare Auswahl erst am Ende auf den Pool von Layouts angewendet werden sollte um ‚das Beste‘ auszuwählen (oder vielleicht gar lokal nachzuoptimieren). Mir schweben zwei Varianten vor: • Quadratisch: linear bis zu einem Schwellwert (a), danach parabelförmig weiter. Eine mögliche Formel wäre: y=m/(2a)x²+(1-m)x+ma/2 (die blaue Linie im Anhang hat den Steilheitsfaktor m=5). • Linear: alles über dem Schwellwert wird doppelt gezählt (rote Linie). Diese Variante würde weniger Rechenaufwand erfordern. Was haltet ihr davon? > Also lasst euch bitte erstmal nicht von Realisierungsschwierigkeiten > abhalten, sondern schreibt einfach eure Wünsche: Welche weiteren > Fähigkeiten oder Möglichkeiten hättet ihr gerne im Optimierer? Da ja gerade eine Optimierungsrunde läuft, würde ich gern wissen, was denn im Vergleich zur letzten Runde geändert wurde. Sind neue Kriterien hinzugekommen (ich denke da an die Anzahl unterschiedlicher Fingerkollisionen)? Gibt’s was neues, das im Wiki¹ ergänzt werden könnte? Gruß Miche ¹ http://wiki.neo-layout.org/wiki/Neo3/Optimierungskriterien <>