許新華 吳海燕
(鄭州西亞斯學(xué)院,河南 新鄭 451150)
當(dāng)今社會(huì),在傳統(tǒng)農(nóng)業(yè)的生產(chǎn)過程中,因?yàn)槭袌龅牟环€(wěn)定、天氣的變換、病蟲害的破壞、水肥的不合理施用等因素對其產(chǎn)生了較大的影響[1-3]。因此,要根據(jù)現(xiàn)代農(nóng)業(yè)的要求實(shí)現(xiàn)精準(zhǔn)生產(chǎn),就要做到對天氣條件精準(zhǔn)管理,對病蟲害的破壞程度實(shí)現(xiàn)精準(zhǔn)噴藥。在現(xiàn)階段精準(zhǔn)農(nóng)業(yè)發(fā)展過程中,各種現(xiàn)代化信息技術(shù)的應(yīng)用需求越來越大,衍生出來的復(fù)雜數(shù)據(jù)(規(guī)模大、流轉(zhuǎn)快、類型多樣、價(jià)值密度低)也越來越多[4-6]。目前,我國在對農(nóng)業(yè)生產(chǎn)過程中各種信息數(shù)據(jù)的提取和處理上,針對一些高維、異構(gòu)、非線性、不完全、不精確等復(fù)雜數(shù)據(jù),還在沿用相對陳舊的處理方法,在精準(zhǔn)農(nóng)業(yè)中,對搜集到的數(shù)據(jù)結(jié)果分析往往效果不理想,隱藏在這些數(shù)據(jù)中的信息或潛在的特點(diǎn)無法被探知或者有效利用,導(dǎo)致“數(shù)據(jù)資源”變成“數(shù)據(jù)災(zāi)難”,精準(zhǔn)農(nóng)業(yè)的產(chǎn)生及發(fā)展就是要主動(dòng)去挖掘和利用這些潛在數(shù)據(jù)中的特點(diǎn)或規(guī)律。因此,如何有效地從高維復(fù)雜數(shù)據(jù)中獲取信息或規(guī)律已成為當(dāng)今中國精準(zhǔn)農(nóng)業(yè)發(fā)展的瓶頸,必須尋求高效、優(yōu)質(zhì)的處理方法,才能讓精準(zhǔn)農(nóng)業(yè)快速發(fā)展。其中,主分量分析(PCA)[7]、獨(dú)立分量分析(ICA)[8]、多維尺度變換(MDST)、線性判別分析(LDA)、基于核的主分量分析(KPCA)、遺傳算法(GA)、小波變換(WT)、自組織特征映射(SOM)等技術(shù)[9-14]是常見的數(shù)據(jù)提取方法。其中既包括線性特征提取方法,也包括非線性特征提取方法。線性方法雖然計(jì)算簡單,但對數(shù)據(jù)出現(xiàn)非線性分布規(guī)律時(shí),特別是流行分布數(shù)據(jù)時(shí),并不能很好的發(fā)現(xiàn)。出現(xiàn)的一些非線性方法雖然可以解決這些問題,但在迭代優(yōu)化過程中,計(jì)算量加大,且會(huì)陷入局部最優(yōu)。雖然現(xiàn)在標(biāo)準(zhǔn)不統(tǒng)一,面對不同問題有針對性的選擇合適的方法,但主要還是集中在對數(shù)據(jù)要求高,當(dāng)數(shù)據(jù)存在噪聲或者分布不均、數(shù)量減少時(shí),降維效果往往不夠理想。本文為了克服數(shù)據(jù)非線性分布帶來的困擾,在原來已有算法的基礎(chǔ)上,提出了一種局部非線性嵌入(LNE)算法,將其用在高維復(fù)雜數(shù)據(jù)的降維上,效果明顯。
數(shù)據(jù)降維包括線性算法和非線性算法,線性降維方法思想簡單,復(fù)雜度低,在實(shí)際問題中得到了廣泛地應(yīng)用,且在數(shù)據(jù)降維算法中具有重要地位,處理復(fù)雜數(shù)據(jù)的優(yōu)勢更明顯于線性算法。PCA和MDS是現(xiàn)有的經(jīng)典的數(shù)據(jù)降維算法,而Isomap、LLE和LE是具有代表性的流形學(xué)習(xí)方法。該方法認(rèn)為數(shù)據(jù)在高維空間中分布復(fù)雜,局部卻存在歐氏空間,這一發(fā)現(xiàn)可以實(shí)現(xiàn)先局部后全局,即先在局部建立降維,然后再延伸到全局。這種方法對處理具有非線性結(jié)構(gòu)分布特點(diǎn)的復(fù)雜數(shù)據(jù)效果較好。先列出一些記號(hào),以方便后面的描述。D維空間樣本矩陣用X=(x1,x2,…,xn)∈RD×n表示,降維后的d維空間點(diǎn)矩陣用Y=(y1,y2,…yn)∈Rd×n表示,其中xi與xj之間的距離用d(xi,xj)表示,W∈RD×d是轉(zhuǎn)換矩陣,I是單位矩陣。
主成分分析(Principal Component Analysis,PCA),以線性約束為條件,盡可能使降維后的數(shù)據(jù)點(diǎn)分散,分散程度用方差大小表示。經(jīng)典的數(shù)據(jù)降維算法還有多維尺度分析(Multidimensional Scaling,MDS),該算法的思想是使降維前后任意兩點(diǎn)之間的距離近似相等,采用的是歐氏距離計(jì)算。等度量映射(Isomap)是一種改進(jìn)算法,是MDS算法的補(bǔ)充,一直被認(rèn)為是流形學(xué)習(xí)方法的一種代表性算法。Isomap認(rèn)為若要準(zhǔn)確反映數(shù)據(jù)的內(nèi)在結(jié)構(gòu),MDS采用的歐氏距計(jì)算結(jié)果則不能充分說明問題,應(yīng)當(dāng)使用測地距離來計(jì)算。而拉普拉斯特征映射(LE)體現(xiàn)了局部的距離關(guān)系,更好地說明了問題所在。LE最大的特點(diǎn)是能夠降低計(jì)算復(fù)雜度,提高穩(wěn)定性。
局部線性嵌入(locally linear embedding,LLE),主要體現(xiàn)在數(shù)據(jù)的局部線性關(guān)系得到保持,該算法的思想是先計(jì)算每個(gè)點(diǎn)的重構(gòu)系數(shù),然后計(jì)算低維嵌入坐標(biāo),在這里需要注意的是計(jì)算加入重構(gòu)系數(shù)后[15]。于是有如下步驟。
為空間樣本矩陣中的點(diǎn)xi尋找k個(gè)相鄰點(diǎn),此時(shí)用Qi表示相鄰點(diǎn)集合,然后計(jì)算xi的線性重構(gòu)系數(shù)wi:
(1)
(2)
LLE算法中的核心就是重構(gòu)系數(shù)的建立,如何對重構(gòu)系數(shù)進(jìn)行計(jì)算。由公式(1)可知,wi,i=1,2,…,n之間是相互獨(dú)立的。計(jì)算方法:xi的k個(gè)近鄰點(diǎn)組成的矩陣用Γ=[xQi(1),xQi(2),…,xQi(k)]∈RD×k表示,k個(gè)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由下式計(jì)算:
式中,e=(1,1,…,1)T。構(gòu)造拉格朗日函數(shù):
L(wi,γ)=wiGwi-γ(wiTe-1)
(3)
式中,γ是拉格朗日乘子。對公式(3)分別關(guān)于wi和γ求導(dǎo),可得:
(4)
由公式(4)可得:
(5)
據(jù)公式(2)中低維坐標(biāo)的計(jì)算可以由公式(5)重構(gòu)系數(shù)嵌入,李楊[5]給出了計(jì)算方法。
由以上可以看出每個(gè)xi的重構(gòu)系數(shù)wi中均包含高維數(shù)據(jù)中的局部信息,并且可以很好地將此類數(shù)據(jù)的特征保持到低維數(shù)據(jù)中,wi的優(yōu)劣關(guān)系降維能否完成。圖1b是用LLE對圖1a中3000個(gè)點(diǎn)的s形曲面的降維結(jié)果。
從圖中采用LLE降維的效果可以看出,結(jié)果的魯棒性較好,但圖1a中存在有噪聲點(diǎn)的數(shù)據(jù),沒有得到令人滿意的降維。
由以上結(jié)論可知,若數(shù)據(jù)中存在噪聲,采用局部線性嵌入算法得到的降維效果不盡理想,前文所提到的降維算法對上節(jié)中的問題也不能很好的克服。基于此,本文提出局部非線性嵌入(locally nonlinear embedding,LNE)算法,從降維效果以及應(yīng)用范圍來看,LNE這一改進(jìn)算法均有顯而易見的效果。
若數(shù)據(jù)中存在噪聲點(diǎn),則點(diǎn)之間局部的線性關(guān)系不能保持,此時(shí)LLE在噪聲數(shù)據(jù)的降維中效果失效,那么就要找出數(shù)據(jù)間的某種非線性關(guān)系。從線性關(guān)系到非線性關(guān)系,需要思考2個(gè)問題:非線性關(guān)系怎樣表示,合適的非線性關(guān)系如何找到。為解決第1個(gè)問題,在每個(gè)近鄰點(diǎn)上施加一個(gè)RD→RD上的映射,據(jù)此LNE的計(jì)算權(quán)值公式:
(6)
由公式(6)可知,LNE的思想是用映射φi作用在xi的每個(gè)近鄰點(diǎn)xj上,然后再計(jì)算權(quán)值,點(diǎn)不同映射也不同。針對低維坐標(biāo)的計(jì)算上,LNE與LLE一致,當(dāng)φj取單位映射時(shí),LNE和LLE算法一樣。需要明確的是,LNE和KLLE[16]是不同的,KLLE是高維空間的降維,LNE是在同一維度中進(jìn)行降維。
對LNE算法在結(jié)果部分的展示,仍舊采用3000個(gè)點(diǎn)的S型曲面為例,圖2是用該算法對圖1a進(jìn)行降維的結(jié)果。
從LNE降維的效果可以看出,與LLE相比,對于圖1a中有噪聲點(diǎn)的數(shù)據(jù)降維得到了滿意的效果。
LLE作為流形學(xué)習(xí)中的代表算法,有較高的知名度,主要表現(xiàn)在該方法可以很好揭示高維非線性數(shù)據(jù)隱藏在低維空間中的內(nèi)在結(jié)構(gòu)。然而,LLE也有其無法解決的問題,其降維思想是要使數(shù)據(jù)局部線性關(guān)系很好地維持,若此種關(guān)系被破壞,那么結(jié)果也有缺陷。實(shí)際上,在農(nóng)作物生長過程中采集的數(shù)據(jù)大多含有噪聲,而噪聲的存在往往會(huì)破壞數(shù)據(jù)局部的線性關(guān)系。在當(dāng)前精準(zhǔn)農(nóng)業(yè)的背景下,本文提出了LNE算法,主要解決當(dāng)局部的線性關(guān)系得不到滿足的情況下,挖掘數(shù)據(jù)間的某種非線性關(guān)系,本文算法可以看作LLE的擴(kuò)展和完善,或者說當(dāng)滿足某種映射關(guān)系時(shí),LLE就退化為LNE。
在精準(zhǔn)農(nóng)業(yè)的要求下,研究高維復(fù)雜數(shù)據(jù)處理算法,優(yōu)化復(fù)雜數(shù)據(jù),提煉出數(shù)據(jù)精準(zhǔn)信息,從而方便精準(zhǔn)地獲取農(nóng)作物的生長情況,指導(dǎo)工作人員對農(nóng)作物生長環(huán)境進(jìn)行監(jiān)控,實(shí)現(xiàn)所提出的精準(zhǔn)農(nóng)業(yè)的要求。