在上一家公司用LLR做过相似商品计算,最近在找工作,在这里复习一下.
LLR方法的核心是分析事件的计数,特别是事件同事发生的计数. 我们需要的计数一般包括:
1. 两个事件同时发生的次数(k_11)
2. 一个事件发生而另一个事件没有发生的次数(k_12,k_21)
3. 两个事件都没有发生(k_22)
EventA | Everything but A | |
---|---|---|
Event B | A and B together(k_11) | B,but not A(k_12) |
Everything but B | A without B(K_21) | Neither A nor B(k_22) |
一旦有了这些计数计算log-likelihood ratio分数就很简单了.
LLR=2 sum(k)(H(k)-H(rowSums(k))-H(colSums(k)))
H表示香农熵. 在R可以如下计算:
H = function(k){
N=sum(k);return (sum(k/N*log(k/N+(k==0)))