数学狂想曲(三)——统计杂谈, PID算法, 20世纪10大算法, 矩阵向量的积
http://antkillerfarm.github.io/
統(tǒng)計(jì)雜談
統(tǒng)計(jì)模擬
統(tǒng)計(jì)模擬是數(shù)理統(tǒng)計(jì)中非常有用的工具之一, 它是利用計(jì)算機(jī)產(chǎn)生某概率模型的隨機(jī)數(shù),再通過這些隨機(jī)數(shù)來模擬真實(shí)模型。
這方面的書籍首推Sheldon M.Ross所著的《Simulation》。
注:Sheldon M.Ross,斯坦福大學(xué)統(tǒng)計(jì)學(xué)博士(1968),UCB教授(1976~2004),南加州大學(xué)Industrial and Systems Engineering系主任。
以下僅記錄一些簡單的結(jié)論。
均勻分布
通過線性同余發(fā)生器可以生成偽隨機(jī)數(shù),且該隨機(jī)數(shù)滿足均勻分布。
xn=axn?1modulom
正態(tài)分布
Box-Muller變換:如果隨機(jī)變量U1,U2獨(dú)立且U1,U2~Uniform(0,1),
Z0Z1=?2lnU1???????√cos(2πU2)=?2lnU1???????√sin(2πU2)
則Z0,Z1獨(dú)立且服從標(biāo)準(zhǔn)正態(tài)分布。
注:George Edward Pelham Box,1919~2013,英國統(tǒng)計(jì)學(xué)家。倫敦學(xué)院大學(xué)博士,先后供職于普林斯頓大學(xué)和威斯康辛-麥迪遜大學(xué)。Ronald Aylmer Fisher的女婿。英國皇家學(xué)會會員,美國統(tǒng)計(jì)協(xié)會主席,數(shù)理統(tǒng)計(jì)學(xué)會(這是一個國際組織)主席。
Mervin Edgar Muller,俄亥俄州立大學(xué)教授。
統(tǒng)計(jì)力學(xué)與組合優(yōu)化
MCMC和Gibbs Sampling最早都是統(tǒng)計(jì)力學(xué)的概念,后來才被用于機(jī)器學(xué)習(xí)領(lǐng)域。現(xiàn)將統(tǒng)計(jì)力學(xué)與組合優(yōu)化的對應(yīng)關(guān)系羅列如下:
| 樣本 | 問題實(shí)例 |
| 狀態(tài)(構(gòu)形) | 構(gòu)形 |
| 能量 | 代價函數(shù) |
| 溫度 | 控制參數(shù) |
| 基態(tài)能量 | 最小代價 |
| 基態(tài)構(gòu)形 | 最小構(gòu)形 |
頻率統(tǒng)計(jì)學(xué)派 vs. 貝葉斯學(xué)派
對數(shù)學(xué)史感興趣的朋友,可以看看陳希孺院士的《數(shù)理統(tǒng)計(jì)學(xué)簡史》一書。rickjin文章的內(nèi)容有相當(dāng)部分取自該書。
注:陳希孺,1934~2005,數(shù)理統(tǒng)計(jì)學(xué)家。1956年畢業(yè)于武漢大學(xué)數(shù)學(xué)系,1997年當(dāng)選為中國科學(xué)院院士。
該書中關(guān)于頻率統(tǒng)計(jì)學(xué)派和貝葉斯學(xué)派的爭議,引起了我的注意。
頻率統(tǒng)計(jì)學(xué)派是所謂的正統(tǒng)派,由于其簡單且便于理解的特點(diǎn),多數(shù)入門級的數(shù)理統(tǒng)計(jì)學(xué)教程,一般都是按照該學(xué)派的思路寫的。
而貝葉斯學(xué)派可謂另辟蹊徑,它和頻率統(tǒng)計(jì)學(xué)派的差異,參見《機(jī)器學(xué)習(xí)(七)》。由于該派系的思想比較新穎,我一度以為它和頻率統(tǒng)計(jì)學(xué)派的關(guān)系,就猶如相對論之于經(jīng)典力學(xué)。
然而,陳希孺院士告訴我們,兩者各有優(yōu)劣,尚未到一方?jīng)Q出勝負(fù)的階段。比如,貝葉斯學(xué)派的先驗(yàn)估計(jì),既是其成功的奧秘,也是其不成功的軟肋。比如,對于“無信息先驗(yàn)分布”,目前尚處于“信則靈,不信則無”的境地。
陳院士的觀點(diǎn)是:各取所長,為我所用。
PID算法
PID算法是自動控制領(lǐng)域最基礎(chǔ)應(yīng)用也最廣泛的算法。它是三個單詞proportional(P,比例)、integral(I,積分)和differential(D,微分)的縮寫。
PID算法的流程如下圖所示:
以下我們以水箱水龍頭為例,解釋一下PID算法的各個要素。
場景1:假設(shè)我們面對的系統(tǒng)是一個簡單的水箱的液位,要從空箱開始注水直到達(dá)到某個高度,而你能控制的變量是注水龍頭的開關(guān)大小。
圖1中的r(t)表示期待的設(shè)定值,在這個場景中,就是水箱的液位。y(t)表示當(dāng)前的液位。e(t)=r(t)?y(t)表示誤差值。
針對這個場景,我們可以設(shè)計(jì)如下算法:
水箱液位離預(yù)定高度遠(yuǎn)的時候開關(guān)開大點(diǎn),離的近的時候開關(guān)就開小點(diǎn),隨著液位逐步接近預(yù)定高度逐漸關(guān)掉水龍頭。用數(shù)學(xué)表示就是:
u(t)=Kpe(t)(1)
上式中的u(t)表示需要控制的量,在這里就是水龍頭的開合度。Kp被稱為比例系數(shù)。
場景2:假設(shè)這個水箱不僅僅是裝水的容器了,還需要持續(xù)穩(wěn)定的給用戶供水。
以下用c表示給用戶供水的量(c≥0)。顯然如果使用公式1,則系統(tǒng)穩(wěn)定時,u(t)?c=0,即Kpe(t)=c。
由于c和Kp都不為0,因此e(t)也不為0,這就導(dǎo)致始終無法加注到指定水位。這種穩(wěn)態(tài)誤差被稱為靜差。
為了平衡c,我們修改算法為:
u(t)=Kpe(t)+Ki∫t0e(τ)dτ(2)
Ki被稱為積分系數(shù)。積分環(huán)節(jié)的意義就相當(dāng)于你增加了一個水龍頭,這個水龍頭的開關(guān)規(guī)則是水位比預(yù)定高度低就一直往大了擰,比預(yù)定高度高就往小了擰。如果漏水速度不變,那么總有一天這個水龍頭出水的速度恰好跟漏水的速度相等了,系統(tǒng)就和第一小節(jié)的那個一樣了。那時,靜差就沒有了。這就是所謂的積分環(huán)節(jié)可以消除系統(tǒng)靜差。
場景3:假設(shè)用戶的用水量是變化的,即c(t)。
這時,如果仍采用公式2,則由于c(t)的變化,導(dǎo)致e(t)不恒為0。為了減小c(t)的變化,對e(t)的影響,我們繼續(xù)修改算法:
u(t)=Kpe(t)+Ki∫t0e(τ)dτ+Kdde(t)dt(3)
Kd被稱為微分系數(shù)。由于c(t)的變化不可能事先得知,因此,微分環(huán)節(jié)只能減小c(t)的變化所造成的影響,而不能消除。
公式3在Laplace域可寫做:
L(s)=Kp+Ki/s+Kds(4)
從公式4可以看出,PID controller的數(shù)學(xué)原理和鎖相環(huán)(Phase-locked loop)非常類似,它們實(shí)際上都是Feedback Control系統(tǒng)。
參考:
https://en.wikipedia.org/wiki/PID_controller
《Feedback Control of Dynamic Systems》,Gene F. Franklin,J David Powell,Abbas Emami-Naeini著。
注:Gene F. Franklin,1927~2012,美國控制論學(xué)家。哥倫比亞大學(xué)博士,斯坦福大學(xué)教授。
J David Powell,美國航空航天學(xué)家。斯坦福大學(xué)博士和教授。
Abbas Emami-Naeini,斯坦福大學(xué)博士和講師,SC Solutions公司總監(jiān)。
https://www.zhihu.com/question/23088613/answer/23942834
http://blog.163.com/suyanqiang0613@126/blog/static/1100531332012111475650867/
20世紀(jì)10大算法
2000年,IEEE評選出20世紀(jì)10大算法。名單如下:
1.Metropolis Algorithm for Monte Carlo
2.Simplex Method for Linear Programming
3.Krylov Subspace Iteration Methods
4.The Decompositional Approach to Matrix Computations
5.The Fortran Optimizing Compiler
6.QR Algorithm for Computing Eigenvalues
7.Quicksort Algorithm for Sorting
8.Fast Fourier Transform
9.Integer Relation Detection
10.Fast Multipole Method
詳細(xì)內(nèi)容參見:
http://www.uta.edu/faculty/rcli/TopTen/topten.pdf
中文版本:
http://blog.csdn.net/v_JULY_v/article/details/6127953
矩陣&向量的積
矩陣&向量有很多種積的定義,特羅列如下:
向量的點(diǎn)積
Dot product,又稱inner product。
代數(shù)定義:
a?b=∑i=1naibi=a1b1+a2b2+?+anbn
幾何定義:
a?b=∥a∥?∥b∥cos(θ)
復(fù)變積分定義:
?ψ,χ?=∫baψ(x)χ(x)ˉˉˉˉˉˉˉdx
矩陣的積
matrix product的定義如下(以3階方陣為例):
AB=???apubqvcrw??????αλρβμσγντ???=???aα+bλ+cρpα+qλ+rρuα+vλ+wρaβ+bμ+cσpβ+qμ+rσuβ+vμ+wσaγ+bν+cτpγ+qν+rτuγ+vν+wτ???
可以看出,積矩陣的每個元素是矩陣A、B相應(yīng)行列向量的內(nèi)積。
向量的向量積
Cross product是一個向量,其定義如下:
a×b=∥a∥∥b∥sin(θ)?n
它還有個更出名的定義:
u×v=∣∣∣∣iu1v1ju2v2ku3v3∣∣∣∣
向量的混合積
triple product,又稱mixed product或box product。
a?(b×c)≡det???a1b1c1a2b2c2a3b3c3???=det(a,b,c)
向量的笛卡爾積
Cartesian product實(shí)際上是集合論中的概念。
A×B={1,2}×{3,4}={(1,3),(1,4),(2,3),(2,4)}
向量的張量積
Tensor product,又稱outer product。
u?v=uvT=?????u1u2u3u4?????[v1v2v3]=?????u1v1u2v1u3v1u4v1u1v2u2v2u3v2u4v2u1v3u2v3u3v3u4v3?????
可以看出,Tensor product和Cartesian product,雖然形式上都是各向量的組合,然而前者是2維的,而后者是1維的。
矩陣的張量積
張量積推廣到矩陣,即所謂Kronecker product。
注:Leopold Kronecker,1823~1891,德國數(shù)學(xué)家。柏林大學(xué)博士和教授。導(dǎo)師Dirichlet。他最牛逼的地方是,當(dāng)Riemann去世的時候,拒絕了哥廷根大學(xué)的offer。而這個位置的前任分別是:Carl Gauss、Dirichlet、Riemann。
A?B=????a11B?am1B???a1nB?amnB????
Hadamard product
又叫Schur product或entrywise product。
注:Jacques Salomon Hadamard,1865~1963,法國數(shù)學(xué)家。巴黎高等師范學(xué)校博士,波爾多大學(xué)教授。他曾于1936年訪華,執(zhí)教于清華大學(xué)。中國偏微分方程研究事業(yè)的主要創(chuàng)始人之一——吳新謀教授,就是他的學(xué)生。
???a11a21a31a12a22a32a13a23a33???°???b11b21b31b12b22b32b13b23b33???=???a11b11a21b21a31b31a12b12a22b22a32b32a13b13a23b23a33b33???
總結(jié)
以上是生活随笔為你收集整理的数学狂想曲(三)——统计杂谈, PID算法, 20世纪10大算法, 矩阵向量的积的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习(十五)——loss funct
- 下一篇: 机器学习(十六)——隐式狄利克雷划分