李 偉 王儒敬 賈秀芳 黃 河
1(中國科學院合肥智能機械研究所 安徽 合肥 230031)2(中國科學技術大學自動化系 安徽 合肥 230026)
隨著我國種業(yè)改革持續(xù)開展,育種技術的發(fā)展大勢所趨。與其把擴大種植規(guī)模作為提升國家農業(yè)競爭力的抓手,不如加快高效新品種的培育。諸多國家和地區(qū)已經將快速高效地培育新品種作為一種提升農業(yè)方面競爭力的關鍵技術。目前,育種的趨勢向著多元化方向發(fā)展[1],追求材料品質篩選成為新品種培育的主題。
我國的種質評價方式大多依賴于專家的經驗知識,因此缺乏客觀性,同時也限制了其規(guī)模與范圍的擴大。大規(guī)模種質資源數(shù)據庫的建設將有效地提升育種專家的效率。在本文中將利用深度學習和數(shù)據挖掘相關算法自動進行作物育種資源的評價工作,構建種質資源數(shù)據庫,用于輔助育種工作者進行優(yōu)質品種的選育。本文以水稻育種材料為例提出聚類算法來進行大量種質材料數(shù)據品質自動分類。由于歷年來水稻育種數(shù)據量較大,所以提出一種基于深度學習中堆棧稀疏自編碼網絡的K-均值聚類算法評價方法。
本文方法表明可以極大加速種質資源數(shù)據庫的建設,提供高質量的種質資源材料品質評價數(shù)據。方便育種家精準地進行新品種的選育,同時提高了育種領域中的信息化管理水平。
深度學習[4-7]是神經網絡學習的進一步發(fā)展,通過建立多個層次結構的神經網絡,實現(xiàn)對輸入的大數(shù)據進行深層次表達,從而達到更好地分類與特征提取效果。深度學習方法通過多層次學習機制,使得計算機能夠自動學習處理人工方法難以發(fā)現(xiàn)的重要特征。深度學習在機器學習和人工智能方面已經進行了大量的研究,在不同領域也得到了廣泛應用。深度學習方法主要有自編碼網絡[8]、堆棧自編碼網絡[9]、深度置信神經網絡[10]和卷積神經網絡[11]等。
1.1 稀疏自編碼器[2]
自動編碼器AE(autoencoder)是利用三層的神經網絡AE對用戶輸入的數(shù)據進行編碼,再通過解碼得到輸出,通過利用反向傳播算法來對網絡進行訓練,使得輸出等于輸入,最終得到編碼的結果。稀疏自編碼器學習過程[12]如圖1所示。
圖1 稀疏自編碼器學習過程
若原始數(shù)據為X={x1,x2,…,xm},xi∈Rn×1作為自動編碼器的第i個輸入向量,輸入到具有d個神經元的編碼層(encoder),通過非線性激活函數(shù)f(x)=1/(1+exp(-x))。由式(1)得到編碼zi∈Rd×1。
zi=sf(Wxi+b1)
(1)
式中:W∈Rd×n為權重矩陣,b1∈Rd×1為編碼層偏置向量。
(2)
(3)
式中:KL(p‖pj)表示兩個變量p、pj之間的相對熵;p是稀疏參數(shù),通常設定為最小的值,可以取p=0.07。
在本文中,稀疏自編碼重構誤差函數(shù)為:
(4)
式中:α是超函數(shù),決定了稀疏項的相對重要性。
1.2 堆棧稀疏自編碼器
初始種質資源材料數(shù)據來源廣泛,數(shù)據質量參差不齊,需要構建堆棧稀疏自編碼器SSAE(stacked sparse autoencoder)[13],即在堆棧式自編碼器SAE(stacked autoencoder)模型[9]加入稀疏表示的限定條件,以提高模型的泛化能力。圖2為堆棧稀疏自編碼器的學習過程。
圖2 堆棧稀疏自編碼器學習過程
本文基于堆棧稀疏自編碼器,實現(xiàn)對輸入數(shù)據的特征提取。首先,設置堆棧稀疏自動編碼器結構,包括每層的節(jié)點數(shù){d(1),,d(2),…,d(T)},其中,d(1)=m=|X|,X(1)=X∈Rm×D作為第一層輸入到有d(2)=S個節(jié)點的自動編碼器,訓練的結果為X(2)=Z(1)∈RS×D,如此類推,將X(2)輸入到有d(3)個節(jié)點的自動編碼器,訓練結果為X(3)=Z(2)∈RS×D;循環(huán)下去,直到得到所需要的編碼層結果X(T)∈Rm×D。
1.3 K-均值聚類算法
聚類算法是基于群體共性與特異性特征為表達的機器學習方法。衍生出多種不同的聚類算法,包括層次聚類、密度聚類、網格聚類、基于模型的聚類和劃分的聚類等。諸多的聚類算法中,K-均值聚類是最為經典的聚類?;治鏊惴?。
其基本思想是:從m個數(shù)據樣本中隨機選取k個樣本作為初始聚類中心,其他樣本根據其與已得到的聚類中心的相似度來進行最優(yōu)匹配而歸類;其次,不斷地計算聚類中心,同時調整各個樣本的類別,最終使得各個數(shù)據樣本到其所屬類別中心的均方差達到最小值,即聚類結果中同一類中樣本盡可能緊湊,不同類間盡可能地分開。
算法步驟說明如下[3]:
算法1K-均值聚類算法
輸入:m個數(shù)據對象X={x1,x2,…,xm},xi∈Rn×1,聚類個數(shù)為k;
輸出:k個聚類。
Step1從研究對象中任意選取k個樣本作為初始聚類中心(c1,c2,…,ck)。
Step2計算每一個對象xi同每一個聚類中心cj之間的相似度,將每一個研究對象歸屬于最相似的類別中。具體相似公式計算如下:
Step3計算每個聚類中所有對象的均值作為新的聚類中心,具體計算步驟如下:
Step4重復迭代Step2和Step3,一直使得標準函數(shù)E收斂為止。
其中,k表示聚類個數(shù),xij表示第i個類中的第j個樣本,ci表示第i個聚類的中心,m表示需要聚類的樣本數(shù)。
典型的K-means聚類每次都需要對更新后的整個數(shù)據重新聚類,其復雜度為O(mkl), 其中,m為數(shù)據中所需聚類的樣本數(shù),k為聚類個數(shù),l為迭代次數(shù)。
針對K-均值聚類算法的一個特征是聚類結果嚴重依賴于初始分類,即對初始中心的選取問題比較敏感。為了克服此不足,我們利用堆疊稀疏自編碼網絡進行關鍵數(shù)據特征提取,逐步降低樣本維度,構建混合特征數(shù)據,將其作為K-均值聚類算法的初始中心;利用K-均值聚類算法進行水稻種質資源的品質數(shù)據聚類;最后在此基礎上利用已有的水稻種質資源品質數(shù)據對聚類結果進行標注,得到大規(guī)模種質資源品質數(shù)據庫。算法流程圖如圖3所示。
圖3 種質資源數(shù)據品質數(shù)據標識過程
算法2種質資源數(shù)據品質聚類算法
輸入:國家農作物種質資源平臺m個水稻種質資源數(shù)據對象X={x1,x2,…,xm},xi∈Rn×1;
輸出:經過聚類并進行類別標注的水稻種質資源品質數(shù)據庫。
Step1對輸入數(shù)據進行轉置XT={x1,x2,…,xm}T。
Step2利用堆棧稀疏自編碼器對XT轉置進行編碼解碼,最終輸出具有代表性的特征數(shù)據。
Step3將特征數(shù)據作為K-均值聚類的中心點,利用K-均值聚類算法對輸入數(shù)據進行聚類。
Step4利用國家水稻數(shù)據中心優(yōu)異種質數(shù)據庫選取各級別品質種質資源,對其取平均值作為標準值Ei其中i為國家水稻數(shù)據中心優(yōu)異種質數(shù)據庫中第i個類別。將聚類結果中的中心分別與標準值Ei進行匹配,具體是計算聚類中心點和標準Ei之間的馬氏距離DEi。馬氏距離:DEi=d(xi,xj) = (xi,xj)′∑-1(xi,xj),其中∑-1是向量間協(xié)方差矩陣的逆矩陣。
Step5將最小馬氏距離min(DEi)標記作為聚類中類別的標記。
Step6輸出經過聚類并進行類別標注的水稻種質資源品質。
為驗證深度稀疏自編碼網絡中心選擇支持下的K-均值聚類算法的可行性以及實驗劃分的準確性,文中選擇經典Wine-Quality數(shù)據集和自建的育種品質數(shù)據集進行算法驗證,并將此算法用于育種材料數(shù)據的篩選與比對工作。
3.1 Wine-Quality數(shù)據集
Wine-Quality是常用的聚類實驗數(shù)據集。通過兩個文件分別記錄紅、白兩種葡萄酒的各類成分度量數(shù)據,數(shù)據集包含紅葡萄酒數(shù)據1 599條,白葡萄酒數(shù)據4 898條??赏ㄟ^固定酸度、揮發(fā)性酸度、檸檬酸等11個指標預測葡萄酒品質。
紅葡萄酒和白葡萄酒在化學成分上有差異,在本實驗中,將紅葡萄酒數(shù)據文件與白葡萄酒數(shù)據文件合并生成聚類數(shù)據集,測試算法對于葡萄酒類型的聚類效果。
合并后生成的數(shù)據集有6 479條記錄,增加一個類型字段type,1代表紅葡萄酒,2代表白葡萄酒。數(shù)據集多維標度分析(MDS)后數(shù)據分布圖見圖4。
3.2 水稻種質品質數(shù)據集
對于育種專業(yè)數(shù)據,為驗證算法的準確性,我們通過以中國水稻研究所國家水稻數(shù)據中心,優(yōu)異種質數(shù)據庫(http://www.ricedata.cn/rsres/mix.asp)作為驗證測試數(shù)據集。數(shù)據庫中包含部頒標準一級品種數(shù)據328條,去除重復后為278條;二級品種數(shù)據735條,去除重復后為733條。將二者合并以后數(shù)據量1 011條,部分數(shù)據有缺失,作為驗證測試集合。
3.3 實驗驗證與應用
文中選用R語言K-均值聚類工具包運行于Windows7操作系統(tǒng)平臺,算法執(zhí)行代碼都由R語言設計完成。表1給出兩種不同中心選擇模式下實驗結果。
模式1:利用上述給定的數(shù)據集進行聚類,聚類中心選取規(guī)則為隨機選擇。
模式2:首先利用堆棧稀疏自動編碼網絡算法進行數(shù)據集處理,得到關鍵數(shù)據特征,將特征數(shù)據作為初始聚類中心,利用K-均值算法進行聚類。算法中使用的優(yōu)化算法為BFGS牛頓優(yōu)化算法。
其中:Wine-Quality數(shù)據集中紅、白兩種葡萄酒進行聚類,驗證其聚類的結果。種質數(shù)據集中對于品種的等級進行聚類分為兩個等級。
經典K-均值聚類算法對于初始聚類中心的選擇較為敏感,不同初始聚類中心選擇對結果的影響也不盡相同。通過實驗驗證Wine-Quality數(shù)據集下利用模式1得到的正確率為78.54%,而通過模式2得到的正確率為98.58%。如圖5所示。
圖5 Wine-Quality聚類結果
自建的育種品質數(shù)據集通過模式2算法驗證下得到的正確率也得到大幅度的提升。由此可見,本文提出的基于深度學習稀疏自動編碼初始聚類中心選擇算法可以明顯地提高聚類分析的準確率。
本文針對國家農作物種質資源平臺(http://www.cgris.net/)13 942個水稻材料數(shù)據源缺少等級分類的問題。提出基于堆棧稀疏自編碼網絡的K-均值聚類算法。選取與材料品質相關的屬性(糙米率、精米率、蛋白質、賴氨酸、總淀粉、直鏈淀粉、膠稠度)作為分類特征,對數(shù)據進行分類,取得較好的結果。
由于條件限制,本文只采用了兩個稀疏層進行特
征數(shù)據提取,對于給出研究數(shù)據進行適當增加層數(shù)是否能夠更進一步提高聚類效果有待進一步研究。同時,對堆棧自編碼網絡中的參數(shù)進行不斷調整優(yōu)化,從而縮短訓練時間等問題需要做更深入研究。
參考文獻
[1] 樊龍江,王為娣,王斌,等.作物育種相關數(shù)據及大數(shù)據技術育種利用[J].浙江大學學報(農業(yè)與生命科學版),2016,42(1):30-39.
[2] Bengio Y, Lamblin P, Popovici D, et al. Greedy layer-wise training of deep networks[J]. Advances in Neural Information Processing Systems, 2007, 19:153-160.
[3] 孫即祥.現(xiàn)代模式識別[M].長沙:國防科技大學出版社,2002.
[4] Schmidhuber J. Deep Learning in neural networks: An overview[J]. Neural Netw, 2014, 61:85-117.
[5] Bengio Y, Courville A, Vincent P. Representation Learning: A Review and New Perspectives[J]. IEEE Trans Pattern Anal Mach Intell, 2012, 35(8):1798-1828.
[6] Li D. A tutorial survey of architectures, algorithms, and applications for deep learning[J]. Apsipa Transactions on Signal & Information Processing, 2014, 3(3):1-30.
[7] Zhang X, Gao Y. Face recognition across pose: A review[J]. Pattern Recognition, 2009, 42(11):2876-2896.
[8] Le Q V,Ngiam J, Coates A,et al. On optimization methods for deep learning[C]//Proceedings of the 28th International Conference on Machine Learning, ICML 2011, Bellevue, Washington, USA, June 28-July 2, 2011:265-272.
[9] Vincent P,Larochelle H,Lajoie I,et al. Stacked denoising autoencoders[J]. Journal of Machine Learning Research, 2010,11(12):3371-3408.
[10] Ranzato M A, Boureau Y L, Lecun Y. Sparse feature learning for deep belief networks[C]//International Conference on Neural Information Processing Systems. Curran Associates Inc. 2007:1185-1192.
[11] Matsugu M, Mori K Y, Kaneda Y. Subject independent facial expression recognition with robust face detection using a convolutional neural network[J]. Neural Networks, 2003, 16(6):555-559.
[12] Shin H C, Orton M R, Collins D J, et al. Stacked autoencoders for unsupervised feature learning and multiple organ detection in a pilot study using 4D patient data[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013,35(8):1930-1943.
[13] Ranzato M, Poultney C, Chopra S, et al. Efficient learning of sparse representations with an energy-based model[C]//Advances in Neural Information Processing Systems,NIPS 2006.2006:1137-1134.