天道酬勤,学无止境

named-entity-recognition

OpenNLP:为多个实体训练自定义 NER 模型(OpenNLP: Training a custom NER Model for multiple entities)

问题 我正在尝试为多个实体训练自定义 NER 模型。 这是样本训练数据: count all <START:item_type> operating tables <END> on the <START:location_id> third <END> <START:location_type> floor <END> count all <START:item_type> items <END> on the <START:location_id> third <END> <START:location_type> floor <END> how many <START:item_type> beds <END> are in <START:location_type> room <END> <START:location_id> 2 <END> NameFinderME.train(.)方法采用字符串参数type 。 这个参数有什么用? 而且,我如何为多个实体训练模型(例如item_type 、 location_type 、 location_id在我的情况下) public static void main(String[] args) { String trainingDataFile = "/home/OpenNLPTest/lib/training_data.txt"

2021-09-22 07:01:04    分类:技术分享    machine-learning   nlp   stanford-nlp   opennlp   named-entity-recognition

OpenNLP:为多个实体训练自定义 NER 模型(OpenNLP: Training a custom NER Model for multiple entities)

问题 我正在尝试为多个实体训练自定义 NER 模型。 这是样本训练数据: count all <START:item_type> operating tables <END> on the <START:location_id> third <END> <START:location_type> floor <END> count all <START:item_type> items <END> on the <START:location_id> third <END> <START:location_type> floor <END> how many <START:item_type> beds <END> are in <START:location_type> room <END> <START:location_id> 2 <END> NameFinderME.train(.)方法采用字符串参数type 。 这个参数有什么用? 而且,我如何为多个实体训练模型(例如item_type 、 location_type 、 location_id在我的情况下) public static void main(String[] args) { String trainingDataFile = "/home/OpenNLPTest/lib/training_data.txt"

2021-09-22 06:59:39    分类:技术分享    machine-learning   nlp   stanford-nlp   opennlp   named-entity-recognition

nlp - 如何检测句子中的单词是否指向颜色/身体部位/车辆(nlp - How to detect if a word in a sentence is pointing to a color/body part /vehicle)

问题 所以正如标题所暗示的,我想知道句子中的某个词是否指向 1]一种颜色 The grass is green. 因此“绿色”是颜色 2]身体部位 Her hands are soft 因此“手”是身体的一部分 3] 一辆车 I am driving my car on the causeway 因此“汽车”是一种交通工具 在类似的问题中,解析器是可能的有效解决方案之一。 例如,斯坦福解析器被建议用于类似的问题 如何判断句子中的一个词是否指向一个城市 现在的问题是stanford解析器可以用来检测: LOCATION ORGANIZATION DATE MONEY PERSON PERCENT TIME 但是,如果您想尝试检测其他内容,则 word-net 可能是类似问题中提到的一个选项 如何在句子中列出所有表示动物的英语术语? 建议使用 wordnet 并利用下位词/上位词关系的答案之一。 回答中还提到了wordnet的noun.animal文件。 下面的链接显示了 wordnet 中所有其他文件的列表 https://wordnet.princeton.edu/man/lexnames.5WN.html 我的方法是我可以利用 1] (noun.body FOR body parts) 2] (noun.artifact FOR vehicles) 3] The (hyponym

2021-09-22 05:42:43    分类:技术分享    nlp   stanford-nlp   wordnet   lexical-analysis   named-entity-recognition

如何使用斯坦福 CoreNLP NER 和 POS 标记预标记化文本?(How to NER and POS tag a pre-tokenized text with Stanford CoreNLP?)

问题 我在我的应用程序中使用了斯坦福大学的 CoreNLP 命名实体识别器 (NER) 和词性 (POS) 标记器。 问题是我的代码预先标记了文本,然后我需要对每个标记进行 NER 和 POS 标记。 但是,我只能使用命令行选项而不是编程方式找出如何做到这一点。 有人可以告诉我如何使用斯坦福大学的 CoreNLP 以编程方式对预标记文本进行 NER 和 POS 标记吗? 编辑: 我实际上使用的是单独的 NER 和 POS 指令。 所以我的代码是按照斯坦福大学的 NER 和 POS 包中给出的教程中的说明编写的。 但是我的类路径中有 CoreNLP。 所以我的类路径中有 CoreNLP,但使用 NER 和 POS 包中的教程。 编辑: 我刚刚发现这里有关于如何设置 CoreNLP 属性的说明 http://nlp.stanford.edu/software/corenlp.shtml 但我希望是否有一种快速的方法可以用斯坦福 NER 和POS 标记器,所以我不必重新编码所有内容! 回答1 如果设置属性: tokenize.whitespace = true 然后 CoreNLP 管道将在空格上进行标记,而不是默认的 PTB 标记。 您可能还想设置: ssplit.eolonly = true 这样你就只能在换行符上拆分句子。 回答2

