GitModel-动手学概率论_02(python)

1 动手学概率_2

github 上pdf版本及ipynb版本:https://github.com/cx-333/Math-Modeling

1.5 多维随机变量及其联合分布、边际分布、条件分布

  • 多维随机变量:若随机变量 X 1 ( ω ) , X 2 ( ω ) , ⋯   , X n ( ω ) X_{1}(\omega), X_{2}(\omega), \cdots, X_{n}(\omega) X1(ω),X2(ω),,Xn(ω) 定义在同一个基本空间 Ω = { ω } \Omega=\{\omega\} Ω={ω} 上, 则称
    X ( ω ) = ( X 1 ( ω ) , X 2 ( ω ) , ⋯   , X n ( ω ) ) \boldsymbol{X}(\omega)=\left(X_{1}(\omega), X_{2}(\omega), \cdots, X_{n}(\omega)\right) X(ω)=(X1(ω),X2(ω),,Xn(ω))
    是一个多维随机变量,也称为n维随机向量。

  • 多维随机变量联合分布函数:设 X = ( X 1 , X 2 , ⋯   , X n ) X=\left(X_{1}, X_{2}, \cdots, X_{n}\right) X=(X1,X2,,Xn) n n n 维随机变量, 对任意 n n n 个实数 x 1 , x 2 , ⋯   , x n x_{1}, x_{2}, \cdots, x_{n} x1,x2,,xn 所组成的 n n n 个事件 $X_{1} \leqslant x_{1},X_{2} \leqslant x_{2} , \cdots, X_{n} \leqslant x_{n} $ 同时发生的概率
    F ( x 1 , x 2 , ⋯   , x n ) = P ( X 1 ⩽ x 1 , X 2 ⩽ x 2 , ⋯   , X n ⩽ x n ) F\left(x_{1}, x_{2}, \cdots, x_{n}\right)=P\left(X_{1} \leqslant x_{1}, X_{2} \leqslant x_{2}, \cdots, X_{n} \leqslant x_{n}\right) F(x1,x2,,xn)=P(X1x1,X2x2,,Xnxn)
    称为 n n n 维随机变量 X \boldsymbol{X} X联合分布函数

  • 多维随机变量联合概率密度函数:设 n n n维随机变量 X = ( X 1 , X 2 , ⋯   , X n ) X=\left(X_{1}, X_{2}, \cdots, X_{n}\right) X=(X1,X2,,Xn) 的分布函数为 F ( x 1 , x 2 , ⋯   , x n ) F(x_{1}, x_{2}, \cdots, x_{n}) F(x1,x2,,xn) 。假如各分量 x 1 , x 2 , ⋯   , x n x_{1}, x_{2}, \cdots, x_{n} x1,x2,,xn 都是一维连续随机变量,并存在定义在空间上的非负函数 p ( x 1 , x 2 , ⋯   , x n ) p(x_{1}, x_{2}, \cdots, x_{n}) p(x1,x2,,xn),使得
    F ( x , y ) = ∫ − ∞ x 1 ∫ − ∞ x 2 ⋯ ∫ − ∞ x n p ( x 1 , x 2 , ⋯   , x n ) d x 1 d x 2 ⋯ d x n F(x, y)=\int_{-\infty}^{x_{1}} \int_{-\infty}^{x_{2}}\cdots \int_{-\infty}^{x_{n}} p(x_{1}, x_{2}, \cdots, x_{n}) d x_{1}dx_{2}\cdots dx_{n} F(x,y)=x1x2xnp(x1,x2,,xn)dx1dx2dxn
    则称 X = ( X 1 , X 2 , ⋯   , X n ) X=\left(X_{1}, X_{2}, \cdots, X_{n}\right) X=(X1,X2,,Xn) n n n维连续随机变量, p ( x 1 , x 2 , ⋯   , x n ) p(x_{1}, x_{2}, \cdots, x_{n}) p(x1,x2,,xn) 称为 X = ( X 1 , X 2 , ⋯   , X n ) X=\left(X_{1}, X_{2}, \cdots, X_{n}\right) X=(X1,X2,,Xn)联合概率密度函数, 或简称联合密度。

  • 特例:二维随机变量
    二维随机变量的分布函数:设 ( X , Y ) (X, Y) (X,Y)是二维随机变量,对于任意实数 x , y x, y x,y,二元函数:
    F ( x , y ) = P { X ≤ x , Y ≤ y } F(x, y)=P\{X\le x, Y \le y\} F(x,y)=P{Xx,Yy}
    称为二维随机变量 ( X , Y ) (X, Y) (X,Y)分布函数,或称为随机变量 ( X , Y ) (X, Y) (X,Y)联合分布函数

分布函数的性质:

    1. F ( x , y ) F(x, y) F(x,y) x , y x, y x,y的不减函数
    1. 0 ≤ F ( x , y ) ≤ 1 0 \le F(x, y) \le 1 0F(x,y)1,且 对 于 任 意 固 定 的 y , F ( − ∞ , y ) = 0 对 于 任 意 固 定 的 x , F ( x , − ∞ ) = 0 F ( − ∞ , − ∞ ) = 0 , F ( ∞ , ∞ ) = 1 \begin{aligned}&对于任意固定的y, F(-\infty, y) = 0\\&对于任意固定的x, F(x, -\infty)=0\\&F(-\infty, -\infty)=0, F(\infty, \infty)=1\end{aligned} y,F(,y)=0x,F(x,)=0F(,)=0,F(,)=1
    1. F ( x + 0 , y ) = F ( x , y ) , F ( x , y + 0 ) = F ( x , y ) F(x+0, y)=F(x, y), F(x, y+0)=F(x, y) F(x+0,y)=F(x,y),F(x,y+0)=F(x,y),即 F ( x , y ) F(x, y) F(x,y)关于 x , y x, y x,y分别右连续
    1. 对于任意的 ( x 1 , y 1 ) , ( x 2 , y 2 ) , x 1 < x 2 , y 1 < y 2 (x_{1}, y_{1}), (x_{2}, y_{2}), x_{1} < x_{2}, y_{1} < y_{2} (x1,y1),(x2,y2),x1<x2,y1<y2,有不等式 F ( x 2 , y 2 ) − F ( x 2 , y 1 ) + F ( x 1 , y 1 ) − F ( x 1 , y 2 ) ≥ 0 F(x_{2},y_{2}) - F(x_{2}, y_{1}) + F(x_{1}, y_{1}) - F(x_{1}, y_{2}) \ge 0 F(x2,y2)F(x2,y1)+F(x1,y1)F(x1,y2)0恒成立

  二维随机变量的概率密度函数:对于二维随机变量 ( X , Y ) (X, Y) (X,Y)的分布函数 F ( x , y ) F(x, y) F(x,y),如果存在非负可积函数 f ( x , y ) f(x, y) f(x,y),使对于任意 x , y x, y x,y
F ( x , y ) = ∫ − ∞ y ∫ − ∞ x f ( u , v ) d u d v F(x, y) = \int_{-\infty}^{y}\int_{-\infty}^{x}f(u, v)dudv F(x,y)=yxf(u,v)dudv
则称 ( X , Y ) (X, Y) (X,Y)是连续型的二维随机变量,函数 f ( x , y ) f(x, y) f(x,y)称为二维随机变量 ( X , Y ) (X, Y) (X,Y)的概率密度,或称为随机变量 X 和 Y X和Y XY的联合概率密度。

联合概率密度 f ( x , y ) f(x, y) f(x,y)的性质:

    1. f ( x , y )   g e 0 f(x, y) \ ge 0 f(x,y) ge0
    1. ∫ − ∞ ∞ ∫ − ∞ ∞ f ( x , y ) d x d y = 1 \int_{-\infty}^{\infty}\int_{-\infty}^{\infty}f(x, y)dxdy = 1 f(x,y)dxdy=1
    1. f ( x , y ) f(x, y) f(x,y)在点 ( x , y ) (x, y) (x,y)连续,则有 ∂ 2 F ( x , y ) ∂ x ∂ y = f ( x , y ) \frac{\partial^{2} F(x, y)}{\partial x\partial y} = f(x, y) xy2F(x,y)=f(x,y)
    1. G G G x O y xOy xOy平面上的区域,点 ( X , Y ) (X, Y) (X,Y)落在 G G G内的概率为: P { ( X , Y ) ∈ G } = ∬ G f ( x , y ) d x d y P\{(X, Y) \in G\} = \iint\limits_{G}f(x, y)dxdy P{(X,Y)G}=Gf(x,y)dxdy

python代码(绘制二维概率密度函数图像)代码参考

import numpy as np
from scipy import stats
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt

