Remix.run Logo
throwaway284534 18 hours ago

Search is a really tough problem in OSM for a few reasons, but I think a lot it stems from bad address parsing.

I’ve been working on geocoder which uses a trained model to parse and classify address queries into a tokenized form. In addition to being more accurate than traditional rule-based parsing, this approach also gives the search engine more to work with beyond the tokenized boundaries of each word. The model also attaches provenance annotations to the address components, allowing the geocoder to have a better understanding of the geographic hierarchy of the components makes sense, rather than matching a string in a database.

The code is changing fast but you can try it out entirely in your browser here! Let me know if you’d like to see any specific features not on the roadmap :)

https://mailwoman.sister.software/

Groxx 9 hours ago | parent [-]

Is this referring to the difficulty of figuring out what "123 w dhuwdaodks plk" means? I can certainly see that (especially internationally - model-based parsing makes a lot of sense there, assuming enough good training data exists), but like I reliably can't even find precise matches in dedicated fields like "business name" or "city". Sometimes it works, sometimes it doesn't, and no open source app I've found yet seems to offer any way to select or filter on fields that definitely exist across locations that definitely exist (I've checked the data by hand). It feels extremely strange, like they're all trying to copy each other without stepping back and figuring out if any of it makes any sense at all to their stated audience.

Groxx 6 hours ago | parent [-]

(as I can no longer edit)

concretely, here's an example search session: https://news.ycombinator.com/item?id=48825127

I mean it when I say that's "maybe slightly better than average". When it gets extra weird I generally go check the OSM node data out of curiosity, and fairly often I find searches returning things where literally no field at all matches any word I searched for, across many different apps. I don't really think that's an address parsing issue, though I have definitely noticed many apps being picky (but completely unspecified) about search formatting when looking for addresses.