2021-09-20 08:22:40    分类:技术分享    nlp   stanford-nlp   named-entity-recognition   pos-tagger

How to call the ClassifierBasedTagger() in NLTK

I have followed in the documentation from nltk book (chapter 6 and 7) and other ideas to train my own model for named entity recognition. After building a feature function and ClassifierBasedTagger like this: class NamedEntityChunker(ChunkParserI): def __init__(self, train_sents, feature_detector=features, **kwargs): assert isinstance(train_sents, Iterable) tagged_sents = [[((w,t),c) for (w,t,c) in tree2conlltags(sent)] for sent in train_sents] #other possible option: self.feature_detector = features self.tagger = ClassifierBasedTagger(tagged_sents, feature_detector=feature_detector, **kwargs)

2021-09-14 10:10:05    分类:问答    python   nltk   named-entity-recognition

在斯坦福 NER 中标记全名(Tagging Full Name in Stanford NER)

问题 我试图将全名标记为一个完整的标签(一个人)而不是单个标签。 这是一个例子。 http://nlp.stanford.edu:8080/ner/process(斯坦福 NER 在线) 例句:穆罕默德·阿里是一位伟大的拳击手。 阿里最大的对手是乔弗雷泽。 这个名字也可以写成 M. Ali 和 J. Frazier。 这是我现有的 PHP 代码` $text = "Muhammad Ali was a great boxer. Ali's greatest rival was Joe Frazier. The name can also be written as M. Ali and J. Frazier"; $pos = new \StanfordNLP\NERTagger( 'XPATH/NER/StanfordNLP/stanford-ner-2013-11-12/classifiers/english.conll.4class.distsim.crf.ser.gz', 'XPATH/NER/StanfordNLP/stanford-ner-2013-11-12/stanford-ner.jar' ); $result = $pos->tag(explode(' ', " $text")); foreach ($result as $eType) { if(!(strcmp

2021-09-14 01:54:17    分类:技术分享    php   named-entity-recognition

Train corpus for NER with NLTK ieer or conll2000 corpus

I have been trying to train a model for Named Entity Recognition for a specific domain, and with new entities. It seems there is not a completed suitable pipeline for this, and there is the need to use different packages. I would like to give a chance to NLTK. My question is, how can I train a the NLTK NER to classify and match new entities using the ieer corpus? I will of course provide training data with the IOB-Format like: We PRP B-NP saw VBD O the DT B-NP yellow JJ I-NP dog NN I-NP I guess I will have to tag the tokens by myself. What do I do next when I have a text file in this format

2021-09-08 22:47:24    分类:问答    python   nltk   named-entity-recognition

NER interfere with REGEXNER

I use regexner to find named entities that are not in the default set of Stanford NLP and it works fine. However, when I add ner annotator, it annotates tokens that match my regular expression with default tags. How can I overwrite default annotations? def createNLPPipelineRegex(): StanfordCoreNLP = { val props = new Properties() props.put("regexner.mapping", "regex.txt") props.put("annotators", "tokenize, ssplit, regexner, pos, lemma, ner") props.put("tokenize.options", "untokenizable=noneKeep,normalizeParentheses=false") new StanfordCoreNLP(props) }

2021-09-04 15:56:28    分类:问答    scala   stanford-nlp   named-entity-recognition

Tagging Full Name in Stanford NER

Im trying to tag full name as a complete tag(one person) instead of individual tags. Here is an example. http://nlp.stanford.edu:8080/ner/process (Stanford NER online) Example sentence: Muhammad Ali was a great boxer. Ali's greatest rival was Joe Frazier. The name can also be written as M. Ali and J. Frazier. This is my existing PHP code` $text = "Muhammad Ali was a great boxer. Ali's greatest rival was Joe Frazier. The name can also be written as M. Ali and J. Frazier"; $pos = new \StanfordNLP\NERTagger( 'XPATH/NER/StanfordNLP/stanford-ner-2013-11-12/classifiers/english.conll.4class.distsim

2021-09-03 22:07:32    分类:问答    php   named-entity-recognition

斯坦福 NER 功能(Stanford NER Features)

问题 我目前正在尝试使用斯坦福 NER 系统,我正在尝试查看可以通过在属性文件中设置标志来提取哪些功能。 似乎 http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/ie/NERFeatureFactory.html 中记录的功能并不全面。 例如,所有与 dist 相似性和聚类相关的特征标志都没有包括在内(例如 useDistSim 等)。 是否有更完整的所有功能和相应标志的列表? 谢谢您的帮助! 回答1 目前,没有。 您需要查看源代码.... 回答2 NER 的特性在属性文件中声明。 您可以从 NER 常见问题解答,问题 2 中找到更多信息。

2021-09-01 13:09:14    分类:技术分享    nlp   stanford-nlp   named-entity-recognition