人工神經網絡-SVM-深度學習簡介_第1頁
人工神經網絡-SVM-深度學習簡介_第2頁
人工神經網絡-SVM-深度學習簡介_第3頁
人工神經網絡-SVM-深度學習簡介_第4頁
人工神經網絡-SVM-深度學習簡介_第5頁
已閱讀5頁,還剩53頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

神經網絡及SVM簡介2021/6/271

以馮·諾依曼型計算機為中心的信息處理技術的高速發展,使得計算機在當今的信息化社會中起著十分重要的作用。但是,當用它來解決某些人工智能問題時卻遇到了很大的困難。例如,一個人可以很容易地識別他人的臉孔,但計算機則很難做到這一點。大腦是由生物神經元構成的巨型網絡,它在本質上不同于計算機,是一種大規模的并行處理系統,它具有學習、聯想記憶、綜合等能力,并有巧妙的信息處理方法。

人工神經網絡來源于對人腦實際神經網絡的模擬一、神經網絡發展歷史1.背景知識2021/6/272人腦和CPU2021/6/273神經細胞利用電-化學過程交換信號。輸入信號來自另一些神經細胞。這些神經細胞的軸突末梢(也就是終端)和本神經細胞的樹突相遇形成突觸(synapse),信號就從樹突上的突觸進入本細胞。信號在大腦中實際怎樣傳輸是一個相當復雜的過程,但就我們而言,重要的是把它看成和現代的計算機一樣,利用一系列的0和1來進行操作。就是說,大腦的神經細胞也只有兩種狀態:興奮(fire)和不興奮(即抑制)。發射信號的強度不變,變化的僅僅是頻率。神經細胞利用一種我們還不知道的方法,把所有從樹突上突觸進來的信號進行相加,如果全部信號的總和超過某個閥值,就會激發神經細胞進入興奮(fire)狀態,這時就會有一個電信號通過軸突發送出去給其他神經細胞。如果信號總和沒有達到閥值,神經細胞就不會興奮起來。2021/6/274人腦和CPU

動物

神經細胞的數目(數量級)

蝸牛

10,000(=10^4)

蜜蜂

100,000(=10^5)

蜂雀

10,000,000(=10^7)

老鼠

100,000,000(=10^8)

人類

10,000,000,000(=10^10)

大象

100,000,000,000(=10^11)2021/6/275人腦和CPUCPU只具備一個功能就是二進制加法運算2021/6/276人腦的特點對損傷有冗余性(tolerance)能實現無監督的學習處理信息的效率極高善于歸納推廣CPUi73.0Ghz,4個核人腦100hz,10G個核2021/6/277人工神經網絡一個人工神經網絡(Artificialneuralnetwork,簡稱ANN)就是要在當代數字計算機現有規模的約束下,來模擬這種大量的并行性,并在實現這一工作時,使它能顯示許多和生物學大腦相類似的特性。2021/6/278

人工神經網絡(ArtificialNeuralNetwroks,簡稱ANN)是對人類大腦系統的一種仿真,簡單地講,它是一個數學模型,可以用電子線路來實現,也可以用計算機程序來模擬,是人工智能研究的一種方法。

實際上它是由大量的、功能比較簡單的形式神經元互相連接而構成的復雜網絡系統,用它可以模擬大腦的許多基本功能和簡單的思維方式。盡管它還不是大腦的完美元缺的模型,但它可以通過學習來獲取外部的知識并存貯在網絡內,可以解決計算機不易處理的難題,特別是語音和圖像的識別、理解、知識的處理、組合優化計算和智能控制等一系列本質上是非計算的問題。

2.什么是人工神經網絡2021/6/2791943年,美國心理學家W.McCulloch和數學家W.Pitts在提出了一個簡單的神經元模型,即MP模型。1958年,F.Rosenblatt等研制出了感知機(Perceptron)。3.幾個發展階段

第一次熱潮(40-60年代未)1982年,美國物理學家J.J.Hopfield提出Hopfield模型,它是一個互聯的非線性動力學網絡他解決問題的方法是一種反復運算的動態過程,這是符號邏輯處理方法所不具備的性質.1987年首屆國際ANN大會在圣地亞哥召開,國際ANN聯合會成立,創辦了多種ANN國際刊物。1990年12月,北京召開首屆學術會議。

低潮(70-80年代初)

第二次熱潮

