孫倩 趙昕
摘? 要: 為提高徑向基神經(jīng)網(wǎng)絡(luò)算法在DNA序列分類問題應(yīng)用上的準(zhǔn)確率和收斂速度,首先,以20種氨基酸的含量作為特征向量;其次,針對由于隨機選取徑向基神經(jīng)網(wǎng)絡(luò)初始參數(shù)引起的收斂速度慢的問題,選擇粒子群算法優(yōu)化神經(jīng)網(wǎng)絡(luò)參數(shù)。應(yīng)用真實的DNA序列對優(yōu)化前后的兩種神經(jīng)網(wǎng)絡(luò)算法進行比較,結(jié)果顯示,優(yōu)化后算法在迭代12次左右誤差即穩(wěn)定,分類結(jié)果正確率達(dá)到93.75%,遠(yuǎn)高于未經(jīng)優(yōu)化的神經(jīng)網(wǎng)絡(luò)70%的正確率。由實驗結(jié)果可知,在DNA序列分類問題中,粒子群優(yōu)化徑向基神經(jīng)網(wǎng)絡(luò)對提高收斂速度和正確率方面是有效的。
關(guān)鍵詞: DNA序列分類; PSO?RBF神經(jīng)網(wǎng)絡(luò); 特征提取; 分類模型建立; 參數(shù)優(yōu)化; 分類效果對比
中圖分類號: TN911.1?34; TP183? ? ? ? ? ? ? ? ? ? 文獻標(biāo)識碼: A? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)09?0087?05
DNA sequence classification based on PSO?RBF neural network
SUN Qian1, ZHAO Xin1, 2
(1. College of Information and Technology, Jilin Agricultural University, Changchun 130118, China;
2. School of Mathematics and Big Data, Huizhou University, Huizhou 516007, China)
Abstract: In order to improve the accuracy and convergence speed of RBF (radial basis function) neural network algorithm in the application of DNA sequence classification, the contents of 20 kinds of amino acids are taken as the feature vectors of the DNA sequence; in view of the slow convergence speed caused by randomly?selected initial parameters of RBF neural network, the PSO (particle swarm optimization) is selected to optimize the RBF neural network parameters. The optimized neural network algorithm and the unoptimized neural network algorithm are contrasted by means of the real DNA sequences. The results show that the error of the optimized algorithm keeps stable after 12 iterations, and the classification accuracy reaches 93.75%, which is much higher than that (70%) of the unoptimized neural network algorithm. It is concluded from the experimental results that the PSO?RBF (particle swarm optimization radial basis function) neural network is effective in improving the convergence speed and accuracy of DNA sequence classification.
Keywords: DNA sequence classification; PSO?RBF neural network; feature extraction; classification model establishment; parameter optimization; classification effect contrast
0? 引? 言
DNA分類的主要思想是通過研究待分類DNA序列在堿基組成以及排列順序等方面與已知類別DNA序列的相似度來判斷該序列屬于哪一類。該研究的目的是預(yù)測未知DNA序列的類別,從而了解其特性,對判斷其是否屬于隱存物種、外來物種或者瀕危物種有重要意義。尤其是對細(xì)菌和病毒等種群,DNA序列分類技術(shù)得到了廣泛的應(yīng)用[1]。目前,DNA序列分類的數(shù)學(xué)方法有很多,具有代表性的主要有隱馬爾可夫模型[2]、支持向量機[3]、神經(jīng)網(wǎng)絡(luò)[4]等。文獻[5]首次將RBF神經(jīng)網(wǎng)絡(luò)應(yīng)用于DNA序列分類問題中,但其在特征提取方面采用了單堿基、雙堿基以及4D表示法相融合的方法,該方法運算復(fù)雜且只考慮了DNA序列的排列信息,忽視了其生物學(xué)意義。
人工神經(jīng)網(wǎng)絡(luò)模型[6]在1943年被首次提出,之后迅速被應(yīng)用于各個領(lǐng)域[7?8]。作為一種前饋型網(wǎng)絡(luò),徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)因其只有一個隱含層的簡單構(gòu)造,較快的學(xué)習(xí)速度,不容易陷入局部最小化,具有良好的泛化能力等優(yōu)點,在近些年來受到越來越多的關(guān)注[9?11]。而在處理實際問題時,RBF神經(jīng)網(wǎng)絡(luò)各參數(shù)初始值的選取對性能有著較大影響,若初始值選取不當(dāng),可能使該網(wǎng)絡(luò)收斂速度較慢。粒子群優(yōu)化(PSO)算法有著較強的全局收斂能力以及魯棒性,模型比較簡單,不涉及到復(fù)雜的遺傳問題。作為一種神經(jīng)網(wǎng)絡(luò)訓(xùn)練算法,PSO也體現(xiàn)出了很好的應(yīng)用效果[12?13]。
針對DNA序列的RBF神經(jīng)網(wǎng)絡(luò)分類問題,本文以氨基酸含量作為特征向量,并使用PSO優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)。最后用GenBank中真實的DNA序列數(shù)據(jù)對優(yōu)化前后兩種算法進行實驗,實驗結(jié)果表明,與優(yōu)化前的RBF算法相比較,PSO?RBF算法在分類準(zhǔn)確率和收斂速度兩個方面均有非常明顯的改善。
1? DNA序列分類模型建立
1.1? RBF神經(jīng)網(wǎng)絡(luò)分類模型原理
RBF神經(jīng)網(wǎng)絡(luò)是一個三層結(jié)構(gòu)的網(wǎng)絡(luò),如圖1所示。第一層為輸入層,顧名思義,該層用來接收數(shù)據(jù)的特征向量,每個單元代表一個特征,輸入數(shù)據(jù)的特征向量的維數(shù)即為該層單元個數(shù)。其次是隱含層,RBF神經(jīng)網(wǎng)絡(luò)中第一層與第二層之間并不通過權(quán)值連接,而是直接到隱含層。在隱含層中,數(shù)據(jù)通過基函數(shù)將線性數(shù)據(jù)映射到非線性空間中。最后為輸出層,得到最終結(jié)果。第二層與第三層之間由權(quán)值連接,即這次映射是線性的。輸出層單元個數(shù)由具體問題分析,本文中最后輸出的分類結(jié)果是一個實數(shù),因此,輸出層只有一個單元。由上述分析可知,若要構(gòu)造一個RBF神經(jīng)網(wǎng)絡(luò),除了要確定網(wǎng)絡(luò)中各層節(jié)點數(shù)和權(quán)值,還要考慮隱含層中基函數(shù)的選取。本文選擇形式簡單,由具有良好解析性能的高斯函數(shù)作為徑向基函數(shù),其基本形式為:
[φx-cj=exp-x-cjTx-cjδ2j] (1)
式中:[cj]為數(shù)據(jù)中心;[δj]為參數(shù)寬度。從式(1)可得,RBF神經(jīng)網(wǎng)絡(luò)的訓(xùn)練參數(shù)有三個,分別為:數(shù)據(jù)中心[cj]、數(shù)據(jù)寬度[δj]以及權(quán)值[ωj]。
一般情況下選取梯度下降法訓(xùn)練RBF神經(jīng)網(wǎng)絡(luò)以得到各參數(shù)最優(yōu)值。具體算法步驟如下:
1) 設(shè)置神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點數(shù)[M],初始化數(shù)據(jù)中心[cj]、數(shù)據(jù)寬度[δj]以及權(quán)值[ωj]。誤差[E=12i=1pe2i]作為目標(biāo)函數(shù),則第[i]個樣本的誤差表示為:
[ei=di-FXi=di-j=1MωjGXi-cj] (2)
2) 用下列公式計算以及調(diào)整網(wǎng)絡(luò)中各隱含層單元到輸出層之間的權(quán)值:
[Δωj=-η?E?ωj=-ηj=1PeiGXi-cjωj+1=ωj-η?E?ωj] (3)
式中[P]為訓(xùn)練樣本數(shù)。
3) 隱含層數(shù)據(jù)中心為:
[Δcj=-η?E?cj=ηωjδ2jj=1PeiGXi-cjXi-cjΔcj+1=Δcj-η?E?cj]? (4)
4) 隱含層數(shù)據(jù)中心的寬度為:
[Δδj=-η?E?δj=ηωjδ3jj=1PeiGXi-cjXi-cj2Δδj+1=Δδj-η?E?δj] (5)
5) 返回步驟2),當(dāng)目標(biāo)函數(shù)值達(dá)到誤差要求時停止。迭代結(jié)束后得到的初始化數(shù)據(jù)中心[cj]、數(shù)據(jù)寬度[δj]以及權(quán)值[ωj]即為該神經(jīng)網(wǎng)絡(luò)的參數(shù)最優(yōu)值。
1.2? 粒子群優(yōu)化算法原理
粒子群優(yōu)化算法[14]將群體中單個個體看作是空間中以一定速度運動著的粒子,通過不停地更新每個粒子的最佳位置以及種群里最優(yōu)的粒子位置,對參數(shù)進行優(yōu)化。實現(xiàn)步驟如下[15]:
1) 數(shù)據(jù)初始化,其中,包括種群規(guī)模以及粒子初始速度和位置。
2) 根據(jù)模型評估每個粒子的位置。
3) 對比每個粒子當(dāng)前位置與之前最優(yōu)位置[Pbest]。若當(dāng)前位置優(yōu),則記錄下新位置,同時更新[Pbest]。
4) 將種群內(nèi)最優(yōu)的粒子位置記為[Gbest]。
5) 根據(jù)公式:
[vi+1=ωvi+c1r1Pid-xi+c2r2Pgd-xi] (6)
更新每個粒子的速度。[c1]和[c2]表示學(xué)習(xí)因子;[r1]和[r2]是[0,1]范圍內(nèi)的兩個隨機數(shù)。
6) 根據(jù)公式:
[xi+1=xi+vi+1]? (7)
更新每個粒子的位置。
7) 重復(fù)步驟2)~步驟6)進行迭代,直到滿足條件為止。
1.3? PSO優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)分類算法實現(xiàn)
1.3.1? 數(shù)據(jù)樣本選取
本文實驗樣本來源于GenBank,是由美國國家生物技術(shù)信息中心(NCBI)管理的DNA序列數(shù)據(jù)庫,其數(shù)據(jù)主要來源于專業(yè)工作人員的真實測序結(jié)果。共選取了兩類,在GenBank中的編號分別為ANFO01000063.1和NZ_COGN01000034.1,將這兩組數(shù)據(jù)分別標(biāo)記為A類和B類。分別對A類和B類數(shù)據(jù)進行截取,每300個堿基長度為一組,共分為298組。將這298組DNA序列分成訓(xùn)練樣本和測試樣本兩部分,具體分類情況如表1所示。
1.3.2? DNA序列特征提取
特征提取指的是把待識別對象通過一定的方法映射到新的特征空間里面,是特征的形成過程。DNA序列特征提取即將原始由A,C,G,T四個堿基構(gòu)成的數(shù)據(jù)用數(shù)值化表示。一般情況下,DNA序列特征提取都是基于堿基含量和排列順序這兩個方面。根據(jù)生物學(xué)知識可知,在遺傳的過程中,DNA序列首先要轉(zhuǎn)錄成信使RNA,信使RNA上相鄰三個堿基的組成叫作密碼子。所以說,當(dāng)DNA序列的堿基排列順序確定時,該序列所決定的密碼子的個數(shù)以及種類也都是確定的。DNA序列中三個堿基的排列組合共有64種,這64種密碼子決定了三個終止密碼子以及20種氨基酸。對照情況如表2所示。
本文將DNA序列中氨基酸含量作為DNA特征。首先,氨基酸由三個不同的堿基組成,其含量不僅可以體現(xiàn)堿基含量也可體現(xiàn)排列序列。其次,對于不同的生物來說,氨基酸的種類和含量都有明顯的不同,具有生物學(xué)意義。最后,DNA特征向量即為神經(jīng)網(wǎng)絡(luò)的輸入,由于一共只有20種氨基酸,以其含量作為特征向量可以有效降低數(shù)據(jù)維度,簡化網(wǎng)絡(luò)機構(gòu)。表3為部分?jǐn)?shù)據(jù)示例(因為兩類DNA序列都僅含有以下4種氨基酸,因此,其他氨基酸含量不予列出)。
1.3.3? PSO優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)過程
用PSO算法來優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的過程為:
1) 初始化粒子群和RBF神經(jīng)網(wǎng)絡(luò)參數(shù),確定粒子規(guī)模,將每個粒子的維度對應(yīng)到神經(jīng)網(wǎng)絡(luò)的每一個參數(shù)上,即數(shù)據(jù)中心、寬度系數(shù)和權(quán)值。通過“試選法”確定RBF神經(jīng)網(wǎng)絡(luò)隱含層數(shù)目為3,設(shè)定群體規(guī)模為20,迭代次數(shù)為300。
2) 將RBF神經(jīng)網(wǎng)絡(luò)目標(biāo)函數(shù),即誤差均方差設(shè)定為PSO適應(yīng)度函數(shù)。
3) 將RBF連接權(quán)值的參數(shù)設(shè)置為向量,表示種群中的個體,并進行迭代,找到最優(yōu)解。最后將算法結(jié)束后產(chǎn)生的最優(yōu)解還原成網(wǎng)絡(luò)參數(shù)。
4) 對測試樣本進行分類。
PSO?RBF算法流程如圖2所示。
2? 結(jié)果分析
DNA序列分類問題中,將分類結(jié)果分別用0,1來表示,即神經(jīng)網(wǎng)絡(luò)輸出期望為0或者1,實際輸出結(jié)果為一個實數(shù),若輸出結(jié)果更接近0,則認(rèn)為該DNA序列屬于A類別;反之,則認(rèn)為該DNA序列屬于B類。輸出結(jié)果與期望輸出越接近,表明分類誤差越小,RBF神經(jīng)網(wǎng)絡(luò)性能越好。
粒子群算法相關(guān)參數(shù)的設(shè)置也影響著其性能以及收斂速度,當(dāng)參數(shù)設(shè)置過小時,網(wǎng)絡(luò)收斂速度慢,參數(shù)設(shè)置過大時,算法過于復(fù)雜且運算時間過長。本文通過多次實驗對比設(shè)置相關(guān)參數(shù)如下:總體規(guī)模數(shù)[m=20],總迭代次數(shù)[G=300],學(xué)習(xí)因子[c1=c2=2],權(quán)重[ω=0.1]。
圖3為PSO優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)適應(yīng)度曲線,從中可得,隨著迭代次數(shù)的增加,曲線開始變得越來越平穩(wěn),即收斂速度開始變慢。當(dāng)?shù)?00次之后,適應(yīng)度數(shù)值達(dá)到7.65。
為證明PSO?RBF算法在DNA序列分類應(yīng)用中的優(yōu)越性,本文將RBF神經(jīng)網(wǎng)絡(luò)算法與PSO?RBF神經(jīng)網(wǎng)絡(luò)算法在網(wǎng)絡(luò)訓(xùn)練階段和測試樣本分類結(jié)果兩方面進行比較。
1) 在神經(jīng)網(wǎng)絡(luò)訓(xùn)練階段的對比
圖4表示RBF神經(jīng)網(wǎng)絡(luò)和PSO?RBF神經(jīng)網(wǎng)絡(luò)的訓(xùn)練均方差曲線圖,從中可得,RBF神經(jīng)網(wǎng)絡(luò)在迭代209次之后均方差穩(wěn)定在[0.08,0.09]區(qū)間,而PSO?RBF神經(jīng)網(wǎng)絡(luò)在迭代12次之后,均方差穩(wěn)定在[0.07,0.08]區(qū)間。實驗結(jié)果說明,對比未經(jīng)優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)算法,PSO?RBF算法收斂速度明顯更快。
圖5表示兩種算法分別對訓(xùn)練樣本的輸出結(jié)果。從中可以看出,前130個訓(xùn)練樣本期望輸出為0,而PSO?RBF算法實際輸出大部分都更加接近0,這種現(xiàn)象在后88個訓(xùn)練樣本的實際輸出中體現(xiàn)的更加明顯。綜合兩類訓(xùn)練樣本的實際輸出可知,與RBF神經(jīng)網(wǎng)絡(luò)相比,PSO?RBF神經(jīng)網(wǎng)絡(luò)實際輸出結(jié)果訓(xùn)練誤差更小。
2) 對測試樣本分類結(jié)果的對比
為驗證兩種算法的分類效果,分別用訓(xùn)練好的兩個網(wǎng)絡(luò)對剩余80個測試樣本進行分類。表4為RBF神經(jīng)網(wǎng)絡(luò)算法和PSO?RBF算法對DNA序列測試樣本分類結(jié)果。從表4中可以看出,對同一批測試樣本分類,RBF神經(jīng)網(wǎng)絡(luò)算法分類錯誤數(shù)目為24個,正確率僅為70%,PSO?RBF神經(jīng)網(wǎng)絡(luò)算法分類錯誤數(shù)目為5個,正確率達(dá)到93.75%。實驗結(jié)果表明,在DNA序列分類問題上,PSO?RBF算法正確率明顯高于未經(jīng)優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)。
3? 結(jié)? 語
針對徑向基神經(jīng)網(wǎng)絡(luò)在DNA分類方法應(yīng)用中出現(xiàn)的分類精度低、性能不穩(wěn)定的問題,本文在以下兩方面進行了改進:在DNA特征提取方面,以氨基酸含量代替單雙堿基含量作為DNA序列特征;在提高RBF神經(jīng)網(wǎng)絡(luò)收斂速度方面,選擇PSO算法對RBF神經(jīng)網(wǎng)絡(luò)進行優(yōu)化。為改進實驗效果,選擇了GenBank DNA序列庫中的真實數(shù)據(jù)作為實驗樣本對改進前后兩種算法進行對比。結(jié)果表明,與傳統(tǒng)RBF神經(jīng)網(wǎng)絡(luò)相比,本文方法收斂速度更快、分類正確率更高。證明PSO算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)對其性能的提高是有效的。當(dāng)然,本文算法也有一定的局限性,當(dāng)數(shù)據(jù)量過大時,PSO算法耗時較長,如何平衡運行時間與正確率之間的關(guān)系也是待研究的問題。
注:本文通訊作者為趙昕。
參考文獻
[1] 宋會銀,張琪,胡愈炘,等.球狀綠藻的隱性生物多樣性及其分類學(xué)進展[J].生物多樣性,2015,23(3):383?397.
[2] 郭彥明,陳黎飛,郭躬德.DNA序列的二階隱馬爾科夫模型分類[J].計算機系統(tǒng)應(yīng)用,2015,24(9):22?28.
[3] 冼廣銘,曾碧卿,冼廣淋.最小二乘小波支持向量機的DNA序列分類方法[J].計算機工程與應(yīng)用,2009,45(12):222?225.
[4] 敖麗敏,羅存金.基于神經(jīng)網(wǎng)絡(luò)集成的DNA序列分類方法研究[J].計算機仿真,2012,29(6):171?175.
[5] 孫曉楠.基于RBF神經(jīng)網(wǎng)絡(luò)的DNA序列分類方法[D].長春:吉林大學(xué),2009.
[6] MCCULLOCH W S, PITTS W. A logical calculus of the ideas immanent in nervous activity [J]. The bulletin of mathematical biophysics, 1943, 5(4): 115?133.
[7] 于明,安夢濤,劉依.基于多特征與卷積神經(jīng)網(wǎng)絡(luò)的人臉表情識別[J].科學(xué)技術(shù)與工程,2018,18(13):104?110.
[8] 夏思為,段書凱,王麗丹,等.基于憶阻神經(jīng)網(wǎng)絡(luò)PID控制器設(shè)計[J].計算機學(xué)報,2013,36(12):2577?2586.
[9] 朱國俊,馮建軍,郭鵬程,等.基于徑向基神經(jīng)網(wǎng)絡(luò)?遺傳算法的海流能水輪機葉片翼型優(yōu)化[J].農(nóng)業(yè)工程學(xué)報,2014,30(8):65?73.
[10] LUO S, LI S, FARID T. Chaos and nonlinear feedback control of the arch micro?electro?mechanical system [J]. Journal of systems science & complexity, 2018, 31(6): 1510?1524.
[11] ABDELATTI Marwan, YUAN Chengzhi, ZENG Wei, et al. Cooperative deterministic learning control for a group of homogeneous nonlinear uncertain robot manipulators [J]. Science China (Information sciences), 2018, 61(11): 63?81.
[12] 南敬昌,陸亞男,高明明.基于改進混合算法優(yōu)化RBF網(wǎng)絡(luò)的濾波器建模[J].計算機工程與科學(xué),2018,40(7):1329?1336.
[13] 袁艷,葉俊浩,蘇麗娟.基于改進的粒子群徑向基神經(jīng)網(wǎng)絡(luò)的目標(biāo)識別[J].計算機應(yīng)用,2018,38(z1):6?8.
[14] 林玉嬌.基于改進粒子群的PID參數(shù)整定應(yīng)用研究[D].南寧:廣西大學(xué),2015.
[15] KEERTHI S S, LIN C J. Asymptotic behaviors of support vector machines with Gaussian kernel [J]. Neural computation, 2003, 15(7): 1667?1689.