异常值的利用

/ Algorithm / 2 comments / 323 browses

介绍

异常值的两种定义:

  1. 异常值是指一组测定值中与平均值的偏差超过两倍标准差的测定值,与平均值的偏差超过三倍标准差的测定值,称为高度异常的异常值。
  2. 箱形图也提供了识别异常值的一个标准:异常值被定义为小于Q1-1.5IQR或大于Q3+1.5IQR的值。(其中Q1为下四分位点,Q3为上四分位点,四分位距IQR=Q3-Q1)箱形图定义

以上异常值的适用范围:

  1. 样本为正态分布的情况下适用第一种
  2. 样本为长尾分布的情况下适用第二种
  3. 其他情况我还有待考究囧

异常值的利用

一般情况下我们还是很讨厌异常值的,以至于有“异常检测”这一研究方向,哈哈。其实我们可以利用异常值来完成一些任务,据我目前所知的有社交软件上明星用户的计算。当然这有一些场景限定,并不是所有的明星用户都能通过异常值的方法来计算。

首先简单介绍一下我们目前的场景:

方法

根据以上场景介绍,以用户为中心可以提取以下特征

上一步可以加上一定的时间窗,例如:计算最近3天,7天和15天的用户特征。我们的用户特征很明显是长尾分布的,长尾分布在我们实际应用场景下是很常见很常见很常见的分布。

根据我们提取的用户特征,计算每一项特征的异常点临界值,如果一个用户的某项特征大于这个特征异常值的临界点则表明这个用户有明星用户的潜质。最后根据用户拥有的异常点多少进行排序取topN就是我们所谓的明星用户啦!就目前来看我们用以上方法计算得到的明星用户效果还不错哦。

update 2017.12.27

明星用户换算法啦!新的明星用户不再基于各项统计指标的异常值分别来计算。 基于用户的收到打招呼,地盘被访问以及广播热度等各统计特征之间的相关性为出发点,我们先对这些特征进行PCA降维,一维的解释度即(explain_variance_ratio_)为0.8+,二维的解释度达到0.9+,explain_variance_ratio即为降维后特征对原始特征的概括力,其越接近于1就表示涵盖的信息量越接近原始特征。 综合计算量以及实现复杂度考虑,我们选择降维到一维来对原始特征进行表达。

  1. testtest

    Reply
  2. test test

    Reply