分位数回归简介

分位数回归简介分位数回归简介同步于音尘杂记;Buracag的博客最近在做一个比较有意思(难搞…)的项目。大致介绍一下相关背景:根据历史的一个工作情况(历史表现,也就是有多少人做了多少工作量),以及未来的一个预估工作量(预测值),我们需要预估一个合理的人员投入;一言概之,根据历史表现和预测件量预估人员投入。时序问题?咋一看,这不就是一个时序问题嘛!人力投入如下:Yt=f(Tt,St,Ct,It)Y_t…

大家好,欢迎来到IT知识分享网。分位数回归简介

分位数回归简介

同步于音尘杂记;Buracag的博客

最近在做一个比较有意思(难搞…)的项目。大致介绍一下相关背景:根据历史的一个工作情况(历史表现,也就是有多少人做了多少工作量),以及未来的一个预估工作量(预测值),我们需要预估一个合理的人员投入;一言概之,根据历史表现和预测件量预估人员投入。

时序问题?
咋一看,这不就是一个时序问题嘛!人力投入如下:
Y t = f ( T t , S t , C t , I t ) Y_t = f(T_t, S_t, C_t, I_t) Yt=f(Tt,St,Ct,It)
其中 T t T_t Tt代表长期趋势特征, S t S_t St代表季节性或者季节变动, C t C_t Ct代表周期性或循环波动, I t I_t It代表随机性或不规则波动。接下来获取特征和历史人员投入,这不就可以预估得到了未来人力投入嘛。

但是,我们再仔细考虑一下。事情还不仅仅是如此简单。原因有两点:

  • 与常见的销量、件量等的预测不同,人力的投入不仅仅是一个时序数据,内生的跟工作量强相关;
  • 预估人员投入的一个很重要的目标是,求得一个合理的人员投入(范围)。

常规机器学习问题?
或者,再稍微拓展一下,由于人员投入是跟工作量是强相关的,我们可不可以用机器学习的思路来解决这个问题。也即:
Y t = f ( w o r k l o a d , o t h e r _ f e a t u r e s ) Y_t = f(workload, other\_features) Yt=f(workload,other_features)
其实也是存在问题的,在上述的有监督学习中,对于每一个instance我们是需要有一个监督值的。对于该场景下,貌似每个instance都存在一个人力投入值;但是我们的目标是需要预估一个合理的人力投入,如果单纯地去拟合当前的人力投入,岂不是认为目前的投入即是最优的了,既然如此就没有做这个任务的必要了。

经济学模型和其他尝试
我们也曾尝试从经典的柯布-道格拉斯生产函数形式、部分随机人力规划系统以及基于强化学习等的的一些思路进行过分析过,均因效果不甚理想或者业务场景不相符而被pass掉。

最后,考虑到我们的主要目标是预估一个合理的人力投入,我们引入了衡量工作质量的一个变量。通过综合考虑质量和效能的关系,以保证预估出的人员数量,在保证工作量的情况或者说在降低人力投入量后工作质量不至于太差,反之亦然。最后,我们用了一个比较简单的方法来解决这个事情 – 分位数回归(Quantile Regression, QR)。

在介绍分为数回归的知识点之前,需要简要说一下推导过程不然显得太过突兀:
定义工作量为 W W W,业务指标准时完成量为 W 1 W1 W1,员工数量为 P P P,显然,
W 1 W = W 1 P P W \frac{W1}{W} = \frac{W1}{P}\frac{P}{W} WW1=PW1WP
这里的 W 1 W \frac{W1}{W} WW1用来衡量质量情况, P W \frac{P}{W} WP的倒数 W P \frac{W}{P} PW用来衡量效能情况。我们可以认为,在同一个类型下(工作场景、工作时间),实际工作效能 W 1 P \frac{W1}{P} PW1是一个相对客观的不变的值,令其为 k k k。接下来我们便可以用分位数回归的方法求得系数也即 k k k值,然后根据需要的质量情况,得到最终的效能范围,再结合预测件量情况,即可得到一个较为合理的人员投入范围。

