湘潭大學-人工智能課件-機器學習ppt


Artificial Intelligence (AI)人工智能第七章 機器學習
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習8.其他7.知識發(fā)現(xiàn)
阿法狗通過神經(jīng)網(wǎng)絡學習所有高水平圍棋棋譜,大概是歷史上有的20萬個左右職業(yè)棋譜,從而獲得了在盤面上如何落子的直覺。
類似的深度學習是在近幾年出現(xiàn)的,目前,這項科技也有了一些應用,最簡單的例子就是通過深度學習識別貓。通過這項識別驗證,已經(jīng)引申出了更多具有實際意義的應用,比如識別某一個圖片中是否有癌細胞,某一個鐵路沿線上的軌道是否存在磨損,甚至軍事作戰(zhàn)中,對方的視線中是否有坦克,都可以通過深度學習實現(xiàn)。谷歌的自動駕駛,其中很重要的就是識別道路、交通信號燈、路標等,這都是通過深度學習獲得。
阿法狗走的是通用學習的道路。它的估值函數(shù),不是專家攻關搗哧出來的。它的作者只是搭了一個基本的框架(一個多層的神經(jīng)網(wǎng)絡),除了圍棋最基本的規(guī)則外,沒有任何先驗知識。你可以把它想象成一個新生兒的大腦,一張白紙。然后,直接用人類高手對局的3000萬個局面訓練它,自動調(diào)節(jié)它的神經(jīng)網(wǎng)絡參數(shù),讓它的行為和人類高手接近。這樣,阿法狗就具有了基本的棋感,看到一個局面大致就能知道好還是不好。 阿法狗的核心技術還包括策略網(wǎng)絡的訓練和蒙特卡洛樹搜索。
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習8.其他
機器學習是人工智能的核心,通過使機器模擬人類學習行為,智能化地從過去的經(jīng)歷中獲得經(jīng)驗,從而改善其整體性能,重組內(nèi)在知識結構,并對未知事件進行準確的推斷。機器學習在科學和工程諸多領域都有著非常廣泛的應用,例如金融分析、數(shù)據(jù)挖掘、生物信息學、醫(yī)學診斷等。生活中常見的一些智能系統(tǒng)也廣泛使用機器學習算法,例如電子商務、手寫輸入、郵件過濾等。
人類的未來生活和工作,還將有機器人參與。機器人的自主學習,更離不開人臉識別技術。 2015年3月16日,馬云在德國參加活動時,為嘉賓演示了一項“Smile to Pay”的掃臉技術。在網(wǎng)購后的支付認證階段,通過掃臉取代傳統(tǒng)的密碼,實現(xiàn)“刷臉支付”。
機器學習的基本概念機器學習的兩大學派機器學習:人工智能的重要分支構造具有學習能力的智能系統(tǒng)知識、推理、學習手段:統(tǒng)計,邏輯,代數(shù)……統(tǒng)計機器學習從大量樣本出發(fā),運用統(tǒng)計方法,發(fā)現(xiàn)統(tǒng)計規(guī)律有監(jiān)督學習、無監(jiān)督學習、半監(jiān)督學習問題:分類,聚類,回歸
機器學習的基本概念機器學習的定義西蒙(Simon,1983):學習就是系統(tǒng)中的適應性變化,這種變化使系統(tǒng)在重復同樣工作或類似工作時,能夠做得更好。明斯基(Minsky,1985):學習是在人們頭腦里(心理內(nèi)部)有用的變化。學習是一個有特定目的知識獲取和能力增長過程,其內(nèi)在行為是獲得知識、積累經(jīng)驗、發(fā)現(xiàn)規(guī)律等,其外部表現(xiàn)是改進性能、適應環(huán)境、實現(xiàn)自我完善等。機器學習是研究如何使用機器來模擬人類學習活動的一門學科。
機器學習的基本概念機器學習的任務根據(jù)有限樣本集 Q ,推算這個世界 W 的模型,使得其對這個世界為真。
機器學習的基本概念機器學習的三要素一致性假設:假設世界W與樣本集Q具有某種相同性質機器學習的條件。樣本空間劃分:將樣本集放到一個n維空間,尋找一個決策面(等價關系),使得問題決定的不同對象被劃分在不相交的區(qū)域。泛化能力:從有限樣本集合中獲得的規(guī)律是否對學習集以外的數(shù)據(jù)仍然有效。泛化能力 決定模型對世界的有效性。
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習7.其他
機器學習策略與基本結構機器學習的主要策略:按照學習中使用推理的多少,機器學習所采用的策略大體上可分為4種機械學習:記憶學習方法,即把新的知識存儲起來,供需要時檢索調(diào)用,而不需要計算和推理。示教學習:外界輸入知識與內(nèi)部知識的表達不完全一致,系統(tǒng)在接受外部知識時需要推理、翻譯和轉化。類比學習:需要發(fā)現(xiàn)當前任務與已知知識的相似之處,通過類比給出完成當前任務的方案。示例學習:需要從一組正例和反例中分析和總結出一般性的規(guī)律,在新的任務中推廣、驗證、修改規(guī)律。
機器學習策略與基本結構學習系統(tǒng)的基本結構影響學習系統(tǒng)設計的要素環(huán)境:環(huán)境向系統(tǒng)提供信息的水平(一般化程度)和質量(正確性)知識庫:表達能力,易于推理,容易修改,知識表示易于擴展。
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習7.其他
歸納學習歸納學習(Induction Learning)歸納學習是應用歸納推理進行學習的一種方法。歸納學習的模式: 實驗規(guī)劃過程通過對實例空間的搜索完成實例選擇,并將這些選中拿到的活躍實例提交給解釋過程。解釋過程對實例加以適當轉換,把活躍實例變換為規(guī)則空間中的特定概念,以引導規(guī)則空間的搜索。
歸納學習歸納學習(Induction Learning)歸納學習是目前研究得最多的學習方法,其學習目的是為了獲得新概念、構造新規(guī)則或發(fā)現(xiàn)新理論。根據(jù)歸納學習有無教師指導,可把它分為示例學習:給學習者提供某一概念的一組正例和反例,學習者歸納出一個總的概念描述(規(guī)則),并使這個描述適合于所有的正例,排除所有的反例。觀察發(fā)現(xiàn)學習:概念聚類:按照一定的方式和準則分組,歸納概念機器發(fā)現(xiàn):從數(shù)據(jù)和事例中發(fā)現(xiàn)新知識
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習7.其他
類比學習類比推理和類比學習方式類比學習(learning by analogy)就是通過類比,即通過對相似事物加以比較所進行的一種學習 。類比學習是利用二個不同領域(源域、目標域)中的知識相似性,可以通過類比,從源域的知識(包括相似的特征和其它性質)推導出目標域的相應知識,從而實現(xiàn)學習。例如:1. 一個從未開過truck的司機,只要他有開car的知識就可完成開truck的任務。2. 若把某個人比喻為消防車,則可通過觀察消防車的行為,推斷出這個人的性格。
類比學習類比推理和類比學習方式類比學習系統(tǒng)可以使一個已有的計算機應用系統(tǒng)轉變?yōu)檫m應于新的領域,來完成原先沒有設計的相類似的功能。類比推理過程: 回憶與聯(lián)想:找出當前情況的相似情況 選擇:選擇最相似的情況及相關知識 建立對應關系:建立相似元素之間的映射 轉換:求解問題或產(chǎn)生新的知識
類比學習類比學習研究類型問題求解型的類比學習:求解一個新問題時,先回憶以前是否求解過類似問題,若是,則以此為依據(jù)求解新問題。預測推理型的類比學習傳統(tǒng)的類比法:用來推斷一個不完全確定的事物可能還有的其他屬性因果關系型:已知因果關系S1:A->B,如果有A'≌A,則可能有B'滿足A'->B'
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習7.其他
解釋學習解釋學習(Explanation-based learning, EBL) 解釋學習興起于20世紀80年代中期,根據(jù)任務所在領域知識和正在學習的概念知識,對當前實例進行分析和求解,得出一個表征求解過程的因果解釋樹,以獲取新的知識。例如:學生根據(jù)教師提供的目標概念、該概念的一個例子、領域理論及可操作準則,首先構造一個解釋來說明為什么該例子滿足目標概念,然后將解釋推廣為目標概念的一個滿足可操作準則的充分條件。
解釋學習解釋學習過程和算法米切爾提出了一個解釋學習的統(tǒng)一算法EBG,建立了基于解釋的概括過程,并用知識的邏輯表示和演繹推理進行問題求解。其一般性描述為:給定:領域知識DT目標概念TC訓練實例TE操作性準則OC找出:滿足OC的關于TC的充分條件
解釋學習EBG算法可概括為兩步:1.構造解釋:運用領域知識進行演繹,證明提供給系統(tǒng)的訓練實例為什么是滿足目標概念的一個實例。例如:設要學習的目標概念是 “一個物體(Obj1)可以安全地放置在另一個物體(Obj2)上”,即: Safe-To-Stack(Obj1,obj2)領域知識是把一個物體放置在另一個物體上面的安全性準則:
解釋學習EBG算法可概括為兩步:領域知識:?Fragile (y)→ Safe-To-Stack (x ,y):如果y不是易碎的,則x可以安全地放到y(tǒng)的上面Lighter (x, y)→ Safe-To-Stack (x ,y):如果x 比y輕,則x可以安全地放到y(tǒng)的上面Volume (p, v) ∧Density (p, d)∧ *(v, d, w)→ Weight (p, w):如果p的體積是v、密度是d、v乘以d的積是w,則p的重量是wIsa(p, table)→Weight (p, 15) :若p是桌子,則p的重量是15 Weight(p1,w1)∧Weight(p2,w2)∧Smaller(w1,w2)→Lighter(p1,p2):如果p1的重量是w1、 p2的重量是w2、w1比w2小, 則p1比p2輕
解釋學習EBG算法可概括為兩步:Safe-To-Stack(Obj1,obj2)解釋結構:
解釋學習EBG算法可概括為兩步:2.獲取一般性的知識:任務:對上一步得到的解釋結構進行一般化的處理,從而得到關于目標概念的一般性知識。方法:將常量換成變量,并把某些不重要的信息去掉,只保留求解問題必須的關鍵信息。例如: Volume (O1, v1) ∧Density (O1, d1)∧*(v1, d1, w1)∧Isa(O2,table)∧ Smaller(w1,15) → Safe-To-Stack(Obj1,obj2)
解釋學習EBG算法可概括為兩步: Safe-To-Stack(O1,O2)一般化解釋結構以后求解類似問題時,就可以直接利用這個知識進行求解,提到了系統(tǒng)求解問題的效率。
內(nèi)容提要第七章:機器學習系統(tǒng)1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)網(wǎng)絡學習7.其他
神經(jīng)網(wǎng)絡學習神經(jīng)生理學研究表明,人腦的神經(jīng)元既是學習的基本單位,同是也是記憶的基本單位。目前,關于人腦學習和記憶機制的研究有兩大學派:化學學派:認為人腦經(jīng)學習所獲得的信息是記錄在某些生物大分子之上的。例如,蛋白質、核糖核酸、神經(jīng)遞質,就像遺傳信息是記錄在DNA(脫氧核糖核酸)上一樣。突觸修正學派:認為人腦學習所獲得的信息是分布在神經(jīng)元之間的突觸連接上的。
神經(jīng)網(wǎng)絡學習按照突觸修正學派的觀點,人腦的學習和記憶過程實際上是一個在訓練中完成的突觸連接權值的修正和穩(wěn)定過程。其中,學習表現(xiàn)為突觸連接權值的修正,記憶則表現(xiàn)為突觸連接權值的穩(wěn)定。突觸修正假說已成為人工神經(jīng)網(wǎng)絡學習和記憶機制研究的心理學基礎,與此對應的權值修正學派也一直是人工神經(jīng)網(wǎng)絡研究的主流學派。突觸修正學派認為,人工神經(jīng)網(wǎng)絡的學習過程就是一個不斷調(diào)整網(wǎng)絡連接權值的過程。按照學習規(guī)則,神經(jīng)學習可分為:Hebb學習、糾錯學習、競爭學習及隨機學習等。
神經(jīng)網(wǎng)絡學習Hebb學習Hebb學習的基本思想:如果神經(jīng)網(wǎng)絡中某一神經(jīng)元同另一直接與它連接的神經(jīng)元同時處于興奮狀態(tài),那么這兩個神經(jīng)元之間的連接強度將得到加強,反之應該減弱。Hebb學習對連接權值的調(diào)整可表示為:wij (t+1)表示對時刻 t 的權值修正一次后所得到的新的權值;η取正值,稱為學習因子,它取決于每次權值的修正量;xi(t)、xj(t)分別表示 t 時刻第 i 個和第 j 個神經(jīng)元的狀態(tài)。
神經(jīng)網(wǎng)絡學習糾錯學習糾錯學習的基本思想:利用神經(jīng)網(wǎng)絡的期望輸出與實際輸出之間的偏差作為連接權值調(diào)整的參考,并最終減少這種偏差。糾錯學習是一種有導師的學習過程。最基本的誤差修正規(guī)則為:連接權值的變化與神經(jīng)元希望輸出和實際輸出之差成正比。其聯(lián)結權值的計算公式為: yj (t)為神經(jīng)元 j 的實際輸出; dj (t)為神經(jīng)元 j 的希望輸出;
神經(jīng)網(wǎng)絡學習競爭學習基本思想:網(wǎng)絡中某一組神經(jīng)元相互競爭對外界刺激模式響應的權力,在競爭中獲勝的神經(jīng)元,其連接權會向著對這一刺激模式競爭更為有利的方向發(fā)展。隨機學習基本思想:結合隨機過程、概率和能量(函數(shù))等概念來調(diào)整網(wǎng)絡的變量,從而使網(wǎng)絡的目標函數(shù)達到最大(或最小)。他不僅可以接受能量函數(shù)減少(性能得到改善)的變化,而且還可以以某種概率分布接受使能量函數(shù)增大(性能變差)的變化。
感知器學習 單層感知器學習算法 單層感知器學習的例子 BP網(wǎng)絡學習 Hopfield網(wǎng)絡學習神經(jīng)網(wǎng)絡學習
單層感知器學習實際上是一種基于糾錯學習規(guī)則,采用迭代的思想對連接權值和閾值進行不斷調(diào)整,直到滿足結束條件為止的學習算法。 假設X(k)和W(k)分別表示學習算法在第k次迭代時輸入向量和權值向量,為方便,把閾值θ作為權值向量W(k)中的第一個分量,對應地把“-1”固定地作為輸入向量X(k)中的第一個分量。即W(k)和X(k)可分別表示如下: X(k)=[-1, x1(k), x2(k), …, xn(k)] W(k)=[θ(k),w1(k), w2(k), … ,wn(k)]即x0(k)=-1,w0(k)=θ(k)。 單層感知器學習是一種有導師學習,它需要給出輸入樣本的期望輸出。 假設一個樣本空間可以被劃分為A、B兩類,定義: 功能函數(shù):若輸入樣本屬于A類,輸出為+1,否則其輸出為-1。 期望輸出:若輸入樣本屬于A類,期望輸出為+1,否則為-1。 單層感知器學習算法算法思想
單層感知器學習算法可描述如下: (1) 設t=0,初始化連接權和閾值。即給wi(0)(i=1, 2, … ,n)及θ(0)分別賦予一個較小的非零隨機數(shù),作為初值。其中,wi(0)是第0次迭代時輸入向量中第i個輸入的連接權值;θ(0)是第0次迭代時輸出節(jié)點的閾值; (2) 提供新的樣本輸入xi(t)(i=1, 2, … , n)和期望輸出d(t); (3) 計算網(wǎng)絡的實際輸出: 單層感知器學習算法—算法描述
(4) 若y(t)=d(t),不需要調(diào)整連接權值,轉(6)。否則,需要調(diào)整權值 (5) 調(diào)整連接權值其中,η是一個增益因子,用于控制修改速度,其值如果太大,會影響wi(t)的收斂性;如果太小,又會使wi(t)的收斂速度太慢; (6) 判斷是否滿足結束條件,若滿足,算法結束;否則,將t值加1,轉(2)重新執(zhí)行。這里的結束條件一般是指wi(t)對一切樣本均穩(wěn)定不變。 若輸入的兩類樣本是線性可分的,則該算法就一定會收斂。否則,不收斂。單層感知器學習算法—算法描述
例 用單層感知器實現(xiàn)邏輯“與”運算。 解:根據(jù)“與”運算的邏輯關系,可將問題轉換為:輸入向量: X1=[0, 0, 1, 1] X2=[0, 1, 0, 1]輸出向量: Y=[0, 0, 0, 1] 為減少算法的迭代次數(shù),設初始連接權值和閾值取值如下: w1(0)=0.5, w2(0)=0.7, θ(0)=0.6并取增益因子η=0.4。 算法的學習過程如下: 設兩個輸入為x1(0)=0和x2(0)=0,其期望輸出為d(0)=0,實際輸出為: y(0)=f(w1(0)x1(0)+ w2(0)x2(0)-θ(0)) =f(0.5*0+0.7*0-0.6)=f(-0.6)=0實際輸出與期望輸出相同,不需要調(diào)節(jié)權值。單層感知器學習的例子—學習例子(1/4)
再取下一組輸入:x1(0)=0和x2(0)=1, 期望輸出d(0)=0,實際輸出: y(0)=f(w1(0) x1(0)+ w2(0) x2(0)-θ(0)) =f(0.5*0+0.7*1-0.6)=f(0.1)=1實際輸出與期望輸出不同,需要調(diào)節(jié)權值,其調(diào)整如下: θ(1)=θ(0)+η(d(0)- y(0))*(-1)=0.6+0.4*(0-1)*(-1)=1 w1(1)=w1(0)+η(d(0)- y(0))x1(0)=0.5+0.4*(0-1)*0=0.5 w2(1)=w2(0)+η(d(0)- y(0))x2(0)=0.7+0.4*(0-1)*1=0.3取下一組輸入:x1(1)=1和x2(1)=0,其期望輸出為d(1)=0,實際輸出為: y(1)=f(w1(1) x1(1)+ w2(1) x2(1)-θ(1)) =f(0.5*1+0.3*0-1)=f(-0.51)=0實際輸出與期望輸出相同,不需要調(diào)節(jié)權值。單層感知器學習的例子—學習例子(2/4)
再取下一組輸入:x1(1)=1和x2(1)=1,其期望輸出為d(1)=1,實際輸出為: y(1)=f(w1(1) x1(1)+ w2(1) x2(1)-θ(1)) =f(0.5*1+0.3*1-1)=f(-0.2)=0 實際輸出與期望輸出不同,需要調(diào)節(jié)權值,其調(diào)整如下: θ(2)=θ(1)+η(d(1)- y(1))*(-1)=1+0.4*(1-0)*(-1)=0.6 w1(2)=w1(1)+η(d(1)- y(1))x1(1)=0.5+0.4*(1-0)*1=0.9 w2(2)=w2(1)+η(d(1)- y(1))x2(1)=0.3+0.4*(1-0)*1=0.7 取下一組輸入:x1(2)=0和x2(2)=0,其期望輸出為d(2)=0,實際輸出為: y(2)=f(0.9*0+0.7*0-0.6)=f(-0.6)=0實際輸出與期望輸出相同,不需要調(diào)節(jié)權值. 單層感知器學習的例子—學習例子(3/4)
再取下一組輸入:x1(2)=0和x2(2)=1,期望輸出為d(2)=0,實際輸出為: y(2)=f(0.9*0+0.7*1-0.6)=f(0.1)=1 實際輸出與期望輸出不同,需要調(diào)節(jié)權值,其調(diào)整如下: θ(3)=θ(2)+η(d(2)- y(2))*(-1)=0.6+0.4*(0-1)*(-1)=1 w1(3)=w1(2)+η(d(2)- y(2))x1(2)=0.9+0.4*(0-1)*0=0.9 w2(3)=w2(2)+η(d(2)- y(2))x2(2)=0.7+0.4*(0-1)*1=0.3 實際上,由與運算的閾值條件可知,此時的閾值和連接權值以滿足結束條件,算法可以結束。 對此,可檢驗如下: 對輸入:“0 0”有y=f(0.9*0+0.3*0-1)=f(-1)=0 對輸入:“0 1”有y=f(0.9*0+0.3*0.1-1)=f(-0.7)=0 對輸入:“1 0”有y=f(0.9*1+0.3*0-1)=f(-0.1)=0 對輸入:“1 1”有y=f(0.9*1+0.3*1-1)=f(0.2)=1單層感知器學習的例子—學習例子(4/4)
多層感知器可以解決非線性可分問題,但其隱層神經(jīng)元的期望輸出卻不易給出。 而單層感知器學習是一種有導師指導的學習過程,因此其學習算法無法直接用于多層感知器。 由于多層感知器和BP網(wǎng)絡都屬于前向網(wǎng)絡,并能較好解決多層前饋網(wǎng)絡的學習問題. 因此,可用BP學習來解決多層感知器學習問題。多層感知器學習問題
BP網(wǎng)絡學習的網(wǎng)絡基礎是具有多層前饋結構的BP網(wǎng)絡。為討論方便,采用如下圖所示的三層BP網(wǎng)絡。BP網(wǎng)絡學習的基礎—1. 三層BP網(wǎng)絡
對上述三層BP網(wǎng)絡,分別用I,j,k表示輸入層、隱含層、輸出層節(jié)點,且以以下符號表示: Oi, Oj, Ok分別表示輸入層節(jié)點i、隱含層節(jié)點j,輸出層節(jié)點k的輸出; Ii , Ij ,Ik,分別表示輸入層節(jié)點i、隱含層節(jié)點j,輸出層節(jié)點k的輸入; wij, wjk分別表示從輸入層節(jié)點i到隱含層節(jié)點j,從隱含層節(jié)點j輸出層節(jié)點k的輸入節(jié)點j的連接權值; θj 、 θk分別表示隱含層節(jié)點j、輸出層節(jié)點k的閾值; 對輸入層節(jié)點i有: BP網(wǎng)絡學習的基礎—2. 網(wǎng)絡節(jié)點的輸入/輸出關系(1/2)(7.1)
對輸出層節(jié)點有:(7.5)(7.4) 對隱含層節(jié)點有:(7.2)(7.3) BP網(wǎng)絡學習的基礎—2. 網(wǎng)絡節(jié)點的輸入/輸出關系(2/2)
BP網(wǎng)絡學習的方式BP網(wǎng)絡學習的基礎—BP網(wǎng)絡的激發(fā)函數(shù)和學習方式BP網(wǎng)絡的激發(fā)函數(shù)(7.3) 通常采用連續(xù)可微的S函數(shù),包括單極
BP網(wǎng)絡學習過程是一個對給定訓練模式,利用傳播公式,沿著減小誤差的方向不斷調(diào)整網(wǎng)絡聯(lián)結權值和閾值的過程。 設樣本集中的第r個樣本,其輸出層結點k的期望輸出用drk表示,實際輸出用yrk表示。其中,drk由訓練模式給出,yrk由7.5式計算得出。即有 yrk = Ork 如果僅針對單個輸入樣本,其實際輸出與期望輸出的誤差為 BP算法的傳播公式—誤差 上述誤差定義是針對單個訓練樣本的誤差計算公式,它適用于網(wǎng)絡的順序學習方式。若采用批處理學習方式,需要定義其總體誤差。假設樣本集中有R個樣本,則對整個樣本集的總體誤差定義為(7.6)(7.7)
針對順序學習方式,其聯(lián)結權值的調(diào)整公式為 BP算法的傳播公式—權值變化量(1/2)(7.8)(7.9)式中,?為增益因子,取[0, 1]區(qū)間的一個正數(shù),其取值與算法的收斂速度有關; 由下式計算式中,wjk (t)和wjk(t+1)分別是第t次迭代和t+1次迭代時,從結點j到結點k的聯(lián)結權值;?wjk是聯(lián)結權值的變化量。 為了使聯(lián)結權值能沿著E的梯度下降的方向逐漸改善,網(wǎng)絡逐漸收斂,權值變化量?wjk的計算公式如下:(7.10)
根據(jù)7.2式,可得到輸出層節(jié)點k的Ik為 BP算法的傳播公式—權值變化量(1/2)(7.11)(7.12)令局部梯度(7.13)對該式求偏導數(shù)有將7.10式、7.11式和7.12式代入7.9式有 對δk的計算,須區(qū)分k是輸出層上還是隱含層上的結點。下面分別討論。
如果結點k是輸出層上的結點,則有Ok=yk,因此 BP算法的傳播公式—節(jié)點k是輸出層節(jié)點(1/3)(7.14)(7.15)由7.6式,有即而(7.16)
將7.15式和7.16式代入7.14式,有BP算法的傳播公式—節(jié)點k是輸出層節(jié)點(2/3)(7.17)(7.15)由于f’(Ik) = f(Ik)[1-f(Ik)],且f(Ik)=yk,因此有再將7.18式代入7.13式,有根據(jù)7.8,對輸出層有(7.20)(7.18)
如果k不是輸出層結點.它表示聯(lián)結權值是作用于隱含層上的結點,此時,有?k=?j ,?j按下式計算 BP算法的傳播公式—節(jié)點k是隱含層節(jié)點(1/3)(7.22)由7.3式,Oj=f (Ij-θj),因此有式中,(7.21)是一個隱函數(shù)求導問題,其推導過程為
由7.12式有 BP算法的傳播公式—節(jié)點k是隱含層節(jié)點(2/3)(7.24)將7.23式代入7.22式,有 它說明,低層結點的?值是通過上一層結點的?值來計算的。這樣,我們就可以先計算出輸出層上的?值,然后把它返回到較低層上,并計算出各較低層上結點的?值。 由于f ’(Ij) = f(Ij)[ 1-f (Ij) ],故由7.24可得(7.23)(7.25)
再將7.25式代入7.13式,并將其轉化為隱函數(shù)的變化量,有7.3.2 BP算法的傳播公式—節(jié)點k是隱含層節(jié)點(3/3)再由7.1式和7.3式,有根據(jù)7.8,對隱含層有(7.26)(7.28)(7.27)
對三層BP網(wǎng)絡,設wij是輸入層到隱層,wjk是隱層到輸出層的聯(lián)結權值;R是樣本個數(shù),其計數(shù)器為r;T是訓練過程的最大迭代數(shù),其計數(shù)器為t。 (1) 初始化網(wǎng)絡及學習參數(shù):將wij、wjk、θj、θk均賦以較小的隨機數(shù);設置η為[0,1]區(qū)間的數(shù);置訓練樣本計數(shù)器r=0,誤差E=0、誤差閾值ε為很小的正數(shù)。 (2) 隨機輸入一個訓練樣本,r=r+1,t=0。 (3) 按7.1--7.5式計算隱層神經(jīng)元的狀態(tài)和輸出層每個節(jié)點的實際輸出yk,按7.6式計算該樣本的誤差E。 BP網(wǎng)絡學習算法算法描述
(4) 檢查E >ε? 若是,執(zhí)行下一步;否則,轉(8)。 (5) t=t+1。 (6) 檢查t ≤ T ?若是,執(zhí)行下一步;否則,轉(8)。 (7) 按7.18式計算輸出層結點k的δk,按7.25式計算隱層結點j的δj,按 7.20式計算wjk(t+1),按 7.28式計算wij(t+1),返回(3)。其中,對閾值按聯(lián)結權值的學習方式修正,即把閾值設想為神經(jīng)元的聯(lián)結權值,并假定其輸入信號值總是為1。 (8) 檢查r = R ? 若是,執(zhí)行下一步;否則,轉(2)。 (9) 結束。BP網(wǎng)絡學習算法算法描述
BP網(wǎng)絡學習算法算法流程隨機輸入一個訓練樣本,置r=r+1,t=0初始化網(wǎng)絡及學習參數(shù)wij,wjk,,θj,θk,η,ε,R,T,置E=0,r=0 對輸入樣本,計算該樣本的每一個yk,計算該樣本的誤差EE>ε? t=t+1t≤T ?計算輸出層結點k的δk修正各層的wjk(t),wij(t)E>ε? 結束是否是否否是
BP網(wǎng)絡模型是目前使用較多的一種神經(jīng)網(wǎng)絡,其主要優(yōu)、缺點如下。 優(yōu)點 (1)算法的優(yōu)點是算法推導清楚,學習精度較高; (2)從理論上說,多層前饋網(wǎng)絡可學會任何可學習的東西; (3)經(jīng)過訓練后的BP網(wǎng)絡,運行速度極快,可用于實時處理。 缺點 (1)由于其數(shù)學基礎是非線性優(yōu)化問題,因此可能陷入局部最小區(qū)域; (2)算法收斂速度很慢,通常需要數(shù)千步或更長,甚至還可能不收斂; (3)網(wǎng)絡中隱含結點的設置無理論指導。 上述缺點的解決辦法 對于局部最小區(qū)域問題,通常需要采用模擬退火算法或遺傳算法。 對于算法收斂慢的問題,其主要原因在于誤差是時間的復雜非線性函數(shù)。為提高算法收斂速度,可采用逐次自動調(diào)整增益因子?,或修改激活函數(shù)f(x)的方法來解決。BP網(wǎng)絡學習的討論
Hopfield網(wǎng)絡學習 Hopfield網(wǎng)絡學習的過程實際上是一個從網(wǎng)絡初始狀態(tài)向其穩(wěn)定狀態(tài)過渡的過程。而網(wǎng)絡的穩(wěn)定性又是通過能量函數(shù)來描述的。這里主要針對離散Hopfield網(wǎng)絡討論其能量函數(shù)和學習算法。Hopfield網(wǎng)絡的能量函數(shù)Hopfield網(wǎng)絡學習算法
式中,n是網(wǎng)絡中的神經(jīng)元個數(shù),wij是神經(jīng)元i和神經(jīng)元j之間的連接權值,且有wij=wji; vi和vj分別是神經(jīng)元i和神經(jīng)元j的輸出;θi是神經(jīng)元i的閾值。 可以證明,對Hopfield網(wǎng)絡,無論其神經(jīng)元的狀態(tài)由“0”變?yōu)椤?”,還是由“1”變?yōu)椤?”,始終有其網(wǎng)絡能量的變化: ΔE<0Hopfield的能量函數(shù)—能量函數(shù)定義及性質 能量函數(shù)用于描述Hopfield網(wǎng)絡的穩(wěn)定性。其定義為: 對網(wǎng)絡能量變化的這一結論,我們可以從網(wǎng)絡能量的構成形式進行分析。 如果假設某一時刻網(wǎng)絡中僅有神經(jīng)元k的輸出發(fā)生了變化,而其它神經(jīng)元的輸出沒有變化,則可把上述能量函數(shù)分作三部分來討論。其中,第一部分是i=1,…,k-1;第二部分是i=k;第三部分是i=k+1,…,n。
Hopfield的能量函數(shù)—能量函數(shù)定義及性質(2/7)在這種形式中,可以引起網(wǎng)絡能量變化的僅有公式中的如下部分:i=1,…,k-1 ,j≠k,這部分能量與k的輸出無關i=1,…,k-1 ,j=k,這部分能量與k的輸出有關i=k ,j≠k,這部分能量與k的輸出有關i=k+1,…,n ,j≠k,這部分能量與k的輸出無關i=k+1,…,n ,j≠k,這部分能量與k的輸出有關
又由于即:再根據(jù)連接權值的對稱性,即wij=wji, 有: BP網(wǎng)絡學習的基礎—2. 網(wǎng)絡節(jié)點的輸入/輸出關系(3/2)
Hopfield的能量函數(shù)—能量函數(shù)定義及性質(4/7)即可以引起網(wǎng)絡能量變化的部分為 為了更清晰地描述網(wǎng)絡能量的變化,我們引入時間概念。假設t表示當前時刻,t+1表示下一時刻,時刻t和t+1的網(wǎng)絡能量分別為E(t)和E(t+1),神經(jīng)元i和神經(jīng)元j在時刻t和t+1的輸出分別為vi(t)、vj(t)和vj(t+1)、vj(t+1)。由時刻t到t+1網(wǎng)絡能量的變化為: ΔE= E(t+1) - E(t) 當網(wǎng)絡中僅有神經(jīng)元k的輸出發(fā)生變化,且變化前后分別為t和t+1,則有
當神經(jīng)元k的輸出vk由1變0時,有此時,由于神經(jīng)元k的輸出為1,即有:因此: Hopfield的能量函數(shù)—能量函數(shù)定義及性質(5/7)
當神經(jīng)元k的輸出vk由0變1時,有此時,由于神經(jīng)元k的輸出為0,即有:因此: Hopfield的能量函數(shù)—能量函數(shù)定義及性質(6/7)
可見,無論神經(jīng)元k的狀態(tài)由“1”變?yōu)椤?” 時,還是由“0”變?yōu)椤?” 時,都總有: 它說明離散Hopfield網(wǎng)絡在運行中,其能量函數(shù)總是在不斷降低的,最終將趨于穩(wěn)定狀態(tài)。 ΔEk<0 由于神經(jīng)元k是網(wǎng)絡中的任一神經(jīng)元,因此它具有一般性,即對網(wǎng)絡中的任意神經(jīng)元都有: ΔE<0 Hopfield的能量函數(shù)—能量函數(shù)定義及性質(7/7)
例 如圖所示的三個節(jié)點的Hopfield網(wǎng)絡,若給定的初始狀態(tài)為: V0={1,0,1}各節(jié)點之間的聯(lián)結權值為: w12=w21=1,w13=w31=-2,w23=w32=3各節(jié)點的閾值為 θ1=-1, θ2=2, θ3=1 請計算在此狀態(tài)下的網(wǎng)絡能量。 解:E=-(1/2)(w12v1v2+w13v1v3+w21v2v1+w23v2v3+w31v3v1+w32v3v2) + θ1v1+ θ2v2+ θ3v3 = -(w12v1v2+w13v1v3+w23v2v3)+ θ1v1+ θ2v2+ θ3v3 =-(1×1×0+(-2)×1×1+3×0×1)+(-1) ×1+2×0+1×1 =2Q1Q2Q3v1v2v3w12w13w23Hopfield的能量函數(shù)—計算網(wǎng)絡能量的例子
(1) 設置聯(lián)結權值其中,xis 為S型樣例(即記憶模式)的第i個分量,它可以為1或0(或-1),樣例類別數(shù)為m,節(jié)點數(shù)為n。 (2) 對未知類別的樣例初始化其中,yi(t)為節(jié)點i時刻t的輸出,yi(0)是節(jié)點的初值;xi為輸入樣本的第i個分量。 (3) 迭代運算其中,函數(shù)f為閾值型。重復這一步驟,直到新的迭代不能再改變節(jié)點的輸出為止,即收斂為止。這時,各節(jié)點的輸出與輸入樣例達到最佳匹配。否則 (4) 轉第(2)步繼續(xù)。Hopfield網(wǎng)絡學習算法
神經(jīng)學習單層感知器算法:感知器網(wǎng)絡:單層前向網(wǎng)絡學習算法:糾錯學習方法用梯度下降法調(diào)整網(wǎng)絡連接權值,使總的輸出誤差向減小的方向變化BP算法:反向傳播算法多層感知器網(wǎng)絡(BP網(wǎng)絡)學習算法收斂速度非常慢,且隨著訓練樣例維數(shù)增加,網(wǎng)絡性能變差。
內(nèi)容提要第七章:機器學習1.機器學習的基本概念2.機器學習策略與基本結構3.歸納學習4.類比學習5.解釋學習6.神經(jīng)學習7.其他
其他機器學習方法其他機器學習方法遷移學習:將在先前任務中學到的知識或技能應用于一個新的任務或新的領域增強機器學習:從變化環(huán)境中學習蘊含在環(huán)境中的知識流形機器學習:把一組在高維空間中的數(shù)據(jù)在低維空間中重新表示半監(jiān)督機器學習:結合標記和非標記樣本多實例機器學習:一個對象可能同時有多個描述Ranking機器學習:獲得關于檢索中“喜歡”順序的模型數(shù)據(jù)流機器學習:從數(shù)據(jù)流中發(fā)現(xiàn)知識……
版權聲明感謝您下載辦圖網(wǎng)平臺上提供的PPT作品,為了您和辦圖網(wǎng)以及原創(chuàng)作者的利益,請勿復制、傳播、銷售,否則將承擔法律責任!辦圖網(wǎng)將對作品進行維權,按照傳播下載次數(shù)進行十倍的索取賠償!1.在辦圖網(wǎng)出售的PPT模板是免版稅類(RF:Royalty-Free)正版受《中國人民共和國著作法》和《世界版權公約》的保護,作品的所有權、版權和著作權歸辦圖網(wǎng)所有,您下載的是PPT模板素材的使用權。2.不得將辦圖網(wǎng)的PPT模板、PPT素材,本身用于再出售,或者出租、出借、轉讓、分銷、發(fā)布或者作為禮物供他人使用,不得轉授權、出賣、轉讓本協(xié)議或者本協(xié)議中的權利。更多精品PPT模板:www.888ppt.com
課程結束
工圖網(wǎng)提供湘潭大學-人工智能課件-機器學習ppt供會員免費下載。更多精彩黨課PPT素材,盡在工圖網(wǎng)。