第三次熱潮GPU大數據新方法深度學習理論2021/6/2710學習的類型2021/6/2711人工神經網絡人工神經元模型x1…xn表示與該神經元相連接的所有神經元的輸入(出)w1…wn表示與相連接神經元的突觸強度(連接權)θ表示神經元的(電壓)閾值。f()表示激勵函數,單調上升函數,且取有限值神經元電位值:神經元的輸出值:y=f(s)Σf()...ys2021/6/2712人工神經網絡激勵函數的基本作用控制輸入對輸出的激活;對輸入、輸出進行函數轉換;將可能無限域的輸入變換成指定的有限范圍內的輸出。激勵函數類型閾值函數線性函數非線性函數Sigmoid函數2021/6/2713人工神經網絡Sigmoid函數就是把神經細胞原有的階躍式輸出曲線鈍化為一光滑曲線S型函數具有非線性放大系數功能,可以把輸入從負無窮大到正無窮大的信號,變換成-1到l之間輸出對較大的輸入信號,放大系數較小;而對較小的輸入信號,放大系數則較大采用S型激活函數可以處理和逼近非線性輸入/輸出關系2021/6/2714BP神經網絡2021/6/2715BP神經網絡計算2021/6/2716BP神經網絡Rumelhart,McClelland于1985年提出了BP網絡的誤差反向后傳BP(BackPropagation)學習算法BP神經網絡是一種按誤差逆傳播算法訓練的多層前饋網絡,是目前應用最廣泛的神經網絡模型之一。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網絡的權值和閾值,使網絡的誤差平方和最小。J.McClelland

DavidRumelhart

2021/6/2717學習規則BP算法屬于δ算法,是一種監督式的學習算法主要思想對于q個輸入學習樣本:P1,P2,…,Pq,已知與其對應的輸出樣本為:T1,T2,…,Tq使網絡輸出層的誤差平方和達到最小用網絡的實際輸出A1,A2,…,Aq,與目標矢量T1,T2,…,Tq之間的誤差修改其權值,使Am與期望的Tm,(m=l,…,q)盡可能接近2021/6/2718學習規則BP算法是由兩部分組成,信息的正向傳遞與誤差的反向傳播正向傳播過程中,輸入信息從輸入層經隱含層逐層計算傳向輸出層,每一層神經元的狀態只影響下一層神經元的狀態如果在輸出層未得到期望的輸出,則計算輸出層的誤差變化值,然后轉向反向傳播,通過網絡將誤差信號沿原來的連接通路反傳回來修改各層神經元的權值直至達到期望目標2021/6/27192021/6/2720一般認為,增加隱層數可以降低網絡誤差(也有文獻認為不一定能有效降低),提高精度,但也使網絡復雜化,從而增加了網絡的訓練時間和出現“過擬合”現象。Hornik等早已證明:若輸入層和輸出層采用線性轉換函數,隱層采用Sigmoid轉換函數,則含一個隱層的MLP網絡能夠以任意精度逼近任何有理函數。顯然,這是一個存在性結論。在設計BP網絡時可參考這一點,應優先考慮3層BP網絡(即有1個隱層)。一般地,靠增加隱層節點數來獲得較低的誤差,其訓練效果要比增加隱層數更容易實現。隱層數多少隱層數才合適?2021/6/2721

隱層節點數在BP網絡中,隱層節點數的選擇非常重要,它不僅對建立的神經網絡模型的性能影響很大,而且是訓練時出現“過擬合”的直接原因,但是目前理論上還沒有一種科學的和普遍的確定方法。目前多數文獻中提出的確定隱層節點數的計算公式都是針對訓練樣本任意多的情況。事實上,各種計算公式得到的隱層節點數有時相差幾倍甚至上百倍。確定隱層節點數的最基本原則是:在滿足精度要求的前提下取盡可能緊湊的結構,即取盡可能少的隱層節點數。研究表明,隱層節點數不僅與輸入/輸出層的節點數有關,更與需解決的問題的復雜程度和轉換函數的型式以及樣本數據的特性等因素有關。2021/6/2722應用實例2021/6/2723net=newff(A,B,{C},’trainfun’)Matlab命令A是一個n×2的矩陣,第i行元素為輸入信號xi的最小值和最大值;

參數說明B為一k維行向量,其元素為各隱層節點數;trainfun為學習規則采用的訓練函數(常見訓練函數如下表)。C為一k維字符串行向量,每一分量為對應層神經元的激勵函數;2021/6/2724函數名功能函數名traingd梯度下降法traincgftraingdm勢能修正法traincgptraingdx自調整學習效率法traincgbtrainrp恢復BP法trainscgFR共軛梯度法trainbfgBFGS擬牛頓法PR共軛梯度法trainoss一步共軛+擬牛頓PB共軛梯度法trainlmLM法標量共軛梯度法trainbrBayesian規范法2.