x, y = np.mgrid[-5:5:0.01, -5:5:0.01]
pos = np.dstack((x, y))
rv = stats.multivariate_normal([0.5, -0.2], [[2.0, 0.3], [0.3, 0.5]])
z = rv.pdf(pos)
# 曲面图
plt.figure('Surface', facecolor='lightgray', figsize=(12, 8))
ax = plt.axes(projection='3d')
ax.set_xlabel('x', fontsize=14)
ax.set_ylabel('y', fontsize=14)
ax.set_zlabel('f(x, y)', fontsize = 14)
ax.plot_surface(x, y, z, rstride=50, cstride=50, cmap='jet')
plt.show()
# 等高线图
fig2 = plt.figure(figsize=(8,6))
ax2 = fig2.add_subplot(111)
ax2.contourf(x, y, rv.pdf(pos), rstride=50, cstride=50, cmap='jet')
plt.show()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F7mhkt8u-1655717789572)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_57_0.png)]

C:\Users\13541\AppData\Local\Temp\ipykernel_11684\2054532681.py:21: UserWarning: The following kwargs were not used by contour: 'rstride', 'cstride'
  ax2.contourf(x, y, rv.pdf(pos), rstride=50, cstride=50, cmap='jet')

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X9kmIAsJ-1655717789572)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_57_2.png)]

  • 边际(边缘)分布:
    二维随机变量 ( X , Y ) (X, Y) (X,Y)作为一个整体,具有分布函数 F ( x , y ) F(x, y) F(x,y) X 和 Y X和Y XY都是随机变量,他们也有自己的分布函数,分别记为 F X ( x ) , F Y ( y ) F_{X}(x), F_{Y}(y) FX(x),FY(y),依次为随机变量 ( X , Y ) (X, Y) (X,Y)关于 X X X和关于 Y Y Y边缘分布函数 F X ( x ) = P { X ≤ x } = P { X ≤ x , Y < ∞ } = F ( x , ∞ ) F_{X}(x)=P\{X\le x\}=P\{X\le x, Y < \infty\}=F(x, \infty) FX(x)=P{Xx}=P{Xx,Y<}=F(x,) F X ( x ) = F ( x , ∞ ) F_{X}(x)=F(x, \infty) FX(x)=F(x,),同理 F Y ( y ) = F ( ∞ , y ) F_{Y}(y)=F(\infty, y) FY(y)=F(,y)
    对于连续型随机变量 ( X , Y ) (X, Y) (X,Y),设它的概率密度函数为 f ( x , y ) f(x, y) f(x,y),由于 F X ( x ) = F ( x , ∞ ) = ∫ − ∞ x [ ∫ − ∞ ∞ f ( x , y ) d y ] d x F_{X}(x)=F(x, \infty)=\int_{-\infty}^{x}[\int_{-\infty}^{\infty}f(x, y)dy]dx FX(x)=F(x,)=x[f(x,y)dy]dx则随机变量 X X X概率密度函数为: f X ( x ) = ∫ − ∞ ∞ f ( x , y ) d y f_{X}(x)=\int_{-\infty}^{\infty}f(x, y)dy fX(x)=f(x,y)dy
    同理,随机变量 Y Y Y概率密度函数为: f Y ( y ) = ∫ − ∞ ∞ f ( x , y ) d x f_{Y}(y)=\int_{-\infty}^{\infty}f(x, y)dx fY(y)=f(x,y)dx

python代码(已知联合分布求边缘分布)

from sympy import *

x, y = symbols('x, y')
fxy = 1
pxy = Piecewise((fxy, And(x > 0, x < 1, y > -x, y < x)), (0, True))
fXx = integrate(pxy, (y, -oo, oo))
pprint("关于随机变量X的边缘密度函数为:{}".format(fXx))
fYy = integrate(pxy, (x, -oo, oo))
pprint("关于随机变量Y的边缘密度函数为:{}".format(fYy))
关于随机变量X的边缘密度函数为:Piecewise((x + Max(-x, x), (x > 0) & (x < 1)), (0, True))
关于随机变量Y的边缘密度函数为:-Max(0, -y, y) + Max(1, -y, y)

  边际(边缘)分布列:在二维离散随机变量 ( X , Y ) (X, Y) (X,Y) 的联合分布列 { P ( X = x i , Y = y j ) } \left\{P\left(X=x_{i}, Y=y_{j}\right)\right\} {P(X=xi,Y=yj)} 中, 对 j j j 求和所得的分布列 ∑ j = 1 ∞ P ( X = x i , Y = y j ) = P ( X = x i ) , i = 1 , 2 , ⋯ \sum_{j=1}^{\infty} P\left(X=x_{i}, Y=y_{j}\right)=P\left(X=x_{i}\right), \quad i=1,2, \cdots j=1P(X=xi,Y=yj)=P(X=xi),i=1,2,
  被称为 X X X 的边际分布列。 类似地, 对 i i i 求和所得的分布列 ∑ i = 1 ∞ P ( X = x i , Y = y j ) = P ( Y = y j ) , j = 1 , 2 , ⋯ \sum_{i=1}^{\infty} P\left(X=x_{i}, Y=y_{j}\right)=P\left(Y=y_{j}\right), \quad j=1,2, \cdots i=1P(X=xi,Y=yj)=P(Y=yj),j=1,2,
  被称为 Y Y Y 的边际分布列。

  • 条件分布:由条件概率引出条件概率分布。
    ( X , Y ) (X, Y) (X,Y)是二维离散型随机变量,其分布律为 P { X = x i , Y = y j } = p i j , i , j = 1 , 2 , ⋯   . P\{X=x_{i}, Y=y_{j}\}=p_{ij}, i,j=1,2,\cdots . P{X=xi,Y=yj}=pij,i,j=1,2,. ( X , Y ) (X, Y) (X,Y)关于 X X X和关于 Y Y Y的边缘分布分别为
    P { X = x i } = p i = ∑ j = 1 ∞ p i j , i = 1 , 2 , ⋯   . P { Y = y j } = p j = ∑ i = 1 ∞ p i j , j = 1 , 2 , ⋯   . \begin{aligned}& P\{X=x_{i}\}=p_{i}=\sum_{j=1}^{\infty}p_{ij}, i=1,2,\cdots .\\&P\{Y=y_{j}\}=p_{j}=\sum_{i=1}^{\infty}p_{ij}, j=1,2,\cdots . \end{aligned} P{X=xi}=pi=j=1pij,i=1,2,.P{Y=yj}=pj=i=1pij,j=1,2,.
    P ⋅ j > 0 P_{\cdot j} > 0 Pj>0,考虑在事件 { Y = y j } \{Y=y_{j}\} {Y=yj}已发生的条件下事件 { X = x i } \{X=x_{i}\} {X=xi}发生的概率,由条件概率公式得 P { X = x i ∣ Y = y j } = P { X = x i , Y = y j } P { Y = y j } = p i j p ⋅ j , i = 1 , 2 , ⋯   . P\{X=x_{i}|Y=y_{j}\} = \frac{P\{X=x_{i}, Y=y_{j}\}}{P\{Y=y_{j}\}} = \frac{p_{ij}}{p_{\cdot j}}, i=1,2,\cdots . P{X=xiY=yj}=P{Y=yj}P{X=xi,Y=yj}=pjpij,i=1,2,.上式称为在 Y = y j Y=y_{j} Y=yj条件下随机变量 X X X条件分布率,同理 P { Y = y j ∣ X = x i } = P { Y = y j , X = x i } P { X = x i } = p i j p i ⋅ , i = 1 , 2 , ⋯   . P\{Y=y_{j}|X=x_{i}\} = \frac{P\{Y=y_{j}, X=x_{i}\}}{P\{X=x_{i}\}} = \frac{p_{ij}}{p_{i \cdot}}, i=1,2,\cdots . P{Y=yjX=xi}=P{X=xi}P{Y=yj,X=xi}=pipij,i=1,2,.称为在 X = x i X=x_{i} X=xi条件下随机变量 Y Y Y条件分布率

条件分布得性质:

    1. P { X = x i ∣ Y = y j } ≥ 0 P\{X=x_{i}|Y=y_{j}\} \ge 0 P{X=xiY=yj}0
    1. ∑ i = 1 ∞ P { X = x i ∣ Y = y j } = ∑ i = 1 ∞ p i j p ⋅ j = 1 p ⋅ j ∑ i = 1 ∞ p i j = p ⋅ j p ⋅ j = 1 \sum_{i=1}^{\infty}P\{X=x_{i}|Y=y_{j}\} = \sum_{i=1}^{\infty}\frac{p_{ij}}{p_{\cdot j}} =\frac{1} {p_{\cdot j}}\sum_{i=1}^{\infty}p_{ij} = \frac{p_{\cdot j}}{p_{\cdot j}} = 1 i=1P{X=xiY=yj}=i=1pjpij=pj1i=1pij=pjpj=1

  连续型随机变量条件分布:
