Probability Mass Function 离散随机变量的分布函数PMF

note 前半部分是Analytic Combinatorics by Philippe Flajolet, Robert Sedgewick的

III.2. Bivariate generating functions and probability distributions 这一节的笔记

note 2020-09-17 19:12 增加了《具体数学》里的PGF部分

随机结构举例 two classical combinatorial distributions

PGF Probability generating functions定义

\[p(u)=\sum_{k} \mathbb{P}(X=k) u^{k}
\]

当然,能从BGF推到PGF

矩 Moments

The (power) moments are (r阶矩定义)

\[\mathbb{E}\left(X^{r}\right):=\sum_{k} \mathbb{P}\{X=k\} \cdot k^{r}
\]

The factorial moment defined for order r as (r order-阶乘矩定义)

\[E[X(X-1) \cdots(X-r+1)]
\]

从BGFs 推到 Moments

例题

二项分布的r order-阶乘矩

\[f_{n,k}=\binom{n}{k}
\]

先算出OBGF

\[W(z,u)=\frac{1}{1-z-zu}
\]

算出对\(u\)的\(r\)阶偏导,再取\(u=1\)

\[\left.\frac{\partial^{r}}{\partial u^{r}} W(z, u)\right|_{u=1}=\frac{r ! z^{r}}{(1-2 z)^{r+1}}=\frac{r ! (2z)^{r}}{2^r(1-2 z)^{r+1}}
\]

对\([z^n]\)反演得到【以\(n\)为变量,\(r\)为参数的某表达式】 (分子)

\[\left.\left[z^{n}\right] \partial_{u}^{r} W(z, u)\right|_{u=1}=\frac{r!}{2^r}\binom{n}{r}2^n
\]

\(W(z,1)\)对\([z^n]\)反演得到 (分母)

\[\left[z^{n}\right] W(z, 1)=[z^n]\frac{1}{1-2z}=2^n
\]

分子分母代入这个公式,得到r order-阶乘矩

\[\mathbb{E}_{\mathcal{A}_{n}}(\chi(\chi-1) \cdots(\chi-r+1))=\frac{\left.\left[z^{n}\right] \partial_{u}^{r} A(z, u)\right|_{u=1}}{\left[z^{n}\right] A(z, 1)}=\frac{r!}{2^r}\binom{n}{r}
\]

接着没事可以算算期望,方差

期望(1 order-阶乘矩)

\[\mathbb{E}_{\mathcal{A}_{n}}(\chi)=\frac{n}{2}
\]

用公式\(\mathbb{E}_{\mathcal{A}_{n}}\left(\chi^{2}\right)=\frac{\left.\left[z^{n}\right] \partial_{u}^{2} A(z, u)\right|_{u=1}}{\left[z^{n}\right] A(z, 1)}+\frac{\left.\left[z^{n}\right] \partial_{u} A(z, u)\right|_{u=1}}{\left[z^{n}\right] A(z, 1)}\)得到二次矩

\[\mathbb{E}_{\mathcal{A}_{n}}(\chi^2)=\frac{n(n-1)}{4}+\frac{n}{2}=\frac{n(n+1)}{4}
\]

使用方差公式\(\mathbb{V}(X)=\mathbb{E}\left(X^{2}\right)-\mathbb{E}(X)^{2}\)得到方差

\[\mathbb{V}(\chi)=\frac{n(n+1)}{4}-\frac{n^2}{4}=\frac{n}{4}
\]

附录

下面的内容来自《具体数学》中概率生成函数小节

为什么要使用概率生成函数?\(G(z)=\sum \Pr(X=k)z^k\)

一大长处是可以简化均值和方差的计算。(嗯这两个公式挺好证的,把右边展开成和式)

\[Mean(X)=G'(1)\\
Var(X)=G''(1)+G'(1)-G'(1)^2\\
E[X^2]=G''(1)+G'(1)
\]

第二大长处是:在许多重要的情形,它们都是\(z\)的比较简单的函数

第三大长处是:概率生成函数的乘积对应于(相互独立的)随机变量之和

