殊途同歸還是漸行漸遠?MIT神經科學教授James DiCarlo談如何通過人類神經理解神經網路
雷鋒網 AI 科技評論按:國際計算機視覺與模式識別頂級會議CVPR 2017於 7 月 21 日至7 月 26 日在美國夏威夷召開。我們的記者團也特赴夏威夷為大家帶來一手報道。
全體大演講:靈長類視覺理解的反向工程
當地時間 7 月 25日,James DiCarlo 教授進行了題為「The Science of Natural intelligence (NI): Reverse Engineering Primate Visual Perception」(自然智慧的科學:靈長類視覺理解的反向工程)的全體演講。雷鋒網 AI 科技評論對現場演講精華的摘錄如下文:
James DiCarlo 是 MIT 的神經科學教授,MIT 大腦和認知科學學院院長。他是 Alfred Sloan Fellow,是生物醫學科學的皮尤學者(Pew Scholar),以及神經科學界的麥克白學者。他的研究目標是用計算性的方法理解靈長類視覺智能在大腦內的形成機制。
演講正文
DiCarlo 教授首先感謝主辦方邀請他來演講。他來自神經科學界,這次來到CV界的會議,也是想藉此機會做兩個研究領域之間溝通的橋樑。
總體研究內容與方法
教授的研究內容是人類的大腦,研究它是如何工作的、如何用計算的方式模擬它;而CV界的研究目標則是嘗試構建出達到人類大腦表現的系統。所以在教授看來,希望CV界的人也能夠從神經科學的研究中受益。
最理想的狀態是PPT中黃色的這種,CV界的人把自己的研究看作是嘗試構建系統的前向工程,不過要符合一些大腦本身和認知科學的限制。神經科學界的人就是反過來,把大腦看作已經構建好的系統,研究大腦的限制和原理、嘗試模仿大腦結構的反向工程,在過程中逐步對所用的機理和例子做驗證。這樣,神經科學和神經網路的研究可以看作是互為表裡,這樣的研究成果也會給腦機互動帶來更多的可能性。
人類大腦根據視覺輸入可以理解物體的類別、位置、姿態等等信息。人類的物體認知能力很強,毫不費力,很久以前就有不少關於人類的認知能力的研究成果,比如人類對物體的感知聚集在視野中心視角10度左右的範圍內,然後人眼通過移動捕捉多幅畫面的方式來觀察完整的畫面,再鏈接到記憶。他們把人類視覺系統這種特點稱作「中心物體感知」(Core object perception)。教授研究的落腳點就是視覺對象認知任務(Object perception),重點在於類別識別。
教授把對中心物體感知的反向工程分為三步:
首先要對研究對象在領域內的表現做定義和可操作化處理,尤其要關注的是現在製造出的系統相比生物大腦有哪些不足;
然後測量系統中會對表現產生重大影響的組件,比如他就需要測量一些生物特性,測量時候要謹慎地選擇測量哪幾個具體指標;
最後在以上的限制之下進行前向工程,構建模型,用模型把數據組織起來。對於模型而言,它不僅需要能夠解釋、獲取數據,它還要能夠預測新的數據。這樣一來,建模也就是最關鍵的一步。
通過這三個步驟之間的互動構建好模型以後,就可以嘗試拓展模型的應用領域了。
教授今天要講的就是依託這三個步驟,總結他在建立端到端的靈長類中心物體感知系統模型中的進展。
視覺行為測試與數據特徵
教授在研究中進行測試時使用的是生成的圖像,在不相關的背景下放置不同觀察角度的物體。之所以這樣選擇的原因是,當他開始研究時,同時代的CV系統很容易被不相關的背景擾亂識別結果,但是人類就不會受到什麼影響;另一方面,CV系統對於更多姿態和變化時的識別有更大困難,但是人類表現得也很好,體現出了視角無關性,所以他認為這樣的圖像可以更好地展現出人類視覺系統的特點。
教授的測試中用到了人和猴子
訓練猴子做識別測試很容易。教授根據人類和猴子的測試畫過出了這樣的識別模式矩陣,其中根據不同的複雜程度排列了各種物體。每個格子的含義是把這個類別的物體和另一個類別的物體正確區分的比例,顏色越偏紅,識別準確率就越低;越偏藍,識別準確率就越高。
根據誤識別模式矩陣,人類表現和非人的靈長類動物表現基本相同,不僅體現在總體準確率上,也體現在會把哪些東西之間認混上。這樣就可以在動物身上做神經級別的測試和操控,獲得數據的類別和數量都可以大幅度提高。在此基礎之上就可以對信息處理的機制進行系統性的研究。
人類/靈長類的大腦視覺皮層已經有了很多研究成果,人們已經知道可以分成 V1、V2、V4、IT四個區域。整個視覺系統的工作流程圖畫出來的話就是圖中這樣,把視網膜上的細胞看作像素的話,外界的視覺刺激首先組成視網膜色譜圖,然後經過視網膜級別的 LGN 以後依次來到大腦皮層的 V1、V2、V4、IT 區域,每個區域都有百萬級別的細胞;然後每個區域與視網膜形成不同的區域對應特性,對輸入信號的表徵空間也逐步發生變化,人們也就是由此進行的劃分,從而把視覺系統看作是一個深度分層網路。由於 IT 區域在最後,有最高的抽象級別,所以 IT 區域與視網膜的區域對應性也是最弱的,而在物體識別任務中對不同類別物體的響應模式也是最明確的。
另一方面,現有研究已經表明從 V1 開始的區域都是同時具有前饋和反饋的,教授稍後還會談到這些。
今天要談的主要就是 IT 區域的信號特徵。經過研究人們發現 IT 區域其實有三層特徵網路,不過今天教授先按照一層進行演講。
根據教授的測試,從把圖像呈現給眼睛,到 IT 產生響應,其中的延遲大約100毫秒。他們測量響應的方法是在猴子大腦的不同區域植入多通道電極,測量到了神經脈衝的電極就顯示為了圖中測試結果中的一個亮點,很多個亮點就組成了雪花一樣的測量結果。通過四張圖像、IT 中三個不同區域的測量結果,可以明顯看出 IT的這個約100毫秒的響應延遲。它同時也體現出,IT 中的不同區域的對同一個類別圖像的響應是不一樣的。
經過大量圖像的測試,教授發現 IT 對不同類別圖像的總體響應強度高低有所不同(其它神經科學家有也有研究具體某個位置的神經響應是如何變化的)。對於響應模式來說,每個IT細胞都有所不同,每次的響應也不完全相同;上一張PPT里把神經響應畫成了雪花的話,那麼從來就不會出現一模一樣的雪花。
在過程中也有人嘗試研究不同區域的神經是否對不同類別的物體響應強度有所區別,那麼也確實發現了「面部感知神經細胞」,總體來說對人臉的響應更高,但是它們對不同的臉部圖像的響應不同、對其它的類別也不是沒有響應。所以這些細胞並不是嚴格地按照識別物體類別進行區分的細胞,它們的複雜特性也在研究中得到了一些揭示。
IT 特徵的研究
在有這些研究結果以後,教授的研究小組就開始被這一系列問題困擾:如何根據神經細胞的響應特點解釋測試中出現的誤識別行為?生物表現出的外在行為肯定是受到 IT 的神經響應模式影響的,那麼如何找到這種關係?IT 區域的輸出神經有一千萬個,又如何從這一千萬個神經細胞中讀取信號?
下面用到的方法對 CV 界的人來說就要熟悉一些了。首先把 IT 中細胞的響應向量化,測量 n 個細胞的響應信號,對每個輸入的照片可以測量到 n 個細胞的響應模式,得到 n 維特徵空間中的向量表示;這個 n 維空間的基的數目就是找到的特徵數目。接下來,對不同的含有臉部圖片的圖像/沒有臉部的圖像測量響應模式,就可以嘗試能否為特徵空間中的點找到一個線性分類器。
在這裡,教授再一次提到了在動物大腦內手術植入電極。通過不同區域多個電極、每個電極可以採集96個通道(96針)的信號、做大量實驗的方法,對IT等部位構建了維數非常高的數據空間。獲得的數據量相比以前單電極的時代也有著爆炸性的提高。
藉助這樣的方法, 關於 IT 中區域對圖像的響應就可以構建非常高維的響應向量,如圖中所示,大概在100到1000個神經細胞特徵上測量得到的8個向量已經繪製成了圖像的樣子(長條),綠色表示響應高,黑色表示響應低。他們測量了2000個種類圖像的向量,沒有測試更多種類的原因是用類似的特徵做了50次左右的反覆測量以獲得非常高的信噪比。
這樣下來,獲得的高質量的神經細胞響應模式就可以成為IT能夠影響動物形成行為決定的有力證據。用線性解碼器的方法,根據 IT 神經細胞的響應向量對誤識別行為做預測,跟直接測量行為得到的結果相符程度非常高。同樣的方法對視網膜級別的響應是無法達到這樣的預測結果的(這也說明了 IT 細胞響應的類別相關性)。
教授有一個有意思的發現:不需要測量太多的 IT 神經細胞特徵就可以達到人類的表現,大約500個左右就夠。同時代的計算機視覺模型中每個特徵對模型表現的貢獻就要小很多,很多的特徵才能達到近似人類的表現。這說明了動物的視覺理解能力可能就是由一個維數不算高的特徵集支撐的,計算模型就可以用這樣的思路進行模仿。IT 大概含有一千萬個輸出神經細胞,但是傳遞的特徵維數也就不到1000個。
另一方面,既然 IT 神經細胞的響應是在一個 n 維空間中的,能否算出來這個 n 維空間的基的數目是多少,也就是 IT 中表徵類別所用的特徵集的大小是多少呢?他們就利用線性回歸的方法研究神經響應模式,得到特徵集,用特徵集表示神經響應向量,最後用這樣的表示模式嘗試對識別行為做預測,結果是特徵集的大小達到500的時候就能夠準確預測了。這個發現很驚人,通過不同的方法得到了同樣的數字。這也同樣支持了IT是支持各種物體識別任務的基礎。圖中幾個人就是教授的研究小組中跟他一起研究了幾年的幾位學生。
那麼總結來說,IT 的特徵空間就是生物識別能力的潛在基礎,藉助簡單的線性分類應對多數甚至全部物體識別中的挑戰。IT神經群就是一個相對固定的基礎特徵集,幾乎不需要反向訓練就可以用於完成許多物體相關的任務。
在了解了 IT 細胞的特性以後,更實際和更深入的問也就來了:只有500個就夠的 IT 神經細胞特徵是如何形成的?它們是如何從視網膜信號的基礎上逐步抽象的?在人類成長的過程中這些計算方法又來自哪裡?如果能夠研究清楚這些問題,也就對教授團隊的目標有很大幫助。他們的目標就是想辦法構建一個編碼器模型,可以對任何一張圖片、任何一個中間皮脂層都準確預測對應神經群的響應模式,剛剛的問題就是系統構成的關鍵問題。
如何構建能夠解釋 IT 特徵的計算性網路
在當時的所有研究成果中,V1 階層左右的神經細胞功能已經有了很好的解釋和模型,雖然都是只考慮了前饋的模型,但用來解釋 V1的響應的時候已經可以有超過50%的符合程度;但是各種計算模型對 IT 中響應的近似都不好,最多只有20%。所以那時候的模型表現都很差。
教授接下來介紹了一些研究過程中出現過的模仿靈長類視覺系統的模型,通過種種方法從輸入圖片形成一個特徵向量,然後在最後都有一個線性分類器(可以得到物體類別)。根據腦科學研究已有的成果,大家對大腦的工程和限制已經有一些了解了,所以這些模型像大腦一樣有空間局部濾波器、卷積、臨界非線性、非線性池化、正則化等等,就通過這些方法來處理模型的輸出。最早的神經網路是Fukushima在1980年提出的,然後經過Tomaso Poggio、David Cox、Nicolas Pinto等人的繼續研究完善,來到了教授和他的學生們一起完成的HMO模型。
它是一個深度神經網路模型,模仿了人類視覺系統的4個級別,其中有許多計算機視覺的人非常熟悉的卷積、特徵過濾器等等。別的神經科學家經常做完全的神經細胞還原模擬,而他們做的只是在已知的限制之下找到架構更高效的人造模型。HMO在這樣模仿人類的IT基礎上,得到了跟人類類似的正確率表現。
然後他們把模型里對應 IT 的部分的特徵表示和真實神經的IT響應拿來做對比。首先在識別正確率上已經和人類表現相近。
然後,對於某個區域的 IT 神經細胞的具體脈衝的擬合,相比以往模型只能解釋20%的變化,HMO的擬合程度得到了很大提高,大概有50%。這就說明模型中的隱含層的解釋程度同樣很高。
作為神經科學家設計的模型,它不再是黑箱子,它的內部機能是和人類大腦的機能對應的。不僅是IT,V4視覺皮層的預測也達到了新高。圖中的數據也不是來自網路已經見過的類別,而展示的是模型泛化後的結果,「預測」。
教授展示了這樣一張圖,在卷積神經網路研究的過程中,網路本身的物體識別能力是重要的性能指標,而實際上識別能力越強的模型也對 IT 響應的解釋能力越好;HMO這樣的模型在性能表現進化的同時,對IT表現的解釋能力也達到了新高峰(2012年時)。
這時候的發展就比較有意思,雖然大腦和認知科學與計算機視覺的研究目標不同,但是他們做的事情開始有所匯合,都是想辦法建立具有盡量高的性能的模型。
到了2013年的時候,當時風靡的深度神經網路AlexNet的識別表現和對 IT 神經細胞響應的解釋能力都已經超過了他們的 HMO。教授這時也發自內心進行了感謝,深度神經網路方面的技術發展、建立的優秀的模型幫助神經科學家更好地了解人類大腦中的原理。
來自神經網路的新分歧
不過神經科學家能否坐等性能越來越好的神經網路模型,期待著靠它們就能對人類的識別模式有越來越好的理解呢?其實不行,教授自己的實驗室的模型是橘色點,隨著模型的進步,識別性能和解釋性能都得到提高;但是機器學習方面的近期模型僅僅關注圖像分類表現的提升,所以隨著分類表現的提高,對 IT 細胞響應的解釋能力下降了。
不過總的來說,兩個領域共同達成了對神經處理的每一階段都效果不錯的預測模型。重新再來看行為模式圖的話,深度CNN其實跟人類的也很像,但是總體和角落處的準確率更高;除了圖中的這個Inception v3的結果外,其他CNN的表現也很像。
為了繼續深入研究、解析其中的原理,他們用AMT眾包和猴子收集了更多數據, 這樣就可以觀察非常細粒度的數據,針對每一副正確識別或者沒能正確識別的圖像,從行為的角度進行分析。
在非常細的粒度下,猴子和人類的表現仍然非常接近。但是圖像間表現的穩定性/特徵集方面,CNN就與人類和猴子的差別很大了。
教授相信是模型中缺失了某些結構。可能是因為模型中只建模了前饋而沒有建模反饋,導致了靈長類會出現一些CNN模型中觀察不到的行為。
在最新的研究中,測試中也用到了 計算機視覺界圖像數據集 MS Coco 的幫忙,他們把圖像根據測試結果分為了兩類,一類是計算機視覺系統達到了靈長類水平的(CV-solved),另一類是表現沒有達到的,然後測量大腦中IT的響應向量嘗試尋找其中的原因。
然後他們發現,對於那些計算機視覺表現未達到人類水平的圖像(紅點),IT中的響應時間多了一個明顯的、平均大約30ms的延遲(相比達到人類水平的圖像,藍點)。他們認為這30ms內就是那些人腦有、但是CNN網路沒有的結構在工作,比如多次反饋。
這裡還有一個有趣的發現是,前饋CNN網路對IT神經細胞群的解釋能力,在 IT 產生響應花費時間越短的圖像中就越強,在 IT 產生響應花費時間越長的圖像中就越弱;如圖中的曲線。這就從模型結構需要具有反饋、循環結構的角度對兩個研究領域都提出了新的挑戰。
不過教授說這個的目的並不是要求CV界的人一定要把反饋也加上這麼簡單,而是這樣的發現為未來的研究揭示了多個亟待研究的問題。
教授對演講內容做了大致總結:CV界和神經科學界都在理解中心物體感知的機制方面做出了很大的貢獻。對於未來的研究走向何方,教授也提出了新的結構、新的研究工具、研究視覺系統的構建歷程等等問題。
在演講結尾,教授感謝以往的研究者們、他的學生和同事們、贊助商,以及實驗中貢獻了他們的腦子的猴子們。尤其感謝在場的各位,不僅是因為邀請他過來,也因為CV界的成果也對他們的研究有很大的啟發。
提問環節
提問:機器學習領域有遷移學習的方法,可以對一個已經訓練過的網路,再訓練網路的最後幾層識別以前從未見過的物體。人類視覺系統學習識別從未見到的物體是如何訓練的?會在 IT 中增加新的特徵嗎?
答:現在還不能確定IT的特徵集有多少部分是天生的、多少是訓練出的。但是對於成年動物的測試,學習新的類別需要一天左右。經過學習20到30個新的類別以後再測試,IT的特徵空間是一樣的,我們認為是在更早的傳遞過程中有所變化,把新的類別放置在原有特徵空間中的新位置上。
提問:您對現在有的超過100層的神經網路怎麼看,它們和人類神經網路之間有可比性嗎?
答:就像我剛才提到的,更深的網路在測試任務中的表現越來越好,但是對IT細胞的響應的解釋符合度越來越低。如果不對模型結構作限制,只是對任務不斷優化的話,確實會形成這種分化的趨勢。不過其實靈長類視覺四個區域也可能每個都是由很多層組成的,我們也在嘗試把其中的每一層和CNN中的每一層做對應。我在這方面跟你有共同的猜測,但是現在我們也正在研究中,還不是完全的明了。
提問:CV難以識別的圖像中會不會有什麼特殊的特徵才導致了它們難以識別?
答:我們也對那些圖片中的變數作了回歸檢查, 目前還沒能發現什麼特定的原因,沒有發現這些圖像的特別之處。
提問:對不同的層的採樣時間有多久?靈長類視覺層與層之間傳遞信號的延時有多久?
答:一開始演示的IT特徵空間的時候是100ms,後面演示IT的信號延遲的時候是10ms,為了展示出曲線的變化。然後,層與層之間是沒有固定的延遲的,神經科學家其實完全可以認為任意一個神經細胞的任意一個脈衝都是有意義的,在我們這個研究中測量的只是IT的行為,從給出圖像到IT產生行為的延時也是從幾十到200ms都有。至於V1到V2到V4間的時間可能在完全不同的數量級上,不過因為我們沒有專門研究這個,所以就只能說這麼多了。
提問:您猜想IT反饋的信息都會有哪些?純粹猜想
答:對我來說這個問題就像問我前饋流里有哪些信息一樣,用人類的語言很難描述。我覺得它們的作用有可能是通過循環的方式把更深層的網路封裝在更小的空間內,根據我所見的,我是這樣猜測的。不過我不確定所有的循環和反饋都是用來計算、用來推理的,它們也可能是用來學習、用來維持學習的迴路的,這個就可能需要比30ms更長的時間。如果要明確地知道的話,我們就需要更新的工具把細胞間做類型區分,才能精確測量出它們間信號的區別。這也是我們正在研究的前沿部分。所以我猜測其中有學習的循環和在小空間內封裝更深的網路的作用。完全是猜測的,感謝你給我這個猜測的機會
提問:細粒度分類任務是否有所研究?比如不是分類狗和貓,而是分類更細的某種狗、某種貓,這些方面人類的表現也不錯
答:在我們測量的IT的短時間反饋內看不到細粒度分類間的區別。應該是細粒度任務中人類還需要繼續收集更細節的信息才能夠區分,後續的信息目前從神經細胞的層面還分辨不了。
提問:神經細胞是如何完成「卷積」的工作的?
答:其實我經常說,「卷積神經網路」是寫不出來的,因為大腦不是這樣工作的。但是你翻開教科書就能看到這種視覺區域內不同部分都有類似的Gabor函數的假設。有人會說這不就是一種卷積操作嗎,但其實應該問的是,為什麼Gabor函數會起到卷積的作用。我們建立的卷積神經網路網路有單獨的卷積層和卷積運算元,跟大腦不同,大腦可以說是同步嘗試學習如何卷積。所以我覺得是大腦需要學習這樣的功能,學習後的統計特徵也和卷積網路的特徵是類似的,所以才能用兩種不同的方式學習,最終得到類似的濾波器。所以在我看來不是大腦有專門的卷積層,而是最終達到了卷積的效果。希望你能理解我的意思。
(完)
近期還有許多頂級學術會議,還會有許多精彩的學術研究演講。請感興趣的讀者繼續關注雷鋒網 AI 科技評論。
※永輝超市布局新零售;科大訊飛在機器閱讀理解比賽中奪得第一
※SIGGRAPH 2017開幕在即,雷鋒網已經抵達前線
※ACL開幕式最全解讀:大會的三個「最」和三個「第一次」都是什麼?主席們分享了哪些肺腑之言?
※基於 AI-DR 來談, AI 醫療影像該如何落地?
※永輝超市布局新零售;科大訊飛在機器閱讀理解比賽中奪得第一 | AI掘金晚報
TAG:雷鋒網 |
※康復應用解剖:神經傳導通路Conductive Pathway
※如何在 Scratch 中用 Python 構建神經網路
※Ian Goodfellow等人提出對抗重編程,讓神經網路執行其他任務
※使用Google Colaboratory訓練神經網路
※教你使用Keras on Google Colab微調深度神經網路
※The Nervous System 神經系統
※TensorFlow的使用之實現神經網路
※Ian Goodfellow 最新論文:對抗重編程成功干擾神經網路執行任務
※Ian Goodfellow 最新論文:神經網路也能 Debug
※DeepMind提出心智神經網路ToMnet,訓練機器的理解能力
※斯坦福大學教授Christopher Manning提出全可微神經網路架構MAC:可用於機器推理
※用於可視化人工神經網路的 Python庫——ANN Visualizer
※深度學習的「教父」Geoff Hinton:從神經科學適應AI的想法
※基於Keras的關聯神經網路CorrNet綜合指南
※BP神經網路模型:Matlab
※如何把神經網路keras模型轉PMML文件?
※Micah Zimmerman:介入神經血管市場縱覽
※Acta Neuropathol Commun:科學家們開發出診斷神經退行性疾病的新方法
※英特爾的Movidius AI加速技術適用於mini-PCIe版本,旨在加速神經網路
※大數據科普:神經網路入門-監督學習 Supervised Learning