设二维随机变量 ( X , Y ) (X, Y) (X,Y)得概率密度为 f ( x , y ) f(x, y) f(x,y) ( X , Y ) (X, Y) (X,Y)关于 Y Y Y得边缘概率密度为 f Y ( y ) f_{Y}(y) fY(y). 若对于固定得 y , f Y ( y ) > 0 y, f_{Y}(y) > 0 y,fY(y)>0,则称 f ( x , y ) f Y ( y ) \frac{f(x, y)}{f_{Y}(y)} fY(y)f(x,y)为在 Y = y Y = y Y=y条件下 X X X条件概率密度函数,记为
f X ∣ Y ( x ∣ y ) = f ( x , y ) f Y ( y ) f_{X|Y}(x|y) = \frac{f(x, y)}{f_{Y}(y)} fXY(xy)=fY(y)f(x,y)
∫ − ∞ x f X ∣ Y ( x ∣ y ) d x = ∫ − ∞ x f ( x , y ) f Y ( y ) d x \int_{-\infty}^{x}f_{X|Y}(x|y)dx = \int_{-\infty}^{x}\frac{f(x, y)}{f_{Y}(y)}dx xfXY(xy)dx=xfY(y)f(x,y)dx为在 Y = y Y = y Y=y条件下 X X X条件分布函数,记为 P { X ≤ x ∣ Y = y } 或 F X ∣ Y ( x ∣ y ) P\{X\le x|Y =y\}或F_{X|Y}(x|y) P{XxY=y}FXY(xy),即
F X ∣ Y ( x ∣ y ) = P { X ≤ x ∣ Y = y } = ∫ − ∞ x f ( x , y ) f Y ( y ) d x . F_{X|Y}(x|y)=P\{X\le x|Y =y\}=\int_{-\infty}^{x}\frac{f(x, y)}{f_{Y}(y)}dx. FXY(xy)=P{XxY=y}=xfY(y)f(x,y)dx.

连续随机变量的贝叶斯公式和全概率公式:

    1. 全概率公式 p Y ( y ) = ∫ − ∞ ∞ p X ( x ) p ( y ∣ x ) d x , p χ ( x ) = ∫ − ∞ ∞ p Y ( y ) p ( x ∣ y ) d y . \begin{aligned}&p_{Y}(y)=\int_{-\infty}^{\infty} p_{X}(x) p(y \mid x) \mathrm{d} x, \\&p_{\chi}(x)=\int_{-\infty}^{\infty} p_{Y}(y) p(x \mid y) \mathrm{d} y .\end{aligned} pY(y)=pX(x)p(yx)dx,pχ(x)=pY(y)p(xy)dy.
    1. 贝叶斯公式 p ( x ∣ y ) = p X ( x ) p ( y ∣ x ) ∫ − ∞ ∞ p X ( x ) p ( y ∣ x ) d x , p ( y ∣ x ) = p Y ( y ) p ( x ∣ y ) ∫ − ∞ ∞ p Y ( y ) p ( x ∣ y ) d y . \begin{aligned}&p(x \mid y)=\frac{p_{X}(x) p(y \mid x)}{\int_{-\infty}^{\infty} p_{X}(x) p(y \mid x) \mathrm{d} x},\\&p(y \mid x)=\frac{p_{Y}(y) p(x \mid y)}{\int_{-\infty}^{\infty} p_{Y}(y) p(x \mid y) \mathrm{d} y} .\end{aligned} p(xy)=pX(x)p(yx)dxpX(x)p(yx),p(yx)=pY(y)p(xy)dypY(y)p(xy).

python代码(求解边际分布列):设在一段时间内进人某一商店的顾客人数 X X X 服从泊松分布 P ( λ ) P(\lambda) P(λ), 每个顾客购买某种物品的概率为 p p p, 并且各个顾客是否购买该种物品相互独立, 求进入商店的顾客购买这种物品的人数 Y Y Y 的分布列。

from sympy import *
from sympy.abc import lamda, k, m, x, y, p    # 代替symbols("lamda, k, m, x, y") 
Pxk = (lamda ** k * exp(- lamda)) / factorial(k)
print("进入商店人数(k)的概率分布P(X=k) = {}".format(Pxk))
Pyx = (factorial(k) / (factorial(m) * factorial(k-m))) * (p ** m) * ((1 - p) ** (k - m))
print("在进入商店人数(k)确定的条件下,客户买某种商品人数的条件分布P(Y=m|X =k)={}".format(Pyx))
f = Pxk * Pyx
Py = summation(f, (k, m, oo))
print("进入商店的顾客购买这种商品人数Y的分布列P(Y=m)={}".format(Py))
Py
进入商店人数(k)的概率分布P(X=k) = lamda**k*exp(-lamda)/factorial(k)
在进入商店人数(k)确定的条件下,客户买某种商品人数的条件分布P(Y=m|X =k)=p**m*(1 - p)**(k - m)*factorial(k)/(factorial(m)*factorial(k - m))
进入商店的顾客购买这种商品人数Y的分布列P(Y=m)=lamda**m*p**m*exp(-lamda)*exp(-lamda*(p - 1))/factorial(m)

λ m p m e − λ e − λ ( p − 1 ) m ! \displaystyle \frac{\lambda^{m} p^{m} e^{- \lambda} e^{- \lambda \left(p - 1\right)}}{m!} m!λmpmeλeλ(p1)

1.6 多维随机变量的数字特征:期望向量、协方差与协方差矩阵、相关系数与相关系数矩阵

  • 期望向量
    n n n 维随机向量为 X = ( X 1 , X 2 , ⋯   , X n ) T \boldsymbol{X}=\left(X_{1}, X_{2}, \cdots, X_{n}\right)^{T} X=(X1,X2,,Xn)T, 若其每个分量的数学期望都存在, 则称
    E ( X ) = ( E ( X 1 ) , E ( X 2 ) , ⋯   , E ( X n ) ) T E(\boldsymbol{X})=\left(E\left(X_{1}\right), E\left(X_{2}\right), \cdots, E\left(X_{n}\right)\right)^{T} E(X)=(E(X1),E(X2),,E(Xn))T
    n n n 维随机向量 X \boldsymbol{X} X 的数学期望向量(一般为列向量), 简称为 X \boldsymbol{X} X 的数学期望。

  • 协方差与协方差矩阵
      协方差: Cov ⁡ ( X , Y ) = E [ ( X − E ( X ) ) ( Y − E ( Y ) ) ] \operatorname{Cov}(X, Y)=E[(X-E(X))(Y-E(Y))] Cov(X,Y)=E[(XE(X))(YE(Y))] ,衡量的是两个随机变量之间的相互关联的程度

  1. Cov ⁡ ( X , Y ) > 0 \operatorname{Cov}(X, Y)>0 Cov(X,Y)>0 时, 称 X X X Y Y Y 正相关, 这时两个偏差 ( X − E ( X ) ) (X-E(X)) (XE(X)) ( Y − E ( Y ) ) (Y-E(Y)) (YE(Y))同时增加或同时减少的倾向。 由于 E ( X ) E(X) E(X) E ( Y ) E(Y) E(Y) 都是常数, 故等价于 X X X Y Y Y 有同时增加或同时减少的倾向。
  2. Cov ⁡ ( X , Y ) < 0 \operatorname{Cov}(X, Y)<0 Cov(X,Y)<0 时, 称 X X X Y Y Y 负相关, 这时 X X X 增加而 Y Y Y 减少的倾向, 或有 Y Y Y 增加而 X X X 减少的倾向
  3. Cov ⁡ ( X , Y ) = 0 \operatorname{Cov}(X, Y)=0 Cov(X,Y)=0 时,称 X X X Y Y Y 不相关。 这时可能由两类情况导致:一类是 X X X Y Y Y 的取值毫无关联, 另一类是 X X X Y Y Y 间存有某种非线性关系。

