概率论基础知识(一)概率论基本概念

概率论

0. 前言

本文主要旨在对概率论的基础概念与知识进行概要的总结,以便于使用到时可以参考。 概率论是数理统计的基础,也是很多机器学习模型的支撑,概率论在机器学习中占主要地位,因为概率论为机器学习算法的正确性提供了理论依据。

1. 概率论的基本概念

1.1 基本概念

随机实验(E)

(1)可以在相同的条件下重复地进行 (2)每次实验的可能结果不止一个,并且事先明确知道实验的所有可能结果 (3)每次试验将出现哪一个结果无法预知 例子:抛一枚硬币,观察正面,反面出现的情况

样本空间 (Ω)

随机试验所有可能的结果组成的集合

样本点

样本空间的元素,即每个可能的结果

随机事件

随机试验E的样本空间S的子集称为随机事件

基本事件

样本空间的单个元素,一个可能结果构成的集合

必然事件(全集)、不可能事件(空集)

事件的关系与事件的运算 (类似于集合运算)

包含关系、和(并)并事件、积(交)事件、差事件、互不相容(互斥)、逆事件(对立事件)

运算规律

1、交换律:

A

B

=

B

A

A∪B = B∪A

A∪B=B∪A

A

B

=

B

A

A ∩ B = B ∩ A

A∩B=B∩A 2、 结合律:

A

(

B

C

)

=

(

A

B

)

C

A∪ (B∪ C) = (A∪ B) ∪ C

A∪(B∪C)=(A∪B)∪C

A

(

B

C

)

=

(

A

B

)

C

A ∩ (B ∩ C)=(A ∩ B) ∩ C

A∩(B∩C)=(A∩B)∩C 3、分配律:

A

(

B

C

)

=

(

A

B

)

(

A

C

)

A∪ (B ∩ C) = (A∪ B) ∩ (A ∪ C)

A∪(B∩C)=(A∪B)∩(A∪C)

A

(

B

C

)

=

(

A

B

)

(

A

C

)

A ∩ (B∪C) = (A ∩ B) ∪ (A ∩ C)

A∩(B∪C)=(A∩B)∪(A∩C)

A

(

B

C

)

=

(

A

B

)

(

A

C

)

A ∩ (B - C) = (A ∩ B) - (A ∩ C)

A∩(B−C)=(A∩B)−(A∩C) 4、德摩根律(对偶律):

A

B

=

A

B

\overline{A ∪ B} = \overline{A} ∩ \overline{B}

A∪B=A∩B

A

B

=

A

B

\overline{A ∩ B} = \overline{A} ∪ \overline{B}

A∩B=A∪B 常用结论:

A

A

=

Φ

A\overline{A} = Φ

AA=Φ;

A

A

=

Ω

A∪\overline{A} = Ω

A∪A=Ω;

A

B

=

A

+

B

A

B

=

(

A

B

)

+

(

B

A

)

+

A

B

A ∪ B = A+ B − AB = (A − B) + (B − A) + AB

A∪B=A+B−AB=(A−B)+(B−A)+AB

1.2 频率与概率

频率

定义:在相同条件下,进行n次试验,在这n次试验中,事件A发生的次数,称为事件A发生的频数,比值:f = 频数/试验次数,称为事件A发生的频率。 基本性质: (1)0 <= f <= 1 ; (2)f(Ω) = 1; (3)两两互不相融事件的可列可加性。 稳定性:当试验重复次数很大时,频率趋于稳定,可以用来表征事件A发生可能性的大小。

概率

定义: 设E是随机试验,样本空间为Ω,对于E的每一个事件A赋予一个实数,记为P(A),称为A的概率。 性质: (1)非负性 0 =< P(A) <= 1; (2)正则性 P(Ω) = 1; (3)可列可加性 若有互不相容的事件:

A

1

,

A

2

,

A

3

,

.

.

.

A_1, A_2, A_3, ...

A1​,A2​,A3​,...,

\quad\quad

P

(

A

j

)

=

P

(

A

j

)

P(∪A_j) = ∑ P(A_j)

P(∪Aj​)=∑P(Aj​)

1.3 等可能概型(古典概型)

设E是一个试验,满足:(1)只有有限多个样本点;(2)每个样本点发生的可能性相同(等可能性)。 典型例子:抛硬币 长期实践的发现:“概率很小的事件在一次试验中几乎是不发生”(称之为实际推理原理)

排列 排列:从n个不同元素中,任取m(m ≤ n,m与n均为自然数)个元素按照一定的顺序排成一列,称为从n个不同元素中取出m个元素的一个排列。 排列数:

