Nlp 提取句子中单词周围的上下文

Nlp 提取句子中单词周围的上下文,nlp,text-extraction,Nlp,Text Extraction,假设我有一个很长的文本,我想提取一个特定单词周围一定长度的上下文。例如,在下面的文本中,我想在单词warrior周围提取8个单词 。。。死亡。他是一个非常勇敢的战士,在逆境中为自由而战 在这种情况下,结果将是 他是一个非常勇敢的战士,为自由而战 请注意,我是如何删除“死亡”这个词的,因为我更喜欢从一个完整句子的开头开始,以及我是如何提取出超过8个词的,因为为自由而战远比为自由而战更有意义 在这个领域有什么算法或研究可以让我遵循吗?我应该如何着手解决这个问题 您可以使用正则表达式获取包含您

假设我有一个很长的文本,我想提取一个特定单词周围一定长度的上下文。例如,在下面的文本中,我想在单词warrior周围提取8个单词

。。。死亡。他是一个非常勇敢的战士,在逆境中为自由而战

在这种情况下,结果将是

他是一个非常勇敢的战士,为自由而战

请注意,我是如何删除“死亡”这个词的,因为我更喜欢从一个完整句子的开头开始,以及我是如何提取出超过8个词的,因为
为自由而战
远比为自由而战更有意义

在这个领域有什么算法或研究可以让我遵循吗?我应该如何着手解决这个问题

  • 您可以使用正则表达式获取包含您要查找的单词的整个句子
  • 然后利用信息抽取算法找到更方便的8个词 我发现这两者都有一些Python实现

    对于regexp外观

    和用于提取算法的外观

    希望这对你有帮助

  • 您可以使用正则表达式获取包含您要查找的单词的整个句子
  • 然后利用信息抽取算法找到更方便的8个词 我发现这两者都有一些Python实现

    对于regexp外观

    和用于提取算法的外观


    希望这将帮助您

    让我们将您的问题分成几个部分,并使其独立于任何编程语言:

  • 如果你想用fight这个词而不是fight,你应该预处理你的数据。请看一看柠檬化和词干分析技术,它们将为您提供词根

  • 另外,另一个文本预处理步骤是从文本中删除停止词。诸如the、will、if、but等词将被删除

  • 现在要提取n个单词,可以定义一个窗口大小,从句子文本中提取n个单词。所以你所要做的就是,写一个函数,它将获取你想要提取单词的目标文本和单词。在整个文本上迭代此循环


  • 希望这有帮助。

    让我们将问题分成几个部分,并使其独立于任何编程语言:

  • 如果你想用fight这个词而不是fight,你应该预处理你的数据。请看一看柠檬化和词干分析技术,它们将为您提供词根

  • 另外,另一个文本预处理步骤是从文本中删除停止词。诸如the、will、if、but等词将被删除

  • 现在要提取n个单词,可以定义一个窗口大小,从句子文本中提取n个单词。所以你所要做的就是,写一个函数,它将获取你想要提取单词的目标文本和单词。在整个文本上迭代此循环


  • 希望这能有所帮助。

    请注意,对于链接中显示的内容,parsey mcparseface往往比nltknote做得好一点。对于链接中显示的内容,parsey mcparseface往往比nltk做得好一点