协方差 Cov ⁡ ( X , Y ) \operatorname{Cov}(X, Y) Cov(X,Y)的性质:

    1. Cov ⁡ ( X , Y ) = E ( X Y ) − E ( X ) E ( Y ) \operatorname{Cov}(X, Y)=E(X Y)-E(X) E(Y) Cov(X,Y)=E(XY)E(X)E(Y)
    1. 若随机变量 X X X Y Y Y 相互独立, 则 Cov ⁡ ( X , Y ) = 0 \operatorname{Cov}(X, Y)=0 Cov(X,Y)=0, 反之不成立。
    1. (最重要)对任意二维随机变量 ( X , Y ) (X, Y) (X,Y), 有 Var ⁡ ( X ± Y ) = Var ⁡ ( X ) + Var ⁡ ( Y ) ± 2 Cov ⁡ ( X , Y ) \operatorname{Var}(X \pm Y)=\operatorname{Var}(X)+\operatorname{Var}(Y) \pm 2 \operatorname{Cov}(X, Y) Var(X±Y)=Var(X)+Var(Y)±2Cov(X,Y) 该性质表明: 在 X X X Y Y Y 相关的场合,和的方差不等于方差的和。 X X X Y Y Y 的正相关会增加和的方差,负相关会减少和的方差,而在 X X X Y Y Y 不相关的场合,和的方差等于方差的和,即: X X X Y Y Y 不相关, 则 Var ⁡ ( X ± Y ) = Var ⁡ ( X ) + Var ⁡ ( Y ) \operatorname{Var}(X \pm Y)=\operatorname{Var}(X)+\operatorname{Var}(Y) Var(X±Y)=Var(X)+Var(Y)
    1. 协方差 Cov ⁡ ( X , Y ) \operatorname{Cov}(X, Y) Cov(X,Y) 的计算与 X , Y X, Y X,Y 的次序无关, 即 Cov ⁡ ( X , Y ) = Cov ⁡ ( Y , X ) \operatorname{Cov}(X, Y)=\operatorname{Cov}(Y, X) Cov(X,Y)=Cov(Y,X)
    1. 任意随机变量 X X X 与常数 a a a 的协方差为零,即 Cov ⁡ ( X , a ) = 0 \operatorname{Cov}(X, a)=0 Cov(X,a)=0
    1. 对任意常数 a , b a, b a,b, 有 Cov ⁡ ( a X , b Y ) = a b Cov ⁡ ( X , Y ) \operatorname{Cov}(a X, b Y)=a b \operatorname{Cov}(X, Y) Cov(aX,bY)=abCov(X,Y)
    1. X , Y , Z X, Y, Z X,Y,Z 是任意三个随机变量,则 Cov ⁡ ( X + Y , Z ) = Cov ⁡ ( X , Z ) + Cov ⁡ ( Y , Z ) \operatorname{Cov}(X+Y, Z)=\operatorname{Cov}(X, Z)+\operatorname{Cov}(Y, Z) Cov(X+Y,Z)=Cov(X,Z)+Cov(Y,Z)