A

n

m

=

n

(

n

1

)

(

n

2

)

(

n

m

+

1

)

=

n

!

(

n

m

)

!

A_n^m = n(n-1)(n-2)……(n-m+1) = {n!\over(n-m)!}

Anm​=n(n−1)(n−2)……(n−m+1)=(n−m)!n!​ 组合 组合:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合。 组合数:

C

n

m

=

A

(

n

,

m

)

m

!

C_n^m = {A(n,m) \over m!}

Cnm​=m!A(n,m)​ 公式:

C

n

m

=

C

n

n

m

C_n^m = C_n^{n-m}

Cnm​=Cnn−m​

C

n

m

+

C

n

m

1

=

C

n

+

1

m

C_n^m + C_n^{m-1} = C_{n+1}^m

Cnm​+Cnm−1​=Cn+1m​

C

n

0

+

C

n

1

+

.

.

.

+

C

n

n

=

2

n

=

(

1

+

1

)

n

C_n^0 + C_n^1 + ... + C_n^n = 2^n = (1 + 1)^n

Cn0​+Cn1​+...+Cnn​=2n=(1+1)n

例1: 袋子中有a个黑球,b个白球,先一只只地摸出来,求:第k次摸到黑球的概率(1<= k <= a+b) 解法1:(排列) 思路: 样本空间为a+b个球的全排列,有利场合为第k个球确定为黑球,有a种可能,然后剩下a+b-1个球随机排列。 样本空间:(a+b)! 有利场合:a×(a+b-1)! 故:

P

=

a

×

(

a

+

b

1

)

!

(

a

+

b

)

!

=

a

a

+

b

P = {a×(a+b-1)! \over (a+b)!} = {a \over a+b}

P=(a+b)!a×(a+b−1)!​=a+ba​ 解法2:(组合) 思路: 样本空间为从a+b个格子中选取a个放置黑球,其余一定放白球,故为

C

a

+

b

a

C^a_{a+b}

Ca+ba​;有利场合为第k个确定放置黑球,从剩下a+b-1个格子中选取a-1个格子放置剩下的黑球,其余放白球,故为

C

a

+

b

1

a

1

C^{a-1}_{a+b-1}

Ca+b−1a−1​。 样本空间:

C

a

+

b

a

C^a_{a+b}

Ca+ba​ 有利场合:

C

a

+

b

1

a

1

C^{a-1}_{a+b-1}

Ca+b−1a−1​ 故:

P

=

C

a

+

b

1

a

1

C

a

+

b

a

=

a

a

+

b

P = {C^{a-1}_{a+b-1} \over C^a_{a+b}} = {a \over a+b}

P=Ca+ba​Ca+b−1a−1​​=a+ba​ PS:这个例子就是抽签模型

例2: 设有n个球,每个都可以以同样的概率

1

n

1\over n

n1​落到N个格子的每一个格子中(N>=n),求: (1)某指定的n个格子中各有一个球的概率P(A); (2)任何n个格子中各有一个球的概率P(B); 解: 样本空间:

N

n

N^n

Nn

P

(

A

)

=

n

!

N

n

P(A) = {n! \over N^n}

P(A)=Nnn!​

P

(

A

)

=

C

N

n

  

  

n

!

N

n

=

N

!

N

n

  

  

(

N

n

)

!

P(A) = {C^n_N \; · \; n! \over N^n} = {N! \over N^n \; · \; (N-n)! }

P(A)=NnCNn​⋅n!​=Nn⋅(N−n)!N!​ PS:这个模型可用于计算具有相同生日的人的概率

1.4 条件概率

(1)条件概率: 设有两个事件A和B,

P

(

A

)

0

P(A)\neq0

P(A)̸​=0,在已知A发生的条件下B发生的概率记为:

P

(

B

A

)

=

P

(

A

B

)

P

(

A

)

P(B|A) = {P(AB) \over P(A)}

P(B∣A)=P(A)P(AB)​;满足概率的三个基本性质。 乘法公式:

P

(

A

B

)

=

P

(

A

)

P

(

B

A

)

P(AB) = P(A)P(B|A)

P(AB)=P(A)P(B∣A) (2)全概率公式: 设

B

1

,

.

.

.

,

B

i

,

.

.

.

,

B

n

B1, ... ,Bi, ... , Bn

B1,...,Bi,...,Bn是

Ω

\Omega

Ω的一个划分(完备事件组),

B

1

B

2

.

.

.

B

n

