reddit评论算法

reddit评论算法

网站的评论排名主要有两种:绝对好评数(好评减去差评),和好评率(好评/总评)

缺陷:

A:好评550;差评450
B:好评60;差评40
C:好评1;差评0
D:好评9;差评1

绝对好评数比较:A(100) > B(20)
好评率比较:A(55%) < B(60%)

改进:

1、用户投票是独立的
2、每个用户有两个选择:好评,差评
3、投票人数是n,好评是k,好评率k/n

这样好评率的高度来排名,但是如果数据样本少的话,就会不准确;
所以好评率要服从置信区间;
好评率75%~85%,那么置信区间[75%,85%]
置信区间的宽窄和数量有关,
<?php
/**
 * @param $ups int 好评数
 * @param $downs int 差评数
 * @return $data
 */
function reddit($ups,$downs) {
    $n = $ups + $downs;
    if ($n == 0) {
        return 0;
    }
    $z = 1.96;
    $p = floatval($ups) / $n;
    return ($p+$z*$z/(2*$n)-$z*sqrt(($p*(1-$p)+$z*$z/(4*$n))/$n))/(1+$z*$z/$n);
}

echo reddit(550,450);
echo "\n";
echo reddit(500,200);
echo "\n";
echo reddit(9,1);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值