然后有意思的是引入了累积量,和多阶矩、r-order阶乘矩很是像,都是数字特征里更加“高次”的东西。

定义\(\kappa_i\)是累积量,由下面的公式给出。由此定义式可见看出,由于【对数变乘为加】以及【概率生成函数的乘积对应于随机变量之和】,所以:独立随机变量之和的所有累积量也可由原来的对应累积量相加得到。

\[\ln G(e^t)=\frac{\kappa_1}{1!}t+\frac{\kappa_2}{2!}t^2+\frac{\kappa_3}{3!}t^3+\frac{\kappa_4}{4!}t^4+\dots
\]

定义\(\alpha_m\)是阶乘矩\(\alpha_m=E[X(X-1) \cdots(X-m+1)]\)

定义\(\mu_m\)是\(m\)阶矩,\(\mu_m=E[X^m]\)

把PGF \(G(e^t)\)各种改写,比对系数,得到这三个“高次量”的相互转换

拿\(\kappa_i\)写\(G(e^t)\) (把累计量的定义式取指数)
\[G(e^t)=1+\frac{\frac{\kappa_1}{1!}t+\frac{\kappa_2}{2!}t^2+\dots}{1!}+\frac{(\frac{\kappa_1}{1!}t+\frac{\kappa_2}{2!}t^2+\dots)^2}{2!}+\dots
\]
拿\(\mu_m\)写
\[\begin{aligned}
G(e^t)=\sum\limits_{k\geq 0}\Pr(X=k)e^{kt}&=\sum\limits_{k,m\geq 0}\Pr(X=k)k^m\cdot\frac{t^m}{m!}\\
&=1+\frac{\mu_1}{1!}t+\frac{\mu_2}{2!}t^2+\frac{\mu_3}{3!}t^3+\dots
\end{aligned}
\]
拿\(\alpha_m\)写

因为

