許新華 吳海燕
(鄭州西亞斯學院,河南 新鄭 451150)
當今社會,在傳統農業的生產過程中,因為市場的不穩定、天氣的變換、病蟲害的破壞、水肥的不合理施用等因素對其產生了較大的影響[1-3]。因此,要根據現代農業的要求實現精準生產,就要做到對天氣條件精準管理,對病蟲害的破壞程度實現精準噴藥。在現階段精準農業發展過程中,各種現代化信息技術的應用需求越來越大,衍生出來的復雜數據(規模大、流轉快、類型多樣、價值密度低)也越來越多[4-6]。目前,我國在對農業生產過程中各種信息數據的提取和處理上,針對一些高維、異構、非線性、不完全、不精確等復雜數據,還在沿用相對陳舊的處理方法,在精準農業中,對搜集到的數據結果分析往往效果不理想,隱藏在這些數據中的信息或潛在的特點無法被探知或者有效利用,導致“數據資源”變成“數據災難”,精準農業的產生及發展就是要主動去挖掘和利用這些潛在數據中的特點或規律。因此,如何有效地從高維復雜數據中獲取信息或規律已成為當今中國精準農業發展的瓶頸,必須尋求高效、優質的處理方法,才能讓精準農業快速發展。其中,主分量分析(PCA)[7]、獨立分量分析(ICA)[8]、多維尺度變換(MDST)、線性判別分析(LDA)、基于核的主分量分析(KPCA)、遺傳算法(GA)、小波變換(WT)、自組織特征映射(SOM)等技術[9-14]是常見的數據提取方法。其中既包括線性特征提取方法,也包括非線性特征提取方法。線性方法雖然計算簡單,但對數據出現非線性分布規律時,特別是流行分布數據時,并不能很好的發現。出現的一些非線性方法雖然可以解決這些問題,但在迭代優化過程中,計算量加大,且會陷入局部最優。雖然現在標準不統一,面對不同問題有針對性的選擇合適的方法,但主要還是集中在對數據要求高,當數據存在噪聲或者分布不均、數量減少時,降維效果往往不夠理想。本文為了克服數據非線性分布帶來的困擾,在原來已有算法的基礎上,提出了一種局部非線性嵌入(LNE)算法,將其用在高維復雜數據的降維上,效果明顯。
數據降維包括線性算法和非線性算法,線性降維方法思想簡單,復雜度低,在實際問題中得到了廣泛地應用,且在數據降維算法中具有重要地位,處理復雜數據的優勢更明顯于線性算法。PCA和MDS是現有的經典的數據降維算法,而Isomap、LLE和LE是具有代表性的流形學習方法。該方法認為數據在高維空間中分布復雜,局部卻存在歐氏空間,這一發現可以實現先局部后全局,即先在局部建立降維,然后再延伸到全局。這種方法對處理具有非線性結構分布特點的復雜數據效果較好。先列出一些記號,以方便后面的描述。D維空間樣本矩陣用X=(x1,x2,…,xn)∈RD×n表示,降維后的d維空間點矩陣用Y=(y1,y2,…yn)∈Rd×n表示,其中xi與xj之間的距離用d(xi,xj)表示,W∈RD×d是轉換矩陣,I是單位矩陣。
主成分分析(Principal Component Analysis,PCA),以線性約束為條件,盡可能使降維后的數據點分散,分散程度用方差大小表示。經典的數據降維算法還有多維尺度分析(Multidimensional Scaling,MDS),該算法的思想是使降維前后任意兩點之間的距離近似相等,采用的是歐氏距離計算。等度量映射(Isomap)是一種改進算法,是MDS算法的補充,一直被認為是流形學習方法的一種代表性算法。Isomap認為若要準確反映數據的內在結構,MDS采用的歐氏距計算結果則不能充分說明問題,應當使用測地距離來計算。而拉普拉斯特征映射(LE)體現了局部的距離關系,更好地說明了問題所在。LE最大的特點是能夠降低計算復雜度,提高穩定性。
局部線性嵌入(locally linear embedding,LLE),主要體現在數據的局部線性關系得到保持,該算法的思想是先計算每個點的重構系數,然后計算低維嵌入坐標,在這里需要注意的是計算加入重構系數后[15]。于是有如下步驟。
為空間樣本矩陣中的點xi尋找k個相鄰點,此時用Qi表示相鄰點集合,然后計算xi的線性重構系數wi:
(1)

