神经元网络地名识别模型
neurotpr的Python项目详细描述
神经病
总体说明
neurtpr是一种地名识别模型,用于从社交媒体消息中提取位置。它基于一个通用的双向长短期记忆网络(BiLSTM),具有许多附加功能,如双层字符嵌入、手套字嵌入和上下文化单词嵌入ELMo。在
该模型的目标是提高从具有各种语言不规则性的社交媒体消息中识别地名的准确性,如非正式句子结构、大小写不一致(例如,“camino和springbrook路附近有一场大火”)、姓名缩写(例如。,“bsu”代表“博伊西州立大学”),以及拼写错误。我们基于2017年Harvey飓风的推特数据集,在灾难响应的应用环境中测试了Neuropr。在
图1。神经系统的整体结构
在
使用预训练神经pr模型
使用预训练神经网络模型进行地名识别需要以下步骤:
- 设置虚拟环境:请使用Anaconda创建一个新的虚拟环境,并使用以下命令安装依赖包(请按以下相同顺序运行它们):
conda create -n NeuroTPR python=3.6 conda activate NeuroTPR conda install keras -c conda-forge pip install git+https://www.github.com/keras-team/keras-contrib.git pip install neurotpr
- 在
下载pretrained model,并将其解压缩到您喜欢的文件夹中。在
在 - 在
使用neurtpr从文本中识别地名。下面是一个代码片段:
在
“topo_recog”函数的输入是一个字符串,输出是一个JSON对象的列表,在输入字符串中包含已识别的地名及其起始和结束索引。在
将neurtpr与地理定位服务相结合
neurtpr是一种地名识别模型,它不为识别的地名指定地理坐标。{a3}如果你想加上^ a4}其他的地名,你可以加上^ a4}坐标。请注意,这些服务并没有为您消除地名歧义,因为它们不知道这些地名是在什么上下文中提到的。但是,如果你的文本中的地名不是很含糊的话,使用其中一种服务是可以的。在
项目依赖性:
- Python 3.6
- Keras 2.3.1
- Tensorflow 1.14.0版
- 道路宽度(https://github.com/keras-team/keras-contrib)
- Tensorflow中心(https://www.tensorflow.org/hub)
- NLTK 3.5版
- 表情符号0.6.0
- 项目
标签: