2010年9月19日星期日

Hebbian Learning (from Web)

我们的大脑复杂无比,里面的神经网路错综复杂,也因此 让我们能够表现智慧的行为。现今一些人工智慧(AI: Artificial Intelligence) 的问题,或许可以透过参考人脑的神经网路,来设计一个可以处理视觉、听觉、文字等资讯的人工智慧系统。除此之外,如果还能够像人类一样,能够自我调整、自我 学习,尽量减少人类对系统直接的调整,是最好的了。然而人脑的神经网路,又是如何自我学习、自我调整呢?今天就先和各位分享神经网路调整的两种方法:海扁学习 和STDP,并且另外介绍神经网路同步化(synchronized)和同多步(polychrnous)的模型,进一步探讨可能的神经网路模式,或许对人工智慧自我学习的方法上,也能提供一些参 考!

Hebbian Learning

Donald O. Hebb (1904 - 1985) 是一位神經心理學家 (圖1 Donald O. Hebb),他對神经网路最重要的一个贡献,就是Hebbian Learning ,在这边我就暂且先翻译成海扁学习法。什么是海扁学习法呢?海扁学习是在学习什么东西呢?首先,让我们先回忆一下,我们的大脑里面,是由许许多 多的神经元(neuron) 所组成,神经元和神经元之间,有着连结,叫做神经键结(synapse)。神经元和神经键结整个形成一个网路,可以让神经讯号到 处传递,就称为一个神经网路(neural network)。

我们外在的行为,就是因为神经网路接受了刺激,处理之 后产生了反应。然而从刺激到反应之间讯号如何被处理、被转换,让我们 的行为表现出有智慧的样子呢?这就牵涉到神经元之间的连结了,因为某些神经元之间连 结弱一点,某些神经元之间的连结强一点,我们就可以针对不同的刺激,产生不同的反应,进而表现出智慧的行为。如果我们再缩小范围来看整个网路里面的某两个神经元, 接着我们就要问,这两个神经元之间的连结强度,要怎样子变强变弱呢? Hebb就针对这个部分提出他的假设,后来也经由许多 实验资料证实,成为海扁学习法了。

所谓的海扁学习法,就是说如果两个神经元常常同时产生 动作电位,或是说同时激动(fire),这两个神经元之间的连结就会变强,反之则变弱。原文引述如下:

Let us assume that the persistence or repetition of a reverberatory activity (or “trace”) tends to induce lasting cellular changes that add to its stability.… When an axon of cell A is near enough to excite a cell B and repeatedly or persistently takes part in firing it, some growth process or metabolic change takes place in one or both cells such that A’s efficiency, as one of the cells firing B, is increased.

根据这个学习法,神经元之间的连结,就根据神经元本身的活动(firing activities),自行调整连结的强弱,连结的强弱,又回来影响往后神经元接收刺激之后产生的反应,表现在行为上,就产生一种学习的效果。如果举个例子来说,譬如说「卧冰求鲤」是神经元A,「打雷」是神经元B。卧冰求鲤,和打雷如果常常发生,我们就会把这两件事情归类成有某种关联,即使我们还不知道两者是什么样子的关联。

STDP: Spike Timing Dependent Plasticity
在Hebb提出海扁学习法之后,1983年之后由 Henry Markram (图2 Henry Markram) 从实验资料中提出一项理论,就是STDP了。 STDP英文全名是Spike Timing Dependent Plasticity,也就是根据神经元活动的「先后顺序」,调整神经元之间连结的强弱。 STDP 可以说是海扁学习法的一种延伸,海扁学习法提出如果两个神经元常常一起活动,之间的连结会变强。 STDP进一步提出,两个神经元之间的活动,如果其他 神经传递的讯息在本身产生活动之前,会加强之间的连结强度。如果神经元本身产生活动之后,才接受到另外一个神经元 来的讯号,则会减弱和该神经元连结的强度。

