gamma分布的推导与理解

这篇具有很好参考价值的文章主要介绍了gamma分布的推导与理解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.概述

gamma分布与指数分布、泊松分布甚至其它一些混合分布有较为紧密的联系,本文通过对比与之相关的概率分布,建立某种联系并推导其概率密度函数,以便加深理解与认知。

2.Gamma分布的必要性

在设置 Gamma 分布的两个参数α、β 并将它们代入公式之前,有必要考虑该分布的必要性

为什么我们必须发明 Gamma 分布?(即为什么存在这种分布?) 何时应使用 Gamma 分布进行建模?

伽马分布与指数分布有极为紧密的联系,指数分布预测等待时间,是在某件事情直到发生前需要等待的时间。而伽马分布预测等待时间,指的是直到第k个事件发生需要等待的时间。

3.Gamma分布的PDF推导

  ​  已知从泊松过程可以推导出指数分布的 PDF。准确理解伽马分布的顺序应该依次是泊松分布 、指数分布、伽马分布。

   gamma 分布的 PDF 的推导与指数分布 PDF 的推导非常相似,不同于指数分布的是,它是直到第 k 个事件的等待时间,而不是像指数分布那样求的是第一个事件发生的等待时间。需要注意的是,通常的泊松分布对应的表达式对应的泊松率(时间发生率)  对应的是单位时间内,那么对于伽马分布中的 t 个单位时间对应的时间发生率应该是  (possion rate),由此得到推导过程如下:

伽马分布,ML之概率论与矩阵论,算法,概率论

为了更容易区分,从求和中取出 x = 0 时的项 ( e^(-λt) )。

伽马分布,ML之概率论与矩阵论,算法,概率论

由此就得到了伽玛分布的PDF,可以注意到它与指数分布的 PDF 相同,也就是指数分布可以视为伽马分布的一个特例。 由于k是一个正整数(k个事件的数量),𝚪(k) = (k−1)!其中𝚪表示伽马函数。上述pdf可以改写为:

伽马分布,ML之概率论与矩阵论,算法,概率论

关于为什么 ,可参考LDA数学八卦:神奇的Gamma函数(1)

如果事件的到达遵循速率为 λ 的泊松过程,则直到 k 个事件到达的等待时间遵循 Γ(k, λ)。

将上述表达式中符号进行置换,具体如下

                                        

就能得到通常意义上的表达式形式:

                                                

4. Gamma 的形状参数与尺度参数

    Gamma 分布的参数化表示形式通常由两种表示方法,具体如下:

伽马分布,ML之概率论与矩阵论,算法,概率论

     伽马分布,ML之概率论与矩阵论,算法,概率论

        伽马分布,ML之概率论与矩阵论,算法,概率论

 对于上述两种不同的参数表示方式与 。符号 k(事件数)和 λ(事件率),对应的是。而 对于(k, θ)参数形式: θ是事件率 λ 的倒数,它是平均等待时间(事件到达之间的平均时间)。两种参数化都会生成相同的结果,以前者应用为主。

 伽马分布,ML之概率论与矩阵论,算法,概率论

          对于固定事件率λ,如果我们等待更多事件 ( k ) 发生,等待时间 ( T ) 会更长。

伽马分布,ML之概率论与矩阵论,算法,概率论

                对于固定数量的事件数  k,当事件率 λ较高时,我们等待较短的时间 T。

5. 应用举例

   ​    我们可以使用指数分布的累加和也就是 Gamma 分布,对等待时间、可靠性(故障)、服务时间建模(排队理论)等——因指数分布是 Gamma 分布的一个特例。

     需要注意的几点: Poisson、Exponential 和 Gamma 分布对同一过程的不同方面进行建模 - Poisson 过程对应泊松分布用于对未来发生事件的数量进行建模,指数分布用于预测第一个事件发生前的等待时间,伽玛分布用于预测第 k 个事件发生前的等待时间。 Gamma 的两个参数都是严格正数,因为一个是事件数,另一个是事件率,都不能取负值。 Gamma 分布的另一个特例就是 Erlang 分布,与Gamma 之间的区别在于,Gamma 分布中,k可以是非整数(正实数),而在 Erlang 中,k只能是正整数。文章来源地址https://www.toymoban.com/news/detail-803551.html

6. 代码实现

# -*- coding: utf-8 -*-
"""
Created on Sun Jun 12 11:42:06 2022

@author: scott
"""