常見訓練函數2021/6/2725MATLAB中激勵函數為其字符串分別為:’logsig’,’tansig’,’purelin’3.

激勵函數2021/6/2726

除了需要輸入A,B,{C},’trainfun’外,還有些默認的參數可修改,如下表4.

可修改參數參數名功能缺省值net.trainParam.goal目標函數設定值0net.trainParam.epochs最大迭代次數100net.trainParam.show顯示中間結果的周期25net.trainParam.lr整批學習的學習效率0.01net.trainParam.mc勢能學習規則traingdm的勢能率0.9注:不同版本Matlab的可修改參數列表可能不同。2021/6/2727

[net,tr,Y1,E]=train(net,X,Y)5.

BP網絡的訓練與泛化

網絡訓練訓練跟蹤信息訓練后網絡網絡實際輸出誤差矩陣網絡訓練函數未經訓練網絡網絡實際輸入網絡應有輸出X為n×M矩陣,為輸入數據矩陣,M為樣本的組數。Y為m×M矩陣,為輸出數據矩陣。2021/6/2728

訓練結束后,對新的輸入點數據X2,調用sim函數進行泛化,得出這些輸入點處的輸出矩陣Y2.

數據泛化Y2=sim(net,X2)

用經過訓練的網絡對于不是樣本集的輸入,計算出相應的輸出。什么是數據泛化?2021/6/2729例1

由下面的語句生成一組數據x和y,用神經網絡進行數據擬合

x=0:.1:10;y=0.12*exp(-0.213*x)+0.54*exp(-0.17*x).*sin(1.23*x);可知(x,

y)是曲線上的點。x=0:.1:10;y=0.12*exp(-0.213*x)+0.54*exp(-0.17*x).*sin(1.23*x);net=newff([0,10],[5,1],{'tansig','tansig'});net.trainParam.epochs=1000;net=train(net,x,y);x0=0.05:.1:10;figure(1)y1=sim(net,x0);plot(x,y,'o',x0,y1,'r')2021/6/2730實例.蠓蟲分類問題的神經網絡方法

(1989年MCM競賽題目

)生物學家試圖對兩種蠓蟲(Af與Apf)進行鑒別,依據的資料是觸角和翅膀的長度,已經測得9只Af和6只Apf的數據如下:

9只Af觸角長:1.241.361.381.381.381.401.481.541.56翅膀長:1.721.741.641.821.901.701.821.822.086只Apf觸角長:1.141.181.201.261.281.30翅膀長:1.781.961.862.002.001.96問題:(1)如何憑借原始資料(15對數據,被稱之為學習樣本)制定一種方法,正確區分兩類蠓蟲;

(2)依據確立的方法,對以下三個樣本:

(1.24,1.80),(1.28,1.84),(1.40,2.04)加以識別

2021/6/2731解法一:建立兩層前向神經網絡如下:

隱層節點可適量選取(沒有具體標準)。X=為輸入矩陣,x1對應于觸角長,x2對應于翅膀長。Y=為輸出矩陣規定Af對應的應有輸出為,Apf對應的應有輸出為

輸入層隱層輸出層2021/6/2732以上神經網絡模型的MATLAB程序如下:

x=[1.241.361.381.381.381.401.481.541.561.141.181.201.261.281.301.721.741.641.821.901.701.821.822.081.781.961.862.002.001.96];

%原始數據x=x-1.1;%數據標準化y=[000000000111111;111111111000000];%應有的輸出net=newff([0,1;01],[5,2],{'tansig','tansig'});

