前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的神經網絡的算法主題范文,僅供參考,歡迎閱讀并收藏。
關鍵詞: BP神經網絡; 支持向量機; 核函數; 數據挖掘
中圖分類號: TN711?34 文獻標識碼: A 文章編號: 1004?373X(2017)11?0111?04
Research on data mining algorithm based on neural network
WANG Chunmei
(School of Computer Science and Technology, Xi’an University of Posts and Telecommunications, Xi’an 710121, China)
Abstract: The neural network can classify and predict the various network models. The data mining algorithm based on BP neural network and SVM is applied to the air quality prediction in Xi’an region. Although the BP neural network and SVM method have different generalization ability and convergence ability, the past historical data is used to train the network model. The experimental results prove that the data mining algorithm can predict the future data accurately.
Keywords: BP neural network; support vector machine; kernel function; data mining
0 引 言
近年來空氣污染嚴重,空氣問題不容忽視,準確的空氣質量預測具有極大的現實意義。神經網絡算法在數據挖掘中占有重要的地位,因為網絡模型、復雜度等不同,神經網絡可以擬合各種曲線實現分類、預測等多種模式,至今神經網絡已經研究出了多種類型來適應不同的要求。
神經網絡要求網絡模型對訓練數據集有比較好的逼近能力,也需要對訓練集之外的分布數據能給出比較精準的預測。泛化能力即經過訓練學習得到的預測模型,對沒有在訓練集中出現但是具有一定規則的數據能有比較準確的預測能力,不只是普通的保存學習過的樣本,而是需要進行有限次數據的訓練,找到未知的規律。
本文基于神經網絡的BP算法和SVM算法利用已有的歷史數據訓練網絡模型,對未來的天氣進行較為準確的預測工作。
1 BP算法
前饋神經網絡是一種典型的神經網絡模型,網絡具有分層結構,輸入數據從輸入層進入到前饋神經網絡,經過輸入層和隱層傳遞到輸出層。不同的前饋網絡節點限制函數、神經元個數、隱層個數、權重修改方法能夠實現擁有多樣能力的前饋神經網絡。
只有一個隱層的感知器只能解決輸入數據線性能夠區分的問題,但很多分類問題的輸入數據都是線性不能區分的。要完成線性不可分的難題,需要在結構中加入隱層。含有多隱層的前饋網絡相比于單層感知器的區分效果有明顯的提升。因為誤差相反傳遞算法經常用于神經網絡,所以也叫BP網絡。
1.1 基本思想
BP學習過程分為兩個過程,即輸入數據經過輸入層和隱層正向流給輸出層,輸出層的誤差經隱層反傳給輸入層。正向傳播時,輸入數據從輸入層到達,經過每個隱層的加工后,再傳遞給最后的輸出層。如果輸出數據達不到預期目標,則進入誤差的反向傳遞。誤差的反向傳遞是指將最后一層的誤差經過某種方法,經網絡的隱層反轉傳遞向輸入層,將誤差均勻給網絡每個層的所有神經元節點,因此得到網絡每層神經元節點的誤差信號,通過節點獲得的誤差來調整節點。這兩部分反復,通過不斷地權重修改將誤差減少到比較滿意的情況,或達到學習次數上限。
1.2 基本原理
三層BP網絡模型圖如圖1所示。
在該三層前饋網絡中,為輸入向量,代表隱層神經元節點的閾值;隱層輸出為圖1中是為輸出層神經元引入閾值設置的;輸出層的輸出向量為預期輸出網絡的隱層和網絡輸入層的權值用矩陣表示;用表示網絡隱層到網絡輸出層的權值矩陣。
對于輸出層來說:
(1)
對于隱層來說:
(2)
轉移函數為:
(3)
1.3 學習算法
當網絡輸出距離預期結果有差距時,代表輸出誤差。
隱層:
(4)
輸入層:
(5)
據式(5)得知,網絡誤差展開到輸入層只和有關,要想減小誤差,就要修改神經元的權值。
假設網絡有個隱層,神經元數代表網絡隱層的輸出,為權重,則權重修改公式如下:
輸出層:
(6)
第個隱層:
(7)
遞推可得:
(8)
在BP算法中,所有的權重修改公式都一樣,都取決于學習率、輸入和本層的輸出誤差。模型每層的輸出誤差和模型的總誤差有關系,反映了模型輸出的誤差。網絡中每一個隱層的誤差都和前面每個網絡層的誤差有聯系,都是經過網絡的輸出層一層一層地向前回傳。
2 SVM算法
2.1 基本思想
從線性可分的方向來看,支持向量機的本質是尋找一個最優決策超平面,使其兩側和到平面距離最近的數據點之間的距離最大,有良好的泛化推廣能力。而對于非線性可分問題,根據Cover定理:如果分類問題在低維上不可分,那么將其非線性地映射到高維特征空間可能是線性可分的,只要變化是非線性的并且特征空間的維度很高,所以模式空間可以從低維變換到高維特征空間,讓問題在高維中有很大的可能可分。
2.2 基本原理
SVM方法是一個三層網絡構建的過程,分類超平面的向量為網絡的權值,隱層使用非線性映射函數把數據輸入向量從低維映射到高維的特征向量空間中。
設是維的輸入向量,低維輸入的空間經過非線性變換到維特征空間:
(9)
式中:是權重;是偏置。
特征空間分類超平面為:
(10)
式中:代表第個輸入向量在高S特征空間的像和輸入向量在特征空間的像的內積。
使用內積函數得到超平面:
(11)
支持向量機的基本思路是:對于非線性可分問題,讓輸入樣本從非線性低維變化到高維特征空間后,使其在高維特征空間線性可分,讓支持向量的個數是去除向量為零,最優超平面判別函數為:
(12)
2.3 學習算法
在使用內積核函數的情況下,SVM學習算法如下:
(1) 訓練樣本
(2) 在約束條件下求解,讓目標函數:最大化的矩陣的第個元素是。
(3) 計算最優的權值:
(4) 對于待分類模式計算判別函數:
根據的值,判斷的類別。
向量機的設計不完全依靠設計人員的經驗,因為得到的是全局的最優解,泛化能力較強。但是因為矩陣運算耗時,所以訓練速度相對緩慢。
3 測試實驗
3.1 BP算法實驗
首先定義網絡結構,根據多次實驗,最終確定的網絡結構如圖2所示。網絡的輸入層節點數設計為5、輸出層節點數選擇為4、隱含層節點數選擇為100。隱層的轉移函數是Sigmoid函數,輸出層轉移函數為Purelin函數。
由于是時間序列預測,得到了以前數據后,令是第個輸入,令是第個輸出。輸入層節點總數用表示,代表輸出層節點的總數。
利用BP算法,根據2013年11月―2014年12月的西安歷史空氣質量數據,對2015年1月空氣質量預測結果折線圖如圖3所示,數值參照表如表1所示。
3.2 SVM算法實驗
本次實驗采用Gauss來模擬RBF網絡預測空氣質量。Gauss核函數需要參數。如果會發生嚴重的過學習現象,即泛化能力較弱;當時會有前學習現象。
其次需要樣本準備,因為歷史空氣質量的變化趨勢能反映空氣質量的規律。輸入參數是歷史的空氣質量輸出是下一日期的空氣質量。是輸入空間的維度,是空氣質量預測的步長。此處選取來預測未來1個月的空氣質量。
使用lssvm的tunelssvm函數,采用最小二乘法對Gauss核函數的參數和SVM參數進行尋優,找到合適的Gauss函數參數,再使用工具箱trainlssvm函數進行訓練,然后連續預測得到2015年1月的空氣質量預測值。
利用SVM算法,根據2013年11月―2014年12月的西安歷史空氣質量,對2015年1月空氣質量預測結果折線圖如圖4所示,數值參照表如表2所示。
3.3 實驗結果對比
從圖5和圖6得知,針對得到的樣本和實現的算法模型,BP算法模型和SVM支持向量機對2015年1月空氣質量的總體走勢的預測相差不多,對于實際的空氣質量,仍舊有較大的誤差。SVM的均方誤差略小于BP的均方誤差,但是BP算法網絡模型需要大量的時間訓練,而SVM網絡參數尋優使用的時間要少得多。
4 結 語
BP算法在神經網絡中使用最普遍,但卻不能適用于所有的問題,確定網絡的層數和節點數仍然需要網絡設計者的經驗和不斷的試驗調整。BP網絡還具有學習速率慢,易陷入極小值,泛化能力等問題需要人們解決。SVM由統計和數學理論發展而來,它能夠解決分類、回歸、預測等問題。對于線性不可分的問題,SVM能夠把其對應于特征空間內,使其線性可分。SVM核心在于核函數,不一樣的核函數可以模擬不同網絡應用在不同問題。但是關于核函數的參數如何選取,在領域內仍然沒有一個成熟的理論。數據挖掘中BP算法和SVM算法仍然有一些問題沒有統一的解決理論,但是這并不妨礙數據挖掘的潛力。相信隨著研究的不斷深入,理論的不斷完善,這些問題都將會迎刃而解。
參考文獻
[1] HAN Jiawei,KAMBER MIcheline,PEI Jian.數據挖掘:概念與技術[M].3版.北京:機械工業出版社,2012.
[2] 張良均.數據挖掘:實用案例分析[M].北京:機械工業出版社,2013.
[3] 陳封能.數據挖掘導論[M].北京:人民郵電出版社,2011.
[4] 朱明.數據挖掘[M].合肥:中國科學技術大學出版社,2008.
[5] 韓力群.人工神經網絡理論、設計及應用[M].2版.北京:化學工業出版社,2007.
[6] 王小川.Matlab神經網絡43個案例分析[M].北京:北京航空航天大學出版社,2013.
[7] 施彥,韓力群,廉小親.神經網絡設計方法與實例分析[M].北京:北京郵電大學出版社,2009.
[8] 張德豐.Matlab神經網絡應用設計[M].北京:機械工業出版社,2011.
(①昆明理工大學國土資源與工程學院,昆明 650093;②黃河勘測規劃設計有限公司,鄭州 450003)
(①Faculty of Land Resource Engineering,Kunming University of science and Technology,Kunming 650093,China;
②The Yellow River Survey Planning and Design Co.,Ltd.,Zhengzhou 450003,China)
摘要: 隨著神經網絡理論的深入研究,神經網絡已在圖像的分類中起到非常重要的地位。本文章使用IDL語言來實現神經網絡在權值調整過程算法優化,并在ENVI上集成,已達到神經網絡分類速度快,且精度可靠的目的。
Abstract: With the deep research in the theory of neural network, neural network has played a very important role in the classification of the image. This article uses the IDL language to implement the algorithm to optimize the weights of neural network to the adjustment process, and on the ENVI integration, has reached the neural network classification speed, precision and reliable.
關鍵詞 : 神經網絡;圖像分類;ENVI;IDL;集成;精度
Key words: neural network;image classification;ENVI;IDL;integration;precision
中圖分類號:P237 文獻標識碼:A
文章編號:1006-4311(2015)06-0234-02
0 引言
ENVI是一套功能強大的遙感圖像處理軟件,在ENVI上進行遙感圖像分類中有很多方法,如神經網絡、最大似然、最小距離、 ISODATA算法、決策樹和面向對象等分類方法,神經網絡在分類時比其它分類所花費時間要長,且速度很慢,因為從算法機理可知神經網絡在權值調整時是迭代收斂的過程,其分類過程自然很慢。針對此問題,決定使用IDL語言來編程優化算法。
1 IDL的語言環境
IDL(Interactive Data Language)是美國RSI公司推出的面向矩陣的第四代計算機語言,它語法簡單,自帶大量的功能函數,使用很少的代碼就能實現其它語言很難實現的功能。IDL是進行數據分析、可視化及跨平臺應用開發的最佳選擇,利用IDL可以快速地進行科學數據讀寫、圖像處理、集成數學統計、信號分析、數值計算和三維圖像建模等。IDL集可視、交互分析、大型商業開發為一體,為您提供了最完善、最靈活最有效的開發環境。
IDL的開發應用已經深入到了人類日常生活的方方面面,給人類對未知領域的探索與發現提供了強有力的工具,推動了人類向前發展。對IDL的語言環境熟悉之后,緊接著就開始針對目前存在的基于神經網絡的遙感圖像分類問題進行改進,并結合ENVI軟件,使用IDL語言設計出改進后的優化算法。
2 ENVI中基于神經網絡分類的剖析
ENVI中采用的神經網絡屬于BP網絡,含有輸入層、輸出層以及處于輸入輸出層之間的隱含層,如果進行非線性分類,輸入的區域并非線性分類或需要兩個超平面才能區分類別時候,隱層數設置為大于或等于一。隱含層的狀態影響輸入與輸出之間的關系,改變隱含層的權系數,可以改變整個多層神經網絡的性能。
ENVI中采用的BP神經網絡通過誤差函數的最小化過程來完成輸入到輸出的映射。為了完成最小化過程,這種BP反向傳播算法分正向傳播和反向傳播兩步進行。在正向傳播中,輸入的樣本從輸入層經過隱單元一層一層進行處理,通過所有的隱含層之后,則傳向輸出層;在逐層處理的過程中,每一層神經元的狀態只對下一層神經元的狀態產生影響;在輸出層把現行輸出和期望輸出進行比較,如果現行輸出不等于期望輸出,則進入反向傳播過程。在反向傳播過程中,反向傳播把誤差信號按原來正向傳播的通路反向傳回,反復修改(這是個迭代的過程)各節點的權重和閾值,逐漸減小誤差,直到達到預先設定的要求。當誤差小于某一相當小的正數或迭代誤差不再減少時,完成BP網絡的訓練、輸入與輸出的映射的確定。
我們的落腳點是在BP網絡的反向傳播過程中網絡各節點權值的迭代調整,但是該網絡在此方面存在缺陷,就是迭代時間長,尤其對處理大數據,需要花費很長時間才能達到收斂。針對BP網絡中學習算法收斂速度慢的缺點,運用數學中埃特金加速收斂算法,對傳統的BP算法進行改進,然后使用IDL語言進行匯編,最后在ENVI上進行功能的擴展,已達到適用的生產目的。
3 編寫迭代函數
為了能在ENVI菜單上調用埃特金迭代收斂函數,需要在ENVI菜單中創建一個新的菜單項,并定義一個此用戶函數。這個用戶函數可以通過在ENVI菜單中選擇這個新的菜單項來進行調用。具體工程如下:
①在現有的ENVI菜單基礎上創建新的功能菜單,首先用文本編輯器打開envi.men文件,添加如下部分:
PRO MY_PROCESS_DEFINE_BUTTONS, buttonInfo
COMPILE_OPT IDL2
ENVI_DEFINE_MENU_BUTTON, buttonInfo, VALUE = ‘New Function’, $
/MENU, REF_VALUE = ‘Supervised’, REF_INDEX = 0, $
POSITION = ‘last’
ENVI_DEFINE_MENU_BUTTON, buttonInfo, VALUE = ‘Function1’, $
UVALUE = ‘Function 1’, EVENT_PRO = ‘my_process_event’, $
REF_VALUE = ‘New Function’
END
如果ENVI已經打開,需要關閉并重新啟動ENVI,然后在ENVI主菜單上,會看到Classification菜單下的Supervised的子菜單內增加了新的菜單“New Function”。
②編寫迭代函數。在運行ENVI的IDL開發環境中,迭代功能函數的部分代碼如下:
ENVI_NEURAL_NET_DOIT
FUNCTION bm_func,X,[X0,X1……Xn]
nx=Xn,
t = FINDGEN(nx-X)
… … … … …
4 實驗過程與精度評定
本實驗主要運用ENVI4.8版本圖像處理軟件進行圖像分類,使用的數據是網上下載的經過數據預處理后的Landsat5 TM研究區影像。調用迭代函數開始進行基于神經網絡的遙感圖像分類,其分類時間所反映的進度條如圖1所示,以及最終的迭代均方根訓練函數如圖2所示。
在神經網絡分類結束后,所花費時間很短,分類速度很快,具體的分類結果圖如圖3所示。對調用迭代函數的神經網絡分類結果進行精度分析,使用混淆矩陣,具體報表如圖4所示。從混淆矩陣報表可知,總體分類精度為94.2374%,其Kappa系數為0.9272,分類效果很好,精度很高,滿足要求。
5 結束語
ENVI上調用迭代函數的神經網絡總體上比原來的神經網絡分類要優越,其鮮明的特色就是分類速度快,精度也高。這大大提速原有的神經網絡分類速度,尤其在處理大數據優越明顯。但是ENVI上仍存在神經網絡分類單一化現象,怎樣使其減少人為的干預,使其更智能化是今后的研究趨勢。
參考文獻:
[1]董彥卿.IDL程序設計—數據可視化與ENVI二次開發[M].北京:高等教育出版社,2012.
關鍵詞:諧波分析 神經網絡 遺傳算法 MATLAB
中圖分類號:TM1文獻標識碼:A文章編號:1007-3973(2010)06-083-02
隨著現代工業科技的發展,電力電子裝置的應用越來越廣泛,非線性和時變性電子裝置大量投入到電網使得電力系統中的非線性負荷急劇增加,導致了配電網中電壓和電流波形的嚴重失真,由此而產生了電網諧波污染問題,諧波的產生降低了電能質量,直接影響工業用電設備和居民用電設備的正常安全運行。另一方面隨著科技的發展,各種精密儀器的投入使用對電能質量提出了更高的要求。諧波問題作為降低電能質量問題的核心內容對電力系統的安全經濟運行帶來了巨大的挑戰 。
對諧波含量準確進行分析計算時保證諧波治理效果的重要前提,本文采用遺傳算法改進神經網絡算法進行諧波含量計算,其實時性和結果精確性都有較大提高。
1諧波含量計算問題
原始理想的電壓和電流波形應該是標準的正弦波波形, 可以假設電源瞬時電壓為
考慮到負載電流發生畸變,含有諧波分量,根據傅里葉級數將負載電流分解為:
其中,為基波有功電流;為基波無功電流;為高次諧波電流,可以將式(2)改寫成權值模式:
對諧波含量的分析計算目標即為求出的值,其中體現高次諧波的含量 。實際電網中由于電力系統為三相系統,偶次諧波基本消除,因此只考慮奇次諧波,占總諧波含量97%以上的諧波集中在25次諧波以下,本文只分析25次以下(包括25次)奇次諧波含量,根據以上分析,式(4)可以簡化成
其中 諧波分析即為求取式(5)中權值系數 的值。
2基于神經網絡諧波檢測算法
本系統采用單層感知器―誤差修正學習法 。由式(5)可知,神經網絡諧波權值計算可用如圖1所示,作為網絡的輸入,為理論電流:
為實測電流值,也就是期望電流值,為期望電流值與網絡實際輸出之差,即誤差信號:
誤差信號為驅動控制信號,其目的是修正調節各次諧波權值,使網絡輸出一步一步接近期望輸出 ,這一目標通過最小化性能指標來實現 ,性能指標定義如下:
權值修正法則如下:
其中表示第n個輸入量第k+1表示第次迭代后結果,為學習率,為學習誤差,為第n個輸入向量。
綜合以上分析可知,采用單層感知器-誤差修正神經網絡的諧波算法計算步驟如下:
(1)給定初始諧波權值
初始權值賦值可采用在規定區間內的隨機賦值法,初值賦值區間為[-2,2]。
(2)給定當前輸入
由前面分析可知為神經網絡輸入,輸入量在不同的時刻t不同,因此必須建立查表機制來查詢不同時刻的網絡輸入,用表示第n次迭代中第個輸入量( 的順序依次編號)。
(3)由權值和輸入量計算網絡輸出值
(4)根據網絡輸出和期望輸出計算學習誤差,如式(7)所示。
(5)根據學習誤差調節權值
其中表示第次迭代中第n個輸入量的連接權值
(6)回到2繼續進行下一次迭代計算
基于單層感知器-誤差修正學習網絡最大的優點就是迭代過程相對簡單,最后系統能穩定收斂到目標范圍。但系統的穩定性受系統反饋參數影響較大,學習率的選取對于系統重復學習過程中的穩定性和收斂性是非常重要的,的值過大,會加快收斂速度但誤差過大,的值過小,學習速度過慢,也將影響系統實時響應速度。
3遺傳算法改進神經網絡算法
上一節中提到的單層感知器-誤差修正神經網絡是一種簡單的尋優算法,但神經網絡權值尋優算法存在全局搜索能力差的缺點,初始權值隨機性過大影響網絡的泛化能力,而遺傳算法可以對復雜的,非線性的、多峰的不可微函數實現最優全局搜索,能有效利用歷史信息來推測下一代更優質的尋優點集 。這樣不斷進化,最后收斂到一個最適應環境的個體上,進而得出問題的最優解。因此,可以先用遺傳算法對初始權值進行優化,在大范圍解空間定位出適用于優化目標的較好搜索空間,然后利用神經網絡在這一個較小解空間進行局部尋優,這樣既可以避免在尋優過程陷入局部最優,還可以加快算法收斂。據此本文將遺傳算法與單層感知器-學習修正神經網絡算法進行結合來優化諧波含量計算。遺傳算法進化步驟如下 :
第一步:確定決策變量和約束條件
包括基波權值在內,一共有13組,總共有26個權值,諧波權值的范圍一般在[-1,1],權值可能溢出,本文將權值范圍擴大到[-2,2],即:
第二步:建立優化模型
優化目標為使得性能指標到合理范圍
第三步:確定編碼、解碼方法
對于每一個權值其取值區間為[-2,2],由于遺傳算法計算目的為搜索最優區間,而非最優解,因此將[-2,2]區間以0.2為單位分為20等份,計算最終目標只需求出最優解所在區間即可,可知每個權值從-2到2有21個取值可能,可用4位二進制編碼串表示,一共有26個權值,按照的順序需要104位二進制編碼串來表示,這便構成了染色體編碼方法。解碼時先將104位的二進制編碼串截成26段4位二進制編碼串,每一段編碼串表示一個權值編碼,設某一段編碼為,解碼后表示權值實際值為,可知
第四步:確定個體評價方法
可知個體評價方法即為性能指標控制到合理范圍。
第五步:設計遺傳算子
選擇運算選用比例選擇算子;交叉運算使用單點交叉算子;編譯運算使用基本位變異算子。
第六步:設定遺傳算法運行參數
包括群體大小、終止代數、交叉概率和變異概率
結合前面神經網絡算法的分析,可得出遺傳算法改進神經網絡算法計算諧波的總計算流程,如圖2所示:
4MATLAB仿真分析
根據前面對算法的分析,使用MATLAB提供的神經網絡和遺傳算法工具性進行仿真處理 。設置遺傳算法群體大小為80,終止代數為100,交叉概率為0.7,變異概率為0.001,神經網絡算法學習率為0.1,使用遺傳算法改進神經網絡算法的訓練樣本曲線如圖3所示,單獨使用神經網絡算法的訓練樣本曲線如圖4所示:
由圖3和圖4可知,采用遺傳算法改進神經網絡算法進行諧波分析,在遺傳算法完成100步迭代后適應度最高樣本的訓練誤差已經降到,此后進行神經網絡訓練到160步后訓練誤差已經降到,相比單獨使用神經網絡算法,需要到350步訓練誤差才能到,可見采用遺傳算法改進神經網絡算法大大加快了迭代速度和計算結果的準確性。
5遺傳算法改進神經網絡算法的優點
使用遺傳算法改進神經網絡算法為諧波計算分析提出了新的解決思路,主要特點包括:(1)全局搜索能力強,算法精確度高 。(2)抗干擾能力強.。(3)自適應能力強。智能算法進行諧波分析作為一種新興的諧波分析思路,但是由于智能算法對于訓練樣本的依耐性非常大,算法參數的設置對于整體計算精度和效率影響非常大,現場應用不夠,因此還需作更為深入的探索研究。
注釋:
呂潤如. 電力系統高次諧波[M].北京:中國電力出版社,1998.
危韌勇,李志勇.基于人工神經元網絡的電力系統諧波測量方法[J]. 電網技術,1999,23(12):20-23.
焦李成.神經網絡計算[M].西安:西安電子科技大學出版社,1993.
危韌勇,李志勇,李群湛.一種基于ANN理論的諧波電流動態檢測方法研究[J]. 鐵道學報,2000,22(1):40-43.
陳國良,王熙法,莊鎮泉,王東生.遺傳算法及其應用[M].北京:人民郵電出版社,1999.
王小平,曹立民.遺傳算法-理論、應用于軟件實現[M].西安:西安交通大學出版社,2002.
關鍵詞 蟻群優化算法 神經網絡 信息素分布函數
中圖分類號:TH183 文獻標志碼:A
20世紀90年代初,意大利學者Dorigo、Maniezzo首先提出了一種新的模擬進化算法―蟻群算法,基本的蟻群優化算法,主要用于離散的參數優化問題,并已經成功的解決了TSP,VRP,QAP,JSP等一些列困難的組合優化問題。而神經網絡的的訓練是典型的連續優化問題,本文在分析基本的蟻群優化算法特點的基礎上,提出一種新的信息素分布方式及其概率分布函數,將蟻群算法成功的延伸到連續優化的范疇,并且建立了蟻群優化算法訓練神經網絡的基本模型,克服了傳統BP算法的不足,同時使得該算法同時具有蟻群算法的快速全局尋優能力和神經網絡的廣泛映射能力。
一、改進的蟻群算法訓練神經網絡
(一)優化模型。
常規的神經網絡是屬于連續性優化的范疇,其優化的目的是從每一個的參數的取值范圍中選取一個具體的值,使得神經網絡的輸出誤差,滿足誤差條件。本文用于連續優化的模型與組合優化相似,只是其解空間從離散變量變成了連續變量的組合。圖1比較直觀地表達了螞蟻覓食時路徑的選擇。
其中m表示螞蟻的個數,依次從n個連續的取值范圍內選取一個值,組成自己的解Sj,其中Xji表示螞蟻在個元素的取值范圍內所選取的具體值。每一個螞蟻在信息素的影響作用下,依照概率原則,構建一組的完整的解。通過螞蟻間的團體協作,構建一個全局最優解。
(二)改進的蟻群優化算法。
1、信息素的分布。理想化的狀態下,螞蟻對信息素的感知力不受左右兩側信息素濃度的影響,但在實際生活中,這種影響是無法避免的,并且路徑兩側的螞蟻對該信息素的感知會隨著距離的增大而減弱,而且關于信息素的散發點是對稱的。在此模型中考慮這種因素,可以克服常規蟻群算法易陷入局部最優,以及解空間搜索不夠的缺點。
通過比較不難發現,這種信息素的分布類似于正態分布,因此可以選擇用正態分布函數來表達信息素的分布函數:
(1)
其中 為隨即變量的方差,可以通過控制的大小來控制 該路徑上信息素對周圍區域的影響程度。圖2比較形象的表達了信息素的分布形狀與 的關系:
u=0, 分別取1/2,1,2。
圖2
正態分布函數只是決定了信息的分布形狀,反映了某一路徑上的信息素對兩側各路徑上螞蟻的影響,螞蟻在選擇路徑時會根據解的質量散發出不同濃度的信息素,依據神經網絡的優化特點,這里采用輸出誤差來描述解的質量的比較合適,即釋放出的信息素與解的誤差成反比,可以得出第j只螞蟻在所選取的路徑上所散發的信息素為:
(2)
上式中,h為一個常數;t為樣本的數量;E(l)為輸出誤差。因為所得到的最優解是針對所有樣本的,因此輸出誤差應取為所有樣本的誤差絕對值之和。將上式中信息素分布的峰值與函數的形狀結合,可得到第j只螞蟻在第i參數上散發的信息素濃度公式為:
(3)
式中,Xji為第j只螞蟻在第i個參數的取值范圍內選取的具體值。
每一只都會在自己所選取的待優化的參數上散發信息素,所有的螞蟻散發完信息素之后,對每一個參數在其整個取值范圍內進行求和,可以得出每一個參數上的信息素濃度分布函數:
(4)
式中,kj為螞蟻所選取的解的加權系數,該解的質量越高,即最終輸出誤差越小,則加權系數的值就越大。
2、信息素概率分布函數 在螞蟻選取路徑的過程中,每一個參數被選取的幾率與該參數上的信息素濃度有關,信息素濃度越大,則被選取的概率越大,反之,則越小,根據上文得出的公式,螞蟻按照一下概率分布函數,依次選擇每一個參數的具體值: (5)
該式中,Ximin與Ximax分別為待選取參數i在其取值范圍內的上,下兩個極值。
(三)優化算法的流程。
用改進后的蟻群算法優化神經網絡的大致過程如下:
(1)建立前向型的神經網絡模型,要包括神經網絡的層數,每一層的節點數,和每一個待優化的權值的取值范圍以及螞蟻樣本;(2)在算法開始,螞蟻們沒有信息素的指導,從各個參數的取值范圍內隨機的選取一個具體值,從而構建去一條路徑;(3)當所有的螞蟻完成了解的構建之后,輸入樣本根據式(4)來更新各路徑上信息素,并初始化所有螞蟻的路徑;(4)根據公式(5)計算出所有參數的概率分布函數,所有螞蟻根據該函數,依次從n個參數各自的取值范圍內選取一個具體的值,構建出一個完整的解;
重復執行步驟(3)~(5),直到最終輸出誤差滿足終止條件。
二、實驗驗證及結果分析
為了更加直觀的驗證該算法的有效性,在這里我們用已知非線性函數y=3x2e-x對算法進行驗證,而神經網絡的結構,我們采用三層前向式神經網絡,共包括輸入層,隱含層,輸出層,三者各有1,10,1個節點。
在此實例中,我們利用上述函數表達式,在[0,5]內隨機選取50個值作為輸入樣本,利用該函數在樣本上的理論輸出值作為輸出樣本,以該樣本的理論輸出值與神經網絡的實際輸出值之差的絕對值,作為需要優化的目標函數。
在這里,輸出層的激勵函數采用線性函數:
F(x) = x
隱含層的激勵函數采用Sigmoid函數:
F(x) = (1-e-x)/(1+e-x)
因此,待優化的權值共有31個,其取值范圍為[-2,2]。
在此實例中,螞蟻的個數設定為31個,經過螞蟻間的協作尋優,對神經網絡的權值不斷優化,樣本的平均誤差很快達到了0.00033。
通過該實例可以總結出,只要有足夠多可以利用的,并且具有代表性的樣本,該改進后的算法可以用來表達任何的非線性函數。同時,也可以通過修改螞蟻的個數和樣本的數量來控制該算法的魯棒性跟其收斂速度,螞蟻與樣本的數量越大,該算法的魯棒性就越強,但收斂速度就比較慢;反之,螞蟻樣本的數量越小,該算法的魯棒性就越差,但是收斂速度較快。
三、結論
1、本文針對傳統的蟻群優化算法主要用于組合優化的特點,將它進行了改進,將離散的信息素矩陣與概率矩陣延伸為連續的信息素分布函數與信息素概率分布函數,使得該算法可以應用至連續優化的范疇,與其他算法相比,該優化算法簡單易懂,容易理解。
2、利用改進后的蟻群算法來訓練神經網絡的權值,并給出該算法的具體步驟,用實例證明了該算法的可行性與有效性。
3、該算法克服了傳統神經網絡算法自身的不足,不僅使其具有神經網絡的廣泛映射能力,還具有了蟻群算法的快速全局尋優能力。
(作者:蘭州交通大學機電工程學院在讀碩士研究生,研究方向:虛擬儀器,智能交通系統)
參考文獻:
[1]Dorigo M , Gambardella L M . Ant colony system : a cooperative learning approach to the traveling salesman problem.IEEE p.1997(1):53-66.
[2]楊勇,宋曉峰等.蟻群算法求解連續空間優化問題.控制與決策,2003,18(5):573-576.
[3]張國立,王晶等.利用蟻群算法優化前向神經網絡.電子商務,2005(18):65-67.
[4]汪鐳,吳啟迪.蟻群算法在連續空間尋優問題求解中的應用.控制與決策,2003,18(1):45-48.
[5]Maniezzo V , carbonaro A . An ants heuristic for the frequency assignment problem. Futrue Generation Computer Systems,2000,16:927-935.
Abstract: The establishment of highway engineering cost estimate model which based on Estimate of distribution network provides technological conditions for fast and efficient cost estimate.At the same time, this study is also a meaningful attempt of construction cost estimate in practical application.
關鍵詞: 估價模型;神經網絡;分布估計算法
Key words: Estimate Model;Neural Network;Estimation of Distribution Algorithm
中圖分類號:TU71 文獻標識碼:A 文章編號:1006-4311(2013)08-0105-02
0 引言
公路工程估價的合理性直接影響著公路工程建設項目投資決策的正確性,它是公路工程建設項目可行性研究的重要環節,也是建設項目標底編制的控制標準。如何快速、合理地估算工程造價是關系到公路工程建設項目投資決策的重要課題,對建設項目成本管理具有重要意義。
本文擬在公路工程建設項目中建立基于分布估計神經網絡算法的造價估算模型。首先對涉及公路工程造價的各個主要特征進行定量化描述,然后結合所建立的分布估計神經網絡算法模型,運用相關專業軟件快速估算公路工程造價。公路工程造價分布估計神經網絡算法通過模擬智能決策,快速、合理估算出公路工程造價,有助于項目決策者做出相對準確的投資決策。
1 相關研究
國內外對工程造價估算智能化的研究,大致可以分為三類:
1.1 利用計算機模擬技術建立模型 通過分析、模擬實際施工過程,對各分項工程先給出可能造價的先驗概率,可以由計算機產生一個隨機數,這個隨機數進入到下一個分項工程當中,然后結合這項工程的先驗概率再產生一個隨機數。這些隨機數代表每個分項工程的實際造價。以此類推,直到全部分項工程計算完畢,產生所有分項工程造價之和作為總的估算造價。這種模型優點是在樣本庫齊全的前提下估算更符合客觀實際,缺點是確定先驗概率需要大量的已建工程樣本資料,計算比較繁瑣[1],而且各分項工程造價樣本值受工程所在地實際情況影響較大。
1.2 基于神經網絡技術的工程造價估算專家系統 人工神經網絡在工程估價中的應用可分為兩種:一種是基于Hopfield的工程應用;另一種是基于BP神經網絡的工程應用。Jason Portas等人將人工神經網絡應用于勞動生產力效率預測和成本預測中建立三層BP結構模型,該模型的輸出不是精確的值而是模糊集[2],可以較好的應用于工程前期造價估算。許寧[3]采用模糊神經網絡估算工程造價,采用模糊數學中的隸屬函數來反映工程特征間的差異性,再結合定性分析和定量分析將工程特征進行量化描述后,通過歸一化處理得到隸屬度。劉鵬[4]匯總整理了神經網絡的缺點和不足,提出利用遺傳神經網絡算法快速估算工程造價的設想。
1.3 利用模糊數學建模 這類模型運用模糊數學聚類分析技術和灰色系統理論,引用隸屬度和貼近度等概念建模。但這類造價估算模型也有尚待商榷之處,未能全面考慮工程造價動態性的影響,估算精度可信度較低,需要搜集大量已建工程樣本作為基礎數據,具有較強的主觀性且估價速度并不理想。
國內工程造價估算多采用擴大指標估算法和概算指標估算法。所采用的估算指標是由本行業和地方統一制定,并沒有考慮建設工程質量、實際管理水平等問題,逐漸難以適應市場經濟體制的發展。國內造價軟件做得較好的有:廣聯達三山軟件、上海神機妙算、上海魯班算量、同望公路等,現有軟件基本都分屬于工程項目管理類或預決算類,但是真正將兩者有機結合并向前后延伸,有助于實現工程造價全生命周期管理的造價軟件明顯不足。
遺傳、模糊、神經網絡技術在工程造價估算中的應用相當廣泛,目前遺傳算法的主要不足在于:收斂速度較慢且解的精度不高。有關研究人員提出了一種方法就是分布估計算法(Estimation of Distribution Algorithms, EDAs)[5]。分布估計算法與GA的最大區別在于它們產生后代的方式不同,分布估計算法不使用GA的重組操作,而是對解集進行分析,從解集中選擇部分好的解集提取信息,利用這些信息建立適當的概率分布,再從概率分布中進行抽樣得到下一代。這種方法避免了GA中建筑塊的破壞。本文的研究動機就是在公路工程估價中引入分布估計算法的同時結合神經網絡來解決工程造價估算的問題。
2 用于公路工程造價估算的分布估計神經網絡算法
分布估計算法有多種實現方式,這些算法的區別主要在于所采用的概率模型和采樣方法;共同點是產生下一代的方式,它們都從解集中選擇好的解集,并從中提取信息,利用這些信息建立合適的概率分布,再從概率分布中抽樣得到下一代。本文采用UMDA(Univariate marginal distribution algorithm)算法與神經網絡BP算法相結合[6],具體算法如下:
算法3.1:分布估計神經網絡
輸入:訓練數據集,即擬建項目的特征因素的代表值;
輸出:BP神經網絡估算公路工程造價;
(1)隨機初始化種群
P(0)={g1,g2,…,gm},gi={x1,x2,…,xn}, t=0;
(2)計算P(0)中個體的適應值;
(3)while(不滿足終止準則)do
{
①根據個體的適應值及選擇策略從P(t)中選擇M個優秀解;
②根據這M個個體更新概率向量:
p(x,t+1)=■p(x■,t+1)=■■
其中?啄■(X■=x■)={1,X■=x■;0,其他}
③根據新的概率向量隨機采樣,產生下一代種群P’(t);
④計算P(t)中個體的適應值;
⑤t=t+1;
}
(4)將所得到的解分解為BP網絡所對應的權值和閾值;
(5)運行BP,輸出仿真值。
3 實驗結果比較
本文采用文獻[7]中的影響公路工程造價和工程量的9種主要特征作為估算模型的輸入,以每公里公路工程單方造價作為本估算模型的輸出。
當以案例中的前13個樣本進行訓練,用后4個樣本作為測試數據時,經過10次運算的神經網絡估算模型誤差情況如表1和表2,從表上數據可以看出遺傳BP網絡較分布估計BP網絡的單點之間的誤差大,且網絡震蕩現象頻發,而經過分布估計算法優化改進后的BP神經網絡的穩定性和容錯性能大幅提升;由以上對比可以看出,改進后的BP網絡在性能上優于一般BP網絡模型,能在降低計算結果的平均誤差的同時大幅提高計算精度。
4 結論
針對公路工程造價估算問題是工程中一個非常重要的問題,本文著重論述了如何進行公路工程造價估算,以便得到更為合理的公路工程造價,并研究了利用分布估計算法和神經網絡相結合來解決該問題,實驗結果表明,本文提出的算法在尋優性能上優于遺傳神經網絡算法。
參考文獻:
[1]Buchanan JS,Cost models for estimating[M].London: Royal Institution of Chartered Surveyors 1982.
[2]王波,蔣鵬,卿曉霞.人工智能技術及其在建筑行業中的應用[J].微型機與應用,2004(8):4-7.
[3]許寧.基于遺傳模糊神經網絡的建筑工程造價估計方法[J].江漢石油學院學報,2000,22(1):87-88.
[4]劉鵬.遺傳神經網絡模式下的工程造價快速估算研究[J].價格月刊,2009(6):15-16.
[5]Larr naga P, Lozano J A. Estimation of Distribution Algorithms[M]. A New Tool for Evolutionary Computation. Boston: Kluwer Academic Publishers, 2002.
[6]陳佳,李敏.用于多維數據實視圖選擇的分布估計算法[J].計算機工程,2012,38(11):45-47.
[7]景晨光,段曉晨.基于遺傳神經網絡的工程造價估算方法研究[J].石家莊鐵道大學學報(社會科學版),2010,4(4):11-17.
[8]周其明,汪淼,任宏.神經網絡集成在工程造價估算中的應用研究[J].重慶交通學院學報,2005(04).
[9]田原.Matlab語言的Neural Network Toolbox及其在同步中的應用[J].現代電子技術,2008(20)
[10]孫莉,駱漢賓.基于貼近度方法優化質量事故診斷案例的選擇[J].四川建筑,2007(01).
[11]鄧煥彬,強茂山,劉可.基于神經網絡的公路工程造價快速估算方法[J].中南公路工程,2006(03).
[12]劉浩,白振興.BP網絡的Matlab實現及應用研究[J].現代電子技術,2006(02).
[13]李茂英,曾慶軍.基于神經網絡的公路工程造價推測模型[J].廣東交通職業技術學院學報,2002(01).
關鍵詞:網絡擁塞控制;往返延時; 模糊神經網絡; 智能預測
中圖分類號:TP312 文獻標識碼:A 文章編號:16727800(2013)009005303
基金項目:江蘇省高校自然科學基金項目(13KJB520007)
作者簡介:張莉(1981-),女,碩士,天津現代職業技術學院講師,研究方向為軟件開發、數據庫應用;鄒寬勝(1983-),男,博士,江蘇師范大學講師,研究方向為圖像處理、多媒體檢索。
0引言
RTT作為網絡擁塞控制的重要參數,能對網絡所發生的擁塞作出較早的反映。文獻[1]根據求得的RTT估計值,提出一種RTT驅動的擁塞控制算法,此算法在實時性和網絡狀態的震蕩抑制等方面,比基于丟包率的擁塞控制算法有明顯改善。
選取公式(1)來估計RTT的值:
RTTn+1=RTTn+gE (E=RTTm-RTTn) (1)
其中RTTm為當前所測得的RTT值;RTTn為上一探測包的平均RTT估值,g∈(0,1]。不同網絡或同一網絡的不同時段對g的選取有很大影響。文獻[2]針對可靠組播傳輸,提出了一種基于主動式網絡的往返行程時間估算策略,可靠組播協議借助這一策略可以有效地減少網絡中不必要的控制信息,根據網絡環境可以及時準確地確定進入網絡的數據包速率,從而提高整個組播組的吞吐量。RTT預測研究目前是一個熱點問題,對RTT進行精確預測很有意義。文獻[3]采用基于波形平滑指數和波形突變指數的滑動窗口加權平均RTT估計算法,對RTT值進行平滑估計。利用神經網絡對RTT進行了預測,達到了較好的效果。但這僅限于網絡比較空閑的狀態下。利用算術平均濾波和BP網絡相結合的辦法,對RTT進行預測,在網絡較擁塞的情況下,預測結果不太理想。這是由于RTT誤差值隨著網絡負荷加重時也會增加,因為隊列延時和延時的抖動都會隨著網絡擁塞程度加重而明顯增加。另外,在網絡擁塞時會導致數據包或ACK包丟失,這些都會導致估計RTT的難度增加并且估計出的RTT值也不準確,出現一些波動,導致網絡有時出現訓練失控狀態。所以本文采用了低通濾波和MBP網絡相結合的預測策略。本文主要分析了RTT的特性,發現其有很強的高頻噪聲,采用低通濾波和MBP網絡相結合的RTT預測策略。實驗表明,即使在網絡狀況較忙的情況下,也能獲得很好的預測結果。
1網絡往返延時特性
網絡環境和網絡設備的性能對數據吞吐量影響很大,致使網絡上的數據具有較強的隨機性,常常表現為短期的高頻噪聲。由于網絡中兩個節點之間的通信數據流可以有很多的路徑到達,如果每個數據包所流經的路徑不同, RTT就可能不同;另一方面,即使每個數據包是經由相同的路徑到達目的節點,但是由于這個路徑中的網絡設備是網絡共享的,在不同的數據包通過時網絡設備所承擔的數據傳送任務也不會相同,這就導致RTT也可能不相同,相關研究結果的準確性會受到這種短期噪聲導致的隨機性影響。
網絡狀況和網絡設備性能在較長期內的參數是相對穩定的。由于網絡數據是在隨機和穩定這兩種因素的共同制約下產生的,所以濾波對于研究網絡數據是必不可少的,因為此時我們主要關注的是網絡節點的群體行為給予網絡數據的規律性。
2RTT數據預處理
低通滑動濾波算法的思想為:取a為(0,1)之間的數據,則:
本次濾波結果=(1-a)×本次采樣值+a×上次濾波結果。它的優點在于對周期性的干擾具有很好的抑制作用,適用于波動頻率較高的場合。選取a=0.05。
RTT的測試實驗是在校園網上進行的。源節點和反饋節點分別位于天津職業技術師范大學和天津工業大學。在實驗中,每隔100ms就發送200個10bytes大小的TCP數據包,然后記錄發送時間和接收返回結果的時間,并計算它們的差值,差值就是RTT。
3基于MBP網絡的RTT預測算法
圖1所示,RTT在網絡比較忙的時候,有極強的波動性,用BP網絡作為RTT智能預測器,采用低通濾波和BP網絡相結合的算法,預測曲線有太多毛刺,在RTT值突變更大的情況下,極容易出現失控現象。由于BP網絡是一種全反傳式的前向網絡,所以BP網絡學習算法的收斂速度很慢,即只要存在誤差反傳信號,網絡所有層的權值將會統一修正,這樣就會拖延學習時間。如果在修正神經網絡的誤差反傳權值時增加一個協調器,該協調器把全反傳式網絡變成了局部反傳式網絡,則可大大提高網絡學習速率。對網絡的靈敏度的分析決定了協調器的協調方法,這里我們選用滑動濾波算法和降低網絡靈敏度的MBP算法相結合的策略,設計新的智能RTT預測器。
定理:在網絡輸入擾動、網絡參數變化或被辨識系統參數變化時,根據系統在被辨識過程中的誤差,動態地控制神經網絡各層權值,特別是最末一級隱層到輸出層的權值矩陣(即輸出層的權值矩陣)修正,可以使網絡輸出的均方差快速減小,從而使網絡靈敏度降低。
所以當網絡參數變化時,降低網絡靈敏度的方法是動態地控制網絡各層,特別是輸出層的權值修正。
(1)在BP學習算法的基礎上,增加一個協調器放在網絡的誤差反向傳播信號線上,用于控制各層權值的修正。
(2)協調器控制網絡輸出層的權值陣隨著網絡的綜合誤差增大而增大。
(3)當訓練誤差為10%≤|e|
(4)當訓練誤差|e|
通過這種BP網絡改進算法,動態地將全局反向傳播式網絡變成局部反傳式網絡,可以使網絡學習速率大大提高,降低了網絡的靈敏度。
4預測模型
由于測試的RTT數據序列是按時間順序排列的,它們之間這種統計意義上的關系不好用確定的函數或方程組來描述。
在用神經網絡對RTT進行預測時,通常的做法是在已掌握的樣本數據之上對網絡進行訓練。假如希望用過去掌握的N(N≥1)個數據去預測未來的M(M≥1)個數據,也就是進行M步預測,取N個相鄰的樣本為滑動窗,并將它們映射為M個值。如表1所示,該表把訓練數據分成K段長度為(N+M)而且有一定重疊的數據段,每一段的前N個數據作為網絡的輸入,后M個數據作為網絡的輸出。
5實驗結果
在本次實驗中,選擇的網絡訓練樣本是前140個RTT數據,其中每5個數據一組,作為神經網絡的輸入向量,第6個數據作為目標向量,即取N=5,M=1,這樣可以得到135組訓練樣本。網絡的測試樣本用136~200之間的數據。
6結語
本文采用低通濾波和MBP網絡結合的算法對RTT進行預測,得到了不錯的結果。即使在網絡比較忙的情況下,也可以使預測結果達到比較滿意的程度。由于程序運行開始, RTT存在一個低通濾波的過程,會有一些短期的振蕩,但這并不影響算法的有效性。
參考文獻:
[1]洪奕光, 程代展. 非線性系統的分析與控制[M].北京:科學出版社, 2005.
關鍵詞: 灰霾; 肺結節; 圖像處理; CAD; BP神經網絡
中圖分類號:TP391.7 文獻標志碼:A 文章編號:1006-8228(2014)10-24-03
Research of lung nodules detection algorithm based on BPNN
Zhong Mingxia, Jiang Bojun
(Zhejiang Vocational College of Commerce, Hangzhou, Zhejiang 310053, China)
Abstract: Through long-term monitoring, the incidence of lung cancer has increased to four times higher than the past. The weather experts conclude that the grey haze is the prime cause of high incidence of lung cancer, especially in cities. It is important to early diagnose lung cancer. This project will use the computer image processing technology to detect early lung cancer markers, lung nodules, to improve the accuracy in diagnosis of lung cancer, at the same time can reduce the workload of doctors. A CAD system is designed. The detection of lung nodules are realized by four steps: lung parenchyma segmentation, interested area (ROI) extraction, feature extracting and calculating, lung nodule detection.
Key words: grey haze; lung nodules; image processing; CAD; the BP neural network
0 引言
根據2014年全國腫瘤登記中心的《2013年中國腫瘤登記年報》[1]中,居全國惡性腫瘤發病第一位的是肺癌,居全國惡性腫瘤死亡第一位的仍是肺癌。曾在2011年11月,廣州氣象專家吳兌經過多年研究發現,廣州的灰霾天數增加與肺癌發生率兩者的變化曲線相當吻合,有力地證明了在高污染的大城市中(如廣州),空氣質量下降和肺癌之間的關系[2]。研究數據證明,隨著近年來大力推行控煙政策,我國吸煙率已呈現小幅下降趨勢,已經不足以成為肺癌的主要殺手,而當前以PM2.5為主的灰霾空氣污染已成為肺癌高發的最重要誘因。
1 肺癌早期標志物及CT檢測
肺癌和所有癌癥一樣,早期診斷是治療的關鍵,提倡“早發現,早治療”。肺癌早期一般表現為肺癌影像出現直徑小于3cm而大于3mm的長在肺實質區域內的類球形病灶,臨床上把它叫做肺結節[3]。因此,肺癌的早期診斷最終歸結為對肺結節的檢測上面。
肺結節的檢測方法有X線胸片檢測和CT檢測兩種。使用CT檢測肺結節顯著優于X線胸片,與傳統的胸部X光片相比,CT表現出了更加卓越的靈敏度,直徑小于1cm的小結節易被X線胸片遺漏,CT檢出肺結節的概率可為X線胸片的8倍。在大型醫院中,每天要接待幾百名甚至近千名需要做CT掃描的病患,每套CT片數量大約在20至40張左右不等。在視覺上分辨肺結節的過程中,經常會被CT中突起狀的血管混淆[4],區分這兩者需要醫生人工在大量多重CT片及容積分析中來判別,這個過程可能導致人眼疲勞和分心,尤其可能還存在其他病變的干擾,難免存在誤診和漏診的情況。而且,假陽性結節的檢測可能導致增加花費,給患者帶來焦慮感甚至給沒有肺癌的患者增加負擔。
2 CAD檢測系統設計
本項目旨在利用計算機圖像處理技術,設計一個肺結節CAD系統,用于檢測肺癌標志物――肺結節,從而提高肺癌診斷的準確率,同時減輕醫生的工作量。
該系統嘗試通過四個步驟實現肺結節的檢測:肺實質分割、感興趣區(ROI)的提取、特征的提取與計算、肺結節檢測。CAD檢測系統流程圖如圖1所示。
[感興趣區
(ROI)的提取][CT影像] [肺實質分割][特征的提取
與計算][肺結節檢測][輸出標注過肺結點
區域的CT圖像]
圖1 CAD系統檢測流程圖
2.1 肺實質分割
以一幅CT圖像為例,肺實質分割和提取過程如圖2和圖3所示,其中主要的分割算法包括數學形態學操作、閾值分割以及區域生長法等圖像處理技術。
(a) 原始CT圖像 (b) 提取軀干輪廓 (c) 去除氣管干擾
圖2 CT圖像預處理
(a) 原始CT圖像 (b) 8鄰域形態學輪廓提取
(c) 軀干模板 (d) 模板內部區域 (e) 肺實質
圖3 肺實質提取過程
2.2 感興趣區(ROI)的提取
在圖像處理領域,感興趣區域(ROI)是從圖像中選擇的一個圖像區域,這個區域是圖像分析所關注的重點,也就是醫生真正關注的內容[5]。在這一步驟中將圈定ROI區域,剔除圖像中無關部分,之后的處理操作均是針對該ROI區域,這樣可以減少處理時間,增加檢測精度。這部分實驗的輸入圖是經過上一步處理后提取出的肺實質圖像。為了盡可能不發生漏檢情況,該步驟采用基于數學Hessian矩陣的圓點濾波器進行檢測,自適應地選取 ROI。以圖像為例,數學Hessian矩陣的圓點濾波器檢測結果如圖4所示。
(a) 上一步得到的肺實質圖像 (b) Hessian矩陣檢測結果 (c) 標注ROI區域
圖4 提取ROI區域
2.3 特征提取與計算
在上一個步驟中雖然標注出了ROI區域,但這些區域并不單單只是肺結節,肺氣管內的軟組織和血管可能與肺結節重疊,在圖像處理后表現出一樣的高亮度效果,所以上一步完成后仍然有很多肺結節的假陽性(FP,false positive)存在。所以需要分類處理,分類識別的關鍵是提取特征,特征的形成是分類識別的關鍵,這些特征必須有足夠的區別肺結節(肺癌標志物)和非結節(組織或血管等)的能力。
表1 對檢測區域提取的特征
[特征內容\&特征\&特征描述\&視覺特征\&圓形度\&特征反映了目標接近圓形的程度\&緊湊度\&描述區域特征\&一致性\&當所有灰度值相等時,該度量最大并從此處開始減小\&平滑度\&區域中亮度的相對平滑度度量 \&曲率\&邊界曲率\&邊界不規則度\&邊界點到重心距離的關系\&統計特征\&方差\&平均亮度度量\&最大值\&\&最小值\&\&三階矩\&平均對比度度量\&不變矩\&均值的三階矩,度量直方圖的偏斜\&變換系數特征\&傅立葉描述子\&對平移、縮放、鏡像和旋轉都不敏感的7個不變矩\&]
2.4 肺結節檢測
接下去采用BP神經網絡分類器進行特征優化與肺結節的檢測,網絡通常采用三層結構,如圖5所示。
[誤差反向傳播] [輸入層][隱含層][輸出層][信息正向傳播][V][W] [x1][xi][xn][i][n][q][m][j][z1][zk][zq][y1][yj][ym]
圖5 3層BP神經網絡結構圖
在BP神經網絡中我們將使用上一步中的特征向量作為輸入層數據進行分類測試,但輸入之前必須先采用主分量分析算法(PCA)對原始特征進行優化。PCA算法在保留原始數據所有信息的基礎上對數據源進行降維處理,這樣可以克服傳統的特征選擇單純刪除原始數據某些維數所帶來的信息量不全的缺陷,從而提高神經網絡的分類能力。采用PCA算法后優化后的特征向量包括八個,如表2所示。
接下來,在BP神經網絡中使用表2征向量作為輸入層數據進行分類測試,比較各類特征向量的分類能力。從含有結節的圖像中提取32像素*32像素的結節區域,為了增加樣本數,將每個結節區域分別按順時針旋轉90度、180度、270度,得到三個新的區域作為訓練樣本,這樣共有256個訓練樣本,按16×16的結構組成512×512像素大小的訓練樣本圖像,用于網絡訓練。網絡的輸出介于0~1之間,當輸出值大于0.5時認為是結節,否則認為是血管。
仍然以同樣的CT圖像為例,BP神經網絡分類結果如圖6所示,其中圖6(a)表示原始CT圖像,圖6(b)表示上一步中標注的ROI區域(包含組織或血管),圖6(c)表示神經網絡分類后的肺結節(剔除假陽性),圖6(d)表示在CT源圖像上標記肺結節。
3 結束語
本項目研究如何設計一個可靠的計算機輔助診斷系統,采用圖像處理算法將肺部CT影像進行計算處理,分割出肺癌標志物――肺結節,從而檢測肺癌的早期病變,幫助放射科專家或相關行業醫生快速的作醫學診斷,提高效率。該研究成果可用于開發計算機輔助診斷系統,作為開發人員的參考資料。如果能將這種計算機輔助檢測系統引進到實際應用或臨床醫療中,以此作為檢測早期病變的輔助手段,會有巨大的市場潛力,且意義重大。
參考文獻:
[1] 2013中國腫瘤登記年報[R].全國腫瘤登記中心,2014.4.
[2]吳兌.中國灰霾天氣研究10周年記[J].環境科學學報,2012.32(2):
257-269
[3] 田捷等著.醫學影像處理與分析[M].電子工業出版社,2003.
[4] 聶生東,鄭斌,李雯.CT圖像肺結節計算機輔助檢測與分類系統設計[J].
系統仿真學報,2007.19(5):935-944
關鍵詞:足球機器人;神經網絡;PID;運動控制
中圖分類號:TP
文獻標識碼:A
文章編號:1672-3198(2010)12-0292-01
1 基于BP神經網絡參數整定的PID控制器仿真
仿真的一項重要內容就是神經網絡初始權值的確定。我們可知隱含層節點的輸入為ui=∑4wijxj在計算中常用兩個矩陣來表示。輸入矩陣,輸出矩陣,輸入層至隱含層和隱含層至輸出層權值矩陣。初始權值矩陣選取是關鍵之一,其決定最終優化效果,但是權值初始化非常困難,一般采用的方法是隨機生成初始權值矩陣,進行仿真,取仿真效果較好的幾組隨機初始矩陣值。此法隨機性較大,需要通過輸入不同目標點進行檢測,取得仿真效果較好(多數樣本有效)的一組作為初始矩陣。但此法還是有一定缺陷,只能局部目標點可以采用。為了獲得良好控制效果,這里對PID控制器進行簡單改進。將PID控制器的偏差量error(k),error(k-1)(上次誤差),error(k-2)(前次誤差)全部進行預處理,即同時除以第一次誤差d1。然后按神經網絡輸出的PID參數原值進行計算,得到輸出。
2 基于BP神經網絡參數整定的PID控制器設計改進
通過研究,在能到達目標點的前提下,機器人的速度曲線理想情況下應該要使啟動平穩,在增量PID中若初始壓低輸出(即經過一段距離后,控制器輸出才到達最大值,距離長短由角度控制器決定),隨時間累積到達一定值時被控對象輸入為最大值,最大值持續輸出一段距離后,被控對象輸入開始下降,使被控對象輸出下降到一定的可控范圍內。此時,PID控制器中隨時間累積的項就是積分項。但積分作用初始很強,所以初始速度過猛,這就需要減弱微分作用的靈敏度,于是本文就采用不完全微分控制算法,來達到此改進目的。不完全微分控制算法的作用就是減弱初始一段時間的積分作用,將其作用延后,即如上圖所示,中間段速度持續最大值。
這里改進后控制器輸出為:u(k)=a×u(k-1)+(1-a)×du(k)。
3 PID控制器與基于BP神經網絡整定的控制器的仿真對比
下面,通過與P控制比較來分析基于神經網絡整定的PID調節的優點。為了便于設計和調節,在此簡化PID控制器為P控制器,即v=k1×Ed,w=k2×Er。進行仿真對比,這里針對一般目標點(1000,5000),兩個特殊目標點(10000,50)、(50,10000)三個點進行檢測。對比例系數調節過程遵循兩個原則:
(1)末端可控(即末態速度在下一階段開始時的速度可控范圍內);
(2)在規定時間內到達目標點。接下來就是根據快速性和平穩性優化參數。在此我們不妨觀察目標點為(10000,50)時兩者的對比圖。其中(k1=0.67,k2=15),
圖1 目標點為(10000,50)的PID控制器仿真
圖2 目標點為(10000,50)改進后的神經網絡控制器仿真
圖1 目標點為(10000,50)改進后的神經網絡控制器仿真(the simulation of improved neural network controller on target point(10000,50))
通過上面P控制器和基于BP神經網絡的PID控制的仿真的比較,可以看出,改進后的控制效果明顯優化了很多,初始速度有一段上升時間,可見控制器的輸出被壓低取得明顯效果,并且能保證大的輸出持續一段時間(積分作用有效),最后輸出下降,有利于下一階段控制。這是控制器進行不完全積分后取得的好效果。本次設計的控制器PID參數是實時在線進行優化的,所以每次PID參數都在改變,有利于實時跟蹤輸入信號,達到優化控制的目的。
參考文獻
關鍵詞: 模擬電路; 特征選擇; 故障診斷; 神經網絡; 粒子群算法
中圖分類號: TN710.4?34; TP183 文獻標識碼: A 文章編號: 1004?373X(2016)19?0140?04
Abstract: The analog circuit is influenced by its characteristics and external environment, and its fault is non?linear and time?varying. The available fault diagnosis models of analog circuit are difficult to solve the match problem of features and classifier parameters, an analog circuit fault diagnosis model based on particle swarm algorithm optimizing feature and neural network is presented. The current situations of analog circuit fault diagnosis are analyzed, and their shortcomings are pointed out. The features of analog circuit fault diagnosis are extracted. The neural network is used as the classifier of analog circuit fault diagnosis. The analog circuit fault features and neural network parameters are optimized with particle swarm optimization, and simula?ted with Matlab 2012. The results show that the performance of the proposed model is superior to that of other reference models, and has wide application prospects.
Keywords: analog circuit; feature selection; fault diagnosis; neural network; particle swarm optimization
0 引 言
當前電網系統規模不斷增大,各種電路越來越復雜,電路出現故障的概率急劇上升,相對于數字電路,模擬電路工作環境更加復雜,再加上自身特性,模擬電路故障診斷具有更加重要的實際應用價值,一直是電網系統研究中的重點[1]。
國內外學者對模擬電路故障診斷進行了相應的探索和研究,提出了許多有效的模擬電路故障診斷模型[2]。當前模擬電路故障方法主要分為傳統模型和現代模型兩類方法,傳統模型主要有專家系統與灰色理論等[3?4],屬于線性的模擬電路故障診斷模型,對小規模模擬電路故障診斷效果好,但對于大規模的模擬電路,建模效率低,同時由于模擬電路工作狀態與特征間是一種復雜的非線性關系,傳統模型無法描述其變化特點,故障診斷正確率急劇下降,難以滿足模擬電路故障診斷的實際應用要求[5]。現代模型基于非線性理論進行模擬電路故障診斷建模,主要有神經網絡與支持向量機等[6?7],現代模型通過自適應學習擬合電路工作狀態與特征間的非線性關系,成為當前模擬電路故障診斷的主要研究方向,其中支持向量機的訓練過程相當耗時,很難滿足模擬電路的故障診斷要求,應用范圍受到一定的限制[8]。神經網絡的學習速度要快于支持向量機,且模擬電路故障診斷結果不錯,尤其是BP神經網絡進行故障診斷時,速度較快,應用最為廣泛[9]。BP神經網絡的模擬電路故障診斷結果與參數相關,如參數選擇不當,則會導致模擬電路故障診斷性能下降[10]。模擬電路的狀態特征同時亦與診斷結果密切相關,然而當前模擬電路故障診斷模型將神經網絡參數與特征選擇問題分開考慮,完全割裂了兩者之間的關系,無法構建高準確率的模擬電路故障診斷模型[11]。
針對當前模擬電路故障診斷中的特征和神經網絡參數不匹配的問題,提出一種粒子群算法選擇特征和神經網絡的模擬電路故障診斷模型(PSO?BPNN)。在Matlab 2012平臺進行了仿真實驗。結果表明,本文提出模型的模擬電路故障診斷性能要遠遠優于其他參比模型。
1 相關理論
1.1 模擬電路工作狀態的特征提取
Step3:更新慣性權重,調整粒子的飛行速度和位置,產生新的粒子群。
Step4:若達到了結束條件,就可以得到模擬電路故障診斷的最優特征子集和最合理的BP神經網絡參數。
Step5:建立模擬電路故障診斷模型,并對待檢測的模擬電路故障進行檢測,根據檢測結果采取相應的措施。
3 結果與分析
為了分析PSO?BPNN的模擬電路故障診斷性能,采用圖2的模擬電路進行仿真實驗,在Matlab 2012平臺下進行編程實現PSO?BPNN,模擬電路故障診斷參比模型為:
(1) 原始模擬電路故障診斷特征,BP神經網絡參數隨機確定的模擬電路故障診斷模型(BPNN1);
(2) 原始模擬電路故障診斷特征,粒子群算法優化BP神經網絡參數的模擬電路故障診斷模型(BPNN2);
(3) 粒子群算法選擇模擬電路故障診斷特征,然后隨機確定BP神經網絡參數的模擬電路故障診斷模型(BPNN3)。
共收集100個模擬電路故障診斷的訓練樣本,50個模擬電路故障診斷測試樣本,采用PSO?BPNN對訓練樣本進行學習,所有模型都運行100次,然后統計測試樣本的實驗結果,其平均診斷率和誤診率如圖3,圖4所示,對圖3,圖4的模擬電路故障診斷結果進行對比和分析,可以得到如下結論:
(1) 與BPNN1的實驗結果相比較可以發現,BPNN2獲得了更優的模擬電路故障診斷結果,因為BPNN2采用粒子群算法優化了BP神經網絡參數,使得模擬電路故障診斷率更高,這表明BP神經網絡參數會影響模擬電路故障診斷的結果。
(2) BPNN3的模擬電路故障診斷也要優于BPNN1,這是由于粒子群算法對模擬電路故障特征進行了選擇和優化,得到了對電路故障診斷結果有重要作用的特征子集。
(3) 在所有模擬電路故障診斷模型中,PSO?BPNN的模擬電路故障診斷率最高,誤診率得到了降低,這是由于BPNN2和BPNN3只從一個方面對特征或者BP神經網絡參數進行了優化,沒有同時對它們進行優化,因此不可能建立性能優異的模擬電路故障診斷模型,而PSO?BPNN同時從特征和BP神經網絡參數兩個方面進行優化,因而能夠獲得更加理想的模擬電路故障診斷結果。
4 結 語
傳統模擬電路故障診斷模型僅對特征或者BP神經網絡參數進行優化,易出現特征和分類器參數不匹配的問題,為此提出基于PSO?BPNN的模擬電路故障診斷模型,首先根據Volterra級數提取模擬電路工作狀態的特征,然后采用BP神經網絡作為模擬電路故障分類器,并利用粒子群算法優化特征和BP神經網絡參數,最后進行仿真實驗,仿真結果表明,PSO?BPNN解決了當前模擬電路故障診斷模型存在的局限性,獲得了更高的模擬電路故障診斷率,在模擬電路故障診斷中具有廣泛的應用前景。
參考文獻
[1] 朱大奇.電子設備故障診斷原理與實踐[M].北京:電子工業出版社,2008.
[2] 陳圣儉,洪炳熔,王月芳,等.可診斷容差模擬電路軟故障的新故障字典法[J].電子學報,2006,4(2):129?136.
[3] 金瑜,陳光福,劉紅.基于小波神經網絡的模擬電路故障診斷[J].儀器儀表學報,2007,28(9):1600?1604.
[4] 劉本德,胡昌華,蔡艷寧.基于聚類和SVM多分類的容差模擬電路故障診斷[J].系統仿真學報,2009,21(20):6479?6482.
[5] 黃潔,何怡剛.模擬電路故障診斷的發展現狀與展望[J].微電子學,2004,34(1):21?25.
[6] 彭敏放,何怡剛,王耀南.模擬電路的融合智能故障診斷[J].中國電機工程學報,2006,26(3):19?24.
[7] 張超杰,賀國,梁述海.小波變換與主元分析相結合的模擬電路檢測方法[J].哈爾濱工程大學學報,2010,31(5):570?575.
[8] 劉美容,何怡剛,方葛豐,等.遺傳小波神經網絡在模擬電路故障診斷中的應用[J].湖南大學學報,2009,36(3):40?44.
[9] 申宇皓,孟晨,張磊,等.基于同步優化的支持向量機模擬電路故障診斷方法研究[J].太原理工大學學報,2010,41(4):420?424.
[10] 胡清,王榮杰,詹宜巨.基于支持向量機的電力電子電路故障診斷技術[J].中國電機工程學報,2008,28(12):107?111.
[11] 王承,葉韻,梁海浪,等.基于多頻測試和神經網絡的模擬電路故障診斷[J].計算機工程與應用,2013,49(5):1?3.