(2)
LLE算法中的核心就是重構系數的建立,如何對重構系數進行計算。由公式(1)可知,wi,i=1,2,…,n之間是相互獨立的。計算方法:xi的k個近鄰點組成的矩陣用Γ=[xQi(1),xQi(2),…,xQi(k)]∈RD×k表示,k個xi組成的矩陣用X=(x1,x2,…,xn)∈RD×n表示,則:
=‖Xwi-Γwi‖2
=(Xwi-Γwi)T(Xwi-Γwi)
=((X-Γ)wi)T((X-Γ)wi)
=wiT(X-Γ)T(X-Γ)wi
=wiTGwi

因此,wi由下式計算:
式中,e=(1,1,…,1)T。構造拉格朗日函數:
L(wi,γ)=wiGwi-γ(wiTe-1)
(3)
式中,γ是拉格朗日乘子。對公式(3)分別關于wi和γ求導,可得:
(4)
由公式(4)可得:
(5)
據公式(2)中低維坐標的計算可以由公式(5)重構系數嵌入,李楊[5]給出了計算方法。
由以上可以看出每個xi的重構系數wi中均包含高維數據中的局部信息,并且可以很好地將此類數據的特征保持到低維數據中,wi的優劣關系降維能否完成。圖1b是用LLE對圖1a中3000個點的s形曲面的降維結果。
從圖中采用LLE降維的效果可以看出,結果的魯棒性較好,但圖1a中存在有噪聲點的數據,沒有得到令人滿意的降維。
由以上結論可知,若數據中存在噪聲,采用局部線性嵌入算法得到的降維效果不盡理想,前文所提到的降維算法對上節中的問題也不能很好的克服。基于此,本文提出局部非線性嵌入(locally nonlinear embedding,LNE)算法,從降維效果以及應用范圍來看,LNE這一改進算法均有顯而易見的效果。
若數據中存在噪聲點,則點之間局部的線性關系不能保持,此時LLE在噪聲數據的降維中效果失效,那么就要找出數據間的某種非線性關系。從線性關系到非線性關系,需要思考2個問題:非線性關系怎樣表示,合適的非線性關系如何找到。為解決第1個問題,在每個近鄰點上施加一個RD→RD上的映射,據此LNE的計算權值公式:
(6)
由公式(6)可知,LNE的思想是用映射φi作用在xi的每個近鄰點xj上,然后再計算權值,點不同映射也不同。針對低維坐標的計算上,LNE與LLE一致,當φj取單位映射時,LNE和LLE算法一樣。需要明確的是,LNE和KLLE[16]是不同的,KLLE是高維空間的降維,LNE是在同一維度中進行降維。
對LNE算法在結果部分的展示,仍舊采用3000個點的S型曲面為例,圖2是用該算法對圖1a進行降維的結果。
從LNE降維的效果可以看出,與LLE相比,對于圖1a中有噪聲點的數據降維得到了滿意的效果。
LLE作為流形學習中的代表算法,有較高的知名度,主要表現在該方法可以很好揭示高維非線性數據隱藏在低維空間中的內在結構。然而,LLE也有其無法解決的問題,其降維思想是要使數據局部線性關系很好地維持,若此種關系被破壞,那么結果也有缺陷。實際上,在農作物生長過程中采集的數據大多含有噪聲,而噪聲的存在往往會破壞數據局部的線性關系。在當前精準農業的背景下,本文提出了LNE算法,主要解決當局部的線性關系得不到滿足的情況下,挖掘數據間的某種非線性關系,本文算法可以看作LLE的擴展和完善,或者說當滿足某種映射關系時,LLE就退化為LNE。
在精準農業的要求下,研究高維復雜數據處理算法,優化復雜數據,提煉出數據精準信息,從而方便精準地獲取農作物的生長情況,指導工作人員對農作物生長環境進行監控,實現所提出的精準農業的要求。