x

Wall·E: Automatische Korrektur allgemeiner Tagging-Tippfehler?


Geschrieben von Oli-Wan (Gast) am 07. Oktober 2013 21:10:27: [flux]

Mahlzeit. Nach einigen Monaten relativer Ruhe habe ich noch einmal einen möglichen Vorschlag für eine Korrektur durch Wall·E, und zwar die Korrektur falsch geschriebener Tagschlüssel und -werte, also Dinge wie maxspeeed->maxspeed.
xybot hat seinerzeit ähnliche Bearbeitungen durchgeführt. Bei dem Meinungsbild vor knapp einem Jahr hatte ich diese Korrekturgruppe nicht aufgeführt; insofern stellt sich als erstes die Frage, ob derlei überhaupt wünschenswert ist. Ein gewisses Aufkommen falsch geschriebener Tags ist jedenfalls nicht zu verneinen, wenn man etwa mittels der /browse/changesets-Seite verfolgt, in welchem Umfang entsprechende Korrekturen händisch durchgeführt werden. Eine gewisse Entlastung scheint mir schon sinnvoll, eingeschränkt natürlich auf Fälle, die nach menschlichem Ermessen eindeutig sind.

Angenommen, es gibt ein positives Votum: wie sollen die Korrekturprozesse strukturiert werden? In einem der anderen Fäden zu Wall·E ist mal der Vorschlag angeklungen, man könnte die Korrekturen gleich anhand unscharfer Übereinstimmung mit dem Zielwert vornehmen: also etwa alles, was beispielsweise eine Editierdistanz von 1 zu building hat, durch building ersetzen. Ich bin da zurückhaltend und würde lieber mit einer expliziten Liste zu ersetzender Zeichenketten arbeiten, um unliebsamen Überraschungen zu entgehen. Nachteil: was nicht auf der Liste steht, wird auch nicht korrigiert. Die Liste müßte also kontinuierlich erweitert werden.

Es gibt eine Liste von xybot. Die möchte ich aber lieber nicht benutzen, weil sie auch einige Reinterpretationen enthält. Stattdessen würde ich basierend auf dem tatsächlichen, aktuellen Aufkommen eine komplett neue Liste aufsetzen (erste Kandidaten dafür siehe unten).

Ferner wäre zu klären, wie der Regelsatz aufgestellt und diskutiert werden soll. Die Liste der Ersetzungsregeln wird sukzessive wachsen; muß jede Neuaufnahme vorgestellt und diskutiert werden? Oder reicht es, das grundsätzliche Einverständnis des Forums einzuholen, und Ergänzugen nur in größeren Abständen in größeren Paketen vorzustellen? Oder Neuerungen einfach ohne Diskussion/Vorstellung einpflegen, solange sie sich in das Muster der bereits vorhandenen einfügen? Die aktuell verwendete Liste müßte natürlich in jedem Fall offenliegen.

Um dem ganzen etwas Substanz zu verleihen, einige Beispiele. Falsche Schreibweisen gibt es sowohl in Schlüssel als auch in Werten. Ich habe mir als ersten Schritt die in DE vorkommenden Schlüssel angesehen und nach Paaren von Schlüsseln gesucht, die eine Levenshtein-Distanz von 1 aufweisen und von denen einer mindestens 500mal häufiger vorkommt als der andere. Dieses Kriterium dient nur der Suche und muß noch ein wenig verfeinert werden, liefert aber bereits einige interessante Kandidaten.

Die meisten der folgenden aus dem Feld der Adresstags scheinen mir ziemlich eindeutig (in Klammern jeweils die Häufigkeit im Geofabrik-Extrakt):

