目前我有一个场景,我想在给定的文本中提取位置信息,并最终获得该位置所在的国家/地区。
例如:
I am studying in New York.
我想抓住纽约作为一个位置,并以某种方式找到它的所有者国家。
现在我正在使用NLTK和Stanford NER包。我可以成功提取位置。然后,我如何获得其国家(使用语料库或其他东西)?我相信我可以通过地理服务获得它。但如果没有Web服务或固定位置表,最好实现。
欢迎任何想法!感谢。
答案 0 :(得分:0)
您可以训练您的NER模型以获取地理数据,以便根据您的需要识别信息。 但它有其局限性,如拼写变化,放置别名等。 使用NLTK很容易做到这一点。
有一个基于NLTK的github项目专门研究地理NER数据:https://github.com/ushahidi/geograpy 它还支持模糊字符串匹配,以及国家查找等。
对于国家/地区查询,您可以依赖#2中提到的项目,也可以使用Google places apis来搜索提取的实体,并从建议中选择最可能的结果。这个国家将出现在谷歌api结果提供的行政层级中。例如:旧金山 - >加利福尼亚 - > USA