Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 亚马逊如何';统计上不太可能的短语有什么用?_Algorithm_Nlp_Platform Agnostic - Fatal编程技术网

Algorithm 亚马逊如何';统计上不太可能的短语有什么用?

Algorithm 亚马逊如何';统计上不太可能的短语有什么用?,algorithm,nlp,platform-agnostic,Algorithm,Nlp,Platform Agnostic,统计上不可能的短语是如何工作的 亚马逊表示: 亚马逊网站在统计上不太可能 短语或“啜饮”是最常见的 文章中的独特短语 书在里面搜索!™ 节目。 为了识别SIP,我们的计算机扫描 搜索中所有书籍的文本 在…内节目。如果他们找到一个短语 这种情况在许多情况下都会发生 相对于所有人的一本书 搜索里面!书,这句话是一个 啜饮那本书 啜饮并不一定是不可能的 在特定的书中,但它们是 不可能相对于所有的书 搜索内部!。例如,大多数SIP 因为一本关于税收的书是与税收有关的。 但是因为我们按顺序显示SIP 在他

统计上不可能的短语是如何工作的

亚马逊表示:

亚马逊网站在统计上不太可能 短语或“啜饮”是最常见的 文章中的独特短语 书在里面搜索!™ 节目。 为了识别SIP,我们的计算机扫描 搜索中所有书籍的文本 在…内节目。如果他们找到一个短语 这种情况在许多情况下都会发生 相对于所有人的一本书 搜索里面!书,这句话是一个 啜饮那本书

啜饮并不一定是不可能的 在特定的书中,但它们是 不可能相对于所有的书 搜索内部!。例如,大多数SIP 因为一本关于税收的书是与税收有关的。 但是因为我们按顺序显示SIP 在他们的不可能得分中 第一次SIP将讨论 这本书提到的次数比我多 其他税目。对于小说作品, SIPs往往是一个与众不同的词 经常暗示 重要的情节要素

例如,对于Joel的第一本书,SIP是:泄漏的抽象、抗锯齿文本、自己的狗食、bug计数、每日构建、bug数据库、软件计划


一个有趣的复杂情况是,这些短语有两个或三个单词。这让事情变得更有趣,因为这些短语可以相互重叠或包含。

我相当肯定,这本书之所以独特,是因为这些短语的组合。在你的例子中,另一本书在同一本书中有“漏洞百出的抽象”和“自己的狗粮”,这是非常罕见的,几乎是不可能的


然而,我在这里做了一个假设,因为我不确定。

他们可能在权重上使用了一个变量,检测特定书籍中出现次数较多但在整个语料库中很少出现的短语,减去特定书籍。每本书重复一次

因此,“不可能”是相对于整个语料库而言的,可以理解为“独特性”,或者“是什么使一本书与图书馆的其他部分相比独一无二”


当然,我只是猜测。

这很像Lucene为给定搜索查询对文档进行排序的方式。他们使用一个称为TF-IDF的度量,其中TF是术语频率,IDF是反向文档频率。前者在文档中出现的查询词越多,文档的排名就越高;后者在文档中出现的查询词在所有文档中都不常见时,文档的排名就越高。他们计算它的具体方式是log(文档数/带术语的文档数)-即术语出现频率的倒数

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


编辑:回答关于2克和3克的问题,重叠并不重要。考虑一下“我的两只狗是棕色的”这句话。这里,2克的列表是[“我的两只”、“两只狗”、“狗是”、“棕色的”],3克的列表是[“我的两只狗”、“两只狗是”、“狗是棕色的”]。正如我在评论中提到的,对于N个单词流,重叠可以得到N-12克和N-23克。因为2克只能等于其他2克,同样地,对于3克,您可以分别处理这些情况。当处理2克时,每个“单词”都将是2克,以此类推。

作为起点,我会看一下

一种选择:

  • 从完整索引构建文本语料库
  • 从一本书中构建一个文本语料库
  • 对于每个m到n单词短语,找出每个语料库生成它的概率
  • 选择概率比率最高的N个短语 一个有趣的扩展是运行马尔可夫链生成器,其中权重表是全局和局部语料库之间差异的放大。这将产生一幅作者风格特质的“漫画”(字面意思)。

    LingPipe对如何做到这一点有自己的见解,并链接到参考文献。他们没有讨论背后的数学原理,但他们的源代码是开放的,因此您可以查看他们的源代码


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

    很抱歉恢复了一个旧线程,但我来到这里是为了同样的问题,发现有一些新的工作可能会添加到伟大的线程中

    我觉得SIP对于文档来说比TF-IDF分数高的单词更独特。例如,在一份关于哈利·波特的文件中,赫敏·格兰杰和霍格沃茨这样的术语往往比魔法和伦敦这样的术语更好。TF-IDF不擅长做出这种区分


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

    这比这稍微复杂一些,因为短语的长度可以是2到3个单词,它们可能相互重叠或包含。tf idf通常只用一个词来描述。我不确定这有多重要,特别是当它仅限于长度为3或更少的短语时。对于N个令牌的文本流,您有N-1个bigram和N-1个trigram。当然,一个二元图只会与另一个二元图相等,同样地,对于一个三元图,你可以计算二元图和三元图的IDF度量,就像你计算单词一样快。@uɔıu:它通常是用单个术语描述的,但没有必要这样应用。这就是为什么我在回答中提到了“一个变体”。丹本的解释涵盖了这一点。2克和3克之间的潜在重叠是什么?2克和3克需要不同的idf阈值吗?你有具体问题吗?我很乐意进一步解释,但我不知道你不明白的是什么。看看这是怎么回事会很有趣