给定原始字符串输入
1600 Divisadero St
San Francisco, CA 94115
b/t Post St & Sutter St
Lower Pacific Heights
我想提取
城市:San Francisco
州:California
或CA
国家:USA
我将解析数百万个地址并且使用付费API是不可行的
我打算使用命名实体识别器,但我无法找到大量的训练数据来理想地覆盖任何位置
我可以使用一个开源项目吗?
答案 0 :(得分:3)
可以下载OpenStreetMap的地理编码解决方案Nominatim并set up on your own machine。这是一个非常繁琐且耗时的过程。您将需要500GB的可用磁盘空间,O(10s)天来进行索引编制,但最后,您将在自己的机器上拥有一个完整的地理编码器,应该能够满足您当前的需求以及更多未来的
如果你沿着这条路走下去,我建议先试试他们的示例网络api,看看质量是否可以接受。
完全值得研究花钱并获得Google或Bing地理编码器。
答案 1 :(得分:-1)
@ adi92' s答案是这里的最佳选择,但需要一台非常强大的机器,它具有许多核心和巨大的RAM来索引整个数据库。对于需要较少计算的人www.geonames.org,对于城市,州,国家来说相当全面。