网页排序BM25算法原理详解
网页排序BM25算法原理详解:BM25算法是一种基于统计方法的排序算法,是二元独立模型的扩展,或者看作是TF-IDF算法的变形。此算法也是一种有效的相关性评分手段,被搜索引擎广泛使用。使用BM25算法来对查询到的网页进行评分,其关键代码如下:classBM25:def__init__(self,referance):self.referance=referanceself.k1=2self.k2=referance.wordCount/referance.fileCountself.b=0.75defgetRank(self,word,result):forfilenameinresult.keys():f=self.referance.invertedTable[word][filename]idf=math.log(self.referance.fileCount/len(self.referance.invertedTable[word]))result[filename]=(idf*f*(self.k1+1))/(f+self.k1*(1-self.b+self.b*self.k2))returnresult
作者:云创智学 来源:云创智学
发布时间:2021-11-30 11:46:51