機器學習(machine learning)在心理學上可能有哪些運用?
03/14:添加參考文獻以及小修改。( 感謝@慢半拍de熊 提到英文詞的問題。但我個人能力有限,有些詞確實不太清楚正確的術語翻譯過來應該是什麼,又怕自己翻譯錯。如果有疏漏和錯誤請指正。謝謝!)
---------------------------------------以下正文---------------------------------------
謝邀!沒有系統了解過machine learning。不過最近在學習功能性磁共振(fMRI),machine learning作為一個分析方法也是越來越成為fMRI研究中的主流之一,所以就拿這個來拋磚引玉吧。抱歉前置信息非常非常非常長長長長,在真正提到machine learning之前還請忍耐一下。先說fMRI (functional magnetic resonance imaging):是一種新興的神經影像學方式,其原理是利用磁振造影來測量神經元活動所引發之血液動力的改變。由於fMRI的非侵入性、沒有輻射暴露問題與其較為廣泛的應用,從1990年代開始就在腦部功能定位領域佔有一席之地。目前主要是運用在研究人及動物的腦或脊髓。
(維基百科:https://zh.wikipedia.org/wiki/%E5%8A%9F%E8%83%BD%E6%80%A7%E7%A3%81%E5%85%B1%E6%8C%AF%E6%88%90%E5%83%8F)
簡單來說,在大腦相關的研究中,一般認為活躍的神經細胞會增加耗氧量,因此人體會進行適應性調整,輸送更多的含氧血液到消耗過多的大腦區域。而fMRI技術可以探測到這些含氧血液的變化,因此間接得出大腦區域的激活程度,精度可達1mm x 1mm x 1mm。(一個測量最小單位叫做voxel,認識神經領域常用精度一般為2x2x2或3x3x3。當然,一個voxel里也有成千上萬的神經細胞了,再精細的研究就不是fMRI的活了。)
而將fMRI技術應用於認知神經科學的研究中,就可以通過實驗設計具體探索各種認知過程中相關的大腦神經活動,因此了解大腦功能和認知過程。
fMRI的分析方法:
在fMRI剛興起的一段時間,大部分的研究還是在比較實驗條件A和條件B在某一腦區(region of interest, ROI)的總體活動差異。比如很經典的發現Fusiform Face Area, FFA的研究(Kanwisher et al., 1997)。(通過比較被試觀察面孔圖片和非面孔圖片的大腦激活程度,發現FFA區域在觀察面孔圖片時激活程度顯著高於非面孔圖片。後經一系列後續實驗,現基本認為FFA是大腦負責處理面孔信息的重要選擇性腦區之一。當然關於FFA的功能爭論也存在了一二十年,不再贅述。)但是,只是激活程度的高與低,不足以提供足夠的信息來探索我們的大腦究竟是怎樣運行的,因為我們大腦能做的事情太多太複雜。就好比二進位代碼,在一段很長的代碼里數出有多少個零和多少個壹也就只能得到兩個數字,但是如果考慮各種排列組合,代碼足夠長的話寫小說都沒問題。而大腦有上億個神經細胞呢,只做傳統的激活高低分析不得不說有些浪費了那麼貴的儀器使用費,簡直要天怒人怨(╰_╯)#
所以後來研究者們提出了Multivariate Pattern Analysis 又叫Multi-voxel Pattern Analysis (MVPA),致力於分析在某一條件下大腦激活程度的分布規律。簡單來說就是看看這些voxel的激活情況能分布成什麼情況,是不是一會兒擺個S一會兒擺個B。。。不對,是看看我們能不能從這些分布中獲取什麼大腦運行的信息。
比如說,其中的一種叫做correlation-based MVPA(Haxby et al., 2001),就是得到了這些激活分布圖之後,比較若干實驗條件下這些激活分布圖的相似度也就是相關程度有多高。相關程度高說明大腦在這兩個條件下的反應類似,也暗示著這兩個條件可能存在著相似的大腦活動過程。
但是!這還是高和低的區別啊?!還有更高級的分析方法么?
有!
這就要說到machine learning了(終於!)。這個想法我猜是來自於心理學很經典的黑箱假設。因為我們沒法得知我們的心理過程到底是怎麼樣的(或者說,實驗員沒法直接「讀出」被試的心理活動),心理實驗能做到的就是給一堆input,收集一堆output,然後猜測「心理活動」這個black box里究竟有什麼。隨著對心理活動的猜想和理論逐漸增多,研究者們還可以建立一個黑箱也就是machine,然後通過那些理論假設教會這個machine怎麼去做,再然後給它同樣的input,看它能不能產生和被試一樣的output,如果不能那理論肯定有一些問題,如果能,說明這個理論有可能是真實的。
(以上是個人想法,歡迎大家質疑討論。)那麼,machine learning怎麼用在fMRI中呢?既然研究者們假設,大腦是根據激活分布情況來「編譯」和處理各種信息的,那麼更進一步的假設就是,我們能不能通過大腦的激活分布情況,倒推著來解碼(decoding) 判斷出大腦是受到了什麼樣的刺激?(咦感覺有點怪怪的)
所以,machine learning MVPA,就是通過數學方法建立一個東西叫做classifier,然後收集到的數據中有一部分用來訓練這個classifier,告訴它在條件A時應該擺什麼造型,不對應該產生某個腦區什麼樣的激活分布,條件B時應該是什麼激活分布。訓練完了之後,拿另一部分數據的大腦結果去測試它,看它能不能判斷,對應這個分布情況的應該是條件A還是條件B。最後得出的結果是這個classifier的正確率。如果正確率高,說明這個腦區很有可能與實驗條件中的心理過程相關。
這相當於在某種程度上模擬出了大腦的運行情況,不得不說是高大上並且越來越成為主流之一的研究方法。另一個感覺更為高大上的估計就是encoding了,就是給出條件名讓machine自己擺姿勢。如果能做到這一程度,估計距離發現和解釋大腦秘密的那一天就真正不遠了。
--------------------------我是單眼皮的後記分割線--------------------------
1. 感覺真正提machine learning好像也沒和fMRI牽扯的太緊密,所以我寫這麼長是要幹嘛orz……跑題的話請見諒。
2. 邏輯理下來,machine learning能夠用到的地方絕不僅僅是神經科學研究。只不過要讓machine真的learn需要大量的數據,而找一萬個voxel比測試行為實驗被試一萬次容易多了,所以在認知神經科學這邊用的更順手一些。
3. 需要強調的是: 相關不等於因果。這點也適用於認知神經科學研究,哪怕machine learning這樣advanced的方法得出的結果,在做出因果推論之前也要三思。4. 差點忘記最關鍵的題外話:心理學不是讀心術!心理學不是讀心術!心理學不是讀心術!Mind-reading是我們的目標之一。但由以上說明就可以看出,現有的心理學是非常難做到大眾偏見認為的「超能力讀心術」的,而更多是在總結一群人在某一條件下的整體規律,甚至這些總結出來的整體規律也不一定能達到業界共識(各個分支多的是吵了幾十年的經典理論)。當然現在越來越多的研究者開始涉及和考量個體差異(individual differences),但這就更加難以排除各種雜訊。所以千萬別再問「你能不能猜到我現在在想什麼了」,那跟問CS專業「你能不能做一台電腦出來」一樣尷尬。參考文獻:
Kanwisher, N., McDermott, J., Chun, M. M. (1997). The fusiform face area: a module in human extrastriate cortex specialized for face perception. The Journal of Neuroscience, 17(11), 4302-4311.Haxby, J. V., Gobbini, M. I., Furey, M. L., Ishai, A., Schouten, J. L., Pietrini, P. (2001). Distributed and Overlapping Representations of Faces and Objects in Ventral Temporal Cortex. Science, 293(5539), 2425–2430.Haxby, J. V. (2012). Multivariate pattern analysis of fMRI: the early beginnings. Neuroimage, 62(2), 852-855.03/11/2016 於大哥村
ML在心理學裡面並不是什麼新鮮的靈藥
翻開這本講義,完全就是《機器學習的數學基礎》;DeepLearning 的起源神經網路的基礎,不也是心理學家Hebb提出的;另外一派貝葉斯大腦與貝葉斯認知的研究也一直如火如荼地進行(最近可能被DeepLearning搶了風頭)。所以說,並不是ML「可能」為心理學帶來什麼,而是兩者之間本來就是密不可分相輔相成的。非要說好處么,希望ML的大熱可以帶動人們對科學心理學研究的興趣,也希望心理學研究可以多多藉助ML之熱,更好地向大眾宣傳自己,做好科普工作,早日擺脫星座算命色彩精神病的印象。IBM Watson Personality Insights 從少量文本分析出性格特徵。
只要數據夠 而且樣本分布合理 都可以用
推薦閱讀:
※工作後想換機器學習方向,需要學到什麼程度去找工作?
※多倫多大學機器學習水平如何?
※caffe,theano,torch,mxnet,tensorflow,哪款工具更適合閱讀源代碼學習?
※如何評價李開復新書《人工智慧》?
※回歸(regression)問題是否比分類(classification)問題更難用神經網路模型學好?