前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的對神經網絡的理解主題范文,僅供參考,歡迎閱讀并收藏。
關鍵詞:神經網絡;數據挖掘;算法
1.數據挖掘過程及常用的神經網絡模型
1.1數據挖掘過程
數據挖掘是一個由諸多步驟共同組成的具有反復特性的迭代過程,其最主要的目的是從海量的數據當中,找出人們最感興趣的信息。大體上可將數據挖掘過程分為3個階段,即數據準備、模式提取以及結果的解釋與評估。
(1)第一個階段為準備所需的數據,具體可將這個階段細分為數據清洗、數據選取以及數據預處理和數據表示四個步驟。數據是數據挖掘過程中不可或缺的重要前提和基礎,但大量的實踐表明,只有數據是很難進行挖掘工作的,必須在對數據進行挖掘前,做一些相應的準確工作,這些工作也成為數據挖掘的重要環節。
(2)第二階段為模式提取。該階段是數據挖掘的核心環節,需要先明確數據挖掘的任務及目標,并在正式確定目標之后,選擇合適的算法或工具,開始對數據進行挖掘操作。在這個環節當中,算法是關鍵,即可選擇單一的算法,也可多種方法聯合使用,具體的選擇應視挖掘的任務而定。
(3)第三階段為解釋與評價。挖掘過程中發現的模式應當以最容易理解的形式呈現給用戶,其間要對發現的模式進行比較、校驗,看是否與用戶的要求相符,進而確定出挖掘效果。
1.2神經網絡模型
現階段,已知的人工神經網絡模型有40多種,較為常用的有以下幾種:
(1)BP神經網絡。BP是誤差反向傳播的簡稱,這種神經網絡歸屬于前饋網絡的范疇,其具有多層映射的特征,該網絡所采用的主要學習方式為最小均差,結構簡單、學習訓練算法成熟、工作狀態穩定是BP模型的3大特點,正因如此使得該模型獲得了非常廣泛的應用。由于BP算法對誤差函數有著一定的要求,即誤差函數必須可微,故此,為了有效克服局部極小的問題,多以全局優化算法為主,如遺傳算法等。
(2)RBF神經網絡。RBF是徑向基函數的簡稱,該網絡與BP網絡在歸屬的范疇上相同,也屬于前饋網絡。RBF網絡在激活函數方面有多種可選擇,最常用的是高斯函數,因為這種函數具有很多顯著的特點,如形式簡單、徑向對稱、容易解析等等。由于RBF網絡是一個多層前饋網絡,故此只要隱單元足夠多,便可達到任意給定精度,其在逼近目標時,采用的化整為零的思想,即將目標分解成為若干個局部對象。
(3)混合型神經網絡。這是―種將其它方法有機融合到―起構成的神經網絡模型,它與傳統網絡模型的拓撲結構相同,但學習機制卻有所不同。常用的混合型神經網絡有模糊和進化2種。
2.基于神經網絡的數據挖掘方法
2.1神經網絡在數據挖掘中的應用優勢
神經網絡是一門實用性較強的科學技術,其集多種現代技術于一身,有諸多并行分布的處理單元連接而成。從系統的角度上講,神經網絡歸屬于動態系統的范疇,具有自適應和非線性的特征,對噪聲數據有著非常強的容錯和承受能力。由于神經網絡所具有的這些特點,使得基于神經網絡構建的數據挖掘模型具備了與之相同的特點,這樣便可以適應數據環境的不同變化,由此進一步提升了數據挖掘模型的準確性。可見,神經網絡十分適用于數據挖掘領域。
2.2基于神經網絡的數據挖掘過程
由上文分析可知,在數據挖掘領域中,神經網絡具有較高的適用性,以此為基礎的數據挖掘過程分為以下幾個階段。
2.2.1數據的選擇及預處理階段
數據選擇的主要目的是為神經網絡的構建提供相應的數據支撐,這個過程可以細分為以下2個環節:(1)對數據進行訓練,(2)對數據進行測試。觀察和理解是選擇數據時必須做的工作,當樣本數據集確定之后,便可按照挖掘目標,并結合挖掘方法,對數據進行編碼處理。
2.2.2網絡訓練與剪枝
當數據選擇和處理工作完成之后,數據挖掘人員需要選用一個神經網絡模型,同時確定相應的網絡訓練算法,通過該算法對神經網絡進行訓練。剪枝的主要作用是以神經網絡的準確性為前提,去除掉沒有意義和價值的冗余結點由此會使網絡模式更加簡練,也更容易理解。
2.2.3規則的提取與評估階段
經過以上2個階段后,神經網絡當中便會蘊含著學習到的規則,也就是常說的知識,但是此時的規則由于存在形式的原因,不容易理解,所以需要對規則進行提取。提取規則的主要目的在于將規則的形式轉化為容易理解的形式,如模糊邏輯、決策樹等,然后再借助測試樣本對規則的可靠性進行測試、評估。
2.3基于RBF神經網絡的數據挖掘模型設計
下面本文以RBF神經網絡為依托,對數據挖掘模型進行設計,其整體框架結構如圖1所示。
整個系統由以下模塊構成:數據獲取、數據處理、數據分類與評估、控制與干預、GUI人機交互、知識庫。系統模塊的設計情況如下。
2.3.1數據準備
①數據選擇。在數據選擇中,讓用戶利用數據訪問接口對數據集進行自行選擇,進一步確定數據集類型、數據集名稱及數據集處所位置。數據訪問接口為對象模型,該模型覆蓋了數據訪問的各個層面,具體可使用的接口包括ADO,DAO和ODBC三種,本系統采用的數據庫訪問方案為DAO/ODBC,選擇該方案的主要原因是DAO既能夠與Microsoft Jet數據庫引擎并用,還可借助ODBC Direct選項不與其并用。同時,通過DA0對Jet進行訪問更加簡單、便捷,并且使用DATE控件和DAO,能夠創建出與數據庫本身無任何關聯性的虛擬代碼。②數據清理。該環節的主要目的是將不希望包括在內的觀測值篩選掉,操作過程既可借助SQn吾句實現,也可借助相關程序予以實現。③數據合成。該環節是將獨立的數據合成數據集,操作過程較為簡單,只要規則確定便可利用sQL語句或相關程序來實現。
2.3.2數據挖掘
(1)挖掘方法的選擇與管理。該環節在系統中具有重要的作用,與系統的可擴充性和最佳挖掘方法的選擇有關。挖掘方法管理可對系統中使用的全部方法所產生的接口信息進行保存,如對文本文件分詞方法、Web日志的Session戈0分方法等挖掘方法中產生的特定數據信息予以保存,粗糙集、決策樹屬于通用的挖掘方法。在對該模塊進行設計的過程中,針對分類預測問題,使用了聚類和神經網絡以及統計學等方法。選擇方法的主要目的是幾乎所有的方法都是數據依賴,并沒苻一種方法能夠在所有的數據上表現良好。因此在方法選擇的初始階段,通過專家的人為干預是有必要的。經過對前人的研究成果進行總結后發現,將多種不同的方法聯合運用可大幅度提升運用效果。對于本文構建的數據挖掘系統而言,其核心部分為數據挖掘模塊,該模塊的設計分為3個方面:①訓練模塊,以訓練RBF網絡為主,采用數學模型方法構建網絡分類模型;②預測模塊,在分類實際數據的基礎上,將分類產生的數據結果快速傳遞到評估模塊;③重構模塊,該模塊地能夠確保數據挖掘模型具有―定的可擴展性和自適應能力,按照具體需要對模型進行重新構建。(2)結果顯示。該環節以多種形式顯示數據挖掘結果,如列表、樹、圖等是最為常見的顯示方式。本文采用了可視化的方法進行數據挖掘結果顯示,這樣能夠使用戶對挖掘結果的了解更加直觀、具體。(3)結果評估。在評估中,采用數據挖掘評價方式,通過比較分析不同模型下產生的數據挖掘效果,從而得出各類型分析工具的最終結果,再配以相應的標準圖標進行直觀顯示,方便用戶利用相關數據信息開展定量評價。在結果評估中,強調獲取規則的價值評定,其評價關鍵點為查看數據挖掘結果與用戶期望的符合程度,并對挖掘結果的可靠性和價值性進行評價,將其作為知識庫是否納入規則的重要評判依據。在GUI交互界面上,數據挖掘系統與用戶可以進行交互操作。
2.4安全性保障措施
基于RBF神經網絡的數據挖掘系統在使用過程中,安全性非常重要,為此,本文提出幾點安全性保障措施,以此來確保數據挖掘的安全。
(1)采用登錄機制確保數據安全。所謂的登錄機制主要是針對客戶端的一種安全控制措施。由于用戶與服務器端需要通過網絡的方式進行數據傳輸,為了進一步提高數據傳輸的安全性,可對數據進行加密處理,并將用戶挖掘到的數據結果存儲在服務器上,由此在不同的計算機上使用客戶端均可對之前挖掘到的數據結果進行利用。
(2)設置權限。可以通過用戶管理來完成用戶的注冊、登錄以及使用權限管理。當用戶需要使用數據挖掘系統進行數據挖掘時,要先進行賬號注冊,并在使用前通過注冊的賬號和密碼進行登錄,從而保證每個用戶的數據安全。此外,用戶管理能夠實現分級管理,賦予不同用戶不同的權限,這使安全性獲得了進一步提升。
人腦是自生命誕生以來,生物經過數十億年漫長歲月進化的結果,是具有高度智能的復雜系統,它不必采用繁復的數字計算和邏輯運算,卻能靈活處理各種復雜的,不精確的和模糊的信息,善于理解語言、圖象并具有直覺感知等功能。
人腦的信息處理機制極其復雜,從結構上看它是包含有140億神經細胞的大規模網絡。單個神經細胞的工作速度并不高(毫秒級),但它通過超并行處理使得整個系統實現處理的高速性和信息表現的多樣性。
因此,從信息處理的角度對人腦進行探究,并由此研制出一種象人腦一樣能夠“思維”的智能計算機和智能信息處理方法,一直是人工智能追求的目標。
神經網絡就是通過對人腦的基本單元---神經元的建模和聯結,來探索模擬人腦神經系統功能的模型,并研制一種具有學習、聯想、記憶和模式識別等智能信息處理功能的人工系統。本文介紹神經網絡的特征以及近年來有關神經網絡和混沌理論、模糊計算和遺傳算法等相結合的混合神經網絡探究的動態。
一.神經網絡和聯結主義
回顧認知科學的發展,有所謂符號主義和聯結主義兩大流派。符號主義從宏觀層次上,撇開人腦的內部結構和機制,僅從人腦外在表現出來的智能現象出發進行探究。例如,將記憶、判定、推理、學習等心理活動總結成規律、甚至編制成規則,然后用計算機進行模擬,使計算機表現出各種智能。
符號主義認為,熟悉的基本元素是符號,認知過程是對符號表示的運算。人類的語言,文字的思維均可用符號來描述,而且思維過程只不過是這些符號的存儲、變換和輸入、輸出而已。以這種方法實現的系統具有串行、線性、準確、簡潔、易于表達的特征,體現了邏輯思維的基本特性。七十年代的專家系統和八十年代日本的第五代計算機探究計劃就是其主要代表。
聯接主義則和其不同,其特征是從微觀出發。聯接主義認為符號是不存在的,認知的基本元素就是神經細胞(神經元),認知過程是大量神經元的聯接,以及這種聯接所引起的神經元的不同興奮狀態和系統所表現出的總體行為。八十年代再度興起的神經網絡和神經計算機就是這種聯接主義的代表。
神經網絡的主要特征是摘要:大規模的并行處理和分布式的信息存儲,良好的自適應、自組織性,以及很強的學習功能、聯想功能和容錯功能。和當今的馮.諾依曼式計算機相比,更加接近人腦的信息處理模式。主要表現如下摘要:
神經網絡能夠處理連續的模擬信號。例如連續灰度變化的圖象信號。
能夠處理混沌的、不完全的、模糊的信息。
傳統的計算機能給出精確的解答,神經網絡給出的是次最優的逼近解答。
神經網絡并行分布工作,各組成部分同時參和運算,單個神經元的動作速度不高,但總體的處理速度極快。
神經網絡信息存儲分布于全網絡各個權重變換之中,某些單元障礙并不影響信息的完整,具有魯棒性。
傳統計算機要求有準確的輸入條件,才能給出精確解。神經網絡只要求部分條件,甚至對于包含有部分錯誤的輸入,也能得出較好的解答,具有容錯性。
神經網絡在處理自然語言理解、圖象模式識別、景物理解、不完整信息的處理、智能機器人控制等方面有優勢。
符號主義和聯接主義兩者各有特色,學術界目前有一種看法摘要:認為基于符號主義得傳統人工智能和基于聯接主義得神經網絡是分別描述人腦左、右半腦的功能,反映了人類智能的兩重性摘要:精確處理和非精確處理,分別面向熟悉的理性和感性兩個方面,兩者的關系應該是互補而非互相代替。理想的智能系統及其表現的智能行為應是兩者相互結合的結果。
接下去的新問題是,符號AI和聯接AI具體如何結合,兩者在智能系統中相互關系如何?分別扮演什么角色?目前這方面發表的文獻很多,大致有如下幾種類型摘要:
1.松耦合模型摘要:符號機制的專家系統和聯接機制的神經網絡通過一個中間媒介(例如數據文件)進行通訊。
2.緊耦合模型摘要:和松耦合模型相比較,其通訊不是通過外部數據進行,而是直接通過內部數據完成,具有較高的效率。其主要類型有嵌入式系統和黑板結構等。
3.轉換模型摘要:將專家系統的知識轉換成神經網絡,或把神經網絡轉換成專家系統的知識,轉換前的系統稱為源系統,轉換后的系統稱為目標系統,由一種機制轉成另一種機制。假如源系統是專家系統,目標系統是神經網絡,則可獲得學習能力及自適應性;反之,可獲得單步推理能力、解釋能力及知識的顯式表示。當然,轉換需要在兩種的機制之間,確定結構上的一致性,目前主要新問題是還沒有一種完備而精確的轉換方法實現兩者的轉換。有待進一步探究。
4.綜合模型摘要:綜合模型共享數據結構和知識表示,這時聯接機制和符號機制不再分開,兩者相互結合成為一個整體,既具有符號機制的邏輯功能,又有聯接機制的自適應和容錯性的優點和特征。例如聯接主義的專家系統等。
近年來神經網絡探究的另一個趨向,是將它和模糊邏輯、混沌理論、遺傳進化算法等相結合,即所謂“混合神經網絡”方法。由于這些理論和算法都是屬于仿效生物體信息處理的方法,人們希望通過她們之間的相互結合,能夠獲得具有有柔性信息處理功能的系統。下面分別介紹。
二.混沌理論和智能信息處理
混沌理論是對貌似無序而實際有序,表面上看來是雜亂無章的現象中,找出其規律,并予以處理的一門學科。早在七十年代,美國和歐洲的一些物理學家、生物學家、數學家就致力于尋求在許許多多不同種類的不規則性之間的聯系。生物學家發現在人類的心臟中有混沌現象存在,血管在顯微鏡下交叉纏繞,其中也有驚人的有序性。在生物腦神經系統中從微觀的神經膜電位到宏觀的腦電波,都可以觀察到混沌的性態,證實混沌也是神經系統的正常特性。
九十年代開始,則更進一步將混沌和神經網絡結合起來,提出多種混沌神經網絡模型,并探索應用混沌理論的各種信息處理方法。例如,在神經元模型中,引入神經膜的不應性,探究神經元模型的混沌響應,探究在神經網絡的方程中,不應性項的定標參數,不定性時間衰減常數等參數的性質,以及這些參數于神經網絡混沌響應的關系,并確定混沌---神經網絡模型具有混沌解的參數空間。經過試驗,由這種混沌神經網絡模型所繪出的輸出圖形和腦電圖極為相似。
現代腦科學把人腦的工作過程看成為復雜的多層次的混沌動力學系統。腦功能的物理基礎是混沌性質的過程,腦的工作包含有混沌的性質。通過混沌動力學,探究、分析腦模型的信息處理能力,可進一步探索動態聯想記憶、動態學習并應用到模式識別等工程領域。例如摘要:
對混沌的隨機不規則現象,可利用混沌理論進行非線性猜測和決策。
對被噪聲所掩蓋的微弱信號,假如噪聲是一種混沌現象,則可通過非線性辨識,有效進行濾波。
利用混沌現象對初始值的敏銳依靠性,構成模式識別系統。
探究基于混沌---神經網絡自適應存儲檢索算法。該算法主要包括三個步驟,即摘要:特征提取、自適應學習和檢索。
模式特征提取采用從簡單的吸引子到混沌的層次分支結構來描述,這種分支結構有可能通過少數幾個系統參數的變化來加以控制,使復雜新問題簡單化。自適應學習采用神經網絡的誤差反傳學習法。檢索過程是通過一個具有穩定吸引子的動力學系統來完成,即利用輸入的初始條件和某個吸引子(輸出)之間的存在直接對應關系的方法進行檢索。利用這種方法可應用于模式識別。例如黑白圖象的人臉識別。
三.模糊集理論和模糊工程
八十年代以來在模糊集理論和應用方面,也有很大進展。1983年美國西海岸AI探究所發表了稱為REVEAL的模糊輔助決策系統并投入市場,1986年美國將模糊邏輯導入OPS---5,并探究成功模糊專家系統外殼FLOPS,1987年英國發表采用模糊PROLOG的智能系統FRIL等。除此通用工具的研制以外,各國還開發一系列用于專用目的的智能信息處理系統并實際應用于智能控制、模式識別、醫療診斷、故障檢測等方面。
模糊集理論和神經網絡雖然都屬于仿效生物體信息處理機制以獲得柔性信息處理功能的理論,但兩者所用的探究方法卻大不相同,神經網絡著眼于腦的微觀網絡結構,通過學習、自組織化和非線性動力學理論形成的并行分析方法,可處理無法語言化的模式信息。而模糊集理論則著眼于可用語言和概念作為代表的腦的宏觀功能,按照人為引入的隸屬度函數,邏輯的處理包含有模糊性的語言信息。
神經網絡和模糊集理論目標相近而方法各異。因此假如兩者相互結合,必能達到取長補短的功能。將模糊和神經網絡相結合的探究,約在15年前便已在神經網絡領域開始,為了描述神經細胞模型,開始采用模糊語言,把模糊集合及其運算用于神經元模型和描述神經網絡系統。目前,有關模糊---神經網絡模型的探究大體上可分為兩類摘要:一類是以神經網絡為主,結合模糊集理論。例如,將神經網絡參數模糊化,采用模糊集合進行模糊運算。另一類以模糊集、模糊邏輯為主,結合神經網絡方法,利用神經網絡的自組織特性,達到柔性信息處理的目的。
和神經網絡相比,模糊集理論和模糊計算是更接近實用化的理論,非凡近年來美國和日本的各大公司都紛紛推出各種模糊芯片,研制了型號繁多的模糊推理板,并實際應用于智能控制等各個應用領域,建立“模糊工程”這樣一個新領域。日本更首先在模糊家電方面打開市場,帶有模糊控制,甚至標以神經---模糊智能控制的洗衣機、電冰箱、空調器、攝象機等已成為新一代家電的時髦產品。我國目前市場上也有許多洗衣機,例如榮事達洗衣機就是采用模糊神經網絡智能控制方式的洗衣機。
四.遺傳算法
遺傳算法(GeneticAlgorithm摘要:GA)是模擬生物的進化現象(自然、淘汰、交叉、忽然變異)的一種概率搜索和最優化方法。是模擬自然淘汰和遺傳現象的工程模型。
GA的歷史可追溯到1960年,明確提出遺傳算法的是1975年美國Michigan大學的Holland博士,他根據生物進化過程的適應現象,提出如下的GA模型方案摘要:
1.將多個生物的染色體(Chromosmoe)組成的符號集合,按文字進行編碼,稱為個體。
2.定義評價函數,表示個體對外部環境的適應性。其數值大的個體表示對外部環境的適應性高,它的生存(子孫的延續)的概率也高。
3.每個個體由多個“部分”組合而成,每個部分隨機進行交叉及忽然變異等變化,并由此產生子孫(遺傳現象)。
4.個體的集合通過遺傳,由選擇淘汰產生下一代。
遺傳算法提出之后,很快得到人工智能、計算機、生物學等領域科學家的高度重視,并在各方面廣泛應用。1989年美國Goldberg博士發表一本專著摘要:“GeneticAlgorithmsinSearch,OptimizationandMachineLearning”。出版后產生較大影響,該書對GA的數學基礎理論,GA的基本定理、數理分析以及在搜索法、最優化、機器學習等GA應用方面進行了深入淺出的介紹,并附有Pascal模擬程序。
1985年7月在美國召開第一屆“遺傳算法國際會議”(ICGA)。以后每隔兩年召開一次。近年來,遺傳算法發展很快,并廣泛應用于信息技術的各個領域,例如摘要:
智能控制摘要:機器人控制。機器人路徑規劃。
工程設計摘要:微電子芯片的布局、布線;通信網絡設計、濾波器設計、噴氣發動機設計。
圖象處理摘要:圖象恢復、圖象識別、特征抽取。
調度規劃摘要:生產規劃、調度新問題、并行機任務分配。
優化理論摘要:TSP新問題、背包新問題、圖劃分新問題。
人工生命摘要:生命的遺傳進化以及自增殖、自適應;免疫系統、生態系統等方面的探究。
神經網絡、模糊集理論和以遺傳算法為代表的進化算法都是仿效生物信息處理模式以獲得智能信息處理功能的理論。三者目標相近而方法各異;將它們相互結合,必能達到取長補短、各顯優勢的效果。例如,遺傳算法和神經網絡和模糊計算相結合方面就有摘要:
神經網絡連續權的進化。
傳統神經網絡如BP網絡是通過學習,并按一定規則來改變數值分布。這種方法有練習時間過長和輕易陷入局部優化的新問題。采用遺傳算法優化神經網絡可以克服這個缺點。
神經網絡結構的進化。
目前神經網絡結構的設計全靠設計者的經驗,由人事先確定,還沒有一種系統的方法來確定網絡結構,采用遺傳算法可用來優化神經網絡結構。
神經網絡學習規則的進化。
關鍵詞:人工智能;深度學習;教學建議
0 引言
傳統的人工智能課程主要包括人工智能導論、模式分析、機器學習、數據挖掘等。這些課程由各個院校根據專業情況不同而選擇,課程的內容也有較大差別,但是,基本上都涉及人工神經網絡的內容。然而在人工神經網絡的教學內容上,一般只講解經典的多層感知器和反向傳播算法,或再加入一些反饋網絡的內容,這種教學內容設計的一個不足是忽視了人工智能領域的最新發展——深度學習,它是近幾年人工智能領域最具影響力的研究主題,并在大規模語音識別、大規模圖像檢索等領域取得突破。
北京郵電大學計算機學院開設人工智能科學與技術的本科專業,筆者從事深度學習的研究工作,同時承擔了本科生和研究生人工智能類課程的教學工作,因此產生了將深度學習內容引人人工智能類課程的想法。本文先介紹深度學習的背景,說明深度學習在人工智能發展中的地位,之后分析了將深度學習基本內容引入人工智能類課程的必要性和可行性,最后給出了一些實施建議供探討。
1 深度學習背景
2006年,加拿大多倫多大學的GeoffreyHinton教授與Salakhutdinov博士在美國《科學》雜志發表了題為“Reducing the Dimensionality ofDatawith Neural Networks”的論文,該文提出一種學習多層神經網絡的方法,并將這種具有多層結構的學習方法命名為深度學習(Deep Learning),而這成為深度學習研究的一個導火索,從此深度學習的研究與應用蓬勃發展起來。
深度學習在語音識別與生成、計算機視覺等應用領域取得了突出進展。近幾年的國際機器學會(International Conference on MachineLearning,ICML)、神經信息處理大會(AnnualConference On Neural Information Processing Systems,NIPS)、計算機視覺大會(InternationalConference on Computer Vision,ICCV)、
聲學語音與信號處理大會(International ConferenceOn Acoustics,Speech,and Signal Processing,ICASSP)、計算語言學大會(Annual Meeting of the Association for Computational Linguistics.ACL)、計算機視覺與模式識別(InternationalConference on Computer Vision and P atternRecognition,CVPR)等都有不少相關的研究論文、會議教程和小組研討會(Workshop)。美國國防高級研究計劃(DARPA)也提出了關于深層學習的研究項目。此外,2013年6月《程序員雜志》的封面故事,采訪了周志華、李航、朱軍3位國內的機器學習專家對于深度學習的看法,他們一致肯定了深度學習在機器學習領域的貢獻。
工業界對深度學習也寄予了很高期望。2012年6月,《紐約時報》報道了斯坦福大學計算機科學家AndrewNg和谷歌公司的系統專家JeffDean共同研究深度神經網絡的機器學習模型在語音識別和圖像識別等領域獲得的巨大成功。2012年11月,微軟公司在天津公開演示了一個全自動的同聲傳譯系統,其關鍵技術也是深度學習。2013年1月,百度公司首席執行官李彥宏先生宣布建立深度學習研究院(Institute of Deep Learning)。2013年3月,谷歌公司收購了由深度學習創始人Geoffrey Hinton創立的公司。
從學術界與工業界的研究態勢看,深度學習已經成為機器學習與模式識別,乃至人工智能領域的研究熱點。正是在這樣一個背景下,人工神經網絡重新回到人們的視野。此前人工神經網絡的發展大致可以分為兩個時期,1943年,McCulloch和Pitts提出了最早的人工神經元,這種神經元具有學習能力,這是人工神經網絡的發端,也可以被認為是人工智能的發端(當時還沒有人工智能這個術語)。1949年,Hebb提出了Hebbian學習算法。1957年,Rosenblatt提出了感知器的神經網絡模型。1969年,Minsky和Papert分析了這種感知器神經網絡模型的局限性。然而,很多研究者認為,感知器的這種局限性對于所有的神經網絡模型都適用,這使人工神經網絡的研究很快暗淡下來。1980年代中期,諾貝爾獎得主John Hopfield提出了Hopfield神經網絡模型,這種Recurrent神經網絡具有的動態性有可能用于解決復雜的問題。同時,多層前向神經網絡的后傳算法也被重新發現,這兩個工作使人工神經網絡得到重生。這時,人工神經網絡已經成為人工智能的一個重要組成部分。但是,在隨后的研究中,人們發現,當學習多層神經網絡包含更多的隱藏層時,后傳算法并不能學到有效的網絡權值,這使得神經網絡的研究再次陷入低潮。此次以深層神經網絡為代表的深度學習重新回到研究的舞臺,其中一個重要因素是Hinton提出的逐層預訓練神經網絡方法治愈了多層神經網絡的一個致命傷。
2 必要性與可行性
深度學習的發展使得從事教學一線的教師也無法忽視這個頗具影響力的研究主題。為此,我們提出將深度學習這個主題引入到人工智能類課程中,將它作為課題教學的一部分。
2.1 必要性
將深度學習這個主題引入到人工智能類課程中的必要性主要包括如下4點。
1)深度學習是人工智能的前沿。
2006年以來,深度學習的研究席卷了整個人工智能,從機器學習、機器視覺、語音識別到語言處理,都不斷涌現出新的研究工作和突破性進展。深度學習不僅在機器學習領域成為研究熱點,同時在多個應用領域也成為有力工具,而且,在工業界的系統應用中,深度學習成為其中的關鍵解決技術。
2)深度學習是人工智能的突破。
深度學習的發端是神經網絡。關于神經網絡的論述,在人工智能類常見教科書中還停留在多層神經網絡,即神經網絡的第二階段,它們大部分描述多層結構無法訓練的現象。但是,從深度學習的角度看,深層神經網絡不僅可學習,而且有必要,這與第二代神經網絡的觀點是完全不同的。深度學習突破了原有人工神經網絡的認識,超越了人工智能神經網絡教科書中的原有內容,因此,有必要將多層神經網絡結構的可學習性告知學生,從新的視角糾正原有的觀點。
3)深度學習是人工智能的延伸。
深度學習不僅提供了一種可以在深層神經結構下訓練網絡的方法,也包含了不少新的內容,是人工智能的新發展,為人工智能補充了新的內容。到目前為止,深度學習至少包括:從生物神經網絡與人類認知的角度認識深層神經網絡的必要性;如何構建和學習深層學習網絡;如何將深層結構用于解決視覺、語音、語言的應用問題;如何看待深度學習與原有的機器學習方法,如流形學習、概率圖模型、能量模型的直接關系;深度學習與其他學科的關系等。
4)深度學習是學生的潛在興趣點。
大學生對知識有著強烈的好奇心,加之當前信息技術的發達,部分對智能感興趣的學生可以從其他途徑了解到這個學科發展的前沿。因此,順勢而為,將深度學習這個主題做具體講解,滿足學生的好奇心,培養他們對學科前沿與發展的認識,是十分必要的。對高年級的學生而言,了解深度學習的基本知識,是他們全面認識人工智能與發展前沿的一個途徑,而對于研究生,較多地了解和掌握深度學習的基本知識有助于他們研究工作的開展。
基于以上幾點,筆者認為,將深度學習這個主題引入到人工智能類課程中非常有必要。深度學習作為人工智能的前沿,既是對人工智能原有理論和技術的一個突破和補充。
2.2 可行性
將深度學習引入到人工智能類課程中的可行性主要包括如下3點。
1)深度學習與現有人工智能聯系密切。
深度學習并不像突兀的山峰拔地而起。而是深深植根于原有的人工智能理論與技術。深度學習是以神經網絡為出發點,這正是深度學習教與學的切入點。比如,可以通過對多層感知器隱藏層的增加和后傳算法的失效來講解深度學習是如何解決這個問題的。再者,深度學習的一個核心構建“受限波爾茲曼機(Restricted Boltzmann Machine)”,可以被認為是一種能量模型,而這種模型與Hopfield網絡都可以從物理學的能量模型角度分析,RBM可以認為是Hopfield網絡的隨機擴展。總之,深度學習與現有人工智能的聯系,使學習深度學習變得容易。
2)深度學習的基本內容并不深。
深度學習有個很好的名字,這個名字恰當地描述了特定的學習結構。比如,深度學習的核心部件受限于波爾茲曼機RBM,其結構非常簡單。從神經網絡的角度,受限波爾茲曼機是一種隨機的雙向連接神經網絡,信號可以從可見層傳遞到隱藏層,也可以從隱藏層傳遞到可見層。網絡中每個節點是具有特定結構的神經元,其中的神經元具有典型的包含自身偏置的Logistic函數的隨機單元,能夠依Logistic函數計算得到的概率輸出0狀態或1狀態。概括地說,深度學習的基本內容在高年級階段較易掌握。
3)深度學習的資料容易獲得。
當前的信息資訊非常發達,有相當多的資料可以通過互聯網等多種途徑獲得,這使學習深度學習成為可能。近期,中國計算機學會主辦了多個技術講座均涉及深度學習的部分;深度學習的創始人Hinton教授的主頁也有很多資料;Coursera網站有免費的Hinton教授的神經網絡課程;斯坦福大學的Ng教授提供了很多的在線教程;蒙特利爾大學Bengio教授發表的題為“Learning Deep Architectures for AI”的論文也是這領域的優質資料。
3 實施建議
在具體的教學過程中,筆者建議適當安排深度學習的最基本內容,內容不宜過多,也不宜占用過多的學時,可以根據教學對象的不同進行調整。比如,本科生的高年級專業課可以安排1學時的教學量,介紹層次訓練的基本算法;也可以在高年級前沿講座中安排2學時,內容覆蓋面盡可能廣泛。在研究生的教學中,可以根據教學的課程主題安排內容與學時。比如,神經網絡主題的課程可以安排4-6學時的教學內容,包括波爾茲曼機及學習算法、深層信念網絡與學習算法、深層波爾茲曼機與學習算法卷、積神經網絡、自動編碼器等。結合應用,課程還可以包含MNIST數字識別的應用、人臉識別的應用、圖像檢索的應用、語音識別中的應用等。另外,深度學習是一個實踐性很強的研究,隨機性:大規模(意味著數據不宜可視化,程序運行時間長)等多種因素混合,使深度學習在學習中不容易理解。為此,可以在條件允許的前提下,增加小規模的實驗,輔助理解。最后,課件可以通過對優質資料做修改得到。
關鍵詞:人工神經網絡;神經元;可視化
中圖分類號:TP183文獻標識碼:A文章編號:1009-3044(2008)36-2882-03
Analysis and Comparison Between ANN and Viewdata
ZHAO Chun, LI Dong
(Department of Computer Science, Xinxiang University, Xinxiang 453000, China)
Abstract: ANN and viewdata two calculating methods of obtaing new data by the dig and learrangement of the original data. This paper intends to make a general analysis of the featurcs of the two methods and a friof comparison between the two, and summed up the two algorithms and the similarity of common ground.
Key words:ANN; nerve cell; viewdata
1 引言
人工神經網絡和可視化方法是數據挖掘中的兩個重要的算法模型,兩者都是根據模擬人腦和人的視覺神經與傳統的數字計算機相比較而抽象出來的數據挖掘算法。可視化方法是人腦神經網絡的一部分,它們之間存在著必然的聯系,而算法又各有所異。隨著數據挖掘技術的快速發展,存儲在數據庫中的數據量也迅速增長,這證明傳統的關系數據庫和存儲圖像、CAD(計算機輔助設計)圖紙、地理信息和分子生物結構的復雜2D和3D多媒體數據庫是合理的。許多應用都要用到大型的數據庫,這些數據庫有幾百萬種數據對象,這些數據對象的緯度達到幾十甚至幾百。面對如此復雜的數據時,我們常常面臨著一些棘手的問題:應該從哪里開始著手?哪些是有用的數據?還有一些其他可用的數據嗎?能得出答案的其他方法是什么?人們在尋求突破的同時反復地思考并詢問復雜數據的專門問題。我們從人工神經網絡和可視化方法的算法、特有屬性進行橫向和縱向的比較來找出他們的共同點和相似點。
2 人工神經網絡算法與可視化方法性能比較
2.1 人工神經網絡提供特有的屬性和能力
1) 人工神經網絡有超強的運算功能――人腦大約有1011個微處理神經元,這些神經元之間相互連接,連接的數目大約達到1015數量級[1]。每個神經元都相當一個微型計算機,把每個微型計算機鏈接起來就形成了一個超級計算機網絡。
2) 由于人工神經網絡相當于一個超級因特網,每個神經元都相當于一個微型計算機,對所有的任務都可并行,并且是分布式處理,其處理能力也是超強的――每個神經元節點都可以看作一個微型計算機,這樣就形成了一個龐大的神經元網絡。
3) 人工神經網絡有歸納總結和分類的能力。――歸納總結和分類是人工神經網絡對輸入而產生合理的輸出。
4) 人工神經網絡有離散性。
5) 人工神經網絡通過典型的實例中進行歸納總結。
6) 對整個網絡有很強的適應性和快速的驗證的能力。
7) 對整個人工神經網絡的包容性。
8 對整個人工神經網絡統籌能力。
2.2 可視化方法特有的屬性和能力
1) 在正常情況下人對圖像的信息比較敏感。而對數據的反映比較遲鈍。
2) 人從圖像視覺接受到的信息比從文本或表格上接受更快、更有效。比如“百聞不如一見”。
3) 人從圖像視覺接受到的信息總是有選擇的接受
4) 人的視覺選擇的特征為形狀、顏色、亮度、運動、向量、質地等。
這些篩選仍然是通過人龐大的神經網絡中的部分神經元來處理的。其中進行的樣本的學習能里以及自適應性得到了充分的體現。
2.3 人工神經網絡和可視化方法的共同點
1) 對接受到的信息進行歸納處理。
2) 對接受到的信息進行轉化,只是轉化的方式不同。
3) 對接受到的信息進行篩選,并對接受到的信息產生合理的輸出。
4) 容錯性。
5) 從接受到的信息進行學習的能力。
2.4 人工神經網絡和可視化方法的不同點
1) 人工神經網絡是好比因特網,而可視化方法的計算網絡好比計算機網絡。可視化網絡的計算能力只是人工神經網絡很小的一部分。
2) 可視化方法雖然也是并行分布式處理的結構,但是它也只是人工神經網絡分布式處理的很小部分。其速度要遠遠低于人工神經網絡
3) 人的視覺和人工神經網絡對信息的篩選的方式各有不同。
3 算法比較
3.1 人工神經網絡
人工神經元是一個抽象的自然神經元模型,將其數據模型符號化為:
netk=x1wk1+x2wk2+ … … +xm wkm +bk
在ANN中輸入和相應權重乘機的累加為xiwki(其中,i=1, ……m),一些輸入xi,i=1, ……m,其中k是ANN中給定的神經元的索引,權重模擬了自然神經元中的生物突出強度[2]。
一個神經元就是一個微型計算機,它是一個ANN運轉的最小單位,就像是整個因特網中的一臺計算機。下例圖1是人工神經元的模型。
從這個模型可以看出人工神經元是有三個基本元素組成:
第一、一組連接線。X1 、X2 、…、Xm,每個連接線上的Wki為權重。權重在一定范圍類可能是正值,也可能是負值。
第二、累加器。將Xi與對應的權重值相乘的積累加。
第三、篩選函數。通過每個神經元經過函數篩選后輸出數值。
同樣,還可以用矢量符號來將其表示成兩個m維向量的無向乘積:
netk= X?W
其中
X={x0, x1, x3,… , xm}
W={w0, w1, w3,… , wkm}
3.2 可視化方法
可視化技術在字典中的意思為“心理圖像”,在計算機圖形學領域。可視化將自身行為聯系起來,特別是和人眼可以理解的復雜行為聯系起來。計算機可視化就是用計算機圖形和其他技術來考慮更多的樣本、變量和關系。
可視化技術其目的是清晰地、恰當地、有見解地思考,以及有著堅定信念的行動。
基于計算機的可視化技術不僅僅把計算機作為一種工具,也是一種交流媒介,可視化對開發人類認知方面提出了挑戰,也創造了機遇。挑戰是要避免觀察不出不正確的模式,以免錯誤地做出決策和行動。機遇是在設計可視化時運用關于人類認知的知識。
安得魯曲線技術把每個n維樣本繪制成一條直線。
f(t)=x1/1.41+x2sin(t)+x3cos(t)+ x4sin(2t) +x3cos(2t)+ …
其中t為時間域,函數f(t)把n維點X=(x1, x2, x3, x4, …,xn)
將f(t)進行部分變換:
f(t)= X?W
其中
X={x0, x1, x3,… , xm}
W={w0, w1, w3,… , wkm} (w0= sin(t),w1= cos (t))
這種可視化的一個好處是它可以表示很多維,缺點是要花很多的時間計算,才可以展示每個維點。這種幾何投影技術也包括探測性統計學,如主成分分析、因子分析和緯度縮放。平行坐標可視化技術和放射可視化技術也屬于這類可視化[3]。
3.3 人工神經元模型與可視化化方法中的安得魯曲線技術分析與比較
人工神經元是一個抽象的自然神經元模型,將其數據模型符號化為:
netk=x1wk1+x2wk2+ … … +xmwkm+bk
netk= X?W
安得魯曲線技術把每個n維樣本繪制成一條曲線。這種方法與數據點的傅立葉轉換相似。它用時間域T的函數f(t)來把n維點X=(x1,x2,x3,x4, …,xn)轉換為一個連續的點。這個函數常被劃分在-∏≤t≤∏區間。
f(t)=x1/1.41+x2sin(t)+x3cos(t)+ x4sin(2t) +x3cos(2t)+ …
f(t)= X?W
人工神經網絡和可視化方法部分算法比較可以近似的計算認為:
netk= f(t) =X?W
通過對人工神經網絡和可視化方法公式的整理可以得出它們有著很多的共同性和相似性[4],在容錯允許的情況下其算法為:
F(t)= X?W
其中F(t)可表示為人工神經網絡
F(t)= netk
或可視化方法
F(t)= f(t)
4 kohonen神經網絡
Kohonen神經網絡也是基于n維可視化的聚類技術,聚類是一個非常難的問題,由于在n維的樣本空間數據可以以不同的形狀和大小來表示類,n維空間上的n個樣本。
Mk=(1/n)
其中k=1,2,…,k。每個樣本就是一個類,因此∑nk=N。[5]
Kohonen神經網絡可以看作是一種非線性的數據投影這種技術和聚類中的k-平均算法有些相似。
可見,Kohonen神經網絡屬于可視化方法也屬于神經網絡算法。
5 結束語
現代世界是一個知識大爆炸的世界。我們被大量的數據所包圍著,這些數據或是整型的、或是數值型或其他類型,它們都必須經過各種方法的分析和處理,把它轉換成對我們有用的或可以輔助我們決策和理解的信息。數據挖掘是計算機行業中發展最快的領域之一,原始數據在爆炸式的增長,從原始數據中發現新知識的方法也在爆炸性地增長。人工神經網絡和可視化方法是兩種對海量數據進行數據挖掘整理的不同算法,通過以上縱向和橫向的對比,我們可以發現它們的相似性和共同點:對接受到的信息進行歸納處理、轉化、篩選、容錯性、并對接受到的信息產生合理的輸出。在應用中可以根據它們不同的屬性和能力選擇不同的算法。
參考文獻:
[1] Tang,Z H.數據挖掘原理與應用[M].北京.清華大學出版社,2007:74.
[2] Kantardzic M.數據挖掘[M].北京.清華大學出版社,2002:89.
[3] 李守巨,王吉.基于概率神經網絡的巖土邊坡穩定性預測方法[J].巖土力學,2000(2).
[4] Tam C M, Tong T K L.Diagnosis of Prestressed Concrete Pile Defects Using probabilistic Neural Networks[J].Engineering Structures,2004,26(8):1155.
關鍵詞:BP神經網絡;氣水識別;預測效果
中圖分類號:TP21 文獻標識碼:A
人工神經網絡是人類通過模擬腦神經系統的記憶存儲與再現、聯想思維、目的行為以及更為不易捉摸的情感和靈感等信息活動,揭示腦物理平面與認知平面的相互聯系的作用機理,通過計算機實現學習 、訓練、修正、確認和計算的一種計算機信息處理系統。自50年代以來,神經網絡技術經歷了萌芽、探索、學科的誕生和茁壯成長,成為當今全世界關注的高科技熱點,顯示出了廣闊的應用前景。
BP人工神經網絡(Back Propagation Network)是由大量的神經元相互連接而成的自適應非線性動態系統。人工神經網絡作為生物控制論的一個成果,其觸角已延伸到各個工程領域,吸引著不同專業領域放入專家從事這方面的研究和開發工作,并且在這些領域中形成了新的生長點。人工神經網絡從理論探索進入大規模工程實用階段,到現在也只有短短十幾年的時間。它的工作原理和功能特點接近于人腦,不是按給定的程序一步一步地機械執行,而是能夠自身適應環境,總結規律,完成運算、識別和控制工作。一般人工神經網絡的主要特征為:大規模的并行處理和分布式的信息儲存;極強的自學、聯想和容錯能力;良好的自適應性和自組織性;多輸入、多輸出的非線性系統。這些特征使它基本符合工程的要求。
1.BP神經網絡的基本原理
神經網絡系統由大量的神經元廣泛連接形成。每一個神經元都是一個基本處理單元, 將從其它眾多神經元中接收到的信息, 經過非線性計算,輸出給另一些神經元。簡單的人工神經元如圖4-1所示:X1,X2,...,Xi,...,Xn是第j個神經元接收到的信息ω1j,ω2j,...,ωij,...,ωnj為該神經元與提供信息神經元之間的連接權;θj為單元激活值,為該神經元計算處理后輸出的信息,神經元的計算處理函數可選階躍函數、分段線性函數、函數、 S函數,通常人們選S函數。
對于算法BP網絡對神經網絡的訓練過程,實質上是通過計算輸出值與期望值的誤差(E),求解輸出層單元的一般化誤差(dj),再將dj逆傳播,求出隱層單元的一般化誤差(ei)。通過調整輸出層和隱含層及輸入層間連接權與隱層、輸出層的閥值,直到系統誤差降到可接受為止。這時,網絡間的連接權和閥值不再改動,以此預測出與訓練信息相類似條件的未知信息。
圖1給出一個基本的BP神經元模型,它有R個輸入,每一個輸入都通過一個適當的權值W和下一層相連,網絡輸出可表示為:
圖1 BP神經元模型
2.子洲氣藏山西組產層分類
本文以子洲氣田山2段儲層為研究對象,根據儲層產流體性質及其典型井的測井響應綜合特征,考慮到生產井的動態生產特征和出水特點,將子洲氣藏生產井劃分為氣井、水井、氣水同產井和干井四類,相應的儲集層為氣層、水層、氣水同層和干層。將試氣產量大于1×104m3/d,含水率小于10%的儲集層歸為1類氣層;將產氣量0.2×104m3/d-1×104m3/d,產水量小于4m3/d的儲集層歸為2類氣層;若儲集層僅含殘余氣和少量可動水,砂層分類中作為干層對待,產氣量小于0.2×104m3/d,產水量小于4m3/d;試氣產量大于0.2×104m3/d而小于1×104m3/d,產水量大于4m3/d;試氣產量大于1×104m3/d,含水率大于10%的儲集層歸為氣水層;試氣產量產氣小于0.2×104m3/d,產水大于4m3/d,或含水率高于90%的儲集層為水層。
依據上述原則選擇具有代表性的各類產層:
氣層:榆10、榆11、榆12、榆13、洲06、洲07、洲08、洲09、洲10、洲11、洲12、洲13、洲14、洲15、洲16、洲17、洲18、洲19、洲20、洲22、洲23、洲24;
干層:榆14、榆15;
氣水層:榆09、榆07、榆08、洲05、洲02、洲03、洲04;
水層:榆01,榆02、榆03;榆04、榆05、洲01。
3.BP神經網絡模型的建立和預測
3.1 BP神經網絡流程圖
在進行BP神經網絡的建立和運用時,實際流程如圖2。
3.2 BP神經網絡的建立
(1)根據試氣結果,從24口井,挑選出氣層,氣水層,水層,干層共24組樣本,以補償中子(CNL),密度(DEN),聲波時差(AC),自然伽馬(GR),深淺側向電阻率差(Rt-Rs),5條測井曲線作為樣本輸入參數。
(2)BP神經網絡輸入層設為5個節點,分別代表補償中子(CNL),密度(DEN),聲波時差(AC),自然伽馬(GR),深淺側向電阻率差(Rt-Rs),5條測井曲線。含一個隱層,隱層為8個節點,隱層采用S型神經元函數logsig()。輸出層為4個節點,分別代表氣層,氣水層,水層,干層。建立程序,輸入樣本參數,對樣本學習,訓練,修正權值和閥值。在對樣本進行訓練和學習過程中的網絡結構如圖3。
(3)在訓練過程中,取網絡動量因子α=0.7,學習因子η=0.9,誤差精度ξ=0.0001。開始訓練,經過260次訓練,誤差達到萬分之一以下,停止學習,氣水識別模型已經建立,此時得到儲層類型識別模型。其中輸入層到隱層的連接權值和閥值為:
隱層到輸出層的連接權值和閥值為:
[-24.562,-2.116,-3.379,22.653,-23.136,-4.673,6.582,-8.383,7.582];
[-1.680,-2.879,-2.743,13.058,-3.695,-2.538,1.274,1.487,8.891];
[13.618,-5.297,7.349,0.597,21.638,-3.294,6.842,4.348,-11.230];
[-10.310,8.314,-2.610,6.840,5.369,-13.568,21.330,5.613,3.637]
3.3 BP神經網絡模型預測效果
根據試氣結果,我們從30口井選取43個樣本,以補償中子(CNL),密度(DEN),聲波時差(AC),自然伽馬(GR),深淺側向電阻率差(Rt-Rs),5條測井曲線數據作為輸入數據,利用已經建立的BP神經網絡模型進行預測,預測效果如下表:
從上表可以看出,利用該BP神經網絡模型在對43個樣本進行預測中,其中40個正確,3個錯誤(與試氣結果不符合),符合率達到93.02%,所以該識別模型的預測效果較比較理想,可以彌補交會圖只能定性識別儲層的缺陷,因此該BP神經網絡氣水識別模型可以較為精確劃分該區域的氣水層,可以達到定量識別氣層、水層、氣水層、干層的目的。
結論
利用該BP神經網絡模型預測氣水層,符合率達到93.02%,彌補了傳統測井解釋氣水層的弊端,通過網絡學習建立模型,避免了大量雜亂信息對分析的影響,預測效果真實可靠。
參考文獻
[1]Baldwin.J.L.Bateman,R.M.Weatley,C.L.Application of a neural network to the problem of mineral identification from well logs,3rd Mgls.Borehole Geophys,for Mineral, Geotech&Groundwater Appl.Int.Symp.2002.10.The Log Anslyst,30,2002:121-235.
[2]Kukal G C. A Systematic Approach for the Log Analysis of Tight Gas Sands. SPE 11857:21-30.
關鍵詞: 專家系統;推理機制;故障樹;神經網絡
中圖分類號:U461.3 文獻標識碼:A 文章編號:1671-7597(2012)0220085-01
推理機制是專家系統的“CPU”,是構成專家系統的核心部分,其作用是模擬領域專家的思維過程,完成對領域問題的求解。推理機制影響是專家系統的性能的一個重要因素,推理機制設計不合理容易使專家系統在運行中出現“組合爆炸”、“無窮遞歸”和“匹配沖突”等問題,從而影響系統性能。在Intranet中IT技術支持專家系統中由于知識庫內容豐富、結構復雜,推理機制的設計顯得尤為重要。本文分析了幾種常用的推理機制,并根據Intranet中IT技術支持專家系統的領域特點,完成了該專家系統推理機制的設計。
1 基于故障樹的推理
根據IT技術支持專家系統的領域特點,基于故障樹的推理機制能從用戶描述的故障現象和知識庫中構造的故障樹進行推理得出故障原因,進而進行故障處理。其推理過程如下:
1)構造故障樹林,構造合理的故障樹林能有效縮小知識空間的搜索范圍,提高系統工作效率;2)將用戶描述的故障現象與數據庫中由規則集所構造的若干故障樹進行匹配,其中非葉子節點對應某一故障結論,葉子節點對應某一故障現象或者是某一項輔助信息;3)從故障樹深度最大的非葉子節點開始分析規則表達式,看每個需要的事實(子節點)是否存在,如果某個節點的所有子節點都存在,則作為新的事實記錄到工作寄存器,依次重復在樹的每一層次進行運算直到不能再運算為止;4)對于不同規則集故障樹的運算結果,按照可信度和匹配度等參數進行排序,選取最滿足條件的結論得到診斷的結論信息,從而完成推理過程。
從推理過程可以看出,基于故障樹的推理依賴于故障樹的構造,對結構化領域知識的處理能力強,但對非結構和半結構化的領域知識缺乏有效的推理方式,另外當故障樹過大時,推理速度受故障樹深度限制,難以實現并行計算,而且故障匹配時容易出現沖突現象,會降低求解速度與準確性。
2 基于神經網絡的推理機制
基于神經網絡的推理機制一般通過采集征兆向量然后使用正向推理的方式計算出故障向量,從而得出診斷結果。整個推理過程模擬領域專家憑直覺來解決問題的方式,可以解決局部情況的不確定性,具有一定的聯想功能和創造性思維。一般分為輸入層神經元、隱含層神經元和輸出層神經元,其推理過程如下:1)調入故障診斷知識庫和各項故障征兆向量{x1,x2,x3…xn},根據輸入數據計算輸入層各神經元的輸出,把它們作為隱含層單元的輸入;2)計算隱含層神經元的輸出,并把它們作為輸出層單元的輸入;3)計算輸出層神經元的輸出,并由給定的法則判定輸出神經元的輸出,對輸出進行確認,確認完后修正故障征兆向量。
從以上推理過程可以看出:它能很好的處理非結構和半結構化的領域知識,并能夠通過征兆向量記憶診斷結果,從而歸納出新的診斷規則充實知識庫的內容。與傳統專家系統的推理機制相比,神經網絡具有很多的優勢:神經網絡在同一層神經元上是并行處理的,層間的處理是串行的,可以實現并行推理,提高推理效率。神經網絡推理通過征兆向量與輸入數據的運算來完成,由通常的符號運算轉變為數值運算,從而可以大大提高推理速度。神經網絡采用隱式的知識表示方式,通過神經計算來進行求解的推論策略可以完全避免了沖突。但單純使用神經網絡推理機制在結構性領域知識的推理上存在可理解性差,推理結果邏輯溢出等情況。
3 本專家系統推理機制的設計與應用
通過上述兩種推理機制的分析,結合IT 技術支持專家系統領域知識的特點,本專家系統的推理機制采用了基于故障樹的推理和基于神經網絡的推理機制進行結合的方式。采用控制程序將單故障、單過程、確定型故障以及漸發性故障的診斷對象分配給基于故障樹的推理進行診斷,將多故障、多過程、不確定型故障以及突發性故障的診斷對象分配給神經網絡進行診斷,充分發揮故障樹和神經網絡各自的優勢,又使二者相互協調工作,既使本專家系統的診斷范圍擴大,又使其診斷推理快速。推理過程如下所示:
從以上推理流程可以看出,本系統將基于故障樹所具有的判別速度快、具有良好的可理解性、知識獲取能力強等特點和神經網絡的可學習性、自適應性、自組織性、能以權值的形式自動地獲取知識等特點結合,有效的實現了專家系統的推理機制,提高了推理效率。
4 小結
本專家系統所設計的推理機制,把與專家系統知識庫中規則相匹配且確定性較大的故障送入基于故障樹推理機求解,而把不能與專家系統知識庫中規則相匹配的故障和不確定性較大的故障作為神經網絡的輸入樣本,由神經網絡進行推理求解。完成了基于故障樹和神經網絡系統的推理機制的有效結合。這樣,在專家系統部分可以采用它最擅長的人機交互式的混合雙向推理方法,充分利用知識庫中故障樹,準確地得出推理結果;而在神經網絡部分則采用系統運行過程中生成的征兆向量正向推理方法根據輸入數據進行直接計算得出診斷結果,發揮各自的優勢,使整個專家系統高效運行。
基金項目:湖南省教育廳2010年科學研究資助課題《Intranet中IT技術支持專家系統研究與開發》(2010C0286)階段性研究成果。
參考文獻:
[1]張維勇、程凡、魏臻,一種綜合智能故障診斷方法的研究,合肥工業大學學報,2006,28(9):1104-1107.
[2]鞠萬群、韓秋實,基于神經網絡與規則庫的故障診斷專家系統[J].北京機械工業學院學報,2001(03):6-8.
【關鍵詞】 T-S型模糊神經網絡 儲糧害蟲 分類識別 Visual C++6.0
糧食的安全儲藏問題是個世界性難題。據聯合國糧農組織的調查統計,全世界每年糧食霉變及蟲害等損失為糧食產量的8%[1]。因此,搞好糧食儲藏是一項關系到國計民生的重大課題,進行儲糧害蟲的治理任務重大而迫切。準確地給出害蟲的種類信息可為害蟲的綜合防治提供科學的決策依據。
模糊神經網絡是模糊理論同神經網絡相結合的產物,它的特點是將神經網絡較強的自學習和聯想能力與模糊邏輯的推理過程易理解、對樣本要求較低的特點融合在一起,模糊理論和模糊系統理論上比通常意義下的模糊邏輯和神經網絡更有優越性,但是很難實現自適應學習的功能。如果把神經網絡引入到模糊理論中,將兩者有機結合,模糊系統能夠成為一種具有較強自學習能力的自適應模糊系統,采用已有神經網絡的有效學習算法,并吸收模糊系統的優點,起到互補的效果。
1 T-S型模糊神經網絡
1985年,T-S型模糊邏輯系統由日本的高木(Takagi)和關野(Sugeno)提出,旨在開發從給定的輸入-輸出數據集產生模糊規則的系統化方法,這種基于語言規則描述的模型第i條規則可寫為:
(1-1)
式(1-1)中,A是前件中的模糊集合,z是后件中的精確函數。通常是輸入變量x和y的多項式。當是一階多項式時,所產生的模糊推理系統被稱為一階Sugeno模糊模型,當為常數時,即得到了零階Sugeno模糊模型[2,3]。
專家知識被Sugeno模糊模型通過語言和數據整合到if-then規則中,基于T-S型的模糊神經網絡綜合了模糊系統和神經網絡的特點,不但能夠實現一個Sugeno模糊推理系統的功能[4,5],實現圖像的模糊輸入和模糊推理,而且它能根據系統輸出的期望值和實際值的差別自動生成和調整隸屬度函數和模糊規則。這種模糊神經網絡應用于儲糧害蟲分類,將更貼近于害蟲特征的形成過程,能取得較好的分類結果。
本實驗采用的是一階Sugeno模糊模型,后件是一階線性方程。其隸屬函數生成層、模糊推理層為:
(1-2)
(1-3)
其中,表示生成的隸屬度函數,采用的是高斯函數。為參數對,它們稱為前件參數,取值情況決定了的形狀。表示模糊推理層,模糊推理采用的是積運算,即各節點的輸出是輸入值的乘積。
反模糊化層采用一階Sugeno模糊模型的輸出。此時,令后件函數為,其模糊推理輸出:
(1-4)
學習算法采用誤差函數的負梯度下降方法,不斷更新網絡參數。第n個訓練模式的誤差參數,可定義為
(1-5)
其中p為輸出單元的個數。
按照模糊神經網絡的結構,可定義網絡參數向量:
(1-6)
參數更新修正規則:
(1-7)
其中為學習速率。
網絡分為4層:第1層為輸入層,代表儲糧害蟲的特征向量輸入網絡;第2層為模糊化層,完成輸入特征向量的模糊化,將輸入的特征向量分為3個等級{小(small),中(medium),大(large)},隸屬函數為高斯函數;第3層為模糊推理層,以使對模糊化后的特征向量進行綜合處理,采用積運算,第4層是輸出層,它的輸出值即表示屬于此類的隸屬度。
2 試驗過程
試驗過程分為學習過程和回調過程。
學習過程:(1)確定分類數為9。確定訓練的矢量數據,用各分量分別代表害蟲特征向量作為輸入。取每類害蟲的5個特征分量值作為訓練數據的輸入矢量,從而完備訓練數據,同時確定各個輸入矢量對應的各類隸屬度輸出,構成9個5輸入單輸出的模糊神經網絡,每一個對應一類的隸屬度輸出。(2)將數據送入各自單個的網絡訓練,直至能模擬所有輸出。
回調過程:將待分類儲糧害蟲的特征向量送入網絡,得到各自的單個網絡的輸出,然后將輸出歸一化,得到最終的隸屬度輸出。
3 試驗結果
利用Sugeno型模糊神經網絡對6類儲糧害蟲進行了分類研究。試驗結果如(表1)所示。
4 Visual C++6.0平臺上實現識別
(圖1)是在儲糧害蟲圖像分類識別系統中對赤擬谷盜其中一個樣本的識別。
5 結語
運用T-S型神經網絡對儲糧害蟲進行分類的識別率達到95.6%,并且利用Visual C++6.0平臺實現,操作簡單,可讀性好,具有較大的實際應用價值。
參考文獻:
[1]黑龍江省大豆協會.我國糧食儲藏的現況及發展趨勢.http://.cn/news/index.php?id=1163
[2]Sugeno M.,Kang G.T.Structure identification of fuzzy model [J].Fuzzy Sets and Systems,1998,28:15-33.
[3]Takagi,M.Sugeno.Fuzzy identification of systems and its applications to modeling and control[J].IEEE Transaction on System,1985,15:116-132.
關鍵詞:人工智能;TensorFlow;BP神經網絡
中圖分類號:TP18 文獻標識碼:A 文章編號:1009-3044(2016)16-0199-03
Abstract:Based on Google's second generation of artificial intelligence learning system―TensorFlow, build a BP neural network model. Use handwritten characters as training set of inputs of neural network, constantly revise weight value and threshold value in the process of training, and get a higher identification precision of the model. It Embodies the TensorFlow’s effect in improving the efficiency of modeling, programming and analysis. Through introducing the development process, It provides reference which use TensorFlow building complex neural networks.
Key words:artificial intelligence; TensorFlow; BP neural networks
1 概述
目前,手寫字符的識別方法已經有多種,如支持向量機、BP神經網絡、KNN、樸素貝葉斯方法等。其中BP神經網絡作為一種經典的模式識別工具,應用廣泛。將BP神經網絡應用于手寫字符識別,具有識別速度快、分類能力強、有較好的容錯性能和學習能力的優點。
TensorFlow是一個采用數據流圖,用于數值計算的開源軟件庫。它通過構建有向圖來描述所要執行的操作,可以靈活的使用設備中的CPU或者GPU展開計算。TensorFlow提供了構建神經網絡的接口,因此便于構建BP神經網絡,簡化編程任務。與傳統平臺構建的識別模型相比,提高了效率。
2 TensorFlow深度學習平臺
2.1 TensorFlow平臺特性
TensorFlow使用靈活,無論是個人PC還是大規模GPU計算集群,TensorFlow都能夠靈活的在這些平臺運行,使用 TensorFlow 表示的計算也可以在這些平臺上方便地移植。目前,TensorFlow已經被應用于機器學習系統,以及和計算機科學相關的領域,例如計算機視覺、語言識別、信息檢索、機器人、地理信息抽取、自然語言理解和計算藥物發現等。TensorFlow靈活的特性也可以用來表示很多的算法,比如推斷算法和深度神經網絡的訓練等。
TensorFlow采用數據流計算,其表達的數據流計算由一個有向圖表示,這個圖由一個節點集合組成。在一幅 TensorFlow 圖中,每個節點有一個或者多個輸入和零個或者多個輸出,表示一種操作的實例化。圖中的葉子節點通常為常量或者變量,非葉子結點為一種操作,箭頭代表的是張量(常量、變量以及節點計算出的結果均可視為張量)的流動方向。
通過在Ubuntu系統上安裝TensorFlow庫、啟用GPU支持即可使用Python語言構建計算圖,實現基于神經網絡的手寫字符識別。
2.2 TensorFlow平臺搭建
TensorFlow目前支持Ubuntu系統和MAC OS系統中安裝,支持C++和Python兩種編程語言。考慮到Python語言的簡潔性,本實驗采用Python進行程序設計。
1)使用 Virtualenv 創建隔離容器安裝 TensorFlow,不會改變不同Python項目的依賴關系,便于進行項目的管理,能使排查安裝問題變得更容易。
$ sudo apt-get install python-pip python-dev python-virtualenv
2)在Virtualenv環境下安裝TensorFlow的GPU版本:
創建圖:TensorFlow使用圖來表示計算任務,在執行計算操作之前需要將圖構建完成。每一個非葉子節點都視為一種操作,葉子節點則表示特殊的操作類型,比如返回常量值或者變量值。創建圖的最后階段需要向圖中添加一個初始化操作的節點,其作用是將所有的變量進行初始化。
啟動圖:圖創建完成后,才能啟動圖。啟動圖的第一步是創建一個 Session 對象,如果無任何創建參數,會話構造器將啟動默認圖。然后進行變量的初始化操作、運行操作節點、更新變量值。
3 BP神經網絡設計
BP神經網絡是一種按誤差逆傳播算法訓練的多層前饋網絡,是目前應用最廣泛的神經網絡模型之一。學習規則使用最速下降法,通過反向傳播來不斷調整網絡的權值和閾值,使網絡的誤差平方和最小。由輸入層、隱含層和輸出層組成,層與層之間采用全連接方式,同層之間不存在相互連接。
3.1 BP神經網絡
3.2 TensorFlow平臺實現
本實驗采用MNIST手寫字符數據集,手寫字符為28×28像素的手寫數字灰度圖像。存儲在train-images-idx3-ubyte.gz和train-labels-idx1-ubyte.gz 文件中的60000幅手寫字符數據,55000幅作為訓練集,5000幅作為驗證集。測試集10000幅圖像的字符和標簽存儲在t10k-images-idx3-ubyte.gz和t10k-labels-idx1-ubyte.gz中。
輸入層設計:手寫字符每一張圖片的大小為32×32,一維化后,每一張圖片作為輸入時需要784個輸入層神經元節點,其中None表示輸入圖片的數目:
4 總結
目前,神經網絡被廣泛應用于學術界和工業界,但在構建神經網絡、優化參數、模型分析方面總是存在著一定的困難。TensorFlow的出現使這種狀況得以改善。TensorFlow有著編程簡單、優化算法集成度高、使用靈活的特性,利用TensorFlow將會使建模、編程、分析效率大大提高。實驗以BP神經網絡為例,介紹了TensorFlow平臺下神經網絡模型構建的一般方法和流程,并且得到了有較高識別精度的模型。對構建更復雜的神經網絡具有一定的參考意義。
參考文獻:
[1] Abadi M, Agarwal A, Barham P, et al. TensorFlow: Large-scale machine learning on heterogeneous systems, 2015[J]. Software available from tensorflow. org.
[2] 任翠池,楊淑瑩,洪俊.基于BP神經網絡的手寫字符識別[J].天津理工大學學報,2006,22(4):80-82.
[3] 張斌,趙瑋燁,李積憲.基于BP神經網絡的手寫字符識別系統[J].蘭州交通大學學報:自然科學版, 2007,26(1).
[4] 許宜申,顧濟華,陶智,等.基于改進 BP 神經網絡的手寫字符識別[J].通信技術,2011, 44(5): 106-109.
[5] 楊勇,謝剛生.基于BP神經網絡的手寫數字識別[J].華東地質學院學報,2003,26(4): 383-386.
[6] 金連文,徐秉錚.基于多級神經網絡結構的手寫體漢字識別[J].通信學報,1997,18(5).
關鍵詞:神經網絡 ;BP網絡; 優缺點; 改進算法
【中圖分類號】 TP183 【文獻標識碼】 B【文章編號】 1671-1297(2012)09-0196-02
思維學普遍認為,人類大腦的思維分為抽象(邏輯)思維、形象(直觀)思維和靈感(頓悟)思維三種基本方式。
人工神經網絡(Artificial Neural Networks,NN)就是模擬人思維的第二種方式。這是一個非線性動力學系統,其特色在于信息的分布式存儲和并行協同處理。雖然單個神經元的結構極其簡單,功能有限,但大量神經元構成的網絡系統所能實現的行為卻是極其豐富多彩的。人工神經網絡系統從20世紀40年代末誕生至今僅短短半個多世紀,但由于它具有信息的分布存儲、并行處理以及自學習能力等優點,已經在信息處理、模式識別、智能控制及系統建模等領域得到越來越廣泛的應用。
神經網絡拓撲結構的單隱層前饋網絡,一般稱為三層前饋網或三層感知器,即:輸入層、中間層(也稱隱層)和輸出層。它的特點是:各層神經元僅與相鄰層神經元之間相互全連接,同層內神經元之間無連接,各層神經元之間無反饋連接,夠成具有層次結構的前饋型神經網絡系統。單計算層前饋神經網絡只能求解線性可分問題,能夠求解非線性問題的網絡必須是具有隱層的多層神經網絡。
一 BP網絡
1986年,Rumelhart和Hinton提出了誤差反向傳播神經網絡(Error Back Propagation Neural Network),簡稱BP網絡。它是一種能向著滿足給定的輸入輸出關心方向進行自組織的神經網絡。
1. BP網絡的原理
輸入層各神經元負責接收來自外界的輸入信息,并傳遞給中間層各神經元;中間層是內部信息處理層,負責信息變換,根據信息變化能力的需求,中間層可以設計為單隱層或者多隱層結構;最后一個隱層傳遞到輸出層各神經元的信息,經進一步處理后,完成一次學習的正向傳播處理過程,由輸出層向外界輸出信息處理結果。當實際輸出與期望輸出不符時,進入誤差的反向傳播階段。誤差通過輸出層,按誤差梯度下降的方式修正各層權值,向隱層、輸入層逐層反傳。周而復始的信息正向傳播和誤差反向傳播過程,是各層權值不斷調整的過程,也是神經網絡學習訓練的過程,此過程一直進行到網絡輸出的誤差減少到可以接受的程度,或者預先設定的學習次數為止。
2. BP網絡的特點
(1)輸入和輸出是并行的模擬量。
(2)網絡的輸入輸出關系是各層連接的權因子決定,沒有固定的算法。
(3)權因子是通過學習信號調節的,這樣學習越多,網絡越聰明。
(4)隱含層越多,網絡輸出精度越高,且個別權因子的損壞不會對網絡輸出產生大的影響。
3. BP網絡的優點
(1)網絡實質上實現了一個從輸入到輸出的映射功能,而數學理論已證明它具有實現任何復雜非線性映射的功能。這使得它特別適合于求解內部機制復雜的問題。
(2)網絡能通過學習帶正確答案的實例集自動提取"合理的"求解規則,即具有自學習能力。
(3)網絡具有一定的推廣、概括能力。
4. BP網絡的缺點
BP算法的學習速度很慢,其原因主要有:
(1)由于BP算法本質上為梯度下降法,而它所要優化的目標函數又非常復雜,因此,必然會出現"鋸齒形現象",這使得BP算法低效;
(2)存在麻痹現象,由于優化的目標函數很復雜,它必然會在神經元輸出接近0或1的情況下,出現一些平坦區,在這些區域內,權值誤差改變很小,使訓練過程幾乎停頓;
(3)為了使網絡執行BP算法,不能用傳統的一維搜索法求每次迭代的步長,而必須把步長的更新規則預先賦予網絡,這種方法將引起算法低效。
網絡訓練失敗的可能性較大,其原因有:
(1)從數學角度看,BP算法為一種局部搜索的優化方法,但它要解決的問題為求解復雜非線性函數的全局極值,因此,算法很有可能陷入局部極值,使訓練失敗;
(2)網絡的逼近、推廣能力同學習樣本的典型性密切相關,而從問題中選取典型樣本實例組成訓練集是一個很困難的問題。
難以解決應用問題的實例規模和網絡規模間的矛盾。這涉及到網絡容量的可能性與可行性的關系問題,即學習復雜性問題。
網絡結構的選擇尚無一種統一而完整的理論指導,一般只能由經驗選定。為此,有人稱神經網絡的結構選擇為一種藝術。而網絡的結構直接影響網絡的逼近能力及推廣性質。因此,應用中如何選擇合適的網絡結構是一個重要的問題。
新加入的樣本要影響已學習成功的網絡,而且刻畫每個輸入樣本的特征的數目也必須相同。
二 BP網絡的改進算法
BP算法最優化的方向主要有權值調整、自適應學習速率調整、網絡結構調整等。常用的改進方法有以下幾種:
1.加入動量項
利用附加動量的作用則有可能滑過局部極小值。該方法所加入的動量實質上相當于阻尼項,它減小了學習過程的振蕩趨勢,改善了收斂性,這是目前應用比較廣泛的一種改進算法。
2.自適應學習速率調整
對于一個特定的問題,要選擇適當的學習速率并不是一件容易的事情。對訓練開始初期功效很好的學習速率,不一定對后來的訓練合適。為了解決這一問題,人們自然會想到在訓練過程中自動調整學習速率。
3.共軛梯度算法
在各種改進算法中,共軛梯度法(Conjugate Gradient)是非常重要的一種。其優點是所需存儲量小,具有N步收斂性,穩定性高,而且不需要任何外來參數。
4.Levenberg-Marquart算法(最小二乘擬合算法)
除了改進算法以外,通過改變神經網絡結構(隱層結點數和網絡層數)、調整誤差等方法,也能加快BP算法的收斂速度。
參考文獻