怎么理解tweedie分布?

  统计/机器学习 概率分布    浏览次数:459        分享
2

怎么理解tweedie分布?

 

FridaWang   2019-06-11 10:32



   2个回答 
11

Tweedie分布是一种泊松分布和伽马分布的复合分布。

有三个参数,一个是$p$,当$p=1$,Tweedie就是泊松分布,当$p=2$,Tweedie就是伽马分布。

第二个参数是$\mu$,是Tweedie分布的期望。

第三个参数是$\phi$,控制Tweedie分布的方差。方差$Var=\phi \mu^p$。

直白一点理解就是,Tweedie随机变量是$X$个伽马随机变量的和。其中$X$是服从期望为$\mu^{(2-p)/(\phi(2-p))}$的泊松分布,其中每个伽马随机变量是独立同分布的,服从$\Gamma((2-p)/(p-1), \phi(p-1)\mu^{p-1})$。

Tweedie分布最明显的一个特点是以一定的概率生成数值为0的样本。Tweedie分布在商业场景中有很多例子,比如人们进入某个商城后的消费额。一部分人只是进去随便逛逛(比如蹭空调),所以消费额是0,另一部分客户是有消费额的,是随机的连续数值。

直方图是如下效果


SofaSofa数据科学社区DS面试题库 DS面经

zl_pku   2019-07-02 08:28

谢谢! - FridaWang   2019-07-07 13:59
4

用python可以简单实现一下生成tweedie分布随机变量

import numpy as np
import matplotlib.pyplot as plt

def tweedie(n,p,mu,phi):
    #checking the value of variance power between 1-2
    result = np.full(n, np.nan)
    # calculating mean of poisson distribution
    lambdaa = mu ** (2 - p) / (phi * (2 - p))
    # shape parameter of gamma distribution
    alpha = (2 - p) / (1 - p)
    # scale parameter of gamma distribution
    gam = phi * (p - 1) * ( mu ** (p - 1))
    # Generating Poisson random sample
    rs = np.random.poisson(lambdaa, n)
    for i in range(n):
    # Generate single data point of gamma distribution using poisson random variable
        result[i] = np.random.gamma(rs[i] * np.abs(alpha), gam, 1)
    return result

x = tweedie(100000, 1.2, 3, 2)
plt.hist(x, bins=40)
plt.show()

上面随机产生了100000个随机点,分布如下。可以看出有很多0。


SofaSofa数据科学社区DS面试题库 DS面经

kidd23   2019-07-04 15:14

谢谢! - FridaWang   2019-07-07 13:59


  相关主题

强大数定律和弱大数定律有什么区别?   1回答

odds和odds ratio的定义是什么?   1回答

机器学习中,数据的分布是指什么呢?   1回答

二项分布的正态近似   2回答

Weibull分布是什么分布?现实中有什么例子?   1回答

均匀分布的上限的最大似然估计   2回答

X,Y 独立并且,X~U(0,2)以及Y∼U(1,3)。求max(X,Y) 的期望。   2回答

两个独立的正态随机变量的乘积服从什么分布?   1回答

长尾分布、肥尾分布、重尾分布?   2回答

生成两组不独立的标准正态分布随机数   1回答

python怎么生成截断正态分布变量?   1回答

python产生服从常用概率分布的随机数   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!