PRML_Exercises
Pattern Recognition and Machine Learning習題中文詳解
歡迎討論題目(我把本身作的過程貼出來也是爲了更方便討論),禁止一切形式的轉載。
關於排版,實話說我也想把公式排得舒服好看一些,奈何着實費力,這着實不太討喜,見諒。
Chapter 1
1.1
可以使得式(1.2)給出的偏差函數最小的參數
w={wi}就是使得偏差爲
0的參數,那麼就知足
j=0∑Mwjxnj=tn
而咱們要作的這道證實題的右式
Ti=n=1∑N(xn)itn
直接將上述咱們已知的
tn代入,得
Ti=n=1∑N[(xn)ij=0∑Mwj(xn)j]
又因爲
(xn)i不含有與
j相關的係數,因此能夠將其放入後面的求和項,即
Ti=n=1∑Nj=0∑M(xn)iwj(xn)j
再互換一下求和順序
Ti=j=0∑Mn=1∑N(xn)iwjxnj=j=0∑Mn=1∑N(xn)i+jwj
其中就能夠看到
∑n=1N(xn)i+j就是題目中的
Aij了,從而得證。html
1.2
已知
E
(w)=21n=1∑N{y(xn,w)−tn}2+2λ∥w∥2
其中
∥w∥2≡wTw=w02+w12+…+wM2,這裏提一下正則項裏面的
w02,做者說一般來說這一項要麼不放正則項中,要麼使用另外一個
λ對其進行大小控制,不過我們這裏爲了公式的推導方便就不作特殊處理,且讓它在這個正則項中。既然題目中要求這個偏差函數
E
(w)最小化,也就意味着該式對各個參數
w的導數均爲
0,由此可得:
dwidE
(w)=21n=1∑N{2[j=0∑Mwj(xn)j−tn](xn)i}+λwi=0
因此
n=1∑N{j=0∑M[(xn)i+jwj]−(xn)itn]}+λwi=n=1∑Nj=0∑M{(xn)i+jwj}−n=1∑N{(xn)itn+Nλwi}=0
因此能夠看到,題目1.1中的式子基本均可以保持不變,只需將
Ti修改成
Ti=∑n=1N{(xn)itn+Nλwi}。web
Tips:上面求導的過程使用了複合函數的求導。app
1.3
已知
p(B=r)=0.2,
p(B=b)=0.2,
p(B=g)=0.6,同時,
p(F=a∣B=r)=0.3,
p(F=o∣B=r)=0.4,
p(F=l∣B=r)=0.3,
p(F=a∣B=b)=0.5,
p(F=o∣B=b)=0.5,
p(F=l∣B=b)=0,
p(F=a∣B=g)=0.3,
p(F=o∣B=g)=0.3,
p(F=l∣B=g)=0.4。第一小問說,抽一次抽出蘋果的機率是多少,可經過sum rule和product rule求出,即:
p(a)=p(a,r)+p(a,b)+p(a,g)=p(a∣r)p(r)+p(a∣b)p(b)+p(a∣g)p(g)=0.34
第二小問說,在已知抽出的結果是橘子(orange)的狀況下,從綠色(green)盒子中抽出這個橘子的機率是多大。這就是一個很典型的由果推因的貝葉斯公式題,至關於求
p(B=g∣F=o),根據貝葉斯公式,可得
p(g∣o)=p(o)p(o∣g)p(g),其中分母能夠按照第一小問的方式求出,分子中各項均爲已知條件,求得
p(B=g∣F=o)=0.5。ide
1.4
已知
x=g(y),
py(y)=px(x)∣dydx∣=px(x)∣g′(y)∣,對於兩個機率分佈而言,可以取到最大值的位置知足導數爲
0,所以
∂y∂py(y)=∂y∂px(x)∣g′(y)∣=0,題目中假設
x=g(y)爲線性函數,所以咱們假設
x=g(y)=ay+b,因此能夠獲得
∂y∂py(y)=∂x∂px(x)∣a∣∂y∂x=∂x∂px(x)∣a∣2=0,因爲
∣a∣2>0,(
a的絕對值不該該爲
0,不然並不能稱其爲變換了),因此使得
∂x∂px(x)=0的狀況下,
∂y∂py(y)也等於
0,也就是說在
x取值使得
px(x)最大的位置,這個
x對應的
y也是使得
py(y)最大的位置,而
x=g(y)=ay+b一樣知足兩變量之間的線性關係。svg
1.5
式(1.38)爲
var[f]=E[(f(x)−E[f(x)])2],所以
var[f]=E[(f(x)−E[f(x)])2]=E[f(x)2−2f(x)E[f(x)]+(E[f(x)])2],因此
var[f]=E[f(x)2]−2(E[f(x)])2+(E[f(x)])2]=E[f(x)2]−E[f(x)]2。函數
1.6
根據式(1.41)可知,
cov[x,y]=Ex,y[xy]−E[x]E[y]。設變量
x,
y獨立同分布,對應的分佈分別爲
p(x)與
p(y),則
Ex,y[xy]=∬xyp(xy)dxdy=∬xyp(x)p(y)dxdy=∫yq(y)∫xp(x)dxdy,因爲第二個積分與第一個積分項無關(相互獨立,二者之間沒有函數關係),所以能夠拎出來,得
Ex,y[xy]=∫xp(x)dx∫yq(y)dy=E[x]E[y],因此在兩變量互相獨立的狀況下,
cov[x,y]=Ex,y[xy]−E[x]E[y]=0。測試
1.7
令
x=rcosθ,
y=rsinθ,知足
x2+y2=r2且
r≥0,則原來的積分式能夠寫成
I2=∫−∞∞∫−∞∞exp(−2σ21x2−2σ21y2)dxdy=∫o2π∫0∞exp(−2σ21r2)rdrdθ,使用
u=r2代換,ui
因此
I2=21∫o2π∫0∞exp(−2σ21u)dudθ=21∫02π(−2σ2)exp(−2σ21u)∣0∞dθ=2πσ2,因此
I=(2πσ2)1/2。編碼
1.8
式(1.46)爲
N(x∣μ,σ2)=(2πσ2)1/21exp{−2σ21(x−μ)2}=p(x−μ),即要證實
∫−∞+∞x(2πσ2)1/21exp{−2σ21(x−μ)2}dx=∫−∞∞xp(x−μ)dx=μ。先拋開該式不談,咱們須要換元,且必須手頭拿到一個已知的東西,那麼咱們首先有
∫−∞+∞(x−μ)(2πσ2)1/21exp{−2σ21(x−μ)2}d(x−μ)=0,這個比較簡單,根據奇函數積分爲
0可得,而後咱們把這個式子在
(x−μ)這裏展開,能夠看到即
∫−∞∞xp(x−μ)d(x−μ)−μ∫−∞∞p(x−μ)d(x−μ)=∫−∞∞xp(x−μ)dx−μ=0,因此
∫−∞∞xp(x−μ)dx=μ,亦即
E[x]=∫−∞∞N(x∣μ,σ2)xdx=μ。spa
第二小問要求驗證式(1.50)的正確性。在題目1.7中咱們獲得
∫−∞∞exp(−2σ21(x−μ)2)dx=(2πσ2)1/2,在等式兩邊對
σ2求導可得
∫−∞∞exp{−2σ2(x−μ)2}(2σ2)22(x−μ)2dx=(2πσ)1/2π,將式子整理後爲:
∫−∞∞(2πσ2)1/21exp{−2σ2(x−μ)2}(x−μ)2dx=σ2=E[(x−μ)2],又由於
E[(x−μ)2]=E[x2−2μx+μ2]=E[x2]−2μE[x]+μ2,而咱們在上一小問已經知道
E[x]=μ,因此所有帶進去可得,
σ2=E[x2]−μ2,因此
E[x2]=σ2+μ2,從而證得式(1.50)。這樣一來,式(1.51)也就瓜熟蒂落地成立了。
1.9
單元高斯分佈的極大值能夠經過對其機率分佈函數求導獲得極值對應的座標
x=μ,不作贅述。
多元高斯分佈函數爲
N(x∣μ,Σ)=(2π)D/21∣Σ∣1/21exp{−21(x−μ)TΣ−1(x−μ)},一樣進行求導,這裏要用到矩陣的求導法則,得
∂x∂N(x∣μ,Σ)=−21N(x∣μ,Σ)∇x{(x−μ)TΣ−1(x−μ)}=−21N(x∣μ,Σ)∇x−μ{(x−μ)TΣ−1(x−μ)},利用PRML(C.19)和(C.20)公式,令
A=(x−μ)TΣ−1,
B=x−μ,則很容易獲得
∂x∂N(x∣μ,Σ)=−N(x∣μ,Σ)Σ−1(x−μ),在推導過程當中須要注意的是
Σ−1(x−μ)=(x−μ)TΣ−1,這是因爲
x−μ是向量所致使的。那麼根據求得的導數,一樣在
x=μ時取得極值。
1.10
E[x+z]=∬(x+z)p(x,z)dxdz=∬(x+z)p(x)p(z)dxdz=∬xp(x)p(z)dxdz+∬zp(z)p(x)dxdz
對於右側的式子,因爲
x與
z相互獨立,
p(z)的積分爲1,所以第一項即爲
∫xp(x)dx=E[x],同理第二項爲
E[z],因此
E[x+z]=E[x]+E[z]。
var[x+z]=E[(x+z)2]−(E[x+z])2,代入第一小問的結果,獲得所求方差爲
E[x2+z2+2xz]−(E[x]+E[x])2=E[x2]+E[z2]+2E[xz]−(E[x])2−(E[z])2−2E[x]E[z],
又根據題目1.6的結論,化簡獲得
var[x+z]=E[x2]+E[z2]−(E[x])2−(E[z])2=var[x]+var[z]。
1.11
令
y=lnp(x∣μ,σ2)=−2σ21∑n=1N(xn−μ)2−2Nlnσ2−2Nln(2π),能夠獲得
∂μ∂y=−σ21∑n=1N(μ−xn)=0,因此
∑n=1N(μ−xn)=0,因此
∑n=1Nμ−∑n=1Nxn=Nμ−∑n=1Nxn=0,因此
μML=N1∑n=1Nxn。
∂σ2∂y=−(2σ2)22∑n=1N(xn−μML)2−2σ2N=0,很容易獲得
σML2=N1∑n=1N(xn−μML)2。
1.12
這題其實第一小問挺迷的,主要問題在於爲何做者要使用不一樣的下標來表示是否獨立,或者說,若是做者你想表達這個意思,那你就應該明說啊我透。這樣子一來就比較簡單明瞭了,若
n=m,則
E[xn2]根據式(1.50)很容易獲得
E[xn2]=μ2+σ2,下標爲
m時相同。若
n̸=m,那麼按照做者的意思,就是說這倆變量相互獨立,因此
E[xnxm]=E[xn]E[xm]=μ2。
其實做者是想用第一小問做爲引子來幫助咱們證實式(1.57)和式(1.58),那麼實際上我是以爲不必這麼麻煩,咱們直接證實這兩個式子便可,無需繞他給的這條彎路。
對於第一個式子,求取最大似然分佈的均值的指望,咱們這裏假設總共取了
K次數據,每一次都取
N個數據來進行極大似然估計,
xkn表示第
k次取的第
n個數據,那麼
E[μML]=K1∑k=1K[N1∑n=1Nxkn]=KN1∑k=1K∑n=1Nxkn,到這裏,咱們先停一下,假設咱們每次取的數據有限,也就是
N有限,可是咱們一直取一直取,也就是說
K無限,那麼這裏就能夠看作我對整個分佈上全部的
x都取到了,從而推得
xkn的均值就是正態分佈
N(x∣μ,σ2)的均值
μ,因此
E[μML]=μ,這就證實了式(1.57)。
對於式(1.58),首先依舊採起咱們以前的取數據規定,同時將方差的計算公式展開,
μkML爲第
k次取得的數據的均值,則
E[σML2]=K1∑k=1K[N1∑n=1N(xkn−μkML)2]=K1∑k=1K[N1∑n=1N(xkn2−2xknμkML+μkML2)],這就能夠拆分爲三項,其中第一項與
xkn2相關,沿用上面的思路,至關於取遍了全部的
xkn,因此
K1∑k=1K[N1∑n=1Nxkn2]=E[x2]=μ2+σ2,後面兩項能夠寫成
K1∑k=1K[−2μkMLN1∑n=1Nxkn]+K1∑k=1K[N1∑n=1N(μkML2)],也就是
K1∑k=1K[−2μkML2]+K1∑k=1K[μkML2]=−K1∑k=1K[μkML2],這就比較明白了,後面兩項就是
−E[μML2],所以
E[σML2]=μ2+σ2−E[μML2],因此咱們就要求這個
E[μML2],這個表達式的含義就是每一次取得的數據的均值的平方的平均值(指望),那麼就有
E[μML2]=σμML2+(E[μML])2,根據公式(1.57),咱們進一步獲得
E[μML2]=σμML2+μ2,因此
E[σML2]=μ2+σ2−E[μML2]=σ2−σμML2,因此任務又進一步變爲求這個
σμML2=var[μML],而
var[μML]=var[N1∑n=1Nxn]=N21∑n=1Nvar[xn]=N21∑n=1Nσ2=Nσ2。
因此就有
E[σML2]=μ2+σ2−E[μML2]=σ2−Nσ2=NN−1σ2。
PS:我用MATLAB作了一下實驗,與理論徹底相符,式(1.57)和式(1.58)實際上也能夠從直觀上進行理解,這裏就不詳細說了。
1.13
根據題目(1.12)的推導,這題就很簡單了,將
E[μML2]代換爲
E[μ2]=μ2便可,那很顯然
E[σML2]=μ2+σ2−μ2=σ2。此時,方差的指望也就是無偏的了。
1.14
若是能夠寫成題目要求的形式(設原矩陣爲
W,要寫成
W=S+A),那首先能夠很容易推斷出
A的對角線上的元素都是
0,因此
S對角線上的元素就是
W對角線上的元素。接着就是要證實
S和
A的其他元素也是可解出來的,由於
wij=wijS+wijA,同時
wji=wjiS+wjiA=wijS−wijA,這就能夠獲得構成一個二元一次方程組,因爲參數對應的矩陣的秩爲
2,所以方程組必然有解,因此能夠寫成題目要求的形式。
∑i=1D∑j=1Dxiwijxj=xTWx=xT(S+A)x=xTSx+xTAx,如今重點關注一下
xTAx這一項,由於
xTAx=∑i=1D∑j=1DxiwijAxj,那麼
A的對角線元素皆爲
0,同時對稱元素互爲相反數,(注意,
A和另外兩個矩陣都是方陣,這是前提條件),至關於
xiwijAxj+xjwjiAxi=0,因此
xTAx=0,因此
∑i=1D∑j=1Dxiwijxj=xTWx=xTSx+xTAx=xTSx=∑i=1D∑j=1DxiwijSxj。
最後一小問就至關於問咱們矩陣
S的對角線以及上(或下)三角部分一共有幾個元素,使用數列求和的方式,咱們獲得
1+2+3+⋯+D=D(D+1)/2,所以獨立的元素數量就是這麼多。
1.15
根據題目1.14可知,由全部
wi1i2…iM構成的高維張量也是一個高維對稱張量,其中的獨立元素使用
w~i1i2…iM表示,此時要證實的式子就比較好理解了,因爲張量的對稱性質,其他元素都是非獨立的,所以都可不作考慮,在根據
i1至
iM肯定了張量的維度順序後,假設
i1=1,那麼因爲剩下的維度中非獨立元素所處的維度小於等於第一維的維度,所以
i2的上限是
i1,同理,剩下的和式也是能夠推出來的。由此咱們能夠獲得形式爲
∑i1=1D∑i2=1i1⋯∑iM=1iM−1w
i1i2⋯iMxi1xi2⋯xiM。
Tips:實際上我仍是沒有想明白對稱的高維張量是長啥樣的。
接着要證實
n(D,M)=∑i=1Dn(i,M−1),這個也很簡單,就將上面第一問的結果拿來用,最外圍的求和就是在
i1從
1取到
D的過程當中後方全部項的求和,而
i2到
iM一共有
M−1項,因此得證。這個遞推式仍是比較直觀的。
第三小問概括法也很直接,
D=1的狀況下,
∑i=1D(i−1)!(M−1)!(i+M−2)!=(M−1)!(M−1)!=1=(D−1)!M!(D+M−1)!=(1−1)!M!(1+M−1)!=M!M!,此時等式成立,假設取數字
D時,等式成立,則
∑i=1D(i−1)!(M−1)!(i+M−2)!=(D−1)!M!(D+M−1)!,則取數字
D+1時,
∑i=1D+1(i−1)!(M−1)!(i+M−2)!=∑i=1D[(i−1)!(M−1)!(i+M−2)!]+D!(M−1)!(D+M−1)!=(D−1)!M!(D+M−1)!+D!(M−1)!(D+M−1)!=D!M!(D+M)(D+M−1)!,因此
∑i=1D+1(i−1)!(M−1)!(i+M−2)!=D!M!(D+M)!=(D+1−1)!M!(D+1+M−1)!,說明該式在
D+1時仍舊成立,從而概括得證。
對於任意
D≥1,取
M=2,則有
n(D,M)=(D−1)!M!(D+M−1)!=(D−1)!2!(D+1)!=2D(D+1),正如咱們在題目1.14中獲得結果同樣。如今假設
M−1時,該式成立,即
n(D,M−1)=(D−1)!(M−1)!(D+M−2)!,而
n(D,M)=∑i=1Dn(i,M−1)=∑i=1D(i−1)!(M−1)!(i+M−2)!,又由於
∑i=1D(i−1)!(M−1)!(i+M−2)!=(D−1)!M!(D+M−1)!,因此
n(D,M)=(D−1)!M!(D+M−1)!,因此在
M時,該式依舊成立,從而概括得證。
1.16
第一小問很直觀,根據式(1.74)可知,
n(D,M)僅表徵了第
M階參數的獨立元素個數,如今的
N(D,M)至關於求取全部階(
0階到
M階)的獨立參數數量,所以
N(D,M)=∑m=0Mn(D,m)。
第二小問,當
M=0時,
N(D,M)=D!M!(D+M)!=1,這與實際相符,當僅含有
0階時,因爲
x無關,因此實際上就一個常數項,所以參數的數量就是
1。如今假設
M時成立,即
N(D,M)=D!M!(D+M)!,則取
M+1時,
N(D,M+1)=D!M!(D+M)!+n(D,M+1)=D!M!(D+M)!+(D−1)!(M+1)!(D+M)!=D!(M+1)!(M+1)(D+M)!+D(D+M)!=D!(M+1)!(D+M+1)!,這裏使用了式(1.137)的結論,從而概括得證。
第三小問使用了斯特林公式
n!≃nne−n,若
D≫M,則
N(D,M)=D!M!(D+M)!≃D!(D+M)!≃DDe−D(D+M)D+Me−(D+M)≃DD(D+M)D+M≃DDDD+M=DM,同理,若
M≫D,則有
N(D,M)=D!M!(D+M)!≃M!(D+M)!≃MMe−M(D+M)D+Me−(D+M)≃MM(D+M)D+M≃MMMD+M=MD,從而得證。
N(10,3)=10!3!(10+3)!=286,
N(100,3)=100!3!(100+3)!=176851。
1.17
已知
Γ(x)≡∫0∞ux−1e−udu,根據分部積分法,能夠獲得
Γ(x)=∫0∞−ux−1de−u=−ux−1e−u∣0∞+∫0∞e−udux−1=∫0∞e−udux−1,前半部分的積分爲
0不作贅述,簡單說明一下就是
x是有限項,而
u取無限大項時,無限大的有限次方除以
e的無限大次方時趨近於
0,你也能夠用MATLAB測試一下。而
Γ(x+1)=∫0∞e−udux=∫0∞xe−udux−1=xΓ(x),得證。
Γ(1)=∫0∞e−udu=−e−u∣0∞=1,得證。
若
x爲整數,那麼
Γ(x+1)=∫0∞e−udux,式子中,微分項
ux的次冪就能夠一直取下來,獲得
Γ(x+1)=∫0∞e−udux=x!∫0∞e−udu=x!。
1.18
有一個疑問,式(1.142)中,爲什麼就稱那一項爲
SD的呢?憑什麼那一項所表明的的含義就是
D維空間中單位球體的表面積呢?我本身想了一下,可是也只是一個頭緒,咱們看一下題目1.7中的計算過程,其中有一步是算到了
I2=∫o2π∫0∞exp(−2σ21r2)rdrdθ,爲了和本題結合,咱們取
σ2=1/2,則有
I2=∫o2π∫0∞exp(−r2)rdrdθ,將這個公式對照題目1.18裏面的式(1.142),就能夠看到,
SD就是咱們算出來的這個雙重積分項
∫o2π∫0∞exp(−r2)rdrdθ除以這個積分項內層的積分,簡單來講,經過這麼一個除法,本來對於整個平面的積分(
r從
0取到
∞),變成了單位長度,同時又消除了
exp(−r2)這一項的積分影響,至關於算了一個在極小角度下的單位半徑的扇形的面積,那麼再對這個扇形進行角度上的積分,轉一圈就獲得了單位圓的面積。因此式(1.142)就是這個過程在更高維空間的一個推廣。這是個人理解。
首先,根據式(1.126),能夠推知,
∏i=1