如果延续刚才的例子,如果神经元B本身,用「打雷」来 代表。另外一个神经元A用「卧冰求鲤」代表。如果卧冰求鲤之后,突然打雷,我们会说孝心感动天,也 就是卧冰求鲤和打雷的连结变强了。如果先打雷,之后才卧冰求鲤,那么我们可能就不会觉得 是孝心感动天了,也就是卧冰求鲤和打雷的连结变弱了。

STDP 影響神經網路的同步性

在 2008年4月的Neuron期刊有一篇paper,是在討論有關STDP對神經網路同步性的影響。首先介紹一下神經網路的同步。所謂同步 (synchronized),就是指神經網路裡面每個神經元,都同時激動 (fire),同時安靜,同時激動,同時安靜。所有的神經元就好像是合為一體一樣,大家一起激動,大家一起安靜。同步化 (synchronized)有哪些特點呢?首先,因為全部的神經元,像是只有一個神經元的活動,因此表現的資訊量變少了。但是另一方面,因為大家的活動都同步了,因此活動的強度變強,在行為上,可以解釋一部分「注意力」(attention)的產生來源。

STDP對神經網路的同步又有哪些影響呢?在Thanos Siapas (圖3 Thanos Siapas)的paper裡面,先提出他們在老鼠睡覺的時候,測量了海馬迴 (hippocampus)區域的神經活動,發現海馬迴會 產生同步化的神經活動 (burst)。在同個時候,如果神經元之間又有 STDP 的規則來調整連結的強弱,會發生一個調節的現象。這個現象就是說,一個網路如果非常同步,STDP會產生一個擾亂的力量,讓神經網路往非同步變化。相反 地,如果神經網路原來沒有同步,STDP會讓神經網路同步化。paper裡面用一些模擬,來確認這件事情。因此STDP讓神經網路在沒有外界刺激,像是睡覺的時候,維持在同步與非同步的臨界點附近。這個預測也和他們在海馬迴 (hippocampus) 的實驗資料吻合,他們也推測這個機制可能是長期記憶從海馬迴,慢慢移動到大腦皮質 (cortex) 的一個過程。

Polychronous 同多步

在上面那篇paper裡面,模擬simulation的神經網路,用了Izhikevich (圖4 Eugene M. Izhikevich)的神經網路模型。一查他的paper,發現2004年Izhikevich提出了同步以外另外一個概念,稱為 Polychronous。Polychronous和同步 (synchronous)類似,唯一的差別在於,polychrnous不是全部的神經元一起激動、一起安靜,而是有一個固定的節奏,第一秒神經元A激動,第3秒神經元B激動,第8秒神經元C激動,以此類推。也就是說,神經元依照一個固定的順序活動,形成一個活動模式 (pattern)。Polychronous怎樣子可以產生呢?Izhikevich在他的神經網路裡面,除了有神經元,神經鍵結的強度,還加上神經鍵結的傳遞時間 (delay)。由於神經元之間訊息傳遞的延遲 (delay),可以造成polychrnous的效果,感覺也有點把神經網路的問題,變成圖論問題的感覺。

結語

圖5 STDP示意圖 圖6 Polychronous示意圖

所以從剛才到現在,我們一一走訪了各種自我學習的理論,包括最早提出的海扁學習 (Hebbian Learning),延伸改良版的STDP (Spike Timing Dependent Plasticity),把神經活動的時間點對鍵結學習的影響考慮進去。之後繼續探討了STDP對於神經網路的同步的影響,也介紹了另一項新的想法,polychronous。 這麼多種模型和學習方法,有的是比前一個更加精細的模型,有個則是提供更多學習方式,讓計算神經的研究者可以有更多選擇來模擬人類的神經網路。其實最重要 的,是希望能夠粹取神經網路裡面的精髓,可能是一種自我學習的演算法,或是一種會自我調適的網路,希望有一天,可以建造出和人類智力相當的計算機,不管是

哪一種應用,對人類的文明進步必定有所幫助!

没有评论:

发表评论