我正在使用Apache的OpenNLP编写一个命令解析器。问题是OpenNLP将一些命令视为名词短语。例如,如果我解析像“open door”这样的东西,OpenNLP会给我(NP(JJ open)(NN door))
。换句话说,它认为这个短语是“打开的门”,而不是“打开的门”。我希望它解析为(VP(VB打开)(NP(NN门))
。如果我解析“开门”,它会生成一个VP,但我不能指望有人使用限定词。
我目前正试图找出如何在错误的解析树上执行手术,但API文档严重缺乏。
经过大量研究,我偶然发现了一个使用NLTK有同样问题的人。建议他们“破解”NLTK,在命令前添加一个像“他们”这样的代词,以强制解析器将输入视为动词短语。所以我会给OpenNLP“他们开门”并返回(S(NP(PRP他们))(VP(VBP开)(NP(NN门)))
,此时我可以提取动词短语。
这当然不理想!但现在它能满足我的要求。
问题内容: 如何使用spacy从文本中提取名词短语? 我指的不是语音标签的一部分。在文档中,我找不到有关名词短语或常规分析树的任何内容。 问题答案: 如果要使用基本NP,即没有协调,介词短语或相对从句的NP,则可以在Doc和Span对象上使用noun_chunks迭代器: 如果您需要其他内容,最好的方法是遍历句子中的单词并考虑句法上下文,以确定该单词是否支配您想要的短语类型。如果是这样,则产生其子
我一直在用spaCy查找最常用的名词和noun_phrases 在寻找单个名词时,我可以成功地去掉标点符号并停止单词 然而,使用noun_chunks来确定短语会导致属性错误 spacy.tokens.span.Span对象没有属性 我理解的性质的消息但我不能为我的生活得到语法正确的地方存在的停止字在一个emmatiated字符串将排除从被附加到noun_phrases列表 不删除停止字的输出 [
有没有办法删除字符串中重复和连续的单词/短语?例如。 [输入]: [out]: 我试过这个: 当它变得更复杂,我想删除短语(假设短语最多由5个单词组成)时会发生什么?怎样才能做到呢?例如。 [输入]: [out]: 另一个例子: [in]: 这是一个短语重复的句子。句子不是短语。
我是自然语言处理的新手。我需要从课文中提取名词短语。到目前为止,我已经使用OpenNLP的分块解析器来解析我的文本,以获得树结构。但是我不能从树结构中提取名词短语,开放nlp中是否有正则表达式模式,以便我可以使用它来提取名词短语。 下面是我使用的代码 这里我得到的输出为 (顶部(S)ADJP(JJ欢迎)(PP(TO)(NP(NNP Big)(NNP Data.))))(名词短语)(名词短语)(名词
问题内容: 我正在尝试使用Apache Lucene创建可搜索的电话/本地业务目录。 我有街道名称,公司名称,电话号码等字段。我遇到的问题是,当我尝试按街道名称中包含多个单词(例如“新月”)的街道进行搜索时,没有返回结果。但是,如果我尝试仅用一个词(例如“新月”)进行搜索,那么我会得到所有想要的结果。 我正在使用以下索引数据: 我的搜索是这样的: 我尝试过将通配符查询替换为短语查询,首先将整个字符
问题内容: 我是自然语言处理的新手。我需要从文本中提取名词短语。到目前为止,我已经使用open nlp的分块解析器来解析我的文本以获得Tree结构。但是我无法从中提取名词短语。树结构,在打开的nlp中是否有任何正则表达式模式,以便我可以用它来提取名词短语。 下面是我正在使用的代码 在这里,我得到的输出为 (TOP(S(S(ADJP(JJ欢迎光临)(PP(TO至)(NP(NNP大)(NNP数据。