2010-01-05 36 views
26

统计不可能的词组是如何工作的?亚马逊的统计不可能的短语是如何工作的?

据亚马逊:

Amazon.com的统计学上不可能的 短语,或“投资方案”,是在 图书搜索里面™程序文本中最鲜明的 短语! 为了识别SIP,我们的电脑扫描 查找所有书籍的文字 Inside!程序。如果他们发现一个短语 发生在 一个特定的书相对于所有 大量次 Search Inside!这本书中的短语是该书中的一个 SIP。

的SIP不是在特定图书内必然不可能 ,但他们 相对于 搜索中的所有书籍不可能的!例如,关于税收账簿的大多数SIP 都与税务相关。 但是因为我们显示的是他们的不可能性得分 的SIPs,所以 第一个SIP将在税收主题上,这本书 比 更经常提到的其他税收书籍。对于小说作品, SIP往往是与众不同的词 组合,通常暗示 重要的情节元素。

例如,对于乔尔的第一本书,在投资方案是:漏抽象,抗锯齿文字,自己的狗食,错误次数,每日构建,bug数据库,软件调度

一个有趣的并发症,这些都是2或3个词的短语。这使事情变得有趣一些,因为这些短语可以重叠或包含对方。

回答

16

这很像Lucene对给定搜索查询排列文档的方式。他们使用称为TF-IDF的度量,TF是术语频率,idf是逆文件频率。前者在查询条件出现在文档中的位置越高,则文档排名越高,如果查询条款中包含的查询条件在所有文档中不常出现,则后者排名较高的文档。他们计算的具体方式是log(文档数量/包含词语的文档数量) - 即词语出现频率的倒数。

所以在你的例子中,这些短语是SIP相对于Joel的书,因为它们是罕见的短语(出现在少数书中),并且他们在他的书中多次出现。

编辑:在回答关于2克和3克的问题时,重叠并不重要。考虑一句“我的两条狗是棕色的”。在这里,2克的列表是[“我的两个”,“两条狗”,“狗是”,“是棕色的”],3克的列表是[“我的两条狗”,“两条狗是“,”狗是棕色的“]。正如我在我的评论中提到的那样,在重叠的情况下,你可以得到N-1个2克和N-2个3克的N个单词。由于2克只能等于2克,3克也可以,所以可以分别处理这些情况。处理2克时,每个“单词”将是2克等。

+0

虽然这比它稍微复杂一些,因为词组的长度可以是2或3个单词,它们可以重叠或包含对方。 tf-idf通常只用一个词来描述。 – 2010-01-05 22:30:02

+0

我不太确定这件事,特别是如果它限制在3或更少的短语。对于N个令牌的文本流,您有N-1个bigrams和N-1个trigrams。当然,两个bigram只会等于另一个bigram,对于trigram也是如此,因此您可以尽可能快地计算出bigrams和trigrams的IDF度量。 – danben 2010-01-05 22:36:45

+0

@ʞɔıu:通常用单一术语来描述,但不需要这样应用。这就是为什么我在我的回答中提到'变化'的原因。但本的解释涵盖了它。 – 2010-01-05 22:46:36

1

我相当肯定它的SIP组合,它将这本书标识为独一无二的。在你的例子中,另一本书在同一本书中有“漏洞抽象”和“自己的狗食”,这几乎是不可能的。

但是我在这里作了一个假设,因为我不确定。

10

他们可能正在使用tf-idf权重的变体,检测在特定书中发生很多次的短语,但在整个语料库中发生的次数减去特定的书。重复每本书。

因此,“不可能性”与整个语料库有关,可以理解为“唯一性”,或者“与图书馆其余部分相比,使书独一无二”。

当然,我只是猜测。

5

作为一个起点,我会看看Markov Chains

一个选项:

  1. 构筑起完整的索引文本语料库。
  2. 只从一本书建立文本语料库。
  3. 对于每个m到n个单词短语,找出每个语料库将生成它的概率。
  4. 选择概率比率最高的N个词组。

一个有趣的扩展将运行一个马尔可夫链生成器,其中您的权重表是全局和本地语料库之间差异的放大。这会产生作者风格特质的“漫画”(字面意思)。

+0

看到这与上面的lucene方法相比,会很有趣。 – Kevin 2012-08-24 19:42:21

+0

我怀疑它可能是相同的,如果语料库是使用窗口构建的,至少与所考虑的短语一样长。 – BCS 2012-08-24 22:40:02

5

LingPipe有一个tutorial关于如何做到这一点,他们链接到引用。他们不讨论它背后的数学,但他们的源代码是开放的,所以你可以看看他们的源代码。

我不能说我知道亚马逊是做什么的,因为他们可能会保密(或者至少他们没有打扰告诉任何人)。

2

对不起,以恢复旧线程,但我在这里找到了相同的问题,发现有一些新的工作可能会增加到伟大的线程。

我觉得SIP对于文档更加独特,而不仅仅是TF-IDF分数高的单词。例如,在一个约哈利波特文件,如赫敏·格兰杰霍格沃茨方面往往是更好的投资方案,其中像魔术伦敦条款都没有。 TF-IDF在做这个区别方面并不是很出色。

我遇到了一个有趣的SIP定义here。在这项工作中,短语被建模为n-gram,并计算它们在文档中出现的概率以确定它们的唯一性。