2017-07-14 154 views
1

如果有些库根据内容将句子分解为小块,我很感兴趣。NLP:在句子分割/边界检测中

E.g.

输入:一句话:“在我们酒店的住宿,我们有一个洁净室, 非常漂亮的浴室,令人惊叹的美景窗外,早晨美味的早餐 ”

输出:句段的名单:“在我们的酒店住宿”, “我们有一个干净的房间”,“非常漂亮的浴室”,“令人惊叹的美景了 窗口”,“和美味的早餐在上午。“]

所以基本上我基于意味着寻找句子边界检测/分段内的一个我的目标是拿出一句话,把它分成几块,它们有自己的“意义”,而没有其余的句子。

绝对不是我对句子边界检测感兴趣,因为任何人都可以打十几个,但这对于句子分割不起作用。

预先感谢您

回答

1

从一个句子越来越短语的问题,在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)的例子:

Sample Bag of What? output

有用于分裂句这样的很多技术,具有不同程度的复杂性和准确性,以及什么是最好的将取决于你想要做什么后,你得到他们的短语。无论如何,希望这会有所帮助。

+0

感谢您的建议@ polm23。我会尝试一下 –