評論(0

人工神經網路

標籤: 暫無標籤

人工神經網路(artificial neural network,縮寫ANN),簡稱神經網路(neural network,縮寫NN),是一種模仿生物神經網路的結構和功能的數學模型或計算模型。神經網路由大量的人工神經元聯結進行計算。大多數情況下人工神經網路能在外界信息的基礎上改變內部結構,是一種自適應系統。現代神經網路是一種非線性統計性數據建模工具,常用來對輸入和輸出間複雜的關係進行建模,或用來探索數據的模式。它的構築理念是受到生物(人或其他動物)神經網路功能的運作啟發而產生的。人工神經網路通常是通過一個基於數學統計學類型的學習方法(Learning Method)得以優化,所以人工神經網路也是數學統計學方法的一種實際應用,通過統計學的標準數學方法我們能夠得到大量的可以用函數來表達的局部結構空間,另一方面在人工智慧學的人工感知領域,我們通過數學統計學的應用可以來做人工感知方面的決定問題(也就是說通過統計學的方法,人工神經網路能夠類似人一樣具有簡單的決定能力和簡單的判斷能力),這種方法比起正式的邏輯學推理演算更具有優勢。

1 人工神經網路 -生理原理

神經元與神經元通過突觸建立了廣泛的聯繫,構成了極端複雜的神經網路,從而保證實現對信息的接收、傳遞和處理的功能。據估計,大腦皮層每個神經細胞可有30000個突觸。神經網路的基本聯繫方式主要有三種:(1) 輻射式。即一個神經元的軸突通過它的末梢分支與許多神經元建立突觸聯繫。這種聯繫可以使一個神經元的興奮引起多個神經元的同時性興奮或抑制。傳入神經元主要按照輻射式建立突觸聯繫。(2) 聚合式。即許多神經元的神經末梢共同與一個神經元建立突觸聯繫。這許多神經元可能都是興奮的或都是抑制的,也可能有的引起興奮,有的引起抑制,它們聚合起來共同決定著突觸后神經元的活動狀態。這種聯繫表現了神經興奮在時間和空間上的整合作用。傳出神經元主要按照聚合式建立突觸聯繫。(3) 環式。即一個神經元發出的神經衝動經過幾個中間神經元,又傳回至原發衝動的神經元。它使神經衝動在這個迴路內往返傳遞,形成時間上的多次加強。以上神經元的各種聯繫方式,是神經系統協調反射活動的基礎。

2 人工神經網路 -特徵

人工神經網路人工神經網路

由大量處理單元互聯組成的非線性、自適應信息處理系統。它是在現代神經科學研究成果的基礎上提出的,試圖通過模擬大腦神經網路處理、記憶信息的方式進行信息處理。人工神經網路具有四個基本特徵:

(1)非線性 非線性關係是自然界的普遍特性。大腦的智慧就是一種非線性現象。人工神經元處於激活或抑制二種不同的狀態,這種行為在數學上表現為一種非線性關係。具有閾值的神經元構成的網路具有更好的性能,可以提高容錯性和存儲容量。

(2)非局限性 一個神經網路通常由多個神經元廣泛連接而成。一個系統的整體行為不僅取決於單個神經元的特徵,而且可能主要由單元之間的相互作用、相互連接所決定。通過單元之間的大量連接模擬大腦的非局限性。聯想記憶是非局限性的典型例子

(3)非常定性 人工神經網路具有自適應、自組織、自學習能力。神經網路不但處理的信息可以有各種變化,而且在處理信息的同時,非線性動力系統本身也在不斷變化。經常採用迭代過程描寫動力系統的演化過程。

(4)非凸性 一個系統的演化方向,在一定條件下將取決於某個特定的狀態函數。例如能量函數,它的極值相應於系統比較穩定的狀態。非凸性是指這種函數有多個極值,故系統具有多個較穩定的平衡態,這將導致系統演化的多樣性。

人工神經網路中,神經元處理單元可表示不同的對象,例如特徵、字母、概念,或者一些有意義的抽象模式。網路中處理單元的類型分為三類:輸入單元、輸出單元和隱單元。輸入單元接受外部世界的信號與數據;輸出單元實現系統處理結果的輸出;隱單元是處在輸入和輸出單元之間,不能由系統外部觀察的單元。神經元間的連接權值反映了單元間的連接強度,信息的表示和處理體現在網路處理單元的連接關係中。人工神經網路是一種非程序化、適應性、大腦風格的信息處理,其本質是通過網路的變換和動力學行為得到一種并行分散式的信息處理功能,並在不同程度和層次上模仿人腦神經系統的信息處理功能。它是涉及神經科學、思維科學、人工智慧、計算機科學等多個領域的交叉學科。人工神經網路是并行分散式系統,採用了與傳統人工智慧和信息處理技術完全不同的機理,克服了傳統的基於邏輯符號的人工智慧在處理直覺、非結構化信息方面的缺陷,具有自適應、自組織和實時學習的特點。

3 人工神經網路 -歷史沿革

人工神經網路人工神經網路

1943年,心理學家W.S.McCulloch和數理邏輯學家W.Pitts建立了神經網路和數學模型,稱為MP模型。他們通過MP模型提出了神經元的形式化數學描述和網路結構方法,證明了單個神經元能執行邏輯功能,從而開創了人工神經網路研究的時代。1949年,心理學家提出了突觸聯繫強度可變的設想。60年代,人工神經網路的到了進一步發展,更完善的神經網路模型被提出,其中包括感知器和自適應線性元件等。M.Minsky等仔細分析了以感知器為代表的神經網路系統的功能及局限后,於1969年出版了《Perceptron》一書,指出感知器不能解決高階謂詞問題。他們的論點極大地影響了神經網路的研究,加之當時串列計算機和人工智慧所取得的成就,掩蓋了發展新型計算機和人工智慧新途徑的必要性和迫切性,使人工神經網路的研究處於低潮。在此期間,一些人工神經網路的研究者仍然致力於這一研究,提出了適應諧振理論(ART網)、自組織映射、認知機網路,同時進行了神經網路數學理論的研究。以上研究為神經網路的研究和發展奠定了基礎。1982年,美國加州工學院物理學家J.J.Hopfield提出了Hopfield神經網格模型,引入了「計算能量」概念,給出了網路穩定性判斷。 1984年,他又提出了連續時間Hopfield神經網路模型,為神經計算機的研究做了開拓性的工作,開創了神經網路用於聯想記憶和優化計算的新途徑,有力地推動了神經網路的研究,1985年,又有學者提出了波耳茲曼模型,在學習中採用統計熱力學模擬退火技術,保證整個系統趨於全局穩定點。1986年進行認知微觀結構地研究,提出了并行分佈處理的理論。人工神經網路的研究受到了各個發達國家的重視,美國國會通過決議將1990年1月5日開始的十年定為「腦的十年」,國際研究組織號召它的成員國將「腦的十年」變為全球行為。在日本的「真實世界計算(RWC)」項目中,人工智慧的研究成了一個重要的組成部分。

4 人工神經網路 -內容

人工神經網路人工神經網路

人工神經網路模型主要考慮網路連接的拓撲結構、神經元的特徵、學習規則等。目前,已有近40種神經網路模型,其中有反傳網路、感知器、自組織映射、Hopfield網路、波耳茲曼機、適應諧振理論等。根據連接的拓撲結構,神經網路模型可以分為:

(1)前向網路 網路中各個神經元接受前一級的輸入,並輸出到下一級,網路中沒有反饋,可以用一個有向無環路圖表示。這種網路實現信號從輸入空間到輸出空間的變換,它的信息處理能力來自於簡單非線性函數的多次複合。網路結構簡單,易於實現。反傳網路是一種典型的前向網路。

(2)反饋網路 網路內神經元間有反饋,可以用一個無向的完備圖表示。這種神經網路的信息處理是狀態的變換,可以用動力學系統理論處理。系統的穩定性與聯想記憶功能有密切關係。Hopfield網路、波耳茲曼機均屬於這種類型。

學習是神經網路研究的一個重要內容,它的適應性是通過學習實現的。根據環境的變化,對權值進行調整,改善系統的行為。由Hebb提出的Hebb學習規則為神經網路的學習演算法奠定了基礎。Hebb規則認為學習過程最終發生在神經元之間的突觸部位,突觸的聯繫強度隨著突觸前後神經元的活動而變化。在此基礎上,人們提出了各種學習規則和演算法,以適應不同網路模型的需要。有效的學習演算法,使得神經網路能夠通過連接權值的調整,構造客觀世界的內在表示,形成具有特色的信息處理方法,信息存儲和處理體現在網路的連接中。

根據學習環境不同,神經網路的學習方式可分為監督學習和非監督學習。在監督學習中,將訓練樣本的數據加到網路輸入端,同時將相應的期望輸出與網路輸出相比較,得到誤差信號,以此控制權值連接強度的調整,經多次訓練后收斂到一個確定的權值。當樣本情況發生變化時,經學習可以修改權值以適應新的環境。使用監督學習的神經網路模型有反傳網路、感知器等。非監督學習時,事先不給定標準樣本,直接將網路置於環境之中,學習階段與工作階段成為一體。此時,學習規律的變化服從連接權值的演變方程。非監督學習最簡單的例子是Hebb學習規則。競爭學習規則是一個更複雜的非監督學習的例子,它是根據已建立的聚類進行權值調整。自組織映射、適應諧振理論網路等都是與競爭學習有關的典型模型。

研究神經網路的非線性動力學性質,主要採用動力學系統理論、非線性規劃理論和統計理論,來分析神經網路的演化過程和吸引子的性質,探索神經網路的協同行為和集體計算功能,了解神經信息處理機制。為了探討神經網路在整體性和模糊性方面處理信息的可能,混沌理論的概念和方法將會發揮作用。混沌是一個相當難以精確定義的數學概念。一般而言,「混沌」是指由確定性方程描述的動力學系統中表現出的非確定性行為,或稱之為確定的隨機性。「確定性」是因為它由內在的原因而不是外來的雜訊或干擾所產生,而「隨機性」是指其不規則的、不能預測的行為,只可能用統計的方法描述。混沌動力學系統的主要特徵是其狀態對初始條件的靈敏依賴性,混沌反映其內在的隨機性。混沌理論是指描述具有混沌行為的非線性動力學系統的基本理論、概念、方法,它把動力學系統的複雜行為理解為其自身與其在同外界進行物質、能量和信息交換過程中內在的有結構的行為,而不是外來的和偶然的行為,混沌狀態是一種定態。混沌動力學系統的定態包括:靜止、平穩量、周期性、准同期性和混沌解。混沌軌線是整體上穩定與局部不穩定相結合的結果,稱之為奇異吸引子。一個奇異吸引子有如下一些特徵:(1)奇異吸引子是一個吸引子,但它既不是不動點,也不是周期解;(2)奇異吸引子是不可分割的,即不能分為兩個以及兩個以上的吸引子;(3)它對初始值十分敏感,不同的初始值會導致極不相同的行為。

5 人工神經網路 -優越性

人工神經網路人工神經網路

人工神經網路的特點和優越性,主要表現在三個方面:

第一,具有自學習功能。例如實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網路,網路就會通過自學習功能,慢慢學會識別類似的圖像。自學習功能對於預測有特別重要的意義。預期未來的人工神經網路計算機將為人類提供經濟預測、市場預測、效益預測,其應用前途是很遠大的。

第二,具有聯想存儲功能。用人工神經網路的反饋網路就可以實現這種聯想。

第三,具有高速尋找優化解的能力。尋找一個複雜問題的優化解,往往需要很大的計算量,利用一個針對某問題而設計的反饋型人工神經網路,發揮計算機的高速運算能力,可能很快找到優化解。

6 人工神經網路 -研究方向

人工神經網路人工神經網路

神經網路的研究可以分為理論研究和應用研究兩大方面。

理論研究可分為以下兩類:

1、利用神經生理與認知科學研究人類思維以及智能機理。

2、利用神經基礎理論的研究成果,用數理方法探索功能更加完善、性能更加優越的神經網路模型,深入研究網路演算法和性能,如:穩定性、收斂性、容錯性、魯棒性等;開發新的網路數理理論,如:神經網路動力學、非線性神經場等。

應用研究可分為以下兩類:

1、神經網路的軟體模擬和硬體實現的研究。

2、神經網路在各個領域中應用的研究。這些領域主要包括:

模式識別、信號處理、知識工程、專家系統、優化組合、機器人控制等。隨著神經網路理論本身以及相關理論、相關技術的不斷發展,神經網路的應用定將更加深入。

7 人工神經網路 -應用分析

神經網路近來越來越受到人們的關注,因為它為解決大複雜度問題提供了一種相對來說比較有效的簡單方法。神經網路可以很容易的解決具有上百個參數的問題(當然實際生物體中存在的神經網路要比我們這裡所說的程序模擬的神經網路要複雜的多)。神經網路常用於兩類問題:分類和回歸。在結構上,可以把一個神經網路劃分為輸入層、輸出層和隱含層(見圖1)。輸入層的每個節點對應一個個的預測變數。輸出層的節點對應目標變數,可有多個。在輸入層和輸出層之間是隱含層(對神經網路使用者來說不可見),隱含層的層數和每層節點的個數決定了神經網路的複雜度。

人工神經網路圖1 一個神經元網路

除了輸入層的節點,神經網路的每個節點都與很多它前面的節點(稱為此節點的輸入節點)連接在一起,每個連接對應一個權重Wxy,此節點的值就是通過它所有輸入節點的值與對應連接權重乘積的和作為一個函數的輸入而得到,我們把這個函數稱為活動函數或擠壓函數。如圖2中節點4輸出到節點6的值可通過如下計算得到:

W14*節點1的值+W24*節點2的值

神經網路的每個節點都可表示成預測變數(節點1,2)的值或值的組合(節點3-6)。注意節點6的值已經不再是節點1、2的線性組合,因為數據在隱含層中傳遞時使用了活動函數。實際上如果沒有活動函數的話,神經元網路就等價於一個線性回歸函數,如果此活動函數是某種特定的非線性函數,那神經網路又等價於邏輯回歸。

調整節點間連接的權重就是在建立(也稱訓練)神經網路時要做的工作。最早的也是最基本的權重調整方法是錯誤回饋法,現在較新的有變化坡度法、類牛頓法、Levenberg-Marquardt法、和遺傳演算法等。無論採用那種訓練方法,都需要有一些參數來控制訓練的過程,如防止訓練過度和控制訓練的速度。

人工神經網路圖2 帶權重Wxy的神經元網路

決定神經網路拓撲結構(或體系結構)的是隱含層及其所含節點的個數,以及節點之間的連接方式。要從頭開始設計一個神經網路,必須要決定隱含層和節點的數目,活動函數的形式,以及對權重做那些限制等,當然如果採用成熟軟體工具的話,他會幫你決定這些事情。在諸多類型的神經網路中,最常用的是前向傳播式神經網路,也就是我們前面圖示中所描繪的那種。人們下面詳細討論一下,為討論方便假定只含有一層隱含節點。可以認為錯誤回饋式訓練法是變化坡度法的簡化,其過程如下:前向傳播:數據從輸入到輸出的過程是一個從前向後的傳播過程,后一節點的值通過它前面相連的節點傳過來,然後把值按照各個連接權重的大小加權輸入活動函數再得到新的值,進一步傳播到下一個節點。

回饋:當節點的輸出值與我們預期的值不同,也就是發生錯誤時,神經網路就要「學習」(從錯誤中學習)。我們可以把節點間連接的權重看成后一節點對前一節點的「信任」程度(他自己向下一節點的輸出更容易受他前面哪個節點輸入的影響)。學習的方法是採用懲罰的方法,過程如下:如果一節點輸出發生錯誤,那麼他看他的錯誤是受哪個(些)輸入節點的影響而造成的,是不是他最信任的節點(權重最高的節點)陷害了他(使他出錯),如果是則要降低對他的信任值(降低權重),懲罰他們,同時升高那些做出正確建議節點的信任值。對那些收到懲罰的節點來說,他也需要用同樣的方法來進一步懲罰它前面的節點。就這樣把懲罰一步步向前傳播直到輸入節點為止。

對訓練集中的每一條記錄都要重複這個步驟,用前向傳播得到輸出值,如果發生錯誤,則用回饋法進行學習。當把訓練集中的每一條記錄都運行過一遍之後,人們稱完成一個訓練周期。要完成神經網路的訓練可能需要很多個訓練周期,經常是幾百個。訓練完成之後得到的神經網路就是在通過訓練集發現的模型,描述了訓練集中響應變數受預測變數影響的變化規律。

由於神經網路隱含層中的可變參數太多,如果訓練時間足夠長的話,神經網路很可能把訓練集的所有細節信息都「記」下來,而不是建立一個忽略細節只具有規律性的模型,我們稱這種情況為訓練過度。顯然這種「模型」對訓練集會有很高的準確率,而一旦離開訓練集應用到其他數據,很可能準確度急劇下降。為了防止這種訓練過度的情況,人們必須知道在什麼時候要停止訓練。在有些軟體實現中會在訓練的同時用一個測試集來計算神經網路在此測試集上的正確率,一旦這個正確率不再升高甚至開始下降時,那麼就認為現在神經網路已經達到做好的狀態了可以停止訓練。

圖3中的曲線可以幫人們理解為什麼利用測試集能防止訓練過度的出現。在圖中可以看到訓練集和測試集的錯誤率在一開始都隨著訓練周期的增加不斷降低,而測試集的錯誤率在達到一個谷底后反而開始上升,人們認為這個開始上升的時刻就是應該停止訓練的時刻。

人工神經網路人工神經網路

神經網路在訓練周期增加時準確度的變化情況

神經元網路和統計方法在本質上有很多差別。神經網路的參數可以比統計方法多很多。如圖4中就有13個參數(9個權重和4個限制條件)。由於參數如此之多,參數通過各種各樣的組合方式來影響輸出結果,以至於很難對一個神經網路表示的模型做出直觀的解釋。實際上神經網路也正是當作「黑盒」來用的,不用去管「盒子」裡面是什麼,只管用就行了。在大部分情況下,這種限制條件是可以接受的。比如銀行可能需要一個筆跡識別軟體,但他沒必要知道為什麼這些線條組合在一起就是一個人的簽名,而另外一個相似的則不是。在很多複雜度很高的問題如化學試驗、機器人、金融市場的模擬、和語言圖像的識別,等領域神經網路都取得了很好的效果。

神經網路的另一個優點是很容易在并行計算機上實現,可以把他的節點分配到不同的CPU上并行計算。

在使用神經網路時有幾點需要注意:第一,神經網路很難解釋,目前還沒有能對神經網路做出顯而易見解釋的方法學。

第二,神經網路會學習過度,在訓練神經網路時一定要恰當的使用一些能嚴格衡量神經網路的方法,如前面提到的測試集方法和交叉驗證法等。這主要是由於神經網路太靈活、可變參數太多,如果給足夠的時間,他幾乎可以「記住」任何事情。

第三,除非問題非常簡單,訓練一個神經網路可能需要相當可觀的時間才能完成。當然,一旦神經網路建立好了,在用它做預測時運行時還是很快得。

第四,建立神經網路需要做的數據準備工作量很大。一個很有誤導性的神話就是不管用什麼數據神經網路都能很好的工作並做出準確的預測。這是不確切的,要想得到準確度高的模型必須認真的進行數據清洗、整理、轉換、選擇等工作,對任何數據挖掘技術都是這樣,神經網路尤其注重這一點。比如神經網路要求所有的輸入變數都必須是0-1(或-1--+1)之間的實數,因此像「地區」之類文本數據必須先做必要的處理之後才能用作神經網路的輸入。

8 人工神經網路 -發展趨勢

人工神經網路特有的非線性適應性信息處理能力,克服了傳統人工智慧方法對於直覺,如模式、語音識別、非結構化信息處理方面的缺陷,使之在神經專家系統、模式識別、智能控制、組合優化、預測等領域得到成功應用。人工神經網路與其它傳統方法相結合,將推動人工智慧和信息處理技術不斷發展。近年來,人工神經網路正向模擬人類認知的道路上更加深入發展,與模糊系統、遺傳演算法、進化機制等結合,形成計算智能,成為人工智慧的一個重要方向,將在實際應用中得到發展。將信息幾何應用於人工神經網路的研究,為人工神經網路的理論研究開闢了新的途徑。神經計算機的研究發展很快,已有產品進入市場。光電結合的神經計算機為人工神經網路的發展提供了良好條件。

上一篇[廸]    下一篇 [康迪斯·斯瓦內普爾]

相關評論

同義詞:暫無同義詞