key␣add:city␣(72)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣adddr:city␣(35)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣adde:city␣(138)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr.city␣(38)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr::city␣(3)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr:ciry␣(2)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr:ciy␣(2)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr:dity␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr:sity␣(5)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr;city␣(2)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣addr_city␣(16)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣adr:city␣(16)␣might␣be␣a␣misspelling␣of␣key␣addr:city␣(3887819)
key␣add:country␣(57)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣addr.country␣(63)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣addr:counry␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣addr:county␣(50)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣addr:coutry␣(7)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣addr:ountry␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣addr_country␣(7)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣adr:country␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:country␣(3398437)
key␣add:housename␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:housename␣(30914)
key␣addr:housenumber2␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:housenumber␣(4554402)
key␣addr:housenumberf␣(2)␣might␣be␣a␣misspelling␣of␣key␣addr:housenumber␣(4554402)
key␣add:postcode␣(4)␣might␣be␣a␣misspelling␣of␣key␣addr:postcode␣(3963213)
key␣add:street␣(3)␣might␣be␣a␣misspelling␣of␣key␣addr:street␣(4497705)
key␣addr::street␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:street␣(4497705)
key␣addr:street2␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:street␣(4497705)
key␣add:suburb␣(277)␣might␣be␣a␣misspelling␣of␣key␣addr:suburb␣(292765)
key␣addR:suburb␣(1)␣might␣be␣a␣misspelling␣of␣key␣addr:suburb␣(292765)
key␣addr_suburb␣(13)␣might␣be␣a␣misspelling␣of␣key␣addr:suburb␣(292765)

Auch bei Gebäuden, insbesondere den neumodischen 3D-Tags, gibt es einige recht klare Fälle:

key␣Building␣(1)␣might␣be␣a␣misspelling␣of␣key␣building␣(11592169)
key␣bulding␣(2)␣might␣be␣a␣misspelling␣of␣key␣building␣(11592169)
key␣building:coulor␣(2)␣might␣be␣a␣misspelling␣of␣key␣building:color␣(3474)
key␣building_color␣(1)␣might␣be␣a␣misspelling␣of␣key␣building:color␣(3474)
key␣building;colour␣(1)␣might␣be␣a␣misspelling␣of␣key␣building:colour␣(28846)
key␣building_height␣(1)␣might␣be␣a␣misspelling␣of␣key␣building:height␣(30333)
key␣building;levels␣(1)␣might␣be␣a␣misspelling␣of␣key␣building:levels␣(118554)
key␣building_levels␣(2)␣might␣be␣a␣misspelling␣of␣key␣building:levels␣(118554)
key␣builging:levels␣(1)␣might␣be␣a␣misspelling␣of␣key␣building:levels␣(118554)
key␣bulding:material␣(10)␣might␣be␣a␣misspelling␣of␣key␣building:material␣(22029)
key␣building_part␣(3)␣might␣be␣a␣misspelling␣of␣key␣building:part␣(15636)
key␣building_type␣(3)␣might␣be␣a␣misspelling␣of␣key␣building:type␣(26642)
key␣building_type:de␣(1)␣might␣be␣a␣misspelling␣of␣key␣building:type:de␣(993)

Gegenbeispiele: Bei Sprachzusätzen (:XX) versagt das Suchkriterium völlig.

key␣name:dv␣(11)␣might␣be␣a␣misspelling␣of␣key␣name:de␣(5837)
key␣name:dz␣(11)␣might␣be␣a␣misspelling␣of␣key␣name:de␣(5837)
key␣name:sn␣(1)␣might␣be␣a␣misspelling␣of␣key␣name:en␣(2887)

In anderen Fällen müßte man mal näher hinsehen, Beispiele:

key␣marking␣(12)␣might␣be␣a␣misspelling␣of␣key␣parking␣(113651)
key␣tower␣(156)␣might␣be␣a␣misspelling␣of␣key␣power␣(545828)

Oder man findet zwar ein falsches Tag, aber die Zuordnung durch den Algorithmus muß nicht notwendigerweise stimmen (das auch als Argument, warum ich keine Änderung allein anhand der Editierdistanz vornehmen möchte):

key␣biking␣(2)␣might␣be␣a␣misspelling␣of␣key␣hiking␣(39475)

Antworten: