如何从大写文本中提取实体。
我使用 - http://corenlp.run/
有测试数据 - 我知道TOM生活在伦敦。
伦敦 - 位置 汤姆 - 没有确定 关系未确定
有测试数据 - 我知道汤姆住在伦敦。 汤姆 - 人 伦敦 - 位置 关系正确识别。
如何改善这个?
答案 0 :(得分:3)
我遇到了你遇到的完全相同的问题。最好的方法是使用自己的字典。它比使用斯坦福NER要快得多。
以下是一些消息来源。
http://deron.meranda.us/data/census-dist-female-first.txt (4275 entries)
http://deron.meranda.us/data/census-dist-male-first.txt (1219 entries)
http://deron.meranda.us/data/census-derived-all-first.txt
答案 1 :(得分:1)
您可以尝试使用忽略大小写的无壳模型。但请确保您只使用大写或小写的句子以获得最佳效果!
英国模型jar中提供无壳模型。您可以在此处下载该模型jar:http://stanfordnlp.github.io/CoreNLP/download.html
你需要设置" ner.model"使用无壳模型的参数:
Properties props = new Properties();
props.setProperty("ner.model", "edu/stanford/nlp/models/ner/english.all.3class.caseless.distsim.crf.ser.gz,edu/stanford/nlp/models/ner/english.muc.7class.caseless.distsim.crf.ser.gz,edu/stanford/nlp/models/ner/english.conll.4class.caseless.distsim.crf.ser.gz");
我认为在下一个NER系统中,它可能是一个很酷的新功能,可以自动检测句子是ALL-CAPS还是全小写,并为这些句子使用无壳模型。