=

Ω

,

B

i

B

j

=

,

i

j

,

P

(

B

i

)

>

0

B_1 \bigcup B_2 \bigcup ... \bigcup B_n = \Omega, B_i \bigcap B_j = \emptyset, i \neq j, P(B_i) > 0

B1​⋃B2​⋃...⋃Bn​=Ω,Bi​⋂Bj​=∅,i̸​=j,P(Bi​)>0, 其中 i=1, 2, 3, …,得到: 全概率公式:

P

(

A

)

=

P

(

A

Ω

)

=

P

(

A

(

B

1

B

2

.

.

.

B

n

)

)

=

P

(

A

B

1

A

B

2

.

.

.

A

B

n

)

=

i

=

1

n

P

(

A

B

i

)

=

i

=

1

n

P

(

B

i

)

P

(

A

B

i

)

P(A) = P(A\Omega) = P(A\bigcap(B_1 \bigcup B_2 \bigcup ... \bigcup B_n)) = P(AB_1 \bigcup AB_2... \bigcup AB_n) = \sum_{i=1}^n {P(AB_i)} = \sum_{i=1}^n P(B_i)P(A|B_i)

P(A)=P(AΩ)=P(A⋂(B1​⋃B2​⋃...⋃Bn​))=P(AB1​⋃AB2​...⋃ABn​)=∑i=1n​P(ABi​)=∑i=1n​P(Bi​)P(A∣Bi​) PS:把一个要求的事件(

Ω

\Omega

Ω)分解成若干个互不相容的事件(

B

i

B_i

Bi​)。 (3)贝叶斯公式: 贝叶斯公式:

P

(

B

i

A

)

=

P

(

B

i

A

)

P

(

A

)

=

P

(

B

i

)

P

(

A

B

i

)

(

P

(

A

B

1

)

+

.

.

.

+

P

(

A

B

i

)

+

.

.

.

+

P

(

A

B

n

)

)

=

P

(

B

i

)

P

(

A

B

i

)

i

=

1

n

P

(

B

i

)

P

(

A

B

i

)

P(B_i|A) = {P(B_iA)\over P(A)} = {P(B_i)P(A|B_i) \over (P(A|B_1) + ... + P(A|B_i) + ...+ P(A|B_n))} = {P(B_i)P(A|B_i) \over \sum_{i=1}^n P(B_i)P(A|B_i)}

P(Bi​∣A)=P(A)P(Bi​A)​=(P(A∣B1​)+...+P(A∣Bi​)+...+P(A∣Bn​))P(Bi​)P(A∣Bi​)​=∑i=1n​P(Bi​)P(A∣Bi​)P(Bi​)P(A∣Bi​)​ 其中:

P

(

A

)

>

0

,

P

(

B

i

)

>

0

P(A) > 0, P(B_i) > 0

P(A)>0,P(Bi​)>0 PS:

P

(

B

i

)

P(B_i)

P(Bi​)是先验概率,在实际应用中是经验的总结、信息的归纳;

  

\;\quad

P

(

B

i

A

)

P(B_i|A)

P(Bi​∣A)是后验概率,表示在事件(A)发生后对各种原因

B

i

B_i

Bi​发生可能性的分析;

例: 用某检验法诊断肺癌,A:被检验者患有肺癌;B:检验诊断为阳性(患病); 已知:

P

(

B

A

)

=

0.95

P

(

B

A

)

=

0.90

P

(

A

)

=

0.0004

P(B|A)=0.95,P(\overline{B}|\overline{A})=0.90,P(A) = 0.0004

P(B∣A)=0.95,P(B∣A)=0.90,P(A)=0.0004 求:P(A|B) 解:

P

(

A

B

)

=

P

(

A

)

P

(

B

A

)

P

(

A

)

P

(

B

A

)

+

P

(

A

)

P

(

B

A

)

=

0.0004

×

0.95

0.0004

×

0.95

+

0.9996

×

0.1

=

0.0038

P(A|B) = {P(A)P(B|A) \over P(A)P(B|A) + P(\overline A)P(B|\overline A)} = {0.0004×0.95 \over 0.0004×0.95 + 0.9996×0.1} = 0.0038

P(A∣B)=P(A)P(B∣A)+P(A)P(B∣A)P(A)P(B∣A)​=0.0004×0.95+0.9996×0.10.0004×0.95​=0.0038

1.5 独立性

