李艷秋, 朱魯帥
(1.上海應(yīng)用技術(shù)大學(xué) 理學(xué)院, 上海 201418;2.南京工業(yè)大學(xué) 數(shù)理科學(xué)學(xué)院, 南京 211816)
圖靈發(fā)現(xiàn)不均勻的圖案或空間非均勻性可能來自擴(kuò)散,稱為圖靈不穩(wěn)定性[1]。從生物學(xué)角度看,生物體呈現(xiàn)的斑圖是由基因和體內(nèi)的化學(xué)反應(yīng)決定的,對斑圖分類的研究有利于探索斑圖形成的理論機(jī)制和生物學(xué)根源,甚至可以揭示某些疾病產(chǎn)生的原因和基因的異常表達(dá),作為預(yù)防疾病的手段。圖靈斑圖是從理論上研究自然界存在的真實(shí)斑圖,從計(jì)算機(jī)或人工智能角度來講,計(jì)算機(jī)認(rèn)識(shí)世界的基礎(chǔ)就是對這些斑圖進(jìn)行分類,有了分類之后才可能進(jìn)一步做更細(xì)致的視覺任務(wù)。那么,斑圖的分類是非常有必要的。
斑圖分類依賴于圖像分類技術(shù)。圖像分類領(lǐng)域的較快發(fā)展是由于深度學(xué)習(xí)的發(fā)展。在圖像分類問題上,深度學(xué)習(xí)算法比傳統(tǒng)的機(jī)器學(xué)習(xí)算法有更大的優(yōu)勢。特別是,卷積神經(jīng)網(wǎng)絡(luò)在圖像分類問題上模仿了人類大腦中神經(jīng)元識(shí)別斑圖的方式,神經(jīng)網(wǎng)絡(luò)通過訓(xùn)練數(shù)據(jù),然后通過迭代學(xué)習(xí)權(quán)重的最佳值,并在訓(xùn)練數(shù)據(jù)中提取重要的特征,從而確定規(guī)則。經(jīng)過大量的研究表明,神經(jīng)網(wǎng)絡(luò)是圖像分類的有效方法[2-4]。此外,聚類分析也是圖像分類的重要方法,它是一類無監(jiān)督的學(xué)習(xí)算法[5-7]。使用聚類算法可以提高圖像分類的準(zhǔn)確性和效率[8]。由于數(shù)據(jù)本身具有定性或定量的特征,可以通過聚類分析對大量的數(shù)據(jù)進(jìn)行分類和分組以了解數(shù)據(jù)集的內(nèi)在結(jié)構(gòu)。
圖像分類是使用計(jì)算機(jī)將圖像內(nèi)容分成不同的目標(biāo)區(qū)域并描述分類。由于計(jì)算機(jī)技術(shù)的飛速發(fā)展,圖像分類作為計(jì)算機(jī)視覺的核心問題之一,是人工視覺判讀的延續(xù)和發(fā)展,計(jì)算機(jī)圖像分類比人工圖像分類要快得多,分類精度也達(dá)到了很高的水平。在“信息爆炸”的今天,圖像信息的獲取和使用越來越方便,圖像文件的交換和傳輸越來越頻繁[9]。
隨著圖像分類領(lǐng)域研究的不斷深入,很多學(xué)者提出了不同的圖像分類算法。Kekatos[10]于1993年提出了支持向量機(jī)(support vector machine,SVM)算法,該算法可以通過核函數(shù)將輸入空間中的非線性可分離數(shù)據(jù)映射到高維特征空間。然而,支持向量機(jī)算法不能很好地處理大量、多樣的圖像。K 近鄰算法具有較高的精度和穩(wěn)定性,但容錯(cuò)性較差,效率較低。傳統(tǒng)的圖像分類方法對于一些簡單的圖像分類是有效的,但它們被實(shí)際情況的復(fù)雜性所淹沒。經(jīng)過近幾年人工智能領(lǐng)域的快速發(fā)展,深度學(xué)習(xí)已廣泛應(yīng)用于金融業(yè)、工業(yè)制造、智能駕駛等領(lǐng)域,并取得了顯著的成果。卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)作為深度學(xué)習(xí)的代表算法,可以有效地處理高維數(shù)據(jù)。LeNet5 是Lecun 等[11]于1998 年為手寫數(shù)字設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò),出現(xiàn)在2010 年開始的ImageNet挑戰(zhàn)賽中,在目標(biāo)檢測和識(shí)別方面取得了良好的結(jié)果。此后,學(xué)者們優(yōu)化了CNN 結(jié)構(gòu)的輸入和特征提取,提高了模型的泛化性能。
本文對圖像分類進(jìn)行了深入研究,通過對斑圖的分類可以更好地了解環(huán)境因素的變化對生態(tài)系統(tǒng)的影響以及形成生態(tài)現(xiàn)象的機(jī)制[12-24]。然后,利用機(jī)器學(xué)習(xí)中的特征工程方法獲得更好的圖像訓(xùn)練特征。使用人工神經(jīng)網(wǎng)絡(luò)和聚類算法對系統(tǒng)生成的點(diǎn)、線狀圖數(shù)據(jù)進(jìn)行了更詳細(xì)的討論和分析。眾所周知,深度學(xué)習(xí)框架只能被視為提供非線性回歸[15],但本文所討論的特征工程與其相反,允許通過單層神經(jīng)網(wǎng)絡(luò)對具有非線性的數(shù)據(jù)特征進(jìn)行有效分類和聚類。
由于受到哺乳動(dòng)物視覺過程的啟發(fā),CNN 的工作原理更接近于生物意義上的神經(jīng)網(wǎng)絡(luò),可以有效處理二維圖像數(shù)據(jù),是深度學(xué)習(xí)快速發(fā)展的重要推動(dòng)力之一。CNN 最大的創(chuàng)新是采用了局部連接和權(quán)重共享的思想,改進(jìn)了層與層之間的連接形式,用局部連接代替了多層感知器(multilayer perceptron,MLP)的全連接,因此,CNN 可以看作是MLP 的一個(gè)變種。
目前,卷積神經(jīng)網(wǎng)絡(luò)被廣泛應(yīng)用于目標(biāo)檢測、圖像分割和自然語言處理等領(lǐng)域,由于其強(qiáng)大的特征表示能力,越來越多的學(xué)者開始探索和研究它的學(xué)習(xí)能力?;镜木W(wǎng)絡(luò)運(yùn)行過程主要是通過從大規(guī)模樣本中學(xué)習(xí)相關(guān)特征,并在測試過程中能夠評估性質(zhì)相似的測試數(shù)據(jù)。因此,卷積神經(jīng)網(wǎng)絡(luò)有3種主要網(wǎng)絡(luò)結(jié)構(gòu):卷積層、池化層和全連接層。
卷積層主要對輸入數(shù)據(jù)進(jìn)行特征提取,并對輸入數(shù)據(jù)中的隱含關(guān)聯(lián)性進(jìn)行采樣,類似于圖像過濾操作。卷積過程通??梢钥闯墒菣?quán)重矩陣與圖像矩陣的乘法。在操作過程中,圖像上的每一層像素矩陣被卷積核以指定的像素距離掃描,掃描的圖像區(qū)域所對應(yīng)的數(shù)值被相乘,然后相加,得到卷積操作后尺寸較小且失去邊緣信息的特征圖。卷積后的輸出圖像大小為:
式中:Oh和Ow分別表示卷積操作后特征圖的高度和寬度;M為卷積操作前的輸入圖像;Mh和Mw分別為輸入圖像的高度和寬度;Kh和Kw分別為卷積核的高度和寬度;P為卷積操作時(shí)輸入圖像邊緣的像素點(diǎn)填充;S為卷積核每次移動(dòng)的像素距離,也叫步長。
卷積的計(jì)算過程有2 個(gè)主要步驟:①矩陣內(nèi)積乘法;②內(nèi)積乘法結(jié)果的求和。2 個(gè)元素在同一位置的矩陣的乘法,得到1 個(gè)新的矩陣。這個(gè)新矩陣的所有數(shù)值求和,得到1 個(gè)數(shù)值,就是卷積運(yùn)算的結(jié)果。
池化層是基于局部相關(guān)的思想,通過對1 組局部相關(guān)的元素進(jìn)行抽樣或信息聚合,得到新的元素值,本質(zhì)上屬于降維采樣的過程。其主要目的是為了神經(jīng)網(wǎng)絡(luò)在訓(xùn)練和學(xué)習(xí)過程中去除冗余信息、壓縮特征、簡化網(wǎng)絡(luò)的復(fù)雜性,一般理解為減少參數(shù)數(shù)量,在一定程度上可以避免過擬合的發(fā)生。
全連接層(fully connected layer,F(xiàn)C)在整個(gè)卷積神經(jīng)網(wǎng)絡(luò)中充當(dāng)“分類器”。當(dāng)卷積層和集合層將原始數(shù)據(jù)映射到隱藏的特征空間,全連接層則起到將學(xué)到的“分布式特征表示”映射到樣本標(biāo)記空間的作用。
在卷積神經(jīng)網(wǎng)絡(luò)中,卷積和池化這2 個(gè)線性網(wǎng)絡(luò)層構(gòu)成了整個(gè)模型,所以模型的多層網(wǎng)絡(luò)級(jí)聯(lián)仍然是線性的,這種線性關(guān)系只能處理線性可分的問題,但通常遇到的問題是非線性的,所以需要使用激活函數(shù)來增強(qiáng)網(wǎng)絡(luò)的非線性表達(dá)。常見的非線性激活函數(shù)有Sigmoid、ReLU 和Tanh。Sigmoid是1 個(gè)常用的非線性激活函數(shù),其數(shù)學(xué)表達(dá)式為
式(3)能夠不斷地將輸入的實(shí)值轉(zhuǎn)化為0~1的輸出。若為非常大的負(fù)數(shù),輸出就是0;若為非常大的正數(shù),輸出就是1。然而,梯度消失問題往往發(fā)生在反向傳播過程中,模型不能正常收斂。
Tanh 部分解決了Sigmoid 關(guān)于零中心化(Zero-Centered)的輸出問題。導(dǎo)數(shù)范圍在(0,1)之間變得更大,而Sigmoid 在(0,0.25)之間,梯度消失的問題得到了緩解。Tanh 函數(shù)的數(shù)學(xué)表達(dá)式為
ReLU 函數(shù)使一部分神經(jīng)元的輸出為零,這就造成了網(wǎng)絡(luò)的稀疏性,減少了參數(shù)的相互依賴性,緩解了過擬合問題。ReLU 函數(shù)的數(shù)學(xué)表達(dá)式為
探索斑圖的存在需要討論穩(wěn)態(tài)問題[16-17]。在這項(xiàng)工作的研究中,選擇了Gray-Scott 模型來描述浮游生態(tài)系統(tǒng)[18]中斑圖的形成:
式中:u、v分別代表t時(shí)刻浮游動(dòng)物和浮游植物的種群密度;du和dv分別為2 種群的擴(kuò)散系數(shù);k和f分別代表由毒素釋放造成的浮游動(dòng)物死亡率和浮游動(dòng)物有額外的食物維持種群的增長率[19-20]。?∈R2為有限區(qū)域,文中模擬時(shí)設(shè)定尺寸為10×10,模型具有周期性邊界條件。
求解方程組
當(dāng)然,對于種群模型[23-24],正平衡點(diǎn)處的動(dòng)力學(xué)行為更值得關(guān)注。當(dāng)T0<0,D0>0時(shí),系統(tǒng)式(6)對應(yīng)常微分方程的平衡點(diǎn)局部漸近穩(wěn)定,若加入擴(kuò)散項(xiàng)之后,式(6)的平衡點(diǎn)變?yōu)椴环€(wěn)定狀態(tài),此時(shí)會(huì)出現(xiàn)圖靈斑圖。
圖1 顯示了在du=1 和dv= 0.5 時(shí),基于系統(tǒng)參數(shù)k和f的相位圖。圖1 中的灰色區(qū)域代表正平衡點(diǎn)穩(wěn)定狀態(tài)。在不穩(wěn)定區(qū)域,Gray-Scott 反應(yīng)擴(kuò)散模型產(chǎn)生各種形狀的圖案,包括“條紋狀”“斑點(diǎn)狀”“倒斑點(diǎn)狀”和混合形狀圖案。不同字母代表不同模式斑圖。
圖1 du=1 和 dv=0.5 時(shí),相位圖隨系統(tǒng)參數(shù) k和 f的變化Fig.1 When du =1 and dv =5, the phase diagram changes with the system parameters k andf
圖2 顯示了在固定擴(kuò)散系數(shù)du=1 和dv= 0.5 的情況下,通過改變參數(shù)k和f產(chǎn)生的圖案。定義了5 000個(gè)模擬秒,其中每個(gè)模擬秒4 步。
圖2 系統(tǒng)(6)斑圖隨k-f的變化Fig.2 Describe the changes in the system’s (6) pattern with respect tok-f
選擇了4 組不同模式的斑圖,見圖3。對應(yīng)參數(shù):(a)f=0.021,k=0.052;(b)f=0.023,k=0.060;(c)f=0.027,k=0.056;(d)f=0.029,k=0.060。利用神經(jīng)網(wǎng)絡(luò)框架對這4 組斑圖進(jìn)行分類。所有生成的4 組斑圖的訓(xùn)練集和測試集按7∶3 的比例進(jìn)行訓(xùn)練,并將其送入位于64×64 的像素矩陣中。
圖3 Gray-Scott 反應(yīng)擴(kuò)散模型生成的4 種斑圖Fig.3 Four plaque plots generated by the Gray-Scott reaction diffusion model
使用單層神經(jīng)網(wǎng)絡(luò)對圖像進(jìn)行分類,為了將神經(jīng)網(wǎng)絡(luò)應(yīng)用于4 類別分類,使用包含4 個(gè)輸出節(jié)點(diǎn)的輸出層對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。上述結(jié)構(gòu)的所有訓(xùn)練過程如下:
(1) 隨機(jī)初始化網(wǎng)絡(luò)中的所有權(quán)重。
(2) 使用梯度下降(gradient descent,GD)和Adam 優(yōu)化器對672 幅圖像進(jìn)行了2 000 次迭代訓(xùn)練。
(3) 使用288 張圖像驗(yàn)證分類的準(zhǔn)確性。
在訓(xùn)練前確定適當(dāng)?shù)臉颖咎卣骺梢蕴岣叻诸惖臏?zhǔn)確性,利用斑圖的特征而不增加神經(jīng)網(wǎng)絡(luò)的層數(shù)來提高分類準(zhǔn)確率。
利用先驗(yàn)知識(shí)將神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)化為一種特殊形式。由于輸入圖像是非線性的,傳統(tǒng)的層次結(jié)構(gòu)Z=WX+b(其中X表示特征,W、b分別表示訓(xùn)練權(quán)重和偏置項(xiàng))計(jì)算精度不高,因此,在本文中,將傳統(tǒng)層結(jié)構(gòu)的模型定義為基線模型。由于區(qū)域、層界面位置和分布可以用于區(qū)分球形、條紋和斑點(diǎn)以及混合斑圖。所以,修改后的模型與基線模型進(jìn)行比較,使用非線性函數(shù)、梯度、拉普拉斯等修改后的特征能夠更好地反映??紤]以下Ginzburg-Landau 自由能的泛化[25],
式中,d1、d2為系數(shù)。式(9)可以通過模擬相位分離產(chǎn)生復(fù)雜的圖案,而形成的圖案是由條紋狀和斑點(diǎn)狀圖案組成。如果式(9)可以生成各種復(fù)雜圖案,那么生成的圖案就可以按照這樣的方法進(jìn)行分類。在文獻(xiàn)[14]中,給出了2 種不同的圖像數(shù)據(jù)下X,(1-X2)2和?X的網(wǎng)格圖。提出對于給定的圖像數(shù)據(jù),?X和(1-X2)2可以呈現(xiàn)條形或圓形的體積和界面區(qū)域。
通過式(9)的變分求導(dǎo)來推導(dǎo)出以下廣義函數(shù)的最小點(diǎn):
式中:Y是非零固定變量;〈,〉是內(nèi)積?;谏鲜鼋Y(jié)論,神經(jīng)網(wǎng)絡(luò)前向傳播如下:
式中:σ表示激活函數(shù);b表示誤差項(xiàng);?X和X-X3為特征;對應(yīng)的權(quán)重分別為W1和W2,如果在同一個(gè)單層神經(jīng)網(wǎng)絡(luò)中有2 個(gè)特征,則應(yīng)該使用2 個(gè)權(quán)重,以防止數(shù)據(jù)集擬合不充分。
在本文中,使用具有2 個(gè)輸入特征的單層神經(jīng)網(wǎng)絡(luò)分類器,對2 個(gè)輸入特征分別進(jìn)行加權(quán),與1個(gè)偏置項(xiàng)相加,通過激活函數(shù)獲得輸出,然后使用反向傳播算法訓(xùn)練神經(jīng)網(wǎng)絡(luò)。反向傳播算法是一種迭代算法,在該算法中,對于每個(gè)輸入特征,在單個(gè)網(wǎng)絡(luò)層中分別訓(xùn)練2 個(gè)權(quán)重,每個(gè)權(quán)重通過獨(dú)立的反向傳播進(jìn)行更新,以使目標(biāo)的誤差更小。最后,重復(fù)前面的步驟,直到停止訓(xùn)練。圖4 是1 個(gè)具有上述2 個(gè)輸入特征的單層神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)示意圖。
圖4 2 個(gè)輸入特征的前向傳播神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Forward propagation neural network structure for two input features
表1 展示了通過上述分析得到的在GD 和Adam 優(yōu)化器下,單特征和雙特征神經(jīng)網(wǎng)絡(luò)的訓(xùn)練精度。由表1 可見,本文提出的模型與基線和其他模型,在GD 和Adam 優(yōu)化器下都取得了明顯的改進(jìn)。此外,不同的特征對神經(jīng)網(wǎng)絡(luò)的收斂速度也有很大影響。與其他模型相比,雙特征模型可以用較少的迭代次數(shù)(600 次)收斂分類,而單特征模型則需要2 000 次的迭代才能收斂。
表1 單特征和雙特征GD 和Adam 優(yōu)化器測試精度對比Tab.1 Comparison of test accuracy among single-feature, dualfeature GD and Adam optimizer
聚類就是把1 個(gè)給定的數(shù)據(jù)集按照某個(gè)特定的標(biāo)準(zhǔn)進(jìn)行分割,通過將其分割成不同的類或者簇,使得同一類的數(shù)據(jù)對象的相似性盡可能大,同時(shí)不在同一類的數(shù)據(jù)對象之間的差異性也要盡可能大[26-27]。為了更加深入地去了解聚類算法,使用上面討論過的特征和圖2 中的所有斑圖來對數(shù)據(jù)進(jìn)行聚類。對于聚類的好壞,可以通過聚類結(jié)果進(jìn)行驗(yàn)證。簇間距離越大,聚類效果越好;簇內(nèi)距離越小,聚類效果越理想。
圖5 表示的是二維空間中36 種斑圖的可視化。相同顏色的點(diǎn)代表相同類型的斑圖。通過使用每個(gè)特征的均值和方差,在二維空間中以每個(gè)斑圖20 個(gè)點(diǎn)來可視化所有斑圖。其中,圖5(a)是使用?X和X-X3的平均值進(jìn)行聚類。從圖中很容易看出它是8 個(gè)聚類,這將是一個(gè)好的聚類。當(dāng)然,聚類的數(shù)量最初是未知的,主要是由于斑圖的復(fù)雜程度決定。圖5(b)是使用?X和X-X3的方差的聚類結(jié)果,與圖5(a)相比,使用方差的聚類效果遠(yuǎn)不如使用均值的聚類。圖5(c)是使用?X的均值和X-X3的方差進(jìn)行聚類的結(jié)果。圖5(d)是使用X的均值和X-X3的方差進(jìn)行聚類的結(jié)果。通過對上述4 種聚類結(jié)果可以看出,圖5(c)和(d)的聚類結(jié)果差別很大,聚類標(biāo)準(zhǔn)比較模糊。
圖5 二維空間中36 種圖案的可視化Fig.5 Visualization of 36 patterns in two-dimensional space
為了更加直觀的看出聚類的效果,使用圖5(c)、(d)中X、?X的平均值和X-X3的方差這3 個(gè)特征在三維空間中對所有圖案可視化,其中,每個(gè)圖案代表40 個(gè)點(diǎn)。結(jié)果如圖6(a)所示。通過肉眼可以看出,聚類效果比以前要好。
圖6 將總共36 個(gè)圖案且每個(gè)圖案40 個(gè)點(diǎn)在三維空間(a)中進(jìn)行可視化,可視化三維空間(b)中的每個(gè)圖案上的點(diǎn)都代表相同顏色的相同簇中的點(diǎn)Fig.6 Visualization of a total of 36 patterns with 40 points per pattern in 3D space (a), where the points on each pattern in 3D space(b) represent points in the same cluster of the same color
最后,使用120 個(gè)數(shù)據(jù)點(diǎn)的平均值在三維空間中進(jìn)行聚類分析,將集群的數(shù)量設(shè)置為5,用相同的字母來代表每個(gè)聚類的斑圖。
根據(jù)之前的聚類,通過圖7 來表示每個(gè)聚類的斑圖。其中,圖7(a)~(d)是圖3 選擇的斑圖,圖7(d)是復(fù)雜斑圖,圖7(e)表示穩(wěn)定狀態(tài)。實(shí)線以內(nèi)的區(qū)域滿足穩(wěn)定性條件。它與圖2 有很好的一致性。
圖7 用字母表示每個(gè)簇的圖案Fig.7 The representation of the pattern of each cluster with different letters
本文以毒素作用下浮游動(dòng)物和植物生態(tài)反應(yīng)擴(kuò)散模型為媒介,分析了系統(tǒng)共存平衡的圖靈不穩(wěn)定性是產(chǎn)生斑圖的先決條件。然后利用機(jī)器學(xué)習(xí)方法中的特征工程對圖像進(jìn)行分類。通過可視化結(jié)果可以看出,特征?X和X-X3比單一特征具有更好的分類和聚類效果??紤]到所用斑圖的高度非線性,訓(xùn)練的高精度和低迭代速度仍需在未來改進(jìn),神經(jīng)網(wǎng)絡(luò)在反應(yīng)擴(kuò)散動(dòng)力系統(tǒng)中的應(yīng)用將一直是學(xué)者們關(guān)注的熱點(diǎn)問題。同時(shí),對所有高度相似的斑圖進(jìn)行更精確的分類和聚類是一個(gè)非常具有挑戰(zhàn)性的問題。這將是非線性偏微分方程演變和圖像分類技術(shù)的重要部分。