層級模型可能是面向普通人直觀理解數(shù)據(jù)分析模型的天花板,往后的模型都需要至少簡化到層級模型才具備一定的可解釋性。那么什么是層級模型?最簡單的理解就是數(shù)據(jù)內(nèi)部不是均質(zhì)的,例如你是一個剛到地球的外星人,隨機(jī)大街上抓一百個人測量身高,想看看地球人能長多高。那最起碼要區(qū)分下年齡層,未成年人身高跟成年人身高去搞平均,得到的數(shù)據(jù)相信自己看了也不信。也就是說人群身高這個變量天生要考慮年齡來進(jìn)行分層,成年人幾乎不變而未成年人每年都長高,在定義人群身高概念時就得考慮數(shù)據(jù)本身內(nèi)部的分類,這種內(nèi)生性分層在很多具體的學(xué)科概念里很常見。
之所以引入層級模型,很大程度是因?yàn)槎鄶?shù)學(xué)科知識構(gòu)架都是從基本概念堆起來的,學(xué)科或某個議題本身就是個層級概念模型。例如討論環(huán)境影響健康,首先環(huán)境因子得暴露給人群,人群被暴露后會有應(yīng)激反應(yīng),生理上可阻擋大多數(shù)進(jìn)化上已知的危害,但仍然有些污染物不被阻擋,進(jìn)入人體后會干擾具體的代謝過程,當(dāng)代謝紊亂后生理上出現(xiàn)病癥。這一系列的步驟都要有觀察或?qū)嶒?yàn)證據(jù)來證明才能形成一條完整的環(huán)境影響健康的層級機(jī)制模型,有些污染物也許能在環(huán)境中檢出,但根本就不出現(xiàn)在人群生物樣品里,那么就不具備進(jìn)行討論的價(jià)值?,F(xiàn)在環(huán)境科學(xué)里流行的效應(yīng)引導(dǎo)分析就是要先看到最終影響再去找具體污染物,前提就是層級模型要可驗(yàn)證,否則單純因?yàn)榄h(huán)境有就說有危害是很容易被質(zhì)疑的。
除了機(jī)理上的層級模型,另一個很常見的預(yù)測性層級模型就是決策樹。當(dāng)你決定今天是否出門時,腦子里可能同時出現(xiàn)天氣、心情、交通方式、家務(wù)勞動等變量,這些變量的優(yōu)先級是不一樣的,例如天氣不好就不出門了,此時心情或交通方式根本就不需要考慮了,如果還有家務(wù)勞動,那可能也不用考慮天氣了。當(dāng)存在變量優(yōu)先級時,數(shù)據(jù)也是要用層級模型來建模的。在很多具體場景下,有些變量在不同層級上可以反復(fù)出現(xiàn),例如醫(yī)療資源緊張時,急診室會首先按緊急與否預(yù)篩患者,哪些一時半會死不了的就得等等,然后按年齡,老人小孩有高優(yōu)先級,然后可能又要細(xì)化評估緊急的嚴(yán)重程度,一個胳膊折斷的哭鬧熊孩子跟一個摔倒后昏厥的老年人哪個優(yōu)先就要看具體醫(yī)療資源狀態(tài)了。
決策樹模型在很多機(jī)器學(xué)習(xí)算法里都有體現(xiàn),很多時候我們不知道變量的層級關(guān)系,就預(yù)設(shè)其存在層級關(guān)系然后用數(shù)據(jù)進(jìn)行訓(xùn)練。每一層的節(jié)點(diǎn)代表一個分類標(biāo)準(zhǔn)或特征值的判斷標(biāo)準(zhǔn),樹的枝葉代表最終給出的響應(yīng)。在機(jī)器學(xué)習(xí)的預(yù)測模型y=f(x)中,y代表最終響應(yīng),x代表跟響應(yīng)相關(guān)的特征或?qū)傩?,f則代表一種模型算法。f的構(gòu)建過程可以看作尋找一種讓響應(yīng)相對一致的特征分類或回歸方法。決策樹里每個枝葉的形成過程所經(jīng)歷的特征判斷就是“尋找一種讓響應(yīng)相對一致”的過程。
這個過程實(shí)現(xiàn)的具體過程大概要用到自上而下的貪心算法。具體而言就是首先找遍歷所有不同的x,在每個特征x下找出最小化響應(yīng)y的均值與實(shí)際y差的平方的一個特征x0,這樣就實(shí)現(xiàn)了響應(yīng)的第一層二分,也就構(gòu)建了樹的第一個主分支,這個過程在不同分支上遞歸進(jìn)行就可以訓(xùn)練得到一棵回歸樹。分類樹的構(gòu)建與此類似,不同的是要引入分類錯誤率的概念或者說y分類的內(nèi)在均一度作為訓(xùn)練目標(biāo)。訓(xùn)練過程可以引入類似lasso或嶺回歸或彈性網(wǎng)絡(luò)的懲罰項(xiàng),最后當(dāng)我們得到一顆訓(xùn)練好的決策樹后就可以進(jìn)行預(yù)測了。
預(yù)測過程更加直觀,我們用手頭的x去對應(yīng)節(jié)點(diǎn)上的判斷標(biāo)準(zhǔn)進(jìn)入不同的分支,遞歸進(jìn)行,最后到枝葉上就是預(yù)測結(jié)果。值得說明的是這種層級結(jié)構(gòu)有些變量基本用不到,因此決策樹生成過程也可用來進(jìn)行變量的篩選并對其重要性進(jìn)行評價(jià)。
除了機(jī)理跟預(yù)測,分層這個思路在具體研究中也很常用,例如組學(xué)數(shù)據(jù)里的小樣品大維度場景。假定我有兩組樣品,一組樣品6個樣本,每個樣品測代謝組測到上萬個代謝物,此時你每組樣品去做類似t檢驗(yàn)的差異分析會面臨兩個問題。第一個問題就是錯誤發(fā)現(xiàn)率(FDR)得控制,因?yàn)殡S機(jī)做上萬次t檢驗(yàn)會有大量假陽性。第二個問題就是樣本量帶來的,雖然t檢驗(yàn)用的分布屬于厚尾分布,但在樣品量少的情況下對單一代謝物的方差估計(jì)很可能非常不靠譜,這樣也會引入大量假陽性。層級模型可以用到第二個問題上,基本假設(shè)就是代謝物之間雖然有差異但畢竟都來自于同一個樣品,存在一個基于樣品本身的代謝物間總方差,我們可以先估計(jì)出這個總方差。當(dāng)計(jì)算具體代謝物的方差時,我們用總方差對代謝物原方差進(jìn)行加權(quán)收斂,得到一個介于所有代謝物方差與單一代謝物之間的新方差進(jìn)行差異分析。此處的層級模型在于除了對代謝物本身表達(dá)建模外還要考慮更高一層所有代謝組表達(dá)建模,這樣在進(jìn)行差異分析或統(tǒng)計(jì)推斷時實(shí)際上考慮了代謝物跟代謝組兩個層級的方差來源。這個思路經(jīng)常被稱為經(jīng)驗(yàn)貝葉斯,本質(zhì)上是借用了更高層級下其他數(shù)據(jù)的信息與本層級數(shù)據(jù)信息進(jìn)行混合,進(jìn)而得到一個和稀泥的推斷,這對于小樣品量的實(shí)驗(yàn)其實(shí)很有用,當(dāng)然就算用了層級模型,一樣還得進(jìn)行錯誤發(fā)現(xiàn)率控制。這里類似進(jìn)行了正則化,對方差進(jìn)行了懲罰。經(jīng)驗(yàn)貝葉斯收斂可以用mcmc方法做的更好。
與這個思路類似的就是線性混合模型。在估計(jì)斜率固定效應(yīng)時,可以假定每個樣品的截距來自于一個隨機(jī)分布,或者反過來固定截距,認(rèn)為斜率來自于一個分布。甚至同時認(rèn)為斜率與截距來自于一個分布,然后給出對其方差的估計(jì)。舉個例子,人群中某污染物濃度隨暴露時間而線性增加,此時斜率固定,但每個人本底不一樣,也就是截距不一樣,此時如果不預(yù)先對所有截距建模,那么對斜率的估計(jì)很可能也是錯的或不顯著的。實(shí)踐中如果涉及對同一個體的反復(fù)測量,那么幾乎一定要把不同個體間的隨機(jī)效應(yīng)參與建模。這里層級模型就體現(xiàn)在對于個體參數(shù)估計(jì)是構(gòu)建在更高群體層次上,把群體存在的隨機(jī)效應(yīng)也放到模型構(gòu)建里去,此時得到的模型的固定效應(yīng)可能會更靠譜些。本質(zhì)上很像先聚類再分析,但會考慮不同聚類間的信息共享。
不同部門間工資建模就是個層級模型。
層級模型到了深度學(xué)習(xí)時代也有其地位。例如,多層感知機(jī)構(gòu)架里如果各層之間的激活函數(shù)不是非線性的,那么這個構(gòu)架可以看出一個多層線性模型。很多多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)本質(zhì)上也是在對數(shù)據(jù)進(jìn)行降維簡化與抽象,例如一個編碼器構(gòu)架可以把很高維度的數(shù)據(jù)進(jìn)行降維然后再通過解碼器重構(gòu),這一降一升實(shí)質(zhì)上對于噪音消除效果不錯。另外就是如果對圖片分類的神經(jīng)網(wǎng)絡(luò)不同層可視化,可以看到前面的層感知到的更多是基本線條,越往后越接近人對圖像模式的感知。





暫無評論,快來評論吧!