[Trennmuster] Vergleich alte und neue patgen-Parameter

Keno Wehr wehr at abgol.de
Sa Apr 4 20:30:26 CEST 2020


Am 04.04.20 um 14:40 schrieb Werner LEMBERG:
> Danke für die Daten, aber warum ist die Minimierung Dein Ziel?  Ist es
> nicht heutzutage egal, ob die Muster 20kByte oder 200kByte groß sind?
> Der »packed trie«, der im Liangschen Algorithmus zum Anwenden der
> Muster verwendet wird, ist extrem gut konstruiert, und die Größe der
> Muster haben einen vernachlässigbaren Einfluß auf die
> Trenngeschwindigkeit.

Man mag das als praxisfremden Idealismus abtun, ich würde aber niemals 
Muster im Umfang von 200 kB einreichen, wenn ich auch welche mit nur 20 
kB erzeugen kann.
Die Trennmusterdatei für klassisches Latein enthält jetzt 26.076 Muster. 
Auch wenn sich die Trennqualität für Komposita erheblich verbessert hat 
und jetzt auch diakritische Zeichen unterstützt werden, finde ich das 
immer noch schrecklich viel im Vergleich zu den ursprünglich 740 Mustern 
von Claudio. Ich vermute, dass man die Anzahl bei manueller Erstellung 
wesentlich kleiner halten könnte; das ist mir aber dann doch zu viel 
Arbeit. Die Trennmuster für liturgisches Latein werden von Hand gepflegt 
(nicht von mir) und umfassen lediglich 2070 Muster bei einer ebenfalls 
guten Trennqualität auch für Komposita.
Hinter dem Wunsch nach Minimierung stand wohl auch die implizite 
Überzeugung, dass ein geringerer Umfang der Trennmuster eine bessere 
Trennqualität für nicht in der Liste enthaltene Wörter bedeutet.
Genau diese Vermutung würde ich nun gerne anhand der deutschen 
Trennmuster und deiner Vergleichsliste überprüft sehen.

> Ich habe die Werte für die deutschen Trennmuster auch nur geändert,
> weil die originalen Parameter eine neunte Ebene gebraucht hätten um
> alle Wörter in der »wortliste«-Datei korrekt zu trennen.  Bei den
> neuen ist das (noch?) nicht der Fall.  Mein Gefühl sagt mir aber, daß
> wir, egal welche Parameter wir benutzen, auf jeden Fall acht Ebenen
> brauchen.

In diesem Falle trügt dich dein Gefühl.
Ich habe die von mir mitgeteilten Parameterwerte auf die deutschen 
Verhältnisse angepasst und folgende Werte ausprobiert:

%   1 1 | 1 3 | 2 3 1
%   2 2 | 2 4 | 1 5 1
%   3 3 | 3 5 | 1 6 1
%   4 4 | 4 6 | 1 7 1
%   5 5 | 5 12 | 1 8 1
%   6 6 | 6 12 | 1 9 1
%   7 7 | 7 12 | 1 9 1
%   8 8 | 8 12 | 1 9 1

Nach dem 7. Durchlauf waren bereits alle Trennstellen korrekt, im 8. 
wurden keine Muster mehr geändert.
Es wurden 24.394/24.287/23.937 Muster (für AR/NR/AR Schweiz) erzeugt.

Mit den momentan im Repositorium hinterlegten Werten

%   1 1 | 1 5 | 1 1 1
%   2 2 | 2 6 | 1 2 1
%   3 3 | 3 7 | 1 1 1
%   4 4 | 4 8 | 1 4 1
%   5 5 | 5 9 | 1 1 1
%   6 6 | 6 10 | 1 6 1
%   7 7 | 7 11 | 1 4 1
%   8 8 | 8 12 | 1 8 1

werden 26.485/26.382/26.011 Muster (für AR/NR/AR Schweiz) erzeugt, also 
ca. 2000 mehr.
Zumindest nach meiner Auffassung wäre also noch eine geringfügige 
Optimierung möglich.

Spannend wäre jetzt die Untersuchung der Auswirkung der vorgeschlagenen 
Parameter auf die Trennqualität ...

Herzlichen Gruß
Keno



Mehr Informationen über die Mailingliste Trennmuster