🔥例题:设随机变量 ( X , Y ) (X, Y) (X,Y)既有概率密度
f ( x , y ) = { 1 8 ( x + y ) , 0 ≤ x ≤ 2 , 0 ≤ y ≤ 2 0 , 其 它 f(x, y)= \left \{ \begin{aligned} &\frac{1}{8}(x+y) , &0 \le x \le 2, 0 \le y \le 2\\ &0, &其它 \end{aligned} \right. f(x,y)=81(x+y),0,0x2,0y2
E ( X ) , E ( Y ) , E ( X Y ) , C o v ( X , Y ) , D ( X + Y ) E(X), E(Y), E(XY), Cov(X, Y), D(X+Y) E(X),E(Y),E(XY),Cov(X,Y),D(X+Y)

✨解:
E ( X ) = ∫ − ∞ ∞ ∫ − ∞ ∞ x f ( x , y ) d x d y E ( Y ) = ∫ − ∞ ∞ ∫ − ∞ ∞ y f ( x , y ) d x d y E ( X Y ) = ∫ − ∞ ∞ ∫ − ∞ ∞ x y f ( x , y ) d x d y C o v ( X , Y ) = E ( X Y ) − E ( X ) E ( Y ) D ( X + Y ) = D ( X ) + D ( Y ) + 2 C o v ( X , Y ) = E ( X 2 ) − [ E ( X ) ] 2 + E ( Y 2 ) − [ E ( Y ) ] 2 + 2 C o v ( X , Y ) \begin{aligned} &E(X) = \int_{-\infty}^{\infty}\int_{-\infty}^{\infty}xf(x, y)dxdy \\ &E(Y) = \int_{-\infty}^{\infty}\int_{-\infty}^{\infty}yf(x, y)dxdy \\ &E(XY) = \int_{-\infty}^{\infty}\int_{-\infty}^{\infty}xyf(x, y)dxdy \\ &Cov(X, Y) = E(XY) - E(X)E(Y) \\ &D(X+Y) = D(X) + D(Y) + 2Cov(X, Y) = E(X^{2}) - [E(X)]^{2} + E(Y^{2}) - [E(Y)]^{2} + 2Cov(X, Y) \end{aligned} E(X)=xf(x,y)dxdyE(Y)=yf(x,y)dxdyE(XY)=xyf(x,y)dxdyCov(X,Y)=E(XY)E(X)E(Y)D(X+Y)=D(X)+D(Y)+2Cov(X,Y)=E(X2)[E(X)]2+E(Y2)[E(Y)]2+2Cov(X,Y)

python代码(求解例题)

from sympy import *
from sympy.abc import x, y 
f = (1 / 8) * (x + y)
fxy = Piecewise((f, And(x >= 0, x <= 2, y >= 0, y <= 2)), (0, True))
Ex = integrate(x * fxy, (x, -oo, oo), (y, -oo, oo))
print("E(X) = {}".format(Ex))
Ey = integrate(y * fxy, (x, -oo, oo), (y, -oo, oo))
print("E(Y) = {}".format(Ey))
Exy = integrate(x * y * fxy, (x, -oo, oo), (y, -oo, oo))
print("E(XY) = {}".format(Exy))
cov_xy = Exy - Ex * Ey 
print("Cov(X, Y) = {}".format(cov_xy))
Ex_2 = integrate(x ** 2 * fxy, (x, -oo, oo), (y, -oo, oo))
Ey_2 = integrate(y ** 2 * fxy, (x, -oo, oo), (y, -oo, oo))
Dx_y = Ex_2 - (Ex ** 2) + Ey_2 - (Ey ** 2) + 2 * cov_xy
print("D(X + Y) = {}".format(Dx_y))
E(X) = 1.16666666666667
E(Y) = 1.16666666666667
E(XY) = 1.33333333333333
Cov(X, Y) = -0.0277777777777775
D(X + Y) = 0.555555555555557

  协方差矩阵:设 n n n 维随机向量为 X = ( X 1 , X 2 , ⋯   , X n ) ′ \boldsymbol{X}=\left(X_{1}, X_{2}, \cdots, X_{n}\right)^{\prime} X=(X1,X2,,Xn)的期望向量为:
E ( X ) = ( E ( X 1 ) , E ( X 2 ) , ⋯   , E ( X n ) ) T E(\boldsymbol{X})=\left(E\left(X_{1}\right), E\left(X_{2}\right), \cdots, E\left(X_{n}\right)\right)^{T} E(X)=(E(X1),E(X2),,E(Xn))T

E [ ( X − E ( X ) ) ( X − E ( X ) ) T ] = ( Var ⁡ ( X 1 ) Cov ⁡ ( X 1 , X 2 ) ⋯ Cov ⁡ ( X 1 , X n ) Cov ⁡ ( X 2 , X 1 ) Var ⁡ ( X 2 ) ⋯ Cov ⁡ ( X 2 , X n ) ⋮ ⋮ ⋮ Cov ⁡ ( X n , X 1 ) Cov ⁡ ( X n , X 2 ) ⋯ Var ⁡ ( X n ) ) \begin{aligned} & E\left[(\boldsymbol{X}-E(\boldsymbol{X}))(\boldsymbol{X}-E(\boldsymbol{X}))^{T}\right] \\ =&\left(\begin{array}{cccc} \operatorname{Var}\left(X_{1}\right) & \operatorname{Cov}\left(X_{1}, X_{2}\right) & \cdots & \operatorname{Cov}\left(X_{1}, X_{n}\right) \\ \operatorname{Cov}\left(X_{2}, X_{1}\right) & \operatorname{Var}\left(X_{2}\right) & \cdots & \operatorname{Cov}\left(X_{2}, X_{n}\right) \\ \vdots & \vdots & & \vdots \\ \operatorname{Cov}\left(X_{n}, X_{1}\right) & \operatorname{Cov}\left(X_{n}, X_{2}\right) & \cdots & \operatorname{Var}\left(X_{n}\right) \end{array}\right) \end{aligned} =E[(XE(X))(XE(X))T]Var(X1)Cov(X2,X1)Cov(Xn,X1)Cov(X1,X2)Var(X2)Cov(Xn,X2)Cov(X1,Xn)Cov(X2,Xn)Var(Xn)
称为该随机向量的方差-协方差矩阵,简称协方差阵,记为 Cov ⁡ ( X ) \operatorname{Cov}(\boldsymbol{X}) Cov(X)

🦊注: n n n 维随机向量的协方差矩阵 Cov ⁡ ( X ) = ( Cov ⁡ ( X i , X j ) ) n × n \operatorname{Cov}(\boldsymbol{X})=\left(\operatorname{Cov}\left(X_{i}, X_{j}\right)\right)_{n \times n} Cov(X)=(Cov(Xi,Xj))n×n 是一个对称的非负定矩阵

python代码(求上一例题的协方差矩阵)

from sympy import *
from sympy.abc import x, y 
f = (1 / 8) * (x + y)
fxy = Piecewise((f, And(x >= 0, x <= 2, y >= 0, y <= 2)), (0, True))
Ex = integrate(x * fxy, (x, -oo, oo), (y, -oo, oo))
Ey = integrate(y * fxy, (x, -oo, oo), (y, -oo, oo))
Exy = integrate(x * y * fxy, (x, -oo, oo), (y, -oo, oo))

cov_xy = Exy - Ex * Ey 
var_x = Ex_2 - (Ex ** 2)
var_y = Ey_2 - (Ey ** 2)
Matrix([[var_x, cov_xy], [cov_xy, var_y]])

[ 0.305555555555556 − 0.0277777777777775 − 0.0277777777777775 0.305555555555556 ] \displaystyle \left[\begin{matrix}0.305555555555556 & -0.0277777777777775\\-0.0277777777777775 & 0.305555555555556\end{matrix}\right] [0.3055555555555560.02777777777777750.02777777777777750.305555555555556]

  • 相关系数与相关系数矩阵
      相关系数:设 ( X , Y ) (X, Y) (X,Y) 是一个二维随机变量, 且 Var ⁡ ( X ) = σ X 2 > 0 , Var ⁡ ( Y ) = σ Y 2 > 0 \operatorname{Var}(X)=\sigma_{X}^{2}>0, \operatorname{Var}(Y)=\sigma_{Y}^{2}>0 Var(X)=σX2>0,Var(Y)=σY2>0.则称
    Corr ⁡ ( X , Y ) = Cov ⁡ ( X , Y ) Var ⁡ ( X ) Var ⁡ ( Y ) = Cov ⁡ ( X , Y ) σ X σ Y \operatorname{Corr}(X, Y)=\frac{\operatorname{Cov}(X, Y)}{\sqrt{\operatorname{Var}(X)} \sqrt{\operatorname{Var}(Y)}}=\frac{\operatorname{Cov}(X, Y)}{\sigma_{X} \sigma_{Y}} Corr(X,Y)=Var(X) Var(Y) Cov(X,Y)=σXσYCov(X,Y)
    X X X Y Y Y(线性) 相关系数,记为 ρ x y 或 C o r r ( X , Y ) \rho_{xy}或Corr(X, Y) ρxyCorr(X,Y)

相关系数 ρ x , y \rho_{x, y} ρx,y的性质:

    1. − 1 ⩽ Corr ⁡ ( X , Y ) ⩽ 1 -1 \leqslant \operatorname{Corr}(X, Y) \leqslant 1 1Corr(X,Y)1, 或 ∣ Corr ⁡ ( X , Y ) ∣ ⩽ 1 |\operatorname{Corr}(X, Y)| \leqslant 1 Corr(X,Y)1
    1. Corr ⁡ ( X , Y ) = ± 1 \operatorname{Corr}(X, Y)=\pm 1 Corr(X,Y)=±1 的充要条件是 X X X Y Y Y 间几乎处处有线性关系, 即存 在 a ( ≠ 0 ) a(\neq 0) a(=0) b b b, 使得 P ( Y = a X + b ) = 1 P(Y=a X+b)=1 P(Y=aX+b)=1
    1. 相关系数 Corr ⁡ ( X , Y ) \operatorname{Corr}(X, Y) Corr(X,Y) 刻画了 X X X Y Y Y 之间的线性关系强弱, 因此也常称其为 “线性相关系数”。
    1. Corr ⁡ ( X , Y ) = 0 \operatorname{Corr}(X, Y)=0 Corr(X,Y)=0, 则称 X X X Y Y Y 不相关。不相关是指 X X X Y Y Y 之间没有线性关系, 但 X X X Y Y Y 之间可能有其他的函数关系, 譬如平方关系、对数关系等。
    1. Corr ⁡ ( X , Y ) = 1 \operatorname{Corr}(X, Y)=1 Corr(X,Y)=1, 则称 X X X Y Y Y 完全正相关; 若 Corr ⁡ ( X , Y ) = − 1 \operatorname{Corr}(X, Y)=-1 Corr(X,Y)=1, 则称 X X X Y Y Y 完全负相关。
    1. 0 < ∣ Corr ⁡ ( X , Y ) ∣ < 1 0<|\operatorname{Corr}(X, Y)|<1 0<Corr(X,Y)<1, 则称 X X X Y Y Y 有 “一定程度” 的线性关系。 ∣ Corr ⁡ ( X , Y ) ∣ |\operatorname{Corr}(X, Y)| Corr(X,Y) 越接近于 1, 则线性相关程度越高; ∣ Corr ⁡ ( X , Y ) ∣ |\operatorname{Corr}(X, Y)| Corr(X,Y) 越接近于 0 , 则线性相关程度越低。 而协方差看不出这一点, 若协方差很小, 而其两个标准差 σ X \sigma_{X} σX σ Y \sigma_{Y} σY 也很小, 则其比值就不一定很小。

  相关系数矩阵:类似于协方差矩阵,相关系数矩阵就是把协方差矩阵中每个元素替换成相关系数,具体来说就是:
Corr ⁡ ( X , Y ) = Cov ⁡ ( X , Y ) Var ⁡ ( X ) Var ⁡ ( Y ) = Cov ⁡ ( X , Y ) σ X σ Y = ( 1 Corr ⁡ ( X 1 , X 2 ) ⋯ Corr ⁡ ( X 1 , X n ) Corr ⁡ ( X 2 , X 1 ) 1 ⋯ Corr ⁡ ( X 2 , X n ) ⋮ ⋮ ⋮ Corr ⁡ ( X n , X 1 ) Corr ⁡ ( X n , X 2 ) ⋯ 1 ) \begin{aligned} & \operatorname{Corr}(X, Y)=\frac{\operatorname{Cov}(X, Y)}{\sqrt{\operatorname{Var}(X)} \sqrt{\operatorname{Var}(Y)}}=\frac{\operatorname{Cov}(X, Y)}{\sigma_{X} \sigma_{Y}} \\ =&\left(\begin{array}{cccc} 1 & \operatorname{Corr}\left(X_{1}, X_{2}\right) & \cdots & \operatorname{Corr}\left(X_{1}, X_{n}\right) \\ \operatorname{Corr}\left(X_{2}, X_{1}\right) & 1 & \cdots & \operatorname{Corr}\left(X_{2}, X_{n}\right) \\ \vdots & \vdots & & \vdots \\ \operatorname{Corr}\left(X_{n}, X_{1}\right) & \operatorname{Corr}\left(X_{n}, X_{2}\right) & \cdots & 1 \end{array}\right) \end{aligned} =Corr(X,Y)=Var(X) Var(Y) Cov(X,Y)=σXσYCov(X,Y)1Corr(X2,X1)Corr(Xn,X1)Corr(X1,X2)1Corr(Xn,X2)Corr(X1,Xn)Corr(X2,Xn)1

python代码(求上一例题的相关系数矩阵)

from sympy import *
from sympy.abc import x, y 
f = (1 / 8) * (x + y)
fxy = Piecewise((f, And(x >= 0, x <= 2, y >= 0, y <= 2)), (0, True))
Ex = integrate(x * fxy, (x, -oo, oo), (y, -oo, oo))
Ey = integrate(y * fxy, (x, -oo, oo), (y, -oo, oo))
Exy = integrate(x * y * fxy, (x, -oo, oo), (y, -oo, oo))

cov_xy = Exy - Ex * Ey 
var_x = Ex_2 - (Ex ** 2)
var_y = Ey_2 - (Ey ** 2)
Matrix([[1, cov_xy/(var_x * var_y)], [cov_xy/(var_x * var_y), 1]])

[ 1 − 0.297520661157021 − 0.297520661157021 1 ] \displaystyle \left[\begin{matrix}1 & -0.297520661157021\\-0.297520661157021 & 1\end{matrix}\right] [10.2975206611570210.2975206611570211]

1.7 随机变量序列的收敛状态:依概率收敛、依分布收敛

  • 依概率收敛:设 { X n } \left\{X_{n}\right\} {Xn} 为一随机变量序列, X X X 为一随机变量, 如果对任意的 ε > 0 \varepsilon>0 ε>0, 有
    P ( ∣ X n − X ∣ ⩾ ε ) → 0 ( n → ∞ ) P\left(\left|X_{n}-X\right| \geqslant \varepsilon\right) \rightarrow 0(n \rightarrow \infty) P(XnXε)0(n)
    则称序列 { X n } \left\{X_{n}\right\} {Xn} 依概率收敛于 X X X, 记作 X n ⟶ P X X_{n} \stackrel{P}{\longrightarrow} X XnPX

依概率收玫的含义是: X n X_{n} Xn X X X 的绝对偏差不小于任一给定量的可能性将随着 n n n增大而愈来愈小。或者说, 绝对偏差 ∣ X n − X ∣ \left|X_{n}-X\right| XnX 小于任一给定量的可能性将随着 n n n 增大而愈来愈接近于 1 , 即 P ( ∣ X n − X ∣ ⩾ ε ) → 0 ( n → ∞ ) P\left(\left|X_{n}-X\right| \geqslant \varepsilon\right) \rightarrow 0(n \rightarrow \infty) P(XnXε)0(n)等价于
P ( ∣ X n − X ∣ < ε ) → 1 ( n → ∞ ) P\left(\left|X_{n}-X\right|<\varepsilon\right) \rightarrow 1 \quad(n \rightarrow \infty) P(XnX<ε)1(n)
特别当 X X X 为退化分布时, 即 P ( X = c ) = 1 P(X=c)=1 P(X=c)=1(像概率p就是一个案例,频率不断趋近于一个常数p,这个p就是概率), 则称序列 { X n } \left\{X_{n}\right\} {Xn} 依概率收敛于 c c c, 即 X n ⟶ P c X_{n} \stackrel{P}{\longrightarrow} c XnPc

依概率收敛性质:设 X n ⟶ P a , Y n ⟶ P b X_{n} \stackrel{P}{\longrightarrow}a, Y_{n} \stackrel{P}{\longrightarrow}{b} XnPa,YnPb,又设函数 g ( x , y ) g(x, y) g(x,y)在点 ( a , b ) (a, b) (a,b)连续,则 g ( X n , Y n ) ⟶ P g ( a , b ) g(X_{n}, Y_{n}) \stackrel{P}{\longrightarrow} g(a, b) g(Xn,Yn)Pg(a,b)

  • 依分布收敛:设随机变量 X , X 1 , X 2 , ⋯ X, X_{1}, X_{2}, \cdots X,X1,X2, 的分布函数分别为 F ( x ) , F 1 ( x ) , F 2 ( x ) , ⋯ F(x), F_{1}(x), F_{2}(x), \cdots F(x),F1(x),F2(x),。 若对 F ( x ) F(x) F(x) 的任一连续点 x x x, 都有
    lim ⁡ n → ∞ F n ( x ) = F ( x ) \lim _{n \rightarrow \infty} F_{n}(x)=F(x) nlimFn(x)=F(x)
    则称 { F n ( x ) } \left\{F_{n}(x)\right\} {Fn(x)} 弱收敛 F ( x ) F(x) F(x), 记作
    F n ( x ) ⟶ W F ( x ) F_{n}(x) \stackrel{W}{\longrightarrow} F(x) Fn(x)WF(x)
    也称相应的随机变量序列 { X n } \left\{X_{n}\right\} {Xn} 按分布收敛于 X X X, 记作
    X n ⟶ L X X_{n} \stackrel{L}{\longrightarrow} X XnLX

注:依概率收敛可推出依分布收敛,反之不成立。

1.8 大数定律

大数定律是叙述随机变量序列的前一些项的算数平均值在某种条件下收敛到这些项的均值的算数平均值。

  (弱大数)辛钦大数定理:设 X 1 , X 2 , ⋯ X_{1}, X_{2}, \cdots X1,X2,是相互独立,服从同一分布的随机变量序列,且 X i , i = 1 , 2 , ⋯ X_{i}, i = 1, 2, \cdots Xi,i=1,2,的数学期望存在,作前 n n n个变量的算数平均 X ‾ = 1 n ∑ k = 1 n X k \overline{X} = \frac{1}{n} \sum_{k =1}^{n} X_{k} X=n1k=1nXk, 则对于任意的 ε > 0 \varepsilon > 0 ε>0,有
lim ⁡ n → ∞ P { ∣ 1 n ∑ k = 1 n X k − 1 n ∑ k = 1 n E ( X k ) ∣ < ε } = lim ⁡ n → ∞ P { ∣ X ‾ − E ( X ) ‾ ∣ < ε } = 1 \lim_{n \rightarrow \infty} P\{\left| \frac{1}{n} \sum_{k =1}^{n} X_{k} - \frac{1}{n} \sum_{k =1}^{n} E(X_{k}) \right| < \varepsilon\} = \lim_{n \rightarrow \infty} P\{\left| \overline{X} - \overline{E(X)}\right| < \varepsilon\}=1 nlimP{n1k=1nXkn1k=1nE(Xk)<ε}=nlimP{XE(X)<ε}=1
X ‾ ⟶ P E ( X ) ‾ \overline{X} \stackrel{P} \longrightarrow \overline{E(X)} XPE(X),若随机变量序列具有数学期望 E ( X k ) = μ ( k = 1 , 2 , ⋯   ) E(X_{k}) = \mu (k = 1, 2, \cdots) E(Xk)=μ(k=1,2,),则上式变为
lim ⁡ n → ∞ P { ∣ 1 n ∑ k = 1 n X k − μ ∣ < ε } = lim ⁡ n → ∞ P { ∣ X ‾ − μ ∣ < ε } = 1 \lim_{n \rightarrow \infty} P\{\left| \frac{1}{n} \sum_{k =1}^{n} X_{k} - \mu \right| < \varepsilon\} = \lim_{n \rightarrow \infty} P\{\left| \overline{X} - \mu \right| < \varepsilon\} = 1 nlimP{n1k=1nXkμ<ε}=nlimP{Xμ<ε}=1
X ‾ ⟶ P μ \overline{X} \stackrel{P} \longrightarrow \mu XPμ

  伯努利大数定理:设 f A f_{A} fA n n n次独立重复实验中事件 A A A发生的次数, p p p是事件 A A A在每次试验中发生的概率,则对于任意正数 ε > 0 \varepsilon > 0 ε>0,有
lim ⁡ n → ∞ P { ∣ f A n − p ∣ < ε } = 1 \lim_{n \rightarrow \infty} P\{\left| \frac{f_{A}}{n} - p \right | < \varepsilon \} = 1 nlimP{nfAp<ε}=1

lim ⁡ n → ∞ P { ∣ f A n − p ∣ ≥ ε } = 0 \lim_{n \rightarrow \infty} P\{\left| \frac{f_{A}}{n} - p \right | \ge \varepsilon \} = 0 nlimP{nfApε}=0
f A n ⟶ P p \frac{f_{A}}{n} \stackrel{P}{\longrightarrow} p nfAPp

💡大数定理的条件:独立重复事件、重复次数足够多。

🔥例:使用蒙特卡洛模拟法求定积分

0 ⩽ f ( x ) ⩽ 1 0 \leqslant f(x) \leqslant 1 0f(x)1, 求 f ( x ) f(x) f(x) 在 区间 [ 0 , 1 ] [0,1] [0,1] 上的积分值
J = ∫ 0 1 f ( x ) d x J=\int_{0}^{1} f(x) \mathrm{d} x J=01f(x)dx
🦊解:在正方形 { 0 ⩽ x ⩽ 1 , 0 ⩽ y ⩽ 1 } \{0 \leqslant x \leqslant 1,0 \leqslant y \leqslant 1\} {0x1,0y1}内均匀地投点 ( x i , y i ) (x_i,y_i) (xi,yi),投n个点,点越多越好。如果某个点 y i ≤ f ( x i ) y_i \le f(x_i) yif(xi),则认为事件发生,我们计算满足 y i ≤ f ( x i ) y_i \le f(x_i) yif(xi)点的个数 S n S_n Sn,使用大数定律:频率稳定于概率,即: S n n \frac{S_n}{n} nSn就是积分值。

python代码(求解例题)

from scipy import integrate
from scipy.stats import uniform
import numpy as np
import matplotlib.pyplot as plt 
from random import choice

# 蒙特卡洛原理:将待积分函数看作是某个概率密度分布函数,根据分布函数的定义,那么对函数的积分就转化为求概率的过程。
x_arr = np.linspace(0, 1, 1000)
y_arr = x_arr ** 3

x_n = uniform.rvs(size=100)   
y_n = uniform.rvs(size=100)
plt.figure(figsize=(12, 6))
plt.stackplot(x_arr, y_arr, alpha=0.5, color='skyblue')
plt.scatter(x_n, y_n)
plt.text(1.0, 1.0, r'$y = x^3$')
plt.show()

class Montecarlo():
    def __init__(self, n):
        self.n = n    # 模拟的次数
        self.fn = 0 
    def solve(self, x, y, f):
        for i in range(self.n):
            a = choice(x)
            b = choice(y)
            if f(a) >= b:
                self.fn += 1
            else:
                continue
        res = self.fn / self.n
        print("蒙特卡洛方法(模拟{}次)计算的结果为:{}".format(self.n, res))

# 求解y = x^3 在区间[0, 1]上的积分值
x_1 = np.linspace(0, 1, 1000)
y_1 = np.linspace(0, 1, 1000)
def f(x):
    return x ** 3
int_f = integrate.quad(f, 0, 1)
print("函数y = x^3 的积分值为:{}".format(int_f[0]))
monte_10 = Montecarlo(10)
monte_10.solve(x_1, y_1, f)
monte_100 = Montecarlo(100)
monte_100.solve(x_1, y_1, f)
monte_1000 = Montecarlo(1000)
monte_1000.solve(x_1, y_1, f)
monte_10000 = Montecarlo(10000)
monte_10000.solve(x_1, y_1, f)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NoqgnEA2-1655717789573)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_94_0.png)]

