一个概率论例题引发的思考

浙江大学版《概率论与数理统计》一书,第13章第1节例2:
在这里插入图片描述

这个解释和模型比较简单易懂。

接下来,第13章第2节的例2也跟此模型相关:

在这里插入图片描述

在我自己的理解中,此题的解法跟上一个题目一样,其概率如下面的二维矩阵,第二级传输也就是n为2,矩阵一共有4中可能的概率,求其期望值,即求所有概率及值之积的和。

{ p n q n q n p n } \begin {Bmatrix} p^n & q^n \\ q^n & p^n \end{Bmatrix} {pnqnqnpn}

然而,仔细考虑之后发现不妥。因为最后结果的概率,这样计算不太合适,但是又没有发现更合理的理论和方法。

继续搜看教材,看到这一节的如下论述:

在这里插入图片描述

safe_360_class_name
似乎抓到了什么,但是又特别模糊。

再看一下C-K方程:
在这里插入图片描述
在这里插入图片描述

因此,参考此文:https://blog.csdn.net/m0_37567738/article/details/132182007?spm=1001.2014.3001.5502可以得出结论,此种题目的解题方法还是要回到马尔可夫概率转移矩阵中去找答案。

我觉得要理解此题目的底层逻辑,还需要了解以下公式:

P { X n = a n } = ∑ i = 1 + ∞ P { X n = a n , X 0 = a i } = ∑ i = 1 + ∞ P { X n = a n ∣ X 0 = a i } P { X 0 = a i } = ∑ i = 1 + ∞ P i ( 0 ) P i j ( n ) = ∑ i = 1 + ∞ P i 1 ( 1 ) P i j ( n − 1 ) = ∑ i = 1 + ∞ P 2 i ( 2 ) P i j ( n − 2 ) = ∑ i = 1 + ∞ P 3 i ( 3 ) P i j ( n − 3 ) = . . . . . . P \{X_n = a_n\} = \sum_{i = 1}^{+\infty} P\{ X_n = a_n, X_0 = a_i \} = \\ \sum_{i = 1}^{+\infty} P\{ X_n = a_n|X_0 = a_i \} P\{ X_0 = a_i \}=\sum_{i=1}^{+\infty} P_i(0) P_{ij}(n) = \\ \sum_{i=1}^{+\infty} P_{i1}(1) P_{ij}(n-1)= \sum_{i=1}^{+\infty} P_{2i}(2) P_{ij}(n-2) = \sum_{i=1}^{+\infty} P_{3i}(3) P_{ij}(n-3) = ...... \\ P{Xn=an}=i=1+P{Xn=an,X0=ai}=i=1+P{Xn=anX0=ai}P{X0=ai}=i=1+Pi(0)Pij(n)=i=1+Pi1(1)Pij(n1)=i=1+P2i(2)Pij(n2)=i=1+P3i(3)Pij(n3)=......

这个逻辑的本质区别就在于,它是利用后验概率去推算先验概率,这是一种理论上的优越性。

我们想要求解的概率P,它依赖于其概率矩阵的乘法运算,而不是矩阵中4个转换概率的期望值。

### 使用Python编写概率论例题 #### 计算二项分布的概率质量函数 为了计算给定参数下的二项分布概率,可以利用`scipy.stats.binom.pmf()`方法来求解特定事件发生的概率。 ```python from scipy.stats import binom n = 10 # number of trials p = 0.5 # probability of success on each trial k = range(0, n+1) # possible outcomes probabilities = binom.pmf(k, n, p) for outcome, prob in zip(k, probabilities): print(f'P(X={outcome}) = {prob:.4f}') ``` 此代码片段展示了如何计算当试验次数为10次、每次成功的概率为0.5时不同成功数目的概率[^1]。 #### 随机变量模拟——泊松过程 对于随机点过程的兴趣可以通过研究泊松过程得到满足。下面的例子说明了怎样创建一个简单的泊松过程仿真器,在指定的时间间隔内生成到达时间戳记。 ```python import numpy as np def poisson_process(lamda, T): event_times = [] current_time = 0 while True: inter_event_interval = np.random.exponential(scale=1/lamda) if current_time + inter_event_interval > T: break else: current_time += inter_event_interval event_times.append(current_time) return event_times lamda = 2.0 # average rate per unit time T = 10 # total observation period length event_timestamps = poisson_process(lamda, T) print(event_timestamps) ``` 这段程序实现了泊松过程中事件发生时刻的抽样,并打印出了这些时刻列表[^2]。 #### 贝叶斯推断入门实例 贝叶斯统计提供了一种更新先验信念的方法,即根据新数据调整假设的概率。这里给出的是关于硬币投掷实验的一个简单例子: ```python from scipy.stats import beta prior_alpha = 2 prior_beta = 2 data_heads = 8 data_tails = 4 posterior_alpha = prior_alpha + data_heads posterior_beta = prior_beta + data_tails x_values = np.linspace(0, 1, 1000) y_prior = beta.pdf(x=x_values, a=prior_alpha, b=prior_beta) y_posterior = beta.pdf(x=x_values, a=posterior_alpha, b=posterior_beta) plt.plot(x_values, y_prior, label='Prior') plt.plot(x_values, y_posterior, label='Posterior', linestyle='dashed') plt.legend() plt.show() ``` 上述脚本绘制了一个Beta分布作为先验以及观察到一些正面朝上的结果之后所获得的事后分布图象.
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值