Jos*_*eau 4 google-maps nlp machine-learning street-address
我正在构建一个Twitter机器人,它将收听如下推文:
Hey @twitterbot, I'm looking for restaurants around 123 Main Street, New York
Run Code Online (Sandbox Code Playgroud)
或者,另一个例子:
@twitterbot, what's near Yonge & Dundas, Toronto? I'm hungry!
Run Code Online (Sandbox Code Playgroud)
然后,它将回复您希望这些问题返回的数据类型.我已经解决了大部分问题,但我仍然坚持不应该那么难的事情; 从推文中提取地址.
我将转发地址到地理编码服务以获取lat/lng,因此我不需要以任何方式格式化或准备地址; 我只需要将它与不相关的文字隔离开来,比如"我正在寻找周围的餐馆"或"我很饿!".
是否有任何NLP工具可以在一个文本块中执行此地址识别?有关于另一种方式的建议吗?因为谷歌的地理编码器处理如此广泛的地址格式(甚至像'伊顿中心,多伦多'作为一个地址),我不能使用正则表达式来解决这个问题.
换句话说,我只想删除任何不属于地址的文本.
我正在寻找的地址需要在美国/加拿大工作.
StackOverflow上有一些类似的问题,但没有一个能解决我能找到的这个问题.因为谷歌的地理编码器是如此宽容,解决方案不一定是完美的,它只需要摆脱足够的模糊,以便谷歌知道我想说的是什么.
我对NLP很新,所以我很欣赏有关这个主题的任何指导.
如何从文本和组件中解析自由形式的街道/邮政地址回答问题"是否有办法将地址与周围的文本隔离并将其分解成碎片?" - 这与你的问题基本相同(除了你不关心将它分成碎片 - 只是将它与文本的其余部分隔离).
SmartyStreets在https://smartystreets.com/demo?mode=extract上也有一个很好的演示,但遗憾的是它不是一个免费的解决方案.
另一个快速思考 - 由于Twitter帖子限制为140个字符,并且往往包含很少的单词(你的两个例子分别有9个和12个单词),你可以想象只是暴力强制它.例如,要获得位于"@twitterbot,多伦多Yonge&Dundas附近有什么?我很饿!",您可以将以下所有内容发送到谷歌地理编码器 -
多伦多Yonge&Dundas附近有什么?我饿了!
多伦多Yonge&Dundas附近有什么?我
多伦多Yonge&Dundas附近有什么?
Yonge&Dundas附近有什么,
对于由完整单词组成的所有可能的子串.
| 归档时间: |
|
| 查看次数: |
2701 次 |
| 最近记录: |