从一个句子越来越短语的问题,在NLP文学通常被称为“chunking”。
它看起来像你想打破句子成块,使每个单词完全在一个块。你可以使用分析器来做到这一点,Stanford's是一个流行的。它的输出,被称为“解析树”是这样的:
(ROOT
(S
(S
(NP
(NP (DT The) (JJS strongest) (NN rain))
(VP
(ADVP (RB ever))
(VBN recorded)
(PP (IN in)
(NP (NNP India)))))
(VP
(VP (VBD shut)
(PRT (RP down))
(NP
(NP (DT the) (JJ financial) (NN hub))
(PP (IN of)
(NP (NNP Mumbai)))))
[rest omitted]
这里的大写字母是Penn Treebank tags。 S表示“句子”,NP表示“名词短语”,VP表示动词短语,等等。通过从解析树中提取像VP和NP这样的短语单元,您可以构建像您请求的短语。
这并不完全符合您的要求,但取决于您的应用程序,提取关键字词组(如“社会保障”或“外交事务”)可能会有所帮助。这有时称为关键词提取。我最近在该主题上阅读的一篇好论文是Bag of What?,实现可用here。下面是基于对美国政治的从语料库输出(标记NPSFT)的例子:
有用于分裂句这样的很多技术,具有不同程度的复杂性和准确性,以及什么是最好的将取决于你想要做什么后,你得到他们的短语。无论如何,希望这会有所帮助。
感谢您的建议@ polm23。我会尝试一下 –