這篇文章中我想由beta分布-二項(xiàng)分布這組常用的共軛分布來(lái)介紹Bayesian概念學(xué)習(xí)(concept learning)乒疏。在開(kāi)始之前,我想先回答兩個(gè)問(wèn)題朴艰。
第一怎炊,機(jī)器學(xué)習(xí)中為什么要引入概率?
在機(jī)器學(xué)習(xí)中倔毙,我們通過(guò)已知的信息希望能夠推斷出一些未知的信息埃仪,但在推斷過(guò)程中有時(shí)并不能唯一確定目標(biāo)值,這時(shí)便可以使用概率來(lái)體現(xiàn)各個(gè)可能目標(biāo)值的可能性陕赃。例如卵蛉,KNN(K Nearest Neighbors)分類(lèi)問(wèn)題中,已知平面中的N個(gè)點(diǎn)Xi和它們的類(lèi)別Yi么库,希望根據(jù)這些信息來(lái)推斷平面上其他點(diǎn)X的歸類(lèi)傻丝,做法是觀察離X最近的K個(gè)已知的Xi,若這K個(gè)Xi中有2個(gè)屬于類(lèi)別A诉儒,則我們說(shuō)X屬于類(lèi)別A的概率為2/K葡缰。通過(guò)引入概率,可以避免只給出一個(gè)確定值而造成偏頗忱反,同時(shí)又由概率值大小告訴我們可能性大小泛释,可以讓我們有進(jìn)一步判斷的根據(jù)。
第二温算,什么是概念學(xué)習(xí)怜校?
很多時(shí)候我們?cè)趯W(xué)習(xí)的時(shí)候只有正項(xiàng)的反饋,比如孩子認(rèn)識(shí)花朵的過(guò)程注竿,父母會(huì)告訴他“XX是一朵花”茄茁,而很少會(huì)主動(dòng)告訴他“XX不是一朵花”,再比如我們中學(xué)時(shí)學(xué)習(xí)解數(shù)學(xué)題的方法M時(shí)蔓搞,老師總是教我們“XX題要用方法M來(lái)解”胰丁,而較少教我們“XX不要用方法M來(lái)解”,這里的“花”和“可以用方法M來(lái)解的題”就可以看做是一個(gè)“概念”喂分。在給定一些屬于這個(gè)概念C的一些實(shí)例(正項(xiàng)的反饋)時(shí),我們希望由此來(lái)估計(jì)這個(gè)概念到底可以包含哪些實(shí)例机蔗。
Bayesian概念學(xué)習(xí)就是解決在僅給出正項(xiàng)實(shí)例時(shí)的學(xué)習(xí)問(wèn)題蒲祈。
我們可以將概念C理解為包含它所有實(shí)例的集合,那么給定的正項(xiàng)實(shí)例就可以看做是集合C中的一些元素萝嘁,我們希望由部分元素來(lái)推斷集合C到底是什么梆掸。假如已知集合C包含4,8,16這三個(gè)元素,那么集合C可能是什么牙言?有很多種可能性酸钦,它可能是全體偶數(shù),所有4的倍數(shù)咱枉,所有整數(shù)卑硫,也可能是{2,4,8,16}徒恋,還有可能是{4,5,8,16},或者全體偶數(shù)再并上55欢伏。但從集合C作為一個(gè)概念來(lái)講入挣,它是全體偶數(shù)、所有4的倍數(shù)或是所有整數(shù)都有其合理性硝拧,但后三種情況不太合理径筏,雖然我們不能說(shuō)這些情況不可能發(fā)生。于是在不考慮已知實(shí)例的情況下障陶,集合C可能的選擇是有一個(gè)概率分布的滋恬,上面舉的前3種情況概率值較高,而后三種情況概率值較低抱究,這個(gè)概率分布稱(chēng)為這個(gè)概念C的先驗(yàn)(prior)夷恍。在先驗(yàn)和已知的數(shù)據(jù)下,我們進(jìn)行推斷媳维,這就是Bayesian概念學(xué)習(xí)酿雪。
在一般的問(wèn)題中,概念C所有可能的選擇可能具有同一個(gè)形式侄刽,并帶有某個(gè)參數(shù)c指黎,則概念C的先驗(yàn)分布就可以看做是參數(shù)c的概率分布,二者是同一個(gè)意思州丹,下面用beta-binomial這組共軛分布來(lái)具體闡釋一下醋安。
假設(shè)我們投擲硬幣,出現(xiàn)正面(1)的概率是c墓毒,則出現(xiàn)負(fù)面(0)的概率是1-c吓揪,則每次投擲硬幣的結(jié)果服從Bernoulli分布Ber(c)。另外我們有數(shù)據(jù)D所计,D包含了N次投擲硬幣得到的結(jié)果柠辞,即D={X_1,...X_N},而每個(gè)Xi都服從Ber(c)主胧。在這個(gè)例子中叭首,概念就是投擲這個(gè)硬幣可能出現(xiàn)的情況,即在已有數(shù)據(jù)D的情況下我們希望推斷出以后(下一次或以后多次)投擲硬幣出現(xiàn)的情況踪栋,即出現(xiàn)正面的概率焙格,而這是與c的取值是息息相關(guān)的。首先夷都,在給定c的情況下眷唉,數(shù)據(jù)發(fā)生的概率(稱(chēng)作likelihood)為
N1、N0為D中出現(xiàn)1和0的次數(shù),N1+N0=N冬阳。在已知投擲總次數(shù)N的情況下蛤虐,給出X_1,...,X_N的具體的值和給出N1對(duì)估計(jì)c的作用是一樣的,這里N1的值叫做c的充分統(tǒng)計(jì)量摩泪,而N1服從二項(xiàng)分布Bin(N,c)笆焰,即
在計(jì)算有了D之后c的可能性之前,我們希望給c一個(gè)先驗(yàn)见坑,在先驗(yàn)中表達(dá)我們對(duì)它的理解嚷掠。首先c是Bernoulli分布的參數(shù),它的取值范圍是[0,1]荞驴,為了簡(jiǎn)化計(jì)算不皆,我們?nèi)的先驗(yàn)具有和likelihood一樣的形式,一個(gè)很自然的選擇就是令它服從某個(gè)beta分布Beta(a,b)熊楼,即
這也就是為什么beta分布是二項(xiàng)分布的共軛分布霹娄。
則在給定數(shù)據(jù)之后對(duì)c的估計(jì)(稱(chēng)之為posterior,后驗(yàn)),由Bayes法則可得
則我們對(duì)c的估計(jì)有下面幾個(gè)常用的值
分別對(duì)應(yīng)于c的極大后驗(yàn)估計(jì)鲫骗、極大似然估計(jì)和后驗(yàn)均值估計(jì)犬耻。這幾類(lèi)估計(jì)值的使用范圍都很廣泛,值得一提的是如果我們僅用數(shù)據(jù)D來(lái)估計(jì)下一時(shí)刻投擲結(jié)果X=1的概率為
即X服從Ber(E[c|D])分布执泰,也即枕磁,用數(shù)據(jù)來(lái)估計(jì)未來(lái)值時(shí),和代入后驗(yàn)均值的效果是相同的术吝,并且積分的過(guò)程也會(huì)解決一部分overfitting的問(wèn)題计济。
這時(shí)候會(huì)有一個(gè)問(wèn)題,我們?cè)趯⑾闰?yàn)定為共軛分布時(shí)主要為了使后驗(yàn)分布計(jì)算方便排苍,那這樣的設(shè)置是否合理呢沦寂?一個(gè)可行的解決辦法是取先驗(yàn)分布為共軛分布的線性組合,這至少可以在取均值估計(jì)時(shí)同時(shí)兼顧合理性與運(yùn)算簡(jiǎn)便性淘衙。另一組常用的共軛分布Dirichlet-multinomial的情況非常相似传藏,不再贅述。
Reference:
Machine Learning-A Probabilistic Perspective, Kevin P. Murphy, 2012.