Bestimmung von geografischen Standorten in Text
Frage
Welche Art von Arbeit ist getan worden, um festzustellen, ob eine bestimmte Zeichenfolge in eine geographischen Lage betrifft? Zum Beispiel:
'troy, ny'
'austin, texas'
'hotels in las vegas, nv'
ich denke, was ich irgendwie bin erwartet ein statistischer Ansatz ist, dass ein gewisses Maß an Vertrauen gibt, dass die ersten beiden Standorte sind. Der letzte wäre wahrscheinlich eine heuristische erfordern, die „% s,% s“ packt und dann verwendet die gleiche Technik. Ich bin auf der Suche speziell für Ansätze, die auf dem Satz ‚in‘ nicht allzu sehr verlassen, da es ist nicht ganz eindeutig oder konsequent verfügbar Indikator für Standort.
Kann mir jemand auf Ansätze, Papiere zeigen, oder bestehende Dienstprogramme? Dank!
Lösung
Das Problem, das Sie beschreiben, ist oft geografische Anfrageanalyse oder allgemeinen geografische Information Retrieval genannt.
Es gab eine letzte Aufgabe dieses 2007 im Clef auf tun ( http: //www.uni-hildesheim.de/geoclef/2007/Query-Parsing.htm ). Das Siegerteam verwendet eine regelbasierte Grammatik, die ähnlich ist, was Sie wollen wahrscheinlich nicht. Ein weiteres Papier bei www2009 spricht über GeoParser. http://www2009.eprints.org/239/
Es gibt auch einige Papiere auf Geographic Information Retrieval in CIKM 2007: http: //www.geo.unizh.ch/~rsp/gir07/accepted.html
Ich weiß nicht, von Open Source-Software, die dies tut, aber es kann in eine Suchmaschine wie Lemur gebündelt werden.
Andere Tipps
Es ist ein sehr interessanter Ansatz von Everyblock.com genommen, die auf fokussiert, wie Standorte in Englisch ausgedrückt werden - sie verwenden im Grunde einige anspruchsvolle und umfangreiche reguläre Ausdrücke, die jetzt Open Source sind. Ihre Anwendung ist so konzipiert, durch Nachrichtenartikel, Berichte zu scannen und verschiedenem öffentlichen Daten-Feeds und beziehen sie auf bestimmte Orte, und es funktioniert gut. Ausdrücke wie „Ein Feuer in dem Gebäude auf der Nord-Ost-Ecke des 20. und Valencia St. in San Francisco“ sehr genau geocodiert. Sie können die Quelle studieren hier . Der besondere Teil möchten Sie wahrscheinlich ist ebpub/ebpub/geocoder/base.py
im ebpub
Download befindet, und alles um ihn herum, zum Beispiel mit der SmartGeocoder Klasse beginnen und rückwärts arbeiten.
Ein Link zu helfen: geonames.org suchen :
gibt die Namen für die gefunden Suchbegriff als XML oder JSON-Dokument
Beispiel: http://ws.geonames.org/search? q = troy,% 20ny & maxRows = 10
Ich baue eine kostenlose geoparser unter geocode.xyz
(unterstützt derzeit über 50 europäischen Ländern, bald eine globale Abdeckung zu bieten)
Eine Beispielanwendung von geoparsing kann auf OpenWikiMap
finden