2
The Foo Fighters performed at... 
(The Foo) (Foo Fighters) (Fighters performed) (performed at)...

我有一个由许多句子连接而成的 2-gram 列表。我想从整个列表中提取两个和三个单词 ( The Foo Fighters, ) 的短语。Bill Gates但我想拒绝较长的短语to cancel this newsletter, please click...)。

编辑:也就是说,我想提取那些可能是名词等实体的短语。

对此有什么好的方法?


我想出的最简单的方法是只考虑两个词的短语和过滤停用词。但它不会接受The Foo Fighters。我还简要地考虑过使用 TF-IDF 来降低太常见的短语。

4

1 回答 1

1

对于一个大学。项目我不得不做一些与你所描述的非常相似的事情。

我们尝试了以下方法:

  1. 获取每个 2-gram 的 idf 值(我们使用 Bing Developer API,虽然不准确,但它可以评估该短语是否有 10 次点击或 10,000,000 次点击)。当然,必须进行规范化(在由非常常见的单词组成的 2-gram 上出现大量点击毫无价值)。
  2. Wikipedia - 我们尝试在 wikipedia 中搜索该短语(搜索是否有文章,或者该短语是它的子字符串的文章),并获取匹配良好的短语
  3. Ran El-Yaniv在一篇文章中将另一种高级的案例特定算法描述为Co-Occuring Ranking 。

从以上 3 点来看,基于 wikipedia 的算法在很大程度上实现了最佳性能(p_value < 0.05,不记得具体多少了)


我们是如何做到的:

  • 每个算法(表示为记分器)给每个 2-gram 打分。
  • 然后我们运行第二个算法(过滤器)来选择“最好的”2-gram。我们尝试了简单的百分比算法(例如:“获得前 7%”)、固定分数(例如:“高于 0.5”)和动态算法,在分数中寻找较大的差距,并将其用于决定取多少 2 克。

对于 wikipedia ranker - 固定和动态的得分相似,对于其他 - 动态是我们尝试过的最好的。

于 2012-09-20T05:59:53.250 回答