Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stop words Liste viel zu umfangreich #2091

Open
codeling opened this issue Oct 6, 2021 · 15 comments
Open

Stop words Liste viel zu umfangreich #2091

codeling opened this issue Oct 6, 2021 · 15 comments
Assignees

Comments

@codeling
Copy link

codeling commented Oct 6, 2021

Was soll verbessert / korrigiert werden

Die FAQ erwähnt dass "996 häufig auftretende Wörter, die keine Relevanz für den eigentlichen Inhalt von Beiträgen haben" bei der Suche ignoriert werden.

Meiner Meinung nach ist diese Liste viel zu umfangreich. Google filtert ja z.B. auch "sieben" nicht einfach aus einer Suchanfrage heraus. Gerade im Vergleich zur bei Joomla mitglieferten, englische Variante en-GB, erscheinen mir die 996 Wörter SEHR exzessiv - en-GB kennt nämlich nur 3 stop words: and, in, on.

Die exzessive Liste in dieser Übersetzung führt dazu, dass es
(1) Benutzer verwirrt - sie suchen nach bestimmten Wörtern, und es wird entweder gar nichts geliefert, oder viel zu viel (weil etwa zwei Worte eingegeben wurden, eines war auf der Liste, wurde entfernt, somit wird nur mehr nach dem anderen gesucht), was schlussendlich dazu führt, dass
(2) Benutzer zur Überzeugung kommen dass die Suche kaputt ist - weil sie nicht wirklich nach den Wörtern sucht, die die Leute eingegeben haben. Die Benutzer werden auch nicht auf den Umstand hingewiesen dass Worte herausgefiltert werden (das wäre dann eher ein Joomla-Issue, aber die oben erwähnte en-GB Variante scheint zu suggerieren dass die stop words nie für so exzessive Listen gedacht waren). Weil die Benutzer gar nicht darauf hingewiesen werden, ist es für sie auch schwierig bis unmöglich, herauszufinden, warum ihre Suchanfrage nicht wie erwartet funktioniert, es sei denn, sie wissen dass die Seite auf der sie suchen mit Joomla gebaut wurde, und die deutsche Übersetzung verwendet, und somit auf den oben verlinkten FAQ-Eintrag kommen.

Joomla Version & Version der deutschen Sprachdatei

Joomla: 3.10.2

J!German translation 3.10.2.1

@tecpromotion tecpromotion removed their assignment Oct 6, 2021
@tecpromotion
Copy link
Member

@zero-24 Please check this issue

@zero-24
Copy link
Member

zero-24 commented Oct 12, 2021

hmm über https://de.wikipedia.org/wiki/Stoppwort hab ich https://github.com/solariz/german_stopwords gefunden ggf. können wir die als Basis nehmen? Bin mir nur nicht sicher ob wir die Liste "einfach so" updaten sollten da es ja schon eine entsprechende Auswirkung auf Suchen hat.

@codeling
Copy link
Author

Die _full Liste ist in meinen Augen definitiv zu umfangreich - diese enthält 1853 Wörter, also noch mehr als die aktuelle Liste.

Die _plain Liste wäre möglicherweise eine leichte Verbesserung zur aktuellen Liste.

Mir erscheinen diese Listen jedoch eher im Hinblick auf eine thematische Analyse des in einem Text enthaltenen Themas hin optimiert zu sein; es geht darum ob diese Worte Einfluss auf die Bedeutung eines längeren Textes haben (..."unwanted words. This list can contain nouns which are often used in a descriptive way without having a huge impact of the sentence meaning"). Inwieweit Stopp-Wörter im Rahmen einer Suche relevant sein können thematisiert ja auch der wikipedia-Artikel ("Allerdings ist es nicht immer sinnvoll, Stoppwörter komplett auszublenden. Beispiele hierfür sind im Englischen die Rockgruppe „The Who“ oder im Deutschen „Die Ärzte“ und Personen mit dem Nachnamen „Weil“). Es ist in einem joomla mit den deutschen Translations allerdings derzeit unmöglich für einen Suchanbieter, überhaupt zu entscheiden ob man im aktuellen Kontext Stoppwörter berücksichtigen soll oder nicht; denn diese werden bereits zuvor anhand der Liste herausgefiltert.

Wenn jemand explizit nach einem bestimmten Wort sucht, erscheint mir sogar die _plain Liste viel zu umfangreich - auf einen kurzen Blick ist mir z.B. "jenseits" aufgefallen, das zumindest auch als Hauptwort gebräuchlich ist und daher sehr leicht ein Suchbegriff sein könnte.

@svenha
Copy link

svenha commented Jan 17, 2022

Stoppwörter sind bei modernen, sprachverstehenden Suchmaschinen eher unüblich. Wie sollte man sonst "Bücher von Merkel" und "Bücher über Merkel" unterscheiden können? (Sowohl in der Suchanfrage als auch in den Dokumenten.)

In unserem Joomla-Plugin für eine kognitive Suche deaktivieren wir daher die komplette Stoppwort-Liste von Joomla :-)

@ahotzler
Copy link

Ich würde mal Wörter wie "loadposition" auf die Liste aufnehmen. Ist echt nicht schön, wenn sowas in den Suchergebnissen auftaucht.

@codeling
Copy link
Author

