假设一个文章集合 {C},总文章数目为N,其中含有单词A的文章总数为Na,含有单词B的文章总数是Nb,含有{A+B}的文章总数是 Nab,那么相关性这么计算
CorrAB= Nab/(Na+Nb-Nab)-(Na*Nb)/(N*N)
本计算中可能会得到负相关,如果考虑到Na,Nb都是小量,可以忽略,那么
CorrAB= Nab/(Na+Nb-Nab)
至此,要计算相关度之间的全部要素都获得了。
思考,那么到底 学校 和学生 之间的相关度是多少呢?
我们利用google来回答这个问题吧:
约有91,700,000项符合学校的查询结果
约有88,200,000项符合学生的查询结果
约有48,900,000项符合学生 学校的查询结果
Corr{学校,学生}=48,900,000/(91,700,000+88,200,000-48,900,000)=0.37
这个原理我以前应用在了计算【网页信噪比】上,和网页信噪比一起成为衡量一个网页的关键词的核心算法。
这也就是为什么6e的网页信噪比能够不依靠网页上现有的关键词而准确的判断网页的分类和相关度,是因为除了TF和IDF之外,我们能够从已有的文本集合里学到更多的“知识”。