如何建立多变量排名系统?

时间:2015-09-13 10:56:23

标签: machine-learning statistics ranking

我在电子商务平台上有各种卖家的数据。我正在尝试根据各种功能计算卖家排名分数,例如

1]订单履行率[数字]

2]订单取消率[数字]

3]用户评分[1-5] {1-2:最差,3:平均,5:好} [分类]

4]确认订单所需的时间。 (卖家所用时间越短越好)[数字]

我的第一直觉是对所有特征进行标准化,然后将参数/特征乘以一些权重。将每个卖家分数加在一起。最后,根据此分数查找卖家的相对排名。

我的卖家得分等式看起来像

卖家得分= w1 *订单履行率 - w2 *订单取消率+ w3 *用户评级+ w4 *确认订单所需的时间

其中,w1,w2,w3,w4是权重。

我的问题是三折

是否有更好的算法/方法来解决这个问题?即我线性地添加了各种功能,我想知道建立排名系统的更好方法吗?

如何获得权重值?

除了使用上述功能之外,我能想到的更多是正面评价与负面评论的比率,受损商品的比率等。这些如何符合我的评分等式?

如何在查找卖家排名分数时合并数字和分类变量? (我的分类变量很少)

是否有一种可以接受的方法来衡量这样的多变量系统?

1 个答案:

答案 0 :(得分:1)

我建议采用以下方法:

首先,在矩阵中保留您可用的所有功能,或者您认为它们是否有用。

(提示:分类变量通过简单编码转换为数字。因此您可以轻松地将它们合并(以您编码用户评级的确切方式))

然后,您必须应用降维算法,例如奇异值分解(SVD),以保留最重要的变量。应用SVD可能会让您感到惊讶,哪些功能可能很重要,哪些功能不重要。

应用SVD后,为您决定保留的n个最重要的功能选择正确的权重,实际上取决于您,因为它纯粹是定性的,并且依赖于域,哪些功能更重要。

你可能以形式化的方式计算权重的唯一方法是,如果要素与某些东西直接相关,例如。收入。由于这很难完成,我建议手动应用权重,但对于规范化摇动,设置:

w1 + w2 + ... + wn = 1

即,将“总重要性”拆分为您选择的功能。