BP神經(jīng)網(wǎng)絡在分類與預測中的應用ppt課件
《BP神經(jīng)網(wǎng)絡在分類與預測中的應用ppt課件》由會員分享,可在線閱讀,更多相關《BP神經(jīng)網(wǎng)絡在分類與預測中的應用ppt課件(86頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1,一、 BP神經(jīng)網(wǎng)絡 二、 徽章的分類 三、光催化臭氧氧化處理自來水,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,2,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,利用機器模仿人類的智能是長期以來人們認識自然、改造自然和認識自身的理想。,(1) 探索和模擬人的感覺、思維和行為的規(guī)律,設計具有人類智能的計算機系統(tǒng)。(2) 探討人腦的智能活動,用物化了的智能來考察和研究人腦智能的物質(zhì)過程及其規(guī)律。,3,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,(1) 生理結(jié)構(gòu)的模擬,用仿生學觀點,探索人腦的生理結(jié)構(gòu),把對人腦的微觀結(jié)構(gòu)及其智能行為的研究結(jié)合起來即人工神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN)方法。,4,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,(1) 生理結(jié)構(gòu)的模擬,(2) 宏觀功能的模擬,從人的思維活動和智能行為的心理學特性出發(fā),利用計算機系統(tǒng)來對人腦智能進行宏觀功能的模擬,即符號處理方法。,5,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,(1) 理論研究,ANN模型及其學習算法,試圖從數(shù)學上描述ANN的動力學過程,建立相應的ANN模型,在該模型的基礎上,對于給定的學習樣本,找出一種能以較快的速度和較高的精度調(diào)整神經(jīng)元間互連權值,使系統(tǒng)達到穩(wěn)定狀態(tài),滿足學習要求的算法。,6,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,(1) 理論研究,(2) 實現(xiàn)技術的研究,探討利用電子、光學、生物等技術實現(xiàn)神經(jīng)計算機的途徑。,7,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,(1) 理論研究,(2) 實現(xiàn)技術的研究,(3) 應用的研究,探討如何應用ANN解決實際問題,如模式識別、故障檢測、智能機器人等。,8,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,人工神經(jīng)網(wǎng)絡是由具有適應性簡單的單元組成的廣泛并行互連的網(wǎng)絡,它的組織能夠模擬生物神經(jīng)系統(tǒng)對真實物體所作出的交互作用。,9,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,1.1.5 腦神經(jīng)信息活動的特征,(1) 巨量并行性 (2) 信息處理和存儲單元的有機結(jié)合 (3) 自組織自學習功能,10,1.1.6 ANN研究的目的和意義,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,1.1.5 腦神經(jīng)信息活動的特征,(1) 通過揭示物理平面與認知平面之間的映射,了解它們相互聯(lián)系和相互作用的機理,揭示思維的本質(zhì),探索智能的本源。,11,1.1.6 ANN研究的目的和意義,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,1.1.5 腦神經(jīng)信息活動的特征,(2) 爭取構(gòu)造出盡可能與人腦具有相似功能的計算機,即ANN計算機。,12,1.1.6 ANN研究的目的和意義,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,1.1.5 腦神經(jīng)信息活動的特征,(3) 研究仿照腦神經(jīng)系統(tǒng)的人工神經(jīng)網(wǎng)絡,將在模式識別、組合優(yōu)化和決策判斷等方面取得傳統(tǒng)計算機所難以達到的效果。,13,1.1.6 ANN研究的目的和意義,1.1.7 神經(jīng)網(wǎng)絡研究的發(fā)展,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,1.1.5 腦神經(jīng)信息活動的特征,(1) 第一次熱潮(40-60年代未) 1943年,美國心理學家W.McCulloch和數(shù)學家W. Pitts在提出了一個簡單的神經(jīng)元模型,即MP模型.1958年,F(xiàn).Rosenblatt等研制出了感知機(Perceptron)。,14,1.1.6 ANN研究的目的和意義,1.1.7 神經(jīng)網(wǎng)絡研究的發(fā)展,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.1 研究ANN目的,1.1.2 研究ANN方法,1.1.3 ANN的研究內(nèi)容,1.1.4 人工神經(jīng)網(wǎng)絡概述,1.1.5 腦神經(jīng)信息活動的特征,(2) 低潮(70-80年代初)(3) 第二次熱潮1982年,美國物理學家J.J.Hopfield提出Hopfield模型,它是一個互聯(lián)的非線性動力學網(wǎng)絡, 他解決問題的方法是一種反復運算的動態(tài)過程,這是符號邏輯處理方法所不具備的性質(zhì)。1987年首屆國際ANN大會在圣地亞哥召開,國際ANN聯(lián)合會成立,創(chuàng)辦了多種ANN國際刊物。,15,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.8 神經(jīng)網(wǎng)絡基本模型,,16,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1.9 人工神經(jīng)網(wǎng)絡研究的局限性,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.8 神經(jīng)網(wǎng)絡基本模型,(1)ANN研究受到腦科學研究成果的限制 (2)ANN缺少一個完整、成熟的理論體系 (3)ANN研究帶有濃厚的策略和經(jīng)驗色彩 (4)ANN與傳統(tǒng)技術的接口不成熟,17,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1.9 人工神經(jīng)網(wǎng)絡研究的局限性,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.8 神經(jīng)網(wǎng)絡基本模型,18,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1.9 人工神經(jīng)網(wǎng)絡研究的局限性,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.1.8 神經(jīng)網(wǎng)絡基本模型,一般而言, ANN與經(jīng)典計算方法相比并非優(yōu)越, 只有當常規(guī)方法解決不了或效果不佳時ANN方法才能顯示出其優(yōu)越性 . 尤其對問題的機理不甚了解或不能用數(shù)學模型表示的系統(tǒng),如故障診斷,特征提取和預測等問題,ANN往往是最有利的工具.另一方面, ANN對處理大量原始數(shù)據(jù)而不能用規(guī)則或公式描述的問題, 表現(xiàn)出極大的靈活性和自適應性。,19,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,人工神經(jīng)網(wǎng)絡以其具有自學習、自組織、較好的容錯性和優(yōu)良的非線性逼近能力,受到眾多領域?qū)W者的關注。在實際應用中,80%~90%的人工神經(jīng)網(wǎng)絡模型是采用誤差反傳算法或其變化形式的網(wǎng)絡模型(簡稱BP網(wǎng)絡),目前主要應用于函數(shù)逼近、模式識別、分類和數(shù)據(jù)壓縮或數(shù)據(jù)挖掘。,20,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,Rumelhart,Mc Clelland于1985年提出了BP網(wǎng)絡的誤差反向后傳BP(Back Propagation)學習算法,1.2.1 BP神經(jīng)網(wǎng)絡概述,21,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,BP算法基本原理 利用輸出后的誤差來估計輸出層的直接前導層的誤差,再用這個誤差估計更前一層的誤差,如此一層一層的反傳下去,就獲得了所有其他各層的誤差估計。,1.2.1 BP神經(jīng)網(wǎng)絡概述,22,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,1.2.1 BP神經(jīng)網(wǎng)絡概述,1.2.2 BP神經(jīng)網(wǎng)絡特點,神經(jīng)網(wǎng)絡能以任意精度逼近任何非線性連續(xù)函數(shù)。在建模過程中的許多問題正是具有高度的非線性。,(1)非線性映射能力,23,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,1.2.1 BP神經(jīng)網(wǎng)絡概述,1.2.2 BP神經(jīng)網(wǎng)絡特點,在神經(jīng)網(wǎng)絡中信息是分布儲存和并行處理的,這使它具有很強的容錯性和很快的處理速度。,(2)并行分布處理方式,(1)非線性映射能力,24,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,1.2.1 BP神經(jīng)網(wǎng)絡概述,1.2.2 BP神經(jīng)網(wǎng)絡特點,神經(jīng)網(wǎng)絡在訓練時,能從輸入、輸出的數(shù)據(jù)中提取出規(guī)律性的知識,記憶于網(wǎng)絡的權值中,并具有泛化能力,即將這組權值應用于一般情形的能力。神經(jīng)網(wǎng)絡的學習也可以在線進行。,(2)并行分布處理方式,(3)自學習和自適應能力,(1)非線性映射能力,25,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,1.2.1 BP神經(jīng)網(wǎng)絡概述,1.2.2 BP神經(jīng)網(wǎng)絡特點,神經(jīng)網(wǎng)絡可以同時處理定量信息和定性信息,因此它可以利用傳統(tǒng)的工程技術(數(shù)值運算)和人工智能技術(符號處理),(2)并行分布處理方式,(3)自學習和自適應能力,(4)數(shù)據(jù)融合的能力,(1)非線性映射能力,26,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,1.2.1 BP神經(jīng)網(wǎng)絡概述,1.2.2 BP神經(jīng)網(wǎng)絡特點,(2)并行分布處理方式,(3)自學習和自適應能力,神經(jīng)網(wǎng)絡的輸入和輸出變量的數(shù)目是任意的,對單變量系統(tǒng)與多變量系統(tǒng)提供了一種通用的描述方式,不必考慮各子系統(tǒng)間的解耦問題。,(4)數(shù)據(jù)融合的能力,(5)多變量系統(tǒng),(1)非線性映射能力,27,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,一、 BP神經(jīng)網(wǎng)絡,1.1 神經(jīng)網(wǎng)絡(Artificial Neural Netwroks,簡稱ANN),1.2 BP神經(jīng)網(wǎng)絡,1.2.1 BP神經(jīng)網(wǎng)絡概述,1.2.2 BP神經(jīng)網(wǎng)絡特點,1.2.3 BP神經(jīng)網(wǎng)絡模型,28,1.2.3 BP神經(jīng)網(wǎng)絡模型,29,(1) 激活函數(shù)(傳輸函數(shù))必須處處可導 一般都使用S型函數(shù),,,Sigmoid函數(shù),對數(shù)Sigmoid函數(shù),1.2.3 BP神經(jīng)網(wǎng)絡模型,30,(2)使用S型激活函數(shù)時BP網(wǎng)絡輸入與輸出關系,,,1.2.3 BP神經(jīng)網(wǎng)絡模型,輸入,輸出,31,,,(2)使用S型激活函數(shù)時BP網(wǎng)絡輸入與輸出關系,,,1.2.3 BP神經(jīng)網(wǎng)絡模型,輸出的導數(shù),根據(jù)S型激活函數(shù)的圖形可知,對神經(jīng)網(wǎng)絡進行訓練,應該將net的值盡量控制在收斂比較快的范圍內(nèi).,輸入,輸出,32,1.2.4 BP神經(jīng)網(wǎng)絡的標準學習算法,33,1.2.4 BP網(wǎng)絡的標準學習算法,(1) 學習的過程 在外界輸入樣本的刺激下,不斷改變網(wǎng)絡連接的權值,以使網(wǎng)絡的輸出不斷地接近期望的輸出。 (2) 學習的本質(zhì)對各連接權值的動態(tài)調(diào)整 (3) 學習規(guī)則 權值調(diào)整規(guī)則,即在學習過程中網(wǎng)絡各神經(jīng)元的連接權值變化所依據(jù)的一定調(diào)整規(guī)則。,34,1.2.4 BP網(wǎng)絡的標準學習算法,將誤差分攤給各層的所有單元-----各層單元的誤差信號,修正各單元權值,,,(4) 算法思想A. 學習的類型 有導師學習B. 核心思想 將輸出誤差以某種形式通過隱層向輸入層逐層反傳,35,A. 正向傳播輸入樣本---輸入層---各隱層---輸出層B. 判斷是否轉(zhuǎn)入反向傳播階段若輸出層的實際輸出與期望的輸出(教師信號)不符.C. 誤差反傳誤差以某種形式在各層表示----修正各層單元的權值.D. 網(wǎng)絡輸出的誤差減少到可接受的程度進行到預先設定的學習次數(shù)為止,,,,1.2.4 BP網(wǎng)絡的標準學習算法,(5) 算法核心,36,(6) 網(wǎng)絡結(jié)構(gòu)輸入層有n個神經(jīng)元,隱含層有p個神經(jīng)元, 輸出層有q個神經(jīng)元 (7) 變量定義,1.2.4 BP網(wǎng)絡的標準學習算法,輸入向量,隱含層輸入向量,隱含層輸出向量,輸出層輸入向量,輸出層輸出向量,37,,,,,,,,1.2.4 BP網(wǎng)絡的標準學習算法,38,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,第一步,網(wǎng)絡初始化 給各連接權值分別賦一個區(qū)間(-1,1)內(nèi)的隨機數(shù),設定誤差函數(shù)e,給定計算精度值?和最大學習次數(shù)M。,第二步,隨機選取第k個輸入樣本及對應期望輸出,39,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,第三步,計算隱含層各神經(jīng)元的輸入和輸出,40,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,第四步,利用網(wǎng)絡期望輸出和實際輸出,計算誤差函數(shù)對輸出層的各神經(jīng)元的偏導數(shù) 。,41,第五步, 利用隱含層到輸出層的連接權值、 輸出層的 和隱含層的輸出計算誤差函數(shù)對隱含層各神經(jīng)元的偏導數(shù) 。,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,42,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,43,第六步,利用輸出層各神經(jīng)元的 和隱含層各神經(jīng)元的輸出來修正連接權值 。,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,44,第七步,利用隱含層各神經(jīng)元的 和輸入層各神經(jīng)元的輸入修正連接權。,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,45,第八步,計算全局誤差第九步,判斷網(wǎng)絡誤差是否滿足要求。當誤差達到預設精度或?qū)W習次數(shù)大于設定的最大次數(shù),則結(jié)束算法。否則,選取下一個學習樣本及對應的期望輸出,返回到第三步,進入下一輪學習。,(8) 算法步驟,1.2.4 BP網(wǎng)絡的標準學習算法,46,1.2.4 BP網(wǎng)絡的標準學習算法,情況一直觀表達當誤差對權值的偏導數(shù)大于零時,權值調(diào)整量為負,實際輸出大于期望輸出,權值向減少方向調(diào)整,使得實際輸出與期望輸出的差減少。,(9) BP算法直觀解釋,47,(9) BP算法直觀解釋,1.2.4 BP網(wǎng)絡的標準學習算法,情況二直觀表達誤差對權值的偏導數(shù)小于零時,權值調(diào)整量為正,實際輸出少于期望輸出,權值向增大方向調(diào)整,使得實際輸出與期望輸出的差減少,48,1.2.5 BP神經(jīng)網(wǎng)絡的學習算法的MATLAB實現(xiàn),49,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),(1) MATLAB中BP神經(jīng)網(wǎng)絡的重要函數(shù)和基本功能,50,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),newff( ) 功能 建立一個前向BP網(wǎng)絡 格式 net = newff(PR,[S1 S2.SN1],{TF1 TF2.TFN1},BTF,BLF,PF) 說明 net為創(chuàng)建的新BP神經(jīng)網(wǎng)絡;PR為網(wǎng)絡輸入向量的取值范圍的矩陣;[S1 S2…SNl]表示網(wǎng)絡隱含層和輸出層神經(jīng)元的個數(shù); {TFl TF2…TFN1} 表示網(wǎng)絡隱含層和輸出層的傳輸函數(shù), 默認為‘tansig’;BTF表示網(wǎng)絡的訓練函數(shù),默認為‘trainlm’;BLF表示網(wǎng)絡的權值學習函數(shù), 默認為‘learngdm’;PF表示性能數(shù),默認為‘mse’。,(1) MATLAB中BP神經(jīng)網(wǎng)絡的重要函數(shù)和基本功能,51,tansig( ) 功能 正切sigmoid激活函數(shù) 格式 a = tansig(n) 說明 雙曲正切Sigmoid函數(shù)把神經(jīng)元的輸入范圍從(-∞,+∞)映射到(-1,1)。它是可導函數(shù),適用于BP訓練的神經(jīng)元。 logsig( ) 功能 對數(shù)Sigmoid激活函數(shù) 格式 a = logsig(n) 說明 對數(shù)Sigmoid函數(shù)把神經(jīng)元的輸入范圍從(-∞,+∞)映射到(0,1)。它是可導函數(shù),適用于BP訓練的神經(jīng)元。,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),(1) MATLAB中BP神經(jīng)網(wǎng)絡的重要函數(shù)和基本功能,52,net.trainParam.epochs:最大訓練步數(shù)。不過當誤差準則滿足時,即使沒達到此步數(shù)也停止訓練。缺省為100。 net.trainParam.goad:網(wǎng)絡誤差準則,當誤差小于此準則時停止訓練,缺省為0。 net.trainFcn:訓練算法。缺省為 ’trainlm’,即Levenberg-Marquardt算法。還可使用‘traingdx’,即帶動量的梯度下降算法;’traincgf’,即共軛梯度法。 其它可看matlab幫助:help-contents- Neural Network Toobox- Network Object Reference; help(net.trainFcn),1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),(1) MATLAB中BP神經(jīng)網(wǎng)絡的重要函數(shù)和基本功能,53,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),(1) MATLAB中BP神經(jīng)網(wǎng)絡的重要函數(shù)和基本功能,54,例 下表為某藥品的銷售情況,,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),(2) 實例,現(xiàn)構(gòu)建一個如下的三層BP神經(jīng)網(wǎng)絡對藥品的銷售進行預測:輸入層有三個結(jié)點,隱含層結(jié)點數(shù)為5,隱含層的激活函數(shù)為tansig;輸出層結(jié)點數(shù)為1個,輸出層的激活函數(shù)為logsig,并利用此網(wǎng)絡對藥品的銷售量進行預測,預測方法采用滾動預測方式,即用前三個月的銷售量來預測第四個月的銷售量,如用1、2、3月的銷售量為輸入預測第4個月的銷售量,用2、3、4月的銷售量為輸入預測第5個月的銷售量.如此反復直至滿足預測精度要求為止。,55,%以每三個月的銷售量經(jīng)歸一化處理后作為輸入 P=[0.5152 0.8173 1.0000 ; 0.8173 1.0000 0.7308;1.0000 0.7308 0.1390; 0.7308 0.1390 0.1087;0.1390 0.1087 0.3520; 0.1087 0.3520 0.1065; ?]'; %以第四個月的銷售量歸一化處理后作為目標向量 T=[0.7308 0.1390 0.1087 0.3520 0.1065 0.3761]; %創(chuàng)建一個BP神經(jīng)網(wǎng)絡,每一個輸入向量的取值范圍為[0 ,1],隱含層有5個神經(jīng)%元,輸出層有一個神經(jīng)元,隱含層的激活函數(shù)為tansig,輸出層的激活函數(shù)為%logsig,訓練函數(shù)為梯度下降函數(shù). net=newff([0 1;0 1;0 1],[5,1],{'tansig','logsig'},'traingd'); net.trainParam.epochs=15000; net.trainParam.goal=0.01; %設置學習速率為0.1 LP.lr=0.1; net=train(net,P,T);,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),(2) 實例,56,1.2.4 BP網(wǎng)絡學習算法的MATLAB實現(xiàn),BP網(wǎng)絡應用于藥品預測對比圖,(2) 實例,由對比圖可以看出預測效果與實際存在一定誤差,此誤差可以通過增加運行步數(shù)和提高預設誤差精度使其進一步縮小,57,徽章問題是一個典型的分類問題。我們可以用一個具體的例子描述:在某個國際會議上,參加會議的280名代表每人收到會議組織者發(fā)給一枚徽章,徽章的標記為“+”或“-”。會議的組織者聲明:每位代表得到徽章“+”或“-”的標記只與他們的姓名有關,并希望代表們能夠找出徽章“+”與“-”的分類方法。由于客觀原因,有14名代表沒能參加此次會議。按照代表們找出的方法判斷,如果他們參加會議將得到的徽章類型。,徽章問題的背景,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,二、徽章的分類,58,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,徽章問題的背景,二、徽章的分類,59,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,徽章問題的背景,二、徽章的分類,60,14名未參加會議的代表,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,徽章問題的背景,二、徽章的分類,61,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,徽章問題的背景,二、徽章的分類,14名未參加會議的代表,62,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,63,模型一,我們先做第一種嘗試,將人名的前五個字母進行編號,a ~ z 分別對應 0 ~ 25,即每個人名的特征值是一個長度為5的一維列向量,總共280個人名就是個5*280的矩陣p,作為網(wǎng)絡輸入。將題目中的徽章問題量化,假設徽章為+則為1, 徽章為-則為0, 就形成一個1*280的矩陣t,作為目標輸出。,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,將這些特征值作為訓練樣本, 通過Matlab的工具箱對BP分類算法進行訓練,并確定權值,具體程序,注釋及結(jié)果如下:,64,模型一,BP神經(jīng)網(wǎng)絡在分類與預測中的應用, net=newff([0 25;0 25;0 25;0 25;0 25],[100,1],{'logsig','purelin'},'trainlm'); //創(chuàng)建一個神經(jīng)網(wǎng)絡,每個字母所對應的量化值的輸入范圍0~25,神經(jīng)網(wǎng)絡有2層,第一層有100個神經(jīng)元,第二層1個,傳遞函數(shù)分別是S型和線性,訓練方式trainlm。 net=init(net); //初始化神經(jīng)網(wǎng)絡 net.trainParam.min_grad= 1e-020; //設定最小梯度值,提高訓練效果 net=train(net,p,t); TRAINLM, Epoch 0/100, MSE 4.78695/0, Gradient 4628.35/1e-020 TRAINLM, Epoch 25/100, MSE 0.000969475/0, Gradient 4.93588/1e-020 TRAINLM, Epoch 50/100, MSE 6.16266e-005/0, Gradient 4.48141/1e-020 TRAINLM, Epoch 72/100, MSE 4.00219e-031/0, Gradient 1.53435e-013/1e-020 TRAINLM, Maximum MU reached, performance goal was not met.,65,模型一,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,訓練次數(shù)與訓練精度的關系圖,66,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,將用于訓練的輸入數(shù)據(jù)p代入訓練后的神經(jīng)網(wǎng)絡,輸出結(jié)果為a矩陣,模型一,a=sim(net,p) a =Columns 1 through 9 1.0000 0.0000 1.0000 1.0000 0.0000 1.0000 -0.0000 1.0000 1.0000Columns 10 through 18 1.0000 1.0000 1.0000 1.0000 1.0000 -0.0000 1.0000 -0.0000 1.0000(后面數(shù)據(jù)略),將它和用于訓練的目標輸出矩陣t對比可以看出,吻合得很好,67,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型一,a=sim(net,n) a =Columns 1 through 8 1.3889 0.8504 1.0000 0.9551 -0.0006 -0.0515 1.0000 -0.7714Columns 9 through 14 1.0776 0.9977 2.0655 0.4673 0.4794 1.0000,將14個待分類的人名的前五個字母編碼輸入神經(jīng)網(wǎng)絡,得到的結(jié)果如下:,可以看到,這個結(jié)果不是很好, 由很多介于0和1之間的數(shù)字,從這里的分析可以看出,選取字母的編碼作為特征值是合理的,但需要對特征值的選取方案進行細化。,68,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型二,對所給出的280個人名取特征值,我們將人名的第一個字母的進行編號,a ~ z分別對應 0 ~ 25,并將這些特征值帶入到BP網(wǎng)絡中去進行訓練,具體程序如下:,69, net=newff([0 25],[100,1],{'logsig','purelin'},'trainlm'); net=train(net,p,t); TRAINLM, Epoch 0/100, MSE 36.4541/0, Gradient 10111.3/1e-010 TRAINLM, Epoch 6/100, MSE 0.115783/0, Gradient 7.80296e-013/1e-010 TRAINLM, Minimum gradient reached, performance goal was not met. net.trainParam.min_grad= 1e-020; net=train(net,p,t); TRAINLM, Epoch 0/100, MSE 0.115783/0, Gradient 7.80296e-013/1e-020 TRAINLM, Epoch 3/100, MSE 0.115783/0, Gradient 1.18794e-012/1e-020 TRAINLM, Maximum MU reached, performance goal was not met.,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型二,從訓練情況可以看出,在誤差值比較大的時候訓練就停止了,將輸入p帶入訓練后的矩陣,發(fā)現(xiàn)輸出結(jié)果與t很不一致,說明這里找不到分類的規(guī)律。,70,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型三,對所給出的280個人名取特征值,我們將人名的第二個字母的進行編號,a ~ z分別對應 0 ~ 25,并將這些特征值帶入到BP網(wǎng)絡中去進行訓練,具體程序如下:,71,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型三, net=newff([0 25],[100,1],{'logsig','purelin'},'trainlm'); net=init(net); net.trainParam.epochs = 100; net.trainParam.min_grad= 1e-020; net=train(net,p,t); TRAINLM, Epoch 0/100, MSE 1.33712/0, Gradient 889.071/1e-020 TRAINLM, Epoch 7/100, MSE 0.00352734/0, Gradient 2.11219e-012/1e-020 TRAINLM, Maximum MU reached, performance goal was not met. a=sim(net,p),訓練后的BP神經(jīng)網(wǎng)絡,輸入?yún)⒓佑柧毜臄?shù)據(jù)p,驗證數(shù)據(jù),可以看出,和所給人名所對應的徽章滿足的很好,所得到的數(shù)據(jù)如下:,72,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型三,a =Columns 1 through 8 0.9877 0.0000 0.9877 0.9877 -0.0000 0.9877 0.0000 1.0000Columns 9 through 16 0.9877 0.9877 0.9877 1.0000 1.0000 1.0000 -0.0000 1.0000,訓練次數(shù)和訓練精度的關系,收斂的速度相當之快,73,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,模型三,對于待分類的人名,先將其做同樣的量化,如下: n=[4 4 8 8 4 14 0 19 0 0 0 8 4 14 ]; a=sim(net,n) 用已訓練完的BP神經(jīng)網(wǎng)絡對其進行分類,得到的結(jié)果如下: a =Columns 1 through 8 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 0.9877 0.0000Columns 9 through 14 0.9877 0.9877 0.9877 1.0000 1.0000 1.0000 可以看出,也是呈0-1的分布,和分類的要求比較接近。,74,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,分類方法的確定,通過模型一,模型二和模型三的比較,我們可以看出模型三的特征值的取法所得的BP算法對于所給的 280 個數(shù)據(jù)的正確率為100%, 并且對于14 個待分類的人名計算得到的特征值從數(shù)據(jù)本身看來非0即1,可見模型三所對應的分類方法有可能是可行的,即我們可以通過對名字的第二個字母的某種標準進行分類。我們通過對第二個字母的多種分類方法進行嘗試,得到通過第二個字母的元輔音進行分類,即第二個字母是元音為+,為輔音為-,并對280個所給人名進行分類,結(jié)果與所給分類方式一致,可見這就是我們要找的分類方法。,75,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,分類方法的確定,用這種分類方法對14個待分類人名進行分類得到的結(jié)果如下: 1 1 1 1 1 1 1 0 1 1 1 1 1 1 將這個分類結(jié)果與上面我們通過Matlab用BP算法得出的分類結(jié)果一致, 這再一次證明我們所找到的分類方法就是最好的分類方法。,76,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,三、光催化臭氧氧化處理自來水,77,三、光催化臭氧氧化處理自來水,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,78,三、光催化臭氧氧化處理自來水,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,檢驗樣本,79,三、光催化臭氧氧化處理自來水,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,網(wǎng)絡結(jié)構(gòu) 網(wǎng)絡分為4層。各層節(jié)點數(shù)分別為:輸入層2個;第一隱層12個;第二隱層6個;輸出層1個。,,80,三、光催化臭氧氧化處理自來水,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,數(shù)據(jù)預處理,輸入數(shù)據(jù)和輸出數(shù)據(jù)都規(guī)格化為0到1:最大訓練步數(shù) net.trainParam.epochs=100000 收斂誤差界值 net.trainParam.goad=0.0001,模型的參數(shù),81,BP網(wǎng)絡訓練誤差曲線和網(wǎng)絡模型,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,82,模型預測結(jié)果與實測值比較,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,83,三、光催化臭氧氧化處理自來水,利用BP網(wǎng)絡對O3濃度的優(yōu)化,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,84,三、光催化臭氧氧化處理自來水,利用BP網(wǎng)絡對O3濃度的優(yōu)化,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,85,三、光催化臭氧氧化處理自來水,利用BP網(wǎng)絡對O3濃度的優(yōu)化,BP神經(jīng)網(wǎng)絡在分類與預測中的應用,86,THANK YOU,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- BP 神經(jīng)網(wǎng)絡 分類 預測 中的 應用 ppt 課件
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://appdesigncorp.com/p-510190.html