函数y = x^3 的积分值为:0.25
蒙特卡洛方法(模拟10次)计算的结果为:0.2
蒙特卡洛方法(模拟100次)计算的结果为:0.25
蒙特卡洛方法(模拟1000次)计算的结果为:0.247
蒙特卡洛方法(模拟10000次)计算的结果为:0.2521

1.9 中心极限定理

中心极限定理确定在什么条件下,大量随机变量之和的分布逼近于正态分布。

  独立同分布的中心极限定理:设随机变量 X 1 , X 2 , ⋯   , X n , ⋯ X_{1}, X_{2}, \cdots, X_{n}, \cdots X1,X2,,Xn,相互独立,服从同一分布,且具有数学期望和方差: E ( X k ) = μ , D ( X k ) = σ 2 ( k = 1 , 2 , ⋯   ) E(X_{k}) = \mu, D(X_{k}) = \sigma ^{2} (k = 1, 2, \cdots) E(Xk)=μ,D(Xk)=σ2(k=1,2,),则随机变量之和 ∑ k = 1 n X k \sum_{k=1}^{n}X_{k} k=1nXk的标准化变量
Y n = ∑ k = 1 n X k − E ( ∑ k = 1 n X k ) D ( ∑ k = 1 n X k ) = ∑ k = 1 n X k − n μ n σ Y_{n} = \frac{\sum_{k=1}^{n}X_{k} - E(\sum_{k=1}^{n}X_{k})}{\sqrt{D(\sum_{k=1}^{n}X_{k})}} = \frac{\sum_{k=1}^{n}X_{k} - n\mu}{\sqrt{n}\sigma} Yn=D(k=1nXk) k=1nXkE(k=1nXk)=n σk=1nXknμ
的分布函数 F n ( x ) F_{n}(x) Fn(x)对于任意 x x x满足
lim ⁡ n → ∞ F n ( X ) = lim ⁡ n → ∞ P { ∑ k = 1 n X k − n μ n σ ≤ x } = ∫ − ∞ x 1 2 π e − t 2 / 2 d t = Φ ( x ) \begin{aligned} \lim_{n \rightarrow \infty}F_{n}(X) &= \lim_{n \rightarrow \infty}P\left \{ \frac{\sum_{k=1}^{n}X_{k} - n\mu}{\sqrt{n}\sigma} \le x \right \} \\ &= \int_{-\infty}^{x} \frac{1}{\sqrt{2 \pi}} e^{- t^{2}/ 2}dt \\ &= \Phi (x) \end{aligned} nlimFn(X)=nlimP{n σk=1nXknμx}=x2π 1et2/2dt=Φ(x)
Y n ∼ N ( n μ , σ 2 ) Y_{n} \sim N(n\mu, \sigma^{2}) YnN(nμ,σ2) X ‾ ∼ N ( μ , σ 2 / n ) \overline{X} \sim N(\mu, \sigma^{2}/n) XN(μ,σ2/n) X ‾ − μ σ / n ∼ N ( 0 , 1 ) \frac{\overline{X} - \mu}{\sigma / \sqrt{n}} \sim N(0, 1) σ/n XμN(0,1)