首先,我们知道随机变量X的分布函数为:
F ( x ) = P ( X ≤ x ) F(x) = P(X\leq x) F(x)=P(Xx)
则随机变量X的 τ \tau τ分位数的定义为:
Q τ ( X ) = a r g i n f { x ∈ R ; F ( x ) ≥ τ } ( 0 < τ < 1 ) Q_\tau(X) = arginf\{x\in R ; F(x)\geq\tau\}(0<\tau<1) Qτ(X)=arginf{
x
R;F(x)τ}(0<τ<1)

若将分布函数F(x)的逆定义为:
F X − 1 ( τ ) = i n f { y ∈ R ; F ( y ) ≥ τ } F_X^{-1}(\tau) = inf\{y\in R ; F(y)\geq\tau\} FX1(τ)=inf{
y
R;F(y)τ}

故:
Q τ ( X ) = F X − 1 ( τ ) Q_\tau(X) = F_X^{-1}(\tau) Qτ(X)=FX1(τ)
和传统的线性回归估计方法不同的是,分位数回归估计的是一组自变量X与因变量Y的分位数之间线性关系的建模方法,偏向于条件分位数的变化。故OLS在数据出现尖峰(异常值)、长尾分布或者显著异方差等情况时,OLS结果不稳定,但是分位数的估计量确相对稳健。

设随机向量(X, Y),其中Y在X=x的情况下的条件累积分布函数为 F Y ∣ X = x F_{Y|X=x} FYX=x(y|x),则其 τ \tau τ条件分位数定义为:
Q τ ( Y ∣ X = x ) = a r g i n f { y ∈ R ; F ( y ∣ x ) ≥ τ } ( 0 &lt; τ &lt; 1 ) Q_\tau(Y|X=x) = arginf\{y\in R ; F(y|x)\geq\tau\}(0&lt;\tau&lt;1) Qτ(YX=x)=arginf{
y
R;F(yx)τ}(0<τ<1)

这里直接附上对于OLS和分位数回归的相关对比:

OLS 分位数回归估计
原理 以平均数为基准,求解最短距离 以不同的分位数为基准,求解最短距离
前提条件 独立、正态、同方差 独立
假设要求 强假设 弱假设
求解方法 OLS 加权最小一乘估计
检验类型 参数检验 非参数检验
异方差 影响大 影响小
拟合曲线 一条拟合曲线 一簇拟合曲线

分位数回归参数估计的思想


与线性回归不同的是,QR估计量的特点在于,是通过样本到回归曲线的垂直距离的加权和求得;其中权重设置为,在拟合曲线之下的样本权重为 1 − τ 1 – \tau 1τ,拟合曲线之上的样本权重为 τ \tau τ, 即:
L ( θ ) = min ⁡ ξ ⊂ R { ∑ i : Y i ≥ ξ τ ∣ Y i − ξ ∣ + ∑ i : Y i ≤ ξ ( 1 − τ ) ∣ Y i − ξ ∣ } L(\theta) = \min_{\xi\subset{R}}\{\sum_{i:Y_i\ge\xi}\tau|Y_i – \xi| + \sum_{i:Y_i\le\xi}(1 – \tau)|Y_i – \xi|\} L(θ)=ξRmin{
i:YiξτYi
ξ+i:Yiξ(1τ)Yiξ}

上式可等价为:
L ( θ ) = min ⁡ ξ ⊂ R ∑ i = 1 n ρ τ ( Y i − ξ ) L(\theta) = \min_{\xi\subset{R}}\sum_{i=1}^n\rho_\tau(Y_i – \xi) L(θ)=ξRmini=1nρτ(Yiξ)
其中, ρ τ ( u ) = u ( τ − I ( u &lt; 0 ) ) \rho_\tau(u)=u(\tau-I(u&lt;0)) ρτ(u)=u(τI(u<0)), I ( Z ) I(Z) I(Z)为示性函数。

QR的损失函数 L ( θ ) L(\theta) L(θ)不是对称的,是由两条从原点出发的分别位于第一和第二象限的射线组成,显然其斜率比为 τ : 1 − τ \tau:1-\tau τ:1τ

以上,仅是关于分位数回归知识的大概简介,最主要的部分是关于损失函数的设计。

最后,应用到该项目中时,我们对原始数据进行了离散化的处理,以及经过斯皮尔曼检验后的数据进行训练。由于其是一个计算密集型的任务,应用到全国众多网点时(数万),可以开多个线程池进行并行处理。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/14542.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信