ʞɔı*_*ɔıu 27 algorithm nlp platform-agnostic
"统计不可能的短语"有什么用?
根据亚马逊的说法:
Amazon.com的统计上不可能的短语,或"SIP",是Search Inside!™计划中书籍文本中最独特的短语.为了识别SIP,我们的计算机扫描搜索内部的所有书籍的文本!程序.如果他们发现相对于所有搜索内部的特定书籍中出现了很多次的短语!书,那个短语是那本书的SIP.
SIP在某本书中并不一定不太可能,但相对于Search Inside中的所有书籍而言,它们是不可能的.例如,关于税收的书籍的大多数SIP都与税收相关.但是因为我们按照不可能性得分的顺序显示SIP,所以第一个SIP将涉及税务主题,本书比其他税书更频繁地提及.对于小说作品,SIP往往是独特的单词组合,经常暗示重要的情节元素.
例如,对于Joel的第一本书,SIP是:泄漏抽象,抗锯齿文本,自己的狗食,错误计数,每日构建,错误数据库,软件时间表
一个有趣的复杂因素是这些是2或3个单词的短语.这使事情变得更有趣,因为这些短语可以相互重叠或相互包含.
dan*_*ben 17
这很像Lucene为给定搜索查询排序文档的方式.他们使用称为TF-IDF的度量,其中TF是术语频率,idf是逆文档频率.前者对文档的排名越高,查询术语在该文档中出现的越多,如果文档中的查询条件在所有文档中不常出现,则后者对文档进行排序.他们计算它的具体方式是log(文档数/带有术语的文档数) - 即该术语出现的频率的倒数.
所以在你的例子中,这些短语是相对于乔尔的书的SIP,因为它们是罕见的短语(出现在几本书中),并且在他的书中出现了多次.
编辑:回答关于2克和3克的问题,重叠无关紧要.考虑一句"我的两只狗是棕色的".在这里,2克的列表是["我的两个","两只狗","狗是","是棕色的"],3克的列表是["我的两只狗","两只狗是","狗是棕色的"].正如我在评论中提到的那样,对于N个单词流,你会得到N-1 2-gram和N-2 3-gram.因为2克只能等于其他2克,同样3克,你可以分别处理这些情况.处理2克时,每个"单词"将是2克等.
作为一个起点,我会看看Markov Chains.
一种选择:
一个有趣的扩展是运行马尔可夫链生成器,其中权重表是全局和局部语料库之间差异的放大.这将产生作者风格特质的"漫画"(字面意思).