%建立兩層前向神經網絡%net.trainParam.goal=0.0000001;%設定訓練誤差net.trainParam.epochs=2000;%設定最大訓練步數net=train(net,x,y);%訓練網絡y1=sim(net,x)%輸出數據yy=sim(net,[1.241.281.40;1.801.842.04])%數據泛化2021/6/2733underfittingoverfittinggoodfit神經網絡的問題1需要大樣本2隱層的個數無公式3整個計算過程過于模糊,很容易陷入局部最優導致欠擬合或者過擬合2021/6/2734SVM的理論基礎傳統的統計模式識別方法只有在樣本趨向無窮大時,其性能才有理論的保證。統計學習理論(STL)研究有限樣本情況下的機器學習問題。SVM的理論基礎就是統計學習理論。傳統的統計模式識別方法在進行機器學習時,強調經驗風險最小化。而單純的經驗風險最小化會產生“過學習問題”,其推廣能力較差。推廣能力是指:將學習機器(即預測函數,或稱學習函數、學習模型)對未來輸出進行正確預測的能力。2021/6/2735SVM根據統計學習理論,學習機器的實際風險由經驗風險值和置信范圍值兩部分組成。而基于經驗風險最小化準則的學習方法只強調了訓練樣本的經驗風險最小誤差,沒有最小化置信范圍值,因此其推廣能力較差。Vapnik提出的支持向量機(SupportVectorMachine,SVM)以訓練誤差作為優化問題的約束條件,以置信范圍值最小化作為優化目標,即SVM是一種基于結構風險最小化準則的學習方法,其推廣能力明顯優于一些傳統的學習方法。形成時期在1992—1995年。2021/6/2736線性判別函數和判別面一個線性判別函數(discriminantfunction)是指由x的各個分量的線性組合而成的函數

兩類情況:對于兩類問題的決策規則為如果g(x)>0,則判定x屬于C1,如果g(x)<0,則判定x屬于C2,如果g(x)=0,則可以將x任意分到某一類或者拒絕判定。

2021/6/2737最優分類面

SVM是從線性可分情況下的最優分類面發展而來的,基本思想可用圖2的兩維情況說明.

圖中,方形點和圓形點代表兩類樣本,H為分類線,H1,H2分別為過各類中離分類線最近的樣本且平行于分類線的直線,它們之間的距離叫做分類間隔(margin)。

所謂最優分類線就是要求分類線不但能將兩類正確分開(訓練錯誤率為0),而且使分類間隔最大.推廣到高維空間,最優分類線就變為最優分類面。

2021/6/2738分類超平面示意圖最優分類超平面圖

兩類樣本中離分類面最近的點且平行于最優分類超平面的樣本點叫做支持向量。2021/6/2739非線性變換基本思想:選擇非線性映射Φ(X)將x映射到高維特征空間Z,在Z中構造最優超平面2021/6/2740SVM方法的特點①

非線性映射是SVM方法的理論基礎,SVM利用內積核函數代替向高維空間的非線性映射;②

對特征空間劃分的最優超平面是SVM的目標,最大化分類邊際的思想是SVM方法的核心;③

支持向量是SVM的訓練結果,在SVM分類決策中起決定作用的是支持向量。

SVM是一種有堅實理論基礎的新穎的小樣本學習方法。它基本上不涉及概率測度及大數定律等,因此不同于現有的統計方法。從本質上看,它避開了從歸納到演繹的傳統過程,實現了高效的從訓練樣本到預報樣本的“轉導推理”(transductiveinference),大大簡化了通常的分類和回歸等問題。2021/6/2741SVM方法的特點SVM的最終決策函數只由少數的支持向量所確定,計算的復雜性取決于支持向量的數目,而不是樣本空間的維數,這在某種意義上避免了“維數災難”。

少數支持向量決定了最終結果,這不但可以幫助我們抓住關鍵樣本、“剔除”大量冗余樣本,而且注定了該方法不但算法簡單,而且具有較好的“魯棒”性。這種“魯棒”性主要體現在:①增、刪非支持向量樣本對模型沒有影響;②支持向量樣本集具有一定的魯棒性;③有些成功的應用中,SVM方法對核的選取不敏感。2021/6/2742深度學習2021/6/2743淺層學習是機器學習的第一次浪潮人工神經網絡(BP算法)—雖被稱作多層感知機,但實際是種只含有一層隱層節點的淺層模型SVM、Boosting、最大熵方法(如LR,LogisticRegression)—帶有一層隱層節點(如SVM、Boosting),或沒有隱層節點(如LR)的淺層模型局限性:有限樣本和計算單元情況下對復雜函數的表示能力有限,針對復雜分類問題其泛化能力受限。基本概念淺層學習與深度學習2021/6/27442006年,加拿大多倫多大學教授、機器學習領域的泰斗GeoffreyHinton在《科學》上發表論文提出深度學習主要觀點:1)多隱層的人工神經網絡具有優異的特征學習能力,學習得到的特征對數據有更本質的刻畫,從而有利于可視化或分類;2)深度神經網絡在訓練上的難度,可以通過“逐層初始化”(layer-wisepre-training)來有效克服,逐層初始化可通過無監督學習實現的。基本概念2021/6/2745深度學習:深度學習通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發現數據的分布式特征表示深度神經網絡:含有多個隱層的神

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論