python代码(验证独立同分布的中心极限定理)

from sympy import * 
from scipy.stats import norm       # 正态分布
from scipy.stats import expon      # 指数分布
from scipy.stats import uniform     # 均匀分布
from scipy.stats import poisson     # 泊松分布
import scipy.stats as ss           # 0-1 分布(前文有重名的变量名,不便直接引入)  from scipy.stats import bernoulli
import matplotlib.pyplot as plt
import numpy as np
import random
# 1. n个服从正态分布随机变量的和 的分布

def norm_sum(mu, sigma, n, x_size):
    X = 0
    for i in range(n):
        x_i = norm(loc=mu[i], scale=sigma[i]).rvs(size=x_size)
        X += x_i
    plt.figure(figsize=(10, 8))    
    plt.hist(X, density=True, histtype='stepfilled', alpha=0.2)
    plt.title("Random variable number n={}".format(str(n)))
    plt.xlabel("x")
    plt.ylabel("p(x)")
    plt.show()

x_size = 10000
mu = np.zeros(x_size)
sigma = np.random.randint(0, 10, x_size)
norm_sum(mu, sigma, 10, x_size)
norm_sum(mu, sigma, 100, x_size)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uqtc080v-1655717789573)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_100_0.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FSQPcdqY-1655717789574)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_100_1.png)]

# 2. n个服从均匀分布随机变量的和 的分布

def variable_sum(n, x_size, distribution):
    X = 0
    for i in range(n):
        x_i = distribution.rvs(x_size)
        X += x_i
    plt.figure(figsize=(10, 8))    
    plt.hist(X, density=True, histtype='stepfilled', alpha=0.2)
    plt.title("Random variable number n={}".format(str(n)))
    plt.xlabel("x")
    plt.ylabel("p(x)")
    plt.show()

x_size = 10000
loc = np.zeros(x_size)
scale = 5
distribution = uniform(loc=loc, scale=scale)
variable_sum(n=10, x_size=x_size, distribution=distribution)
variable_sum(n=100, x_size=x_size, distribution=distribution)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-efyjs508-1655717789574)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_101_0.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qXepPDv9-1655717789574)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_101_1.png)]

# 3. n个服从指数分布随机变量的和 的分布

x_size = 10000
lam = 5
distribution = expon(scale=1/lam)
variable_sum(n=10, x_size=x_size, distribution=distribution)
variable_sum(n=100, x_size=x_size, distribution=distribution)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gYzOgaQz-1655717789575)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_102_0.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vAO8guFq-1655717789576)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_102_1.png)]

# 4. n个服从泊松分布随机变量的和 的分布

x_size = 10000
mu = 5
distribution = poisson(mu=mu)
variable_sum(n=10, x_size=x_size, distribution=distribution)
variable_sum(n=100, x_size=x_size, distribution=distribution)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2eKSHN8J-1655717789576)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_103_0.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vzZQ4mqp-1655717789577)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_103_1.png)]

# 5. n个服从(0- 1)分布随机变量的和 的分布

def bernoulli_sum(n, x_size, p):
    X = 0
    for i in range(n):
        x_i = ss.bernoulli.rvs(p, size=x_size)
        X += x_i
    plt.figure(figsize=(10, 8))    
    plt.hist(X, density=True, histtype='stepfilled', alpha=0.2)
    plt.title("Random variable number n={}".format(str(n)))
    plt.xlabel("x")
    plt.ylabel("p(x)")
    plt.show()

x_size = 10000
p = 0.4
bernoulli_sum(n=10, x_size=x_size, p=p)
bernoulli_sum(n=100, x_size=x_size, p=p)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WVr0aq1H-1655717789577)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_104_0.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zZNTomna-1655717789577)(%E6%A6%82%E7%8E%87%E8%AE%BA_files/%E6%A6%82%E7%8E%87%E8%AE%BA_104_1.png)]

