其實我很早以前,就已知有”貝葉斯分析”這回事,但從來沒瞭解它的原理、用途及方法等…
隨著學統計的日子越久,開始對統計的認識越深;統計就似是一瓶美酒,懂得品嚐者很著迷,不懂者就怕那苦澀味… 而我也深知傳統的統計學有著各種各樣的限制與不足;如要符合概率論的、最好是大樣本量、正態分佈則最好等等… 但現實又豈只是僅有這些情況呢!?於是統計學家在各種變異的情況下研究出這樣那樣的解決辦法:非參數檢驗(Non parametric test)、自助法(Bootstrap)、貝葉斯分析(Bayesian analysis)等等...
貝葉斯分析:
它是先驗信息+樣本信息--->根據貝葉斯定理--->後驗信息--->推斷未知參數。
據說這樣的理論,更符合人類的認知過程(!?)
因為需要高階計算,以往是很難實施的;但隨著電腦的發展、馬可夫蒙特卡羅方法(MCMC)及其相應軟件WinBUGS的完善,使其在近廿年有了很大的進展及應用。
WinBUGS的大概應用步驟:
1.設計模型
2.在DAG中建立Doodle模型 / 或輸入程式
在程式中要 mode
Model/Specification--->Check model
4.輸入數據:Model/Specification--->Load data
可用新窗口建立:File/New;也可以用list(變項名=c(…))---與R形式一樣
5.對模型進行編譯:Model/Specification--->Compile
6.對模型初始值設定:Model/Specification--->load inits
7.取得模型:Model/Specification--->gen?
8.設定要運算的變項:Inference/Sample--->node 選入要運算的變項 --->set
9.對變項/模型進行迭代:Model/update--->iterations 輸入迭代次數 --->update
10.輸出模型的結果:Inference/Sample--->node *(代表全部被選變項) --->stats / density…
11.判別模型收斂情況…???還有其他類似的軟件的, 比如:OpenBUGS... 但建議用WinBUGS較好, 因較穩定!
沒有留言:
張貼留言