独立性是概率论和数理统计中很重要的概念,很多情况需要满足独立性才适用,一般根据实践来确定事件之间是否相互独立。 定义:设A、B是随机试验E的两个事件,若 P(AB) = P(A)P(B), 则称AB事件相互独立,即A和B两个事件的发生互不影响。 定理1:若P(A) > 0 ,且 P(B|A) = P(B) 等价于 AB相互独立 定理2:若A、B相互独立,则其对立事件也相互独立 可以很自然的推广到n个事件的情况

例: 甲、乙两种产品独立生产,甲产品的次品率0.05,乙产品的次品率0.04,现从甲乙产品中各区一件: (1)两件都是次品的概率P1; (2)至少有一件是次品的概率P2; (3)恰好有一件是次品的概率P3。 解: 设A事件为抽取甲为次品,B事件为抽取乙为次品 由于A、B相互独立,故:A,

A

\overline{A}

A;

A

\overline{A}

A,B;

A

\overline{A}

A,

B

\overline{B}

B;相互独立 (1)

P

1

=

P

(

A

B

)

=

P

(

A

)

P

(

B

)

=

0.05

×

0.04

=

0.002

P1=P(AB)=P(A)·P(B)=0.05×0.04=0.002

P1=P(AB)=P(A)⋅P(B)=0.05×0.04=0.002 (2)

P

2

=

P

(

A

B

)

=

1

P

(

A

B

)

=

1

P

(

A

B

)

=

1

P

(

A

)

P

(

B

)

=

1

0.95

×

0.96

=

0.088

P2=P(A \bigcup B)=1-P(\overline{A\bigcup B})=1-P(\overline{A}\overline{B})=1-P(\overline{A})P(\overline{B})=1-0.95×0.96=0.088

P2=P(A⋃B)=1−P(A⋃B​)=1−P(AB)=1−P(A)P(B)=1−0.95×0.96=0.088 (3)

P

3

=

P

(

A

B

A

B

)

=

P

(

A

B

)

+

P

(

A

B

)

=

P

(

A

)

P

(

B

)

+

P

(

A

)

P

(

B

)

=

0.86

P3=P(A\overline{B}\bigcup \overline{A}B)=P(A\overline{B})+P(\overline{A}B)=P(A)P( \overline{B})+P(\overline{A})P(B)=0.86

P3=P(AB⋃AB)=P(AB)+P(AB)=P(A)P(B)+P(A)P(B)=0.86 PS:独立性和互不相容性 (1)加法公式对应互不相容性; (2)乘法公式对应独立性;

1.6 蒙特霍尔三门问题

游戏规则:

参赛者会看见三扇关闭的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门就可以赢得该汽车,另两扇门后则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,知道门后情形的节目主持人会开启剩下两扇门的其中一扇,露出其中一只山羊。主持人其后会问参赛者要不要换另一扇仍然关上的门。

概率求解(python实现):

import random

def MontyHall(Dselect, Dchange):

Dcar = random.randint(1,3)

if Dselect == Dcar and Dchange == 0:

return 1

elif Dselect == Dcar and Dchange == 1:

return 0

elif Dselect != Dcar and Dchange == 0:

return 0

else:

return 1

# 不确定是否改变选择

def test1(N):

win = 0

for i in range(N):

Dselect = random.randint(1,3)

Dchange = random.randint(0,1)

win = win + MontyHall(Dselect, Dchange)

print(float(win)/float(N))

# 确定不改变选择

def test2(N):

win = 0

for i in range(N):

Dselect = random.randint(1,3)

Dchange = 0

win = win + MontyHall(Dselect, Dchange)

print(float(win)/float(N))

# 确定改变选择

def test3(N):

win = 0

for i in range(N):

Dselect = random.randint(1,3)

Dchange = 1

win = win + MontyHall(Dselect, Dchange)

print(float(win)/float(N))

N = 10000

print("不确定是否改变选择概率:")

test1(N)

print("确定不改变选择概率:")

test2(N)

print("确定改变选择概率:")

test3(N)

运行结果:

不确定是否改变选择概率:

0.4939

确定不改变选择概率:

0.3307

确定改变选择概率:

0.6618

1.7 蒙特卡罗方法

蒙特卡罗方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。使用随机数(通常是伪随机数)来解决计算问题的方法。蒙特卡罗方法在金融工程学,宏观经济学,计算物理学等领域应用广泛。

# 计算$\pi$的蒙特卡洛方法

import random

n=1000000

k=0

for i in range(n):

x=random. uniform(-1,1)

y=random. uniform(-1,1)

if x**2+y**2<1:

k=k+1

print(4* float(k)/float(n))

运行结果:

3.142032