機器學習數學基礎(二)
概率論
複習概率論知識,瞭解Beta分佈,sigmoid/logistic函數,重點看最大似然估計
概率論基礎
初步認識
- 基礎概念
- 古典概型
例:將n個不同球放入N(N>=n)個盒子中,假設盒子容量無限,求事件A={每個盒子至多有1個球}的概率
- 與組合數關係
概率公式
- 貝葉斯公式
先驗後驗似然函數需記牢
常見概率分佈
0—1分佈
期望和方差都等於
重要特徵是無記憶性
Beta分佈
總結 參數、期望、方差
sigmoid/logistic函數
sigmoid導數
統計量
期望/方差/協方差/相關係數
期望
- 類型
- 性質
方差
協方差
- 定義
- 性質
- 意義
- 上界
證明
相關係數
獨立和不相關
- 獨立
A和B是兩個事件,如果P(AB)= P(A)P(B),則事件A和B相互獨立
A和B獨立,則P(A|B)= P(A),E(AB)= E(A)E(B) - 不相關
Cov(X,Y)= 0 ,X和Y不相關
X和Y不相關,X和Y之間沒有線性關係
不相關不等於獨立,但對於二維正態隨機變量,不相關等價於相互獨立
大數定律
切比雪夫
大數定律
意義:
當n很大時,隨機變量X1,X2…Xn的平均值Yn在概率意義下無限接近期望
伯努利定理
定理表明事件A發生的頻率nA/n 以概率收斂於事件A的概率p,表達了頻率穩定性
中心極限定理
- 定理內容
- 例題
- 意義
隨機現象可以看作許多因素的獨立影響的綜合反應,往往近似服從正態分佈
最大似然估計
什麼是最大似然估計
怎麼求最大似然估計
取對數,得到對數似然函數;若對數似然函數可導,可通過求導的方式,解方程,得到駐點,駐點是極大值點
二項分佈的最大似然估計
正態分佈的最大似然估計
過擬合
code
公交堵車模型
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
font = FontProperties(fname=r'C:\Windows\Fonts\SIMSUN.ttc', size=15)
def clip(x,path):
for i in range(len(x)):
if x[i] >= path:
x[i] %= path
## 變量
path = 5000
n = 100
v0 = 5
p = 0.3
Times = 3000
## 尾隨 seed=(seed*a+b)% c
np.random.seed(0)
x = np.random.rand(n) * path
x.sort()
v = np.tile([v0],n).astype(np.float)
plt.figure(figsize=(10,8),facecolor='w')
for t in range (Times):
plt.scatter(x,[t]*n,s=1,c='k',alpha=0.5)
for i in range(n):
if x[(i+1)%n] > x[i]:
d = x[(i+1)%n] - x[i] #前車距離
else:
d = path - x[i] + x[(i+1)%n]
if v[i] < d:
if np.random.rand() > p:
v[i] += 1
else:
v[i] -= 1
else:
v[i] = d-1
v = v.clip(0,150)
x += v
clip(x, path)
plt.xlim(0,path)
plt.ylim(0,Times)
plt.xlabel(u'車輛位置',fontproperties=font)
plt.ylabel(u'模擬時間',fontproperties=font)
plt.title(u'公路堵車模型',fontproperties=font)
plt.tight_layout(pad=2)
plt.show()