Skip to main content

社区 OpenRank

From For

定义

项目 OpenRank 是一个由 X-lab 开放实验室提出的开源指标,该指标由赵生宇博士提出,关于项目 OpenRank 的算法细节可以参考这篇博客

与全域 OpenRank 指标的计算方法类似,该算法使用项目内的 Issue、PR 等协作数据来构建网络,其网络模型为:


代码

项目 OpenRank 算法实现尚未开源到 OpenDigger 中,但其底层使用的用于计算通用 OpenRank 的 Neo4j 插件项目已经开源,欢迎大家使用。

参数

项目 OpenRank 相较于全域 OpenRank 更加复杂,包含较多参数:

参数名描述
开发者/仓库 OpenRank 默认值1.0网络中开发者与仓库的 OpenRank 默认值,例如新加入社区的开发者或新仓库
Issue OpenRank 默认值2.0网络中 Issue 节点的 OpenRank 默认值
未合入 PR OpenRank 默认值3.0网络中未合入的 PR 节点的 OpenRank 默认值
已合入 PR OpenRank 默认值5.0网络中已合入的 PR 节点的 OpenRank 默认值
开发者/仓库继承比例0.15网络中开发者/仓库节点对上月历史 OpenRank 或初始 OpenRank 的继承比例项目内 OpenRank 中,开发者的价值更应依赖于当月的活跃情况
Issue/PR 继承比例0.8网络中 Issue/PR 节点对上个月历史 OpenRank 或初始 OpenRank 的继承比例Issue/PR 的价值应当相对稳定且更依赖于自身的价值
OpenRank 衰减系数0.8对于当月不活跃开发者/Issue/PR 的 OpenRank 衰减比例网络中各节点的 OpenRank 不应在当月不活跃后立即清零
OpenRank 最小值0.1当网络中节点 OpenRank 值衰减至该值以下时将清零
Issue/PR 节点延属于边流向仓库节点的 OpenRank 比例0.1Issue/PR 节点的 OpenRank 有多少比例转移到仓库节点
仓库节点延属于边流向 Issue/PR 节点的 OpenRank 比例平均仓库节点的 OpenRank 将平均分配到所有 Issue/PR 节点
Issue/PR 节点延活跃边流向开发者节点的 OpenRank 比例0.9Issue/PR 节点的 OpenRank 有多少比例转移到开发者节点
开发者节点延活跃边流向 Issue/PR 节点的 OpenRank 比例1.0开发者节点的 OpenRank 有多少比例转移到 Issue/PR 节点
发起动作活跃比例0.5Issue/PR 的价值有多少将转移到其作者Issue/PR 作者将优先获取其 50% 的价值,剩余 50% 由其他参与者获得
发起/评论/Review/关闭 动作权重2/1/1/2用于计算活跃边权重时各类事件的权重
👍/❤️/🚀 表情权重2/3/4用于计算 Issue/PR 初始 OpenRank 的表情的权重Issue/PR 的初始 OpenRank 将由其社区中开发者对其添加的表情所决定