\[\begin{aligned}
G(1+t)&=G(1)+\frac{G'(1)}{1!}t+\frac{G''(1)}{2!}t^2+\cdots\\
&=1+\frac{\alpha_1}{1!}t+\frac{\alpha_2}{2!}t^2+\cdots
\end{aligned}
\]

于是

\[\begin{aligned}
G(e^t)&=1+\frac{\alpha_1}{1!}(e^t-1)+\frac{\alpha_2}{2!}(e^t-1)^2+\cdots\\
&=1+\frac{\alpha_1}{1!}(t+\frac{t^2}{2}+...)+\frac{\alpha_2}{2!}(t^2+t^3+...)+\cdots
\end{aligned}
\]

PGF 概率生成函数 Probability generating function的更多相关文章

  1. 矩量母函数(Moment Generating Function,mgf,又称:动差生成函数)

    在统计学中,矩又被称为动差(Moment).矩量母函数(Moment Generating Function,简称mgf)又被称为动差生成函数. 称exp(tξ)的数学期望为随机变量ξ的矩量母函数,记 ...

  2. 高斯分布(Gaussian Distribution)的概率密度函数(probability density function)

    高斯分布(Gaussian Distribution)的概率密度函数(probability density function) 对应于numpy中: numpy.random.normal(loc= ...

  3. 【转】母函数(Generating function)详解 — TankyWoo(红色字体为批注)

    母函数(Generating function)详解 - Tanky Woo 在数学中,某个序列的母函数(Generating function,又称生成函数)是一种形式幂级数,其每一项的系数可以提供 ...

  4. 母函数(Generating function)详解

    母函数(Generating function)详解 在数学中,某个序列的母函数(Generating function,又称生成函数)是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息.使用 ...

  5. 洛谷 P4548 - [CTSC2006]歌唱王国(概率生成函数)

    洛谷题面传送门 PGF 入门好题. 首先介绍一下 PGF 的基本概念.对于随机变量 \(X\),满足 \(X\) 的取值总是非负整数,我们即 \(P(v)\) 表示 \(X=v\) 的概率,那么我们定 ...

  6. 洛谷P3706 [SDOI2017]硬币游戏(概率生成函数+高斯消元)

    题面 传送门 题解 不知道概率生成函数是什么的可以看看这篇文章,题解也在里面了 //minamoto #include<bits/stdc++.h> #define R register ...

  7. 洛谷P4548 [CTSC2006]歌唱王国(概率生成函数)

    题面 传送门 给定一个长度为\(L\)的序列\(A\).然后每次掷一个标有\(1\)到\(m\)的公平骰子并将其上的数字加入到初始为空的序列\(B\)的末尾,如果序列B中已经出现了给定序列\(A\), ...

  8. polynomial&generating function学习笔记

    生成函数 多项式 形如$\sum_{i=0}^{n}a_i x^i$的代数式称为n阶多项式 核函数 {ai}的核函数为f(x),它的生成函数为sigma(ai*f(i)*x^i) 生成函数的加减 {a ...

  9. 生成函数小结——[ EGF ][ ln 的一个套路 ][ 概率生成函数 ]

    看了jcvb的WC2015交流课件.虽然没懂后面的复合逆部分,但生成函数感觉受益良多. 指数生成函数 集合中大小为 i 的对象的权值是 \( a_i \) ,该集合的生成函数是 \( \sum\lim ...

  10. 【题解】歌唱王国(概率生成函数+KMP)+伦讲的求方差

    [题解]歌唱王国(概率生成函数+KMP)+伦讲的求方差 生成函数的本质是什么呀!为什么和It-st一样神 设\(f_i\)表示填了\(i\)个时候停下来的概率,\(g_i\)是填了\(i\)个的时候不 ...

随机推荐

  1. element 换肤

    官网操作 https://element.eleme.cn/#/zh-CN/component/custom-theme 然后 执行 et -i 报错了!!! 查了一下,说的是node版本过高?那我就 ...

  2. HTTP身份认证

    1.HTTP Basic认证 用户每次发送请求的时候,在请求头中携带能通过认证的身份信息:Authorization: <username>:<password> 1.1 交互 ...

  3. SQL 之 SQL server 中 遇到字段的值为null 遇到的坑

    SQL server 中,如果查询或筛选的条件中,某字段的值为NULL,如何处理?又有哪些坑需要避免呢? 直接上坑 : NULL 与其他任何类型进行逻辑判断: [解释]: NULL表示值未知,和空字符 ...

  4. qt的窗口

      1.窗口.字部件以及窗口类型(记得不牢固的) (1)#include<QtWidget> Widgets是在Qt中创建用户界面的主要元素. Widgets可以显示数据和状态信息,接收用 ...

  5. 通达OA设计表单的小总结

    16px下: 2010-09-09  80px  一般 100px  占5个字符 2010年09月09日 112px 一般120px 对应计算控件30px 占7个字符 2010-09-09时分秒 14 ...

  6. 学Java的第5天,今天做了个双色球系统

    今天是学JAVA的第5天,刚刚把方法学完,然后就在这做黑马的题. 用了一个多小时时间,把他的 这些题都做完了 但是最后一道题,这个双色球系统我感觉挺有意思的 我看到这个题,分析后感觉需要4种方法: 1 ...

  7. SpringIOC以及AOP注解开发

    和 XML 配置文件一样,注解本身并不能执行,注解本身仅仅只是做一个标记,具体的功能是框架检测到注解标记的位置,然后针对这个位置按照注解标记的功能来执行具体操作. 本质上:所有一切的操作都是 Java ...

  8. [postman的使用]postman捕获https请求

    解决方法: 1.settings 2.SSL certificate verifivation设置为关闭

  9. windows系统下查找开放端口的监听程序

    C:\Program Files (x86)\Nmap>nmap 127.0.0.1Starting Nmap 7.92 ( https://nmap.org ) at 2022-07-15 1 ...

  10. 高德地图使用websocket后重新设置点进行优化

    // 设置第一次点赋值,重新定义一个新数组,将设备号为对象名,索引值作为键值 const getListNEW = useCallback( (params, reload, gps) => { ...