1.10 数学建模案例分析:投资组合分析

  • 📕任务:GitModel公司是一家专业的投资银行,志在帮助客户更好地管理资产。客户手头上有一笔100万的资金,希望将这笔钱投入股票市场进行投资理财,投资人看中了两个股票 A A A B B B,股票分析师通过对股票 A A A B B B的历史数据分析发现:股票 A A A的平均收益率近似服从 N ( 0.1 , 0.01 ) N(0.1,0.01) N(0.1,0.01),股票B的平均收益率近似服从 N ( 0.3 , 0.04 ) N(0.3,0.04) N(0.3,0.04)。现在客户希望通过分析得出投资股票 A A A B B B的最佳组合(在预期收益率确定情况下最小风险时,需要投资 A A A B B B的份额)。

  • 🦊解:由题意知:
    股票 A , B A, B A,B的收益 X , Y X, Y X,Y服从如下分布
    X ∼ N ( 0.1 , 0.01 ) , Y ∼ N ( 0.3 , 0.04 ) X \sim N(0.1, 0.01), Y \sim N(0.3, 0.04) XN(0.1,0.01),YN(0.3,0.04)
    设投资股票 A A A的份额为 p p p, 则投资股票 B B B的份额为 ( 1 − p ) (1-p) (1p),其中 ( 0 ≤ p ≤ 1 ) (0 \le p \le 1) (0p1),总收益为 Z Z Z,则
    Z = p X + ( 1 − p ) Y Z = pX + (1-p)Y Z=pX+(1p)Y
    均值体现股票的平均收益率高低,方差体现股票的风险大小。则平均收益率为
    E ( Z ) = E ( p X + ( 1 − p ) Y ) = p E ( X ) + ( 1 − p ) E ( Y ) E(Z) = E(pX + (1-p)Y) = pE(X) + (1-p)E(Y) E(Z)=E(pX+(1p)Y)=pE(X)+(1p)E(Y)
    风险大小(目标函数)为
    D ( Z ) = D ( p X + ( 1 − p ) Y ) = D ( p X ) + D ( ( 1 − p ) Y ) + 2 C o v ( p X , ( 1 − p ) Y ) = p 2 D ( X ) + ( 1 − p ) 2 D ( Y ) + 2 p ( 1 − p ) C o v ( X , Y ) \begin{aligned} D(Z) &= D(pX + (1-p)Y) \\ &=D(pX) + D((1-p)Y) + 2Cov(pX, (1-p)Y) \\ &= p^{2}D(X) + (1-p)^{2}D(Y) + 2p(1-p)Cov(X, Y) \end{aligned} D(Z)=D(pX+(1p)Y)=D(pX)+D((1p)Y)+2Cov(pX,(1p)Y)=p2D(X)+(1p)2D(Y)+2p(1p)Cov(X,Y)
    由题意知,需要找到一个合适的 p ∗ p* p,使得风险 D ( Z ) D(Z) D(Z)最小
    v e n t u r e = a r g m i n p ∗ [ D ( Z ) ] = a r g m i n p ∗ [ p 2 D ( X ) + ( 1 − p ) 2 D ( Y ) + 2 p ( 1 − p ) C o v ( X , Y ) ] venture = \underset{p^{*}}{argmin}\left[D(Z) \right ] = \underset{p^{*}}{argmin}\left [p^{2}D(X) + (1-p)^{2}D(Y) + 2p(1-p)Cov(X, Y) \right ] venture=pargmin[D(Z)]=pargmin[p2D(X)+(1p)2D(Y)+2p(1p)Cov(X,Y)]

python代码(求解上题)

from sympy import *
from scipy.stats import norm 
from sympy.abc import p

X = norm(loc=0.1, scale=0.1)
Y = norm(loc=0.3, scale=0.2)
Dx, Dy = X.var(), Y.var()

def compute_risk(Dx, Dy, rho):
    # print("当相关系数rho={:.1f}时:".format(rho))
    Cov_xy = rho * sqrt(Dx) * sqrt(Dy)
    # 目标函数
    venture = p ** 2 * Dx + (1-p) ** 2 * Dy + 2 * p * (1-p) * Cov_xy
    # 求驻点
    venture_dp = diff(venture, p)
    p0 = solve(venture_dp)
    # print("\t驻点p0={:.2f}".format(p0[0]))
    # 判断在该点是否取得极小值
    venture_dp_2 = diff(venture_dp, p)
    temp = venture_dp_2.evalf(subs={p:p0[0]})
    if temp < 0:
        print("\t该点不是函数的极小值点。")      
    venture_min = venture.evalf(subs={p:p0[0]})
    # print("\t风险系数波动(方差)为:{:.4f}".format(venture_min))
    # print("\t此时投资股票A的份额应为:10w * {}, 投资股票B的份额应为:10w *{}".format(p0[0], 1-p0[0]))
    return p0[0], venture_min

rhos = [-1.0, -0.9, -0.8, -0.7, -0.6, -0.5, -0.4, -0.3, -0.2, -0.1, 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]
ps = []
ventures = []
for rho in rhos:
    temp1, temp2 = compute_risk(Dx, Dy, rho)
    ps.append(temp1)
    ventures.append(temp2)

for idx, p in enumerate(ps):
    r = (idx - 10) * 0.1
    if (p > 1) or (p < 0):
        print("相关系数rho={:.2f}时,投资方案无实际意义。".format(r))
    else:
        print("当相关系数rho={:.2f}时:".format(r))
        print("\t风险系数波动(方差)为:{:.4f}".format(ventures[idx]))
        print("\t此时投资股票A的份额应为:10w * {}, 投资股票B的份额应为:10w *{}".format(p, 1-p))
当相关系数rho=-1.00时:
	风险系数波动(方差)为:0.0000
	此时投资股票A的份额应为:10w * 0.666666666666667, 投资股票B的份额应为:10w *0.333333333333333
当相关系数rho=-0.90时:
	风险系数波动(方差)为:0.0009
	此时投资股票A的份额应为:10w * 0.674418604651163, 投资股票B的份额应为:10w *0.325581395348837
当相关系数rho=-0.80时:
	风险系数波动(方差)为:0.0018
	此时投资股票A的份额应为:10w * 0.682926829268293, 投资股票B的份额应为:10w *0.317073170731707
当相关系数rho=-0.70时:
	风险系数波动(方差)为:0.0026
	此时投资股票A的份额应为:10w * 0.692307692307692, 投资股票B的份额应为:10w *0.307692307692308
当相关系数rho=-0.60时:
	风险系数波动(方差)为:0.0035
	此时投资股票A的份额应为:10w * 0.702702702702703, 投资股票B的份额应为:10w *0.297297297297297
当相关系数rho=-0.50时:
	风险系数波动(方差)为:0.0043
	此时投资股票A的份额应为:10w * 0.714285714285714, 投资股票B的份额应为:10w *0.285714285714286
当相关系数rho=-0.40时:
	风险系数波动(方差)为:0.0051
	此时投资股票A的份额应为:10w * 0.727272727272727, 投资股票B的份额应为:10w *0.272727272727273
当相关系数rho=-0.30时:
	风险系数波动(方差)为:0.0059
	此时投资股票A的份额应为:10w * 0.741935483870968, 投资股票B的份额应为:10w *0.258064516129032
当相关系数rho=-0.20时:
	风险系数波动(方差)为:0.0066
	此时投资股票A的份额应为:10w * 0.758620689655172, 投资股票B的份额应为:10w *0.241379310344828
当相关系数rho=-0.10时:
	风险系数波动(方差)为:0.0073
	此时投资股票A的份额应为:10w * 0.777777777777778, 投资股票B的份额应为:10w *0.222222222222222
当相关系数rho=0.00时:
	风险系数波动(方差)为:0.0080
	此时投资股票A的份额应为:10w * 0.800000000000000, 投资股票B的份额应为:10w *0.200000000000000
当相关系数rho=0.10时:
	风险系数波动(方差)为:0.0086
	此时投资股票A的份额应为:10w * 0.826086956521739, 投资股票B的份额应为:10w *0.173913043478261
当相关系数rho=0.20时:
	风险系数波动(方差)为:0.0091
	此时投资股票A的份额应为:10w * 0.857142857142857, 投资股票B的份额应为:10w *0.142857142857143
当相关系数rho=0.30时:
	风险系数波动(方差)为:0.0096
	此时投资股票A的份额应为:10w * 0.894736842105263, 投资股票B的份额应为:10w *0.105263157894737
当相关系数rho=0.40时:
	风险系数波动(方差)为:0.0099
	此时投资股票A的份额应为:10w * 0.941176470588235, 投资股票B的份额应为:10w *0.0588235294117647
当相关系数rho=0.50时:
	风险系数波动(方差)为:0.0100
	此时投资股票A的份额应为:10w * 1.00000000000000, 投资股票B的份额应为:10w *0
相关系数rho=0.60时,投资方案无实际意义。
相关系数rho=0.70时,投资方案无实际意义。
相关系数rho=0.80时,投资方案无实际意义。
相关系数rho=0.90时,投资方案无实际意义。
相关系数rho=1.00时,投资方案无实际意义。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值