import numpy as np
from scipy.stats import gamma
import matplotlib.pyplot as plt

def plot_gamma_theta():
    """
    k : the number of events for which you are waiting to occur.
    theta : the rate of events happening following Poisson dist.
    """
    k_list = [1.0, 2.0, 3.0, 5.0, 9.0, 7.5, 0.5]  # k 
    theta_list =[2.0, 2.0, 2.0, 1.0, 0.5, 1.0, 1.0] # theta
    plt.figure(figsize=(8,6))
    plt.legend(bbox_to_anchor=(1, 1), loc='upper right',
               borderaxespad=1, fontsize=12)
    plt.ylim([0, 0.40])
    plt.xlim([0, 20])
    #plt.savefig('gamma_lambda.png')
    #plt.clf()
    
    for ls in zip(k_list,theta_list):
        k, theta = ls[0], ls[1]
 
        x = np.linspace(0, 50, 1000)
        mean, var, skew, kurt = gamma.stats(k, scale=theta, moments='mvsk')
        y = gamma.pdf(x, k, scale=theta)
        plt.plot(x, y, label=r'$k=%.2f,\ \theta=%.2f$'% (k, theta))
    plt.legend()


def plot_gamma_k():
    """
    k : the number of events for which you are waiting to occur.
    λ : the rate of events happening following Poisson dist.
    """
    x = np.linspace(0, 50, 1000)
    a = 1  # k = 1
    mean, var, skew, kurt = gamma.stats(a, moments='mvsk')
    y1 = gamma.pdf(x, a)
    a = 5  # k = 5
    mean, var, skew, kurt = gamma.stats(a, moments='mvsk')
    y2 = gamma.pdf(x, a)
    a = 10  # k = 15
    mean, var, skew, kurt = gamma.stats(a, moments='mvsk')
    y3 = gamma.pdf(x, a)
    
    plt.figure(figsize=(8,6))
    plt.title("PDF of Gamma Distribution")
    plt.xlabel("T")
    plt.ylabel("Probability Density")
    plt.plot(x, y1, label="k = 1", color='palegreen')
    plt.plot(x, y2, label="k = 5", color='yellowgreen')
    plt.plot(x, y3, label="k = 10", color='olivedrab')
    plt.legend(bbox_to_anchor=(1, 1), loc='upper right',
               borderaxespad=1, fontsize=12)
    plt.ylim([0, 0.40])
    plt.xlim([0, 20])
    #plt.savefig('gamma_k.png')
    #plt.clf()
    
def plot_gamma_lambda():
    """
    k : the number of events for which you are waiting to occur.
    λ : the rate of events happening following Poisson dist.
    """
    a = 10  # k = 10
    x = np.linspace(0, 50, 1000)
    lambda_ = 1
    mean, var, skew, kurt = gamma.stats(a, scale=1/lambda_, moments='mvsk')
    y1 = gamma.pdf(x, a, scale=1/lambda_)
    lambda_ = 2
    mean, var, skew, kurt = gamma.stats(a, scale=1/lambda_, moments='mvsk')
    y2 = gamma.pdf(x, a, scale=1/lambda_)
    lambda_ = 3
    mean, var, skew, kurt = gamma.stats(a, scale=1/lambda_, moments='mvsk')
    y3 = gamma.pdf(x, a, scale=1/lambda_)
    
    plt.figure(figsize=(8,6))
    plt.title("PDF of Gamma Distribution (k = 10)")
    plt.xlabel("T")
    plt.ylabel("Probability Density")
    plt.plot(x, y1, label="λ = 1", color='gold')
    plt.plot(x, y2, label="λ = 2", color='burlywood')
    plt.plot(x, y3, label="λ = 3", color='darkorange')
    plt.legend(bbox_to_anchor=(1, 1), loc='upper right',
               borderaxespad=1, fontsize=12)
    plt.ylim([0, 0.40])
    plt.xlim([0, 20])
    #plt.savefig('gamma_lambda.png')
    #plt.clf()
    
if __name__ == "__main__":
    plot_gamma_lambda()
    plot_gamma_k()
    plot_gamma_theta()

