Wie tippen sie es? Schwierigkeiten mit der japanischen Rechtschreibprüfung
Der erste Teil des Vortrags von Takahiko Ito an Tag 2 der Lucene Revolution war interessant, aber in der zweiten…
Der erste Teil des Vortrags von Takahiko Ito an Tag 2 der Lucene Revolution war interessant, aber in der zweiten Hälfte wurde ich auf ein Problem aufmerksam – und zwar ein schwerwiegendes -, von dem ich nicht einmal wusste, dass es existiert. Folien für diese Sitzung:
http://www.slideshare.net/takahi-i/lucene-revolution-2011
Ito vom japanischen sozialen Netzwerk mixi beschrieb zunächst das von mixi entwickelte Tool Anuenue, das die Erstellung von Solr-Clustern vereinfacht. Es ist noch nicht mit Solr Cloud und Zookeeper integriert – das ist eines der zukünftigen Ziele – aber es scheint ziemlich einfach zu sein. Eine einzige XML-Konfigurationsdatei definiert einen Master (der die Indizierung vornimmt), Slaves (die den replizierten Index erhalten und Anfragen von den Mergern bedienen) und Mergers, die Anfragen vom Client entgegennehmen und die Daten von den Slaves abrufen, dann alle zurückgegebenen Daten zu einem einzigen Satz kombinieren und an den Client zurückgeben. Zum Beispiel:
<nodes> <masters> <master iname="master1"> <host>host1</host> <port>8983</port> </master> </masters> <slaves> <slave> <host>host2</host> <port>8983</port> <replicate>master1</replicate> </slave> <slave> <host>host3</host> <port>8983</port> <replicate>master1</replicate> </slave> </slaves> <mergers> <merger> <host>host4</host> <port>8983</port> </merger> <merger> <host>host5</host> <port>8983</port> </merger> </mergers> </nodes>
Sie müssen also nicht mehr jede Konfigurationsdatei des Clusters manuell bearbeiten und jeden Server einzeln verwalten. Sobald Ihr Cluster installiert ist, bietet Anuenue auch Cluster-Befehle, z. B. zum Starten oder Stoppen des gesamten Clusters oder zum Senden von Daten an den Cluster. Anuenue bietet auch Unterstützung für japanische „Haben Sie gemeint“-Befehle, und hier wird es wirklich interessant. Wie sich herausstellt, ist die Rechtschreibprüfung im Englischen (und wahrscheinlich auch in vielen anderen lateinischen Sprachen) nicht unbedingt einfach, aber sie ist unkompliziert. In den meisten Fällen erhalten Sie ein ziemlich gutes Ergebnis, wenn Sie sich die „Editierdistanz“ zwischen zwei Wörtern ansehen, die die Anzahl der gemeinsamen Buchstaben berücksichtigt. Zum Beispiel liegen „like“ und „likes“ nahe beieinander, da sie nur um ein Zeichen voneinander abweichen. Andererseits sind „like“ und „foobar“ völlig unterschiedlich, so dass zwischen ihnen eine große Editierdistanz bestehen würde. Aber hier liegt das Problem, wie Ito betont. Im Englischen können Sie erkennen, dass ein Wort ein guter Kandidat für ein falsch geschriebenes Wort ist, wenn die Editierdistanz zwischen ihnen klein ist. Aber im Japanischen ist das alles nicht möglich. Ein Wort und seine falsche Schreibweise haben möglicherweise überhaupt keine gemeinsamen Zeichen. Und warum? Weil Japaner in der Regel keine japanischen Schriftzeichen tippen. Stattdessen geben sie die lateinischen Zeichen für die phonetische Schreibweise des Wortes ein, und der Computer bietet ihnen die möglichen (oder wahrscheinlichen) japanischen Begriffe an. Wenn der Benutzer den falschen Begriff auswählt, gibt es möglicherweise keine gemeinsamen Zeichen zwischen der falschen Schreibweise und der richtigen Entsprechung. Die Lösung? Ein Wörterbuch, das häufige Rechtschreibfehler mit ihren korrigierten Entsprechungen abbildet. Ito sprach über ein Tool namens Oluolu, das das Protokoll einer Website analysiert und falsche/richtige Paare ermittelt, indem es die Benutzersitzungen beobachtet und dann die phonetischen Versionen (oder „Lesungen“) vergleicht, um zu sehen, ob sie ähnlich sind. Langfristig könnte dieses „Problem“ tatsächlich zu einer besseren Lösung führen. Da die Wörterbücher, die Oluolu erstellt, auf echten Benutzerinteraktionen basieren, sind sie wahrscheinlich genauer als maschinelle „Vermutungen“ und liefern bessere Ergebnisse. Haben Sie sich schon einmal gefragt, was aus der künstlichen Intelligenz geworden ist (wie in HAL, dem IBM-Minus-Eins-Biest aus dem Film 2001 von 1968)? Es scheint, dass die Automatisierung der vorhandenen menschlichen Intelligenz, so laut sie auch sein mag, sich als viel effektiver erweist.
Cross-posted mit Lucene Revolution Blog. Nicholas Chase ist ein Gast-Blogger. Dies ist eine von mehreren Zusammenfassungen von Präsentationen auf der Konferenz.