Data structures 如何在大量文本中查找常用短语

Data structures 如何在大量文本中查找常用短语,data-structures,graph,data-mining,text-analysis,Data Structures,Graph,Data Mining,Text Analysis,我现在正在做一个项目,我需要从大量的文本中挑出最常见的短语。例如,假设我们有如下三个句子: 那条狗从那女人身上跳了过去 那条狗跳进汽车里 狗跳上楼梯 从上面的例子中,我想提取“狗跳了起来”,因为这是文本中最常见的短语。起初我想,“哦,让我们使用一个有向图[具有重复节点]”: 编辑:抱歉,我在制作此图表时犯了一个错误,“结束”、“进入”和“向上”都应链接回“结束” 我打算统计每个节点对象中单词出现的次数(“将是6;“dog”和“jumped”,3;等等),但尽管存在许多其他问题,但当我们添加

我现在正在做一个项目,我需要从大量的文本中挑出最常见的短语。例如,假设我们有如下三个句子:

  • 那条狗从那女人身上跳了过去
  • 那条狗跳进汽车里
  • 狗跳上楼梯
从上面的例子中,我想提取“狗跳了起来”,因为这是文本中最常见的短语。起初我想,“哦,让我们使用一个有向图[具有重复节点]”:

编辑:抱歉,我在制作此图表时犯了一个错误,“结束”、“进入”和“向上”都应链接回“结束”

我打算统计每个节点对象中单词出现的次数(“将是6;“dog”和“jumped”,3;等等),但尽管存在许多其他问题,但当我们添加更多示例时,出现了主要问题,如(请忽略糟糕的语法:-):

  • 狗跳上跳下
  • 这条狗跳起来就像以前从来没有狗跳过一样
  • 狗高兴地跳起来
我们现在遇到了一个问题,因为“dog”将启动一个新的根节点(与“the”处于同一级别),我们不会将“dog jumped”识别为现在最常见的短语。所以现在我在想,也许我可以用一个无向图来绘制所有单词之间的关系,并最终找出常见的短语,但我也不确定这将如何工作,因为你失去了单词之间重要的顺序关系

那么,对于如何识别大量文本中的常见短语以及我将使用什么样的数据结构,有没有人有什么一般性的想法呢

谢谢,
Ben

查看这个相关问题:也与

我以前发布过这个,但我在所有数据挖掘任务中都使用它,它非常适合这种分析。特别是查看
tm
软件包。以下是一些相关链接:

  • 《统计计算杂志》上关于该软件包的论文:。本文包括一个很好的R-devel分析示例 邮件列表()2006年的新闻组帖子
  • 套餐主页:
  • 请看介绍性小插曲:

一般来说,有大量的文本挖掘包

我不相信最长的公共子串问题能解决这个问题,因为据我所知,LCS算法倾向于使用较长的较不常用的公共字符串,而不是较短的较常用的公共字符串,如果我错了,请纠正我。R看起来很有趣,我只是在不久前才看过,肯定会再看一眼。谢谢。从上面的链接来看,诺曼·拉姆齐关于使用n-grams的建议应该会有所帮助。事实证明,我是无知的,这让我解决了我的问题。:)我不能提供任何关于要使用的算法的具体信息。但是,您是否注意到igraph用于表示和操作图形的出现?我使用Python及其绑定使底层产品看起来非常漂亮。只是链接回后面的帖子