到了这里,关于gamma分布的推导与理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 概率论之——高斯分布的乘积

    本来我并不想开机器学习这个专栏,因为机器学习与高数线代矩阵论概率论密切相关,我的数学能力没达到这种高度。然而控制理论也会涉及各种数理统计知识,那就不得不开一个数理栏了。 这个栏没有具体的知识路线,写到哪算哪,数学和机器学习相关且不好分类的东西都

    2024年02月11日
    浏览(47)
  • 概率论:多维随机变量及分布

    X X X 为随机变量, ∀ x ∈ R , P { X ≤ x } = F ( x ) forall xin R,P{Xle x}=F(x) ∀ x ∈ R , P { X ≤ x } = F ( x ) 设 F ( x ) F(x) F ( x ) 为 X X X 的分布函数,则 (1) 0 ≤ F ( x ) ≤ 1 0le F(x)le1 0 ≤ F ( x ) ≤ 1 (2) F ( x ) F(x) F ( x ) 不减 (3) F ( x ) F(x) F ( x ) 右连续 (4) F ( − ∞ ) = 0 , F ( +

    2024年02月13日
    浏览(41)
  • 【概率论】多维随机变量函数的分布(三)

    设随机变量X,Y相互独立同分布,均服从(0,1)上的均匀分布,则下列随机变量中仍然服从相应区间或区域上均匀分布的是()。 A. X 2 X^2 X

    2024年02月13日
    浏览(42)
  • 概率论:数理统计基本概念——三大分布

    首先是X分布:    n=1的时候,f(y)就是正态分布平方的密度函数,这个可以用y=g(x)的密度函数计算方法来计算。 自由度是什么?: 很显然,几个X加起来,也就是自由度加起来:     接下来是t型分布:   这个T型分布建立在X型分布和标准正态分布上。   最后是F分布:    这

    2024年02月11日
    浏览(42)
  • 【概率论与数理统计】二维随机变量:分布函数(联合分布函数、边缘分布函数)、联合概率密度、边缘概率密度、联合分布律、边缘分布律

    直观理解: 联合概率密度 草帽/山峰 边缘概率密度 切一刀的山峰切面 联合分布函数 切两刀山峰体 边缘分布函数 切一刀山峰体 联合分布律 和 边缘分布律 针对离散型随机变量 二维随机变量  联合分布函数(切两刀山峰体) 边缘分布函数 (切一刀山峰体)    【连续型随

    2024年02月05日
    浏览(34)
  • gamma分布的推导与理解

    gamma分布与指数分布、泊松分布甚至其它一些混合分布有较为紧密的联系,本文通过对比与之相关的概率分布,建立某种联系并推导其概率密度函数,以便加深理解与认知。 在设置 Gamma 分布的两个参数 α、β  并将它们代入公式之前,有必要考虑该分布的必要性 为什么我们必

    2024年01月19日
    浏览(41)
  • 概率论与数理统计---随机变量的分布

    随机变量 随机变量就是随机事件的数值体现。 例如投色子记录色子的点数,记录的点数其实就是一个随机变量,他是这个点数出现的数值体现。 注意: 随机变量X = X(e) , 是一个单实值函数,每个随机事件的结果只能对应一个随机变量。 X(e)体现的是对随机事件的描述,本质

    2024年02月13日
    浏览(44)
  • 概率论与数理统计————3.随机变量及其分布

    设E是一个随机试验,S为样本空间,样本空间的任意样本点e可以通过特定的对应法则X,使得每个样本点都有与之对应的数对应,则称 X=X(e)为随机变量 分布函数: 设X为随机变量,x是任意实数,则事件{Xx}为随机变量X的分布函数,记为F(x) 即: F(x)=P(Xx) (1)几何意

    2024年01月18日
    浏览(39)
  • 概率论的学习和整理16: 泊松分布(未完成)

    目录 简单的扩展到泊松分布  比较整体的动态过程,增加实验次数时 当二项分布,n很大,p很小的时候,会趋向泊松分布 当n足够大时,二项分布趋向于正态分布。这个结论在概率论中被称为中心极限定理,它是概率论中一个非常重要的定理,广泛应用于各种领域,如金融、

    2024年02月16日
    浏览(41)
  • 概率论第二章 随机变量的分布与数字特征

    (ps:主要依照课本目录总结一下要记的公式期望和方差,概念去课本上看) 随机变量一般用大写XYZ表示,取值一般用小写xyz表示                 分布函数性质 1、单调性:若x1=x2,则F(x1)=F(x2);(单调递增) 2、F(负无穷)=0,F(正无穷)=1 2、右连续性:F(x+0)=F(x) 区间概率表示:

    2024年04月27日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包