Ich würde mal Wörter wie "loadposition" auf die Liste aufnehmen. Ist echt nicht schön, wenn sowas in den Suchergebnissen auftaucht.

Ist das scherzhaft gemeint? Oder was soll da genau das Kriterium sein was "schön" ist und was nicht? Wieso müssen Suchergebnisse überhaupt "schön" sein? Für mich ist es egal ob sie "schön" sind - sie müssen akkurat sein, d.h. wenn der Benutzer nach einem bestimmten Begriff sucht, sollte dieser auch gefunden werden...

@svenha
Copy link

svenha commented Feb 25, 2022

Ich würde mal Wörter wie "loadposition" auf die Liste aufnehmen. Ist echt nicht schön, wenn sowas in den Suchergebnissen auftaucht.

Ich vermute, dass @ahotzler sich wundert, weil das Wort "loadposition" bei ihm im Markup und nicht als Content vorkommt. Wenn dem so ist, dann ist die dortige Joomla-Installation oder die Joomla-Suche wohl etwas defekt.

@ahotzler
Copy link

Ich hab das eben mal in einigen J!4-Installationen (Updates von 3.x und frische J!4-Installationen) getestet, sie alle finden den erwähnten String.

@tecpromotion
Copy link
Member

Ich hab das eben mal in einigen J!4-Installationen (Updates von 3.x und frische J!4-Installationen) getestet, sie alle finden den erwähnten String.

Smart Search (com_finder) oder die "alte" com_search?
Sorry, kann das weder lokal noch irgendwo anders grad nachstellen.
Hast du einen Link zu einer Website wo dies auftritt?

@codeling
Copy link
Author

codeling commented Feb 25, 2022

sie alle finden den erwähnten String.

Also egal was das genau ist (Bug in Joomla oder irgendeiner Extension erscheint mir am wahrscheinlichsten?).
Als kurzfristiger Workaround mag da ein Eintrag in der stop word list vielleicht nützlich sein.
Aber denke nicht dass das etwas ist was durch einen Eintrag in der stop words liste "gefixt" werden sollte.

@ahotzler
Copy link

Immer Smart Search, com_search gibts doch bei den neuen J!4-Installationen nicht mehr. Ich installier nachher mal ein J!4 auf nem öffentlich erreichbarem System und poste es hier. Danke fürs nachschauen.

Dass die Stopliste evt nicht der beste Weg ist, mag sein, ich hab zu wenig Ahnung, um das zu beurteilen.

@ahotzler
Copy link

Also, ich hab hier eben ein frisches J!4 aufgesetzt und die deutsche Sprache nachinstalliert.

In den Optionen von com_finder hab ich "gemeinsame Wörter filtern" auf "Ja" gesetzt, anschließend den Index neu aufgebaut. Da die Suche übers Modul aufgerufen wird und kein Menupunkt existiert, dürften auch keine globalen Optionen durch einen Menupunkt überschrieben werden.

Dann habe ich im Beitrag "Typography" ein Modul geladen.

Suche ich jetzt nach Inhalt aus dem Beitrag "Typography", beispielsweise nach "h1", dann erhalte ich in den Ergebnissen auch das "loadmoduleid".

Weiter habe ich mal ein Wort aus der Stop.Word-Liste, und zwar "zuletzt" in den Artikel eingefügt. Wenn ich dann "zu" in die Suche eingebe, wird mir "zuletzt" schon angeboten. Bei "und" das selbe.

https://j4test2.128ze.net/index.php/search?q=und

Ich frage mich jetzt schon, ob ich irgendwas falsch verstanden habe, sollte nicht die Stop-Wort-Liste verhindern, dass die Suche auf "und" reagiert?

@tecpromotion
Copy link
Member

tecpromotion commented Feb 25, 2022

Konnte ich nachstellen. Würde aber den Thread hier nicht aufblasen, da dies nichts direkt mit der stop words zu tun hat, dass "loadposition" etc gefunden wird.
Es gibt eine ganze Reihe von offene PRs https://github.com/joomla/joomla-cms/pulls?q=is%3Apr+is%3Aopen+finder
Evtl. kann @Hackwar auch kurz Feedback geben.

@Hackwar
Copy link
Contributor

Hackwar commented Feb 25, 2022

Das loadposition gefunden wird, liegt an dem loadposition plugin, welches nicht ordentlich sauber macht, wenn indexiert wird. Entweder sollte das Plugin die entsprechenden Module einbauen an der Stelle oder den Platzhalter raus nehmen.

Das er "zuletzt" und "und" noch drin hat, hat wahrscheinlich recht einfache Gründe: Die Inhalte sind nicht als "deutsch" markiert bzw. die Stopwords wurden vielleicht gar nicht in die Tabelle übernommen. Aber in der Tat ist die Liste verdammt lang.

@ahotzler
Copy link

So einfach ist das nicht mit dem "und". In com_finder kann man einstellen, welche Sprache für Artikel, die nicht einer Sprache zugeordnet wurden, verwendet werden. Solange Du keine Mehrsprachigkeit einrichtest, kannst Du ja keine Sprache setzen.

Aber egal, ob ich die Einstellung auf "Deutsch" oder "Standard" (vorausgesetzt, dass Deutsch der Standard ist, setze, wird "und" gefunden. Auch, wenn ich nochmal einen ganz neuen Artikel anlege.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

6 participants