吳 迪,吳方華
(1.廈門大學航空航天學院自動化系,福建廈門 361102; 2.湖北省當陽市兩河鎮(zhèn)農(nóng)業(yè)服務中心,湖北當陽 444110)
現(xiàn)在的社會高速發(fā)展,信息流通比以往更加便捷,人們的交流溝通也越來越密切,在這個時代背景下,大數(shù)據(jù)就產(chǎn)生了。
我們正處于大數(shù)據(jù)時代,但是很少有人深入了解過大數(shù)據(jù)的內(nèi)涵,對大數(shù)據(jù)的定義尚不清晰明確。因此有必要對其定義進行闡述。
大數(shù)據(jù)的特征可以歸納為體量浩大,超出常規(guī)數(shù)據(jù)處理工具的運算能力;數(shù)據(jù)形式多樣,大數(shù)據(jù)中包含了大量的非結(jié)構(gòu)化數(shù)據(jù);產(chǎn)生速度快,互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、智能設(shè)備每時每刻都在產(chǎn)生大量數(shù)據(jù),數(shù)據(jù)增長速度較快;以及數(shù)據(jù)價值密度低四個特征[1]。
大數(shù)據(jù)可以用于解決生產(chǎn)生活的方方面面問題,如電商推薦系統(tǒng)、人臉識別、語音處理及智能控制、天氣預測等。隨著信息化的發(fā)展,未來社會將逐步走入人工智能時代,而大數(shù)據(jù)就是人工智能研究和實踐的基礎(chǔ)。
農(nóng)業(yè)用藥大數(shù)據(jù)即通過大數(shù)據(jù)的相關(guān)技術(shù)和方法在農(nóng)業(yè)用藥推薦上的實踐。以往農(nóng)民們用藥時,都需要去農(nóng)藥店咨詢用藥,在用藥淡季還是很方便,但是一旦到了病蟲害的高峰期,到實體店咨詢農(nóng)藥的人就會特別多,一來會浪費黃金用藥時間,二來人多了之后很難保證商家對每個人用藥推薦都是最好的。
如果將大數(shù)據(jù)應用到用藥推薦上面,就可以節(jié)省很多線下咨詢的時間,而且用的藥也可以在很大概率上保證是最好的,只要大數(shù)據(jù)包含的歷史用藥信息足夠大,那么幾乎可以說是很少失誤的。
在農(nóng)業(yè)大數(shù)據(jù)這方面,美國實施得比較好,他們推行了精準農(nóng)業(yè),對于擁有大片土地的美國農(nóng)場主來說,利用大數(shù)據(jù)技術(shù)來操控農(nóng)業(yè)的方方面面,提高了他們的生產(chǎn)效率以及收益。目前也有許多大公司看到了這一行業(yè)的前景,孟山都、杜邦先鋒等種業(yè)巨頭都先后投入大批資金在這一領(lǐng)域。
目前國內(nèi)這一塊發(fā)展得比較緩慢,作為傳統(tǒng)農(nóng)業(yè)大國,全國范圍內(nèi)分散的小農(nóng)生產(chǎn)方式讓大數(shù)據(jù)的應用進程緩慢,不過像東北,新疆這幾個大面積種植農(nóng)產(chǎn)品的地區(qū),大數(shù)據(jù)的應用前景還是可以期待的。
我國是農(nóng)業(yè)大國,農(nóng)業(yè)發(fā)展歷史悠久,由于農(nóng)業(yè)科技進步發(fā)展滯后,加之農(nóng)業(yè)信息化程度不高,農(nóng)業(yè)數(shù)據(jù)呈現(xiàn)以下特點:數(shù)據(jù)歷史長、數(shù)據(jù)量大、類型多。但存在數(shù)據(jù)缺失嚴重、數(shù)據(jù)質(zhì)量不高、開發(fā)利用不夠、數(shù)據(jù)采集基礎(chǔ)建設(shè)不完善、家底不清等問題[2]。
但值得期待的是,國家對農(nóng)業(yè)大數(shù)據(jù)這一塊逐漸加大了重視,許多高校研究院都相繼開辦了相關(guān)專業(yè),比如山東農(nóng)業(yè)大學就開辦了農(nóng)業(yè)大數(shù)據(jù)研究中心。在此基礎(chǔ)上,我們也可以對農(nóng)業(yè)大數(shù)據(jù)的獲取有一些展望。建立農(nóng)業(yè)數(shù)據(jù)的標準體系,比如土地的相關(guān)參數(shù),天氣以及氣溫變化的統(tǒng)一化規(guī)定,農(nóng)產(chǎn)品質(zhì)量的指標等。利用先進技術(shù)進行大數(shù)據(jù)采集,比如利用物聯(lián)網(wǎng)、云計算、微信遙感與通信等來進行農(nóng)業(yè)大數(shù)據(jù)的采集,使得獲取的大數(shù)據(jù)更加準確和統(tǒng)一。
在基于大數(shù)據(jù)的人工智能中,數(shù)據(jù)預處理是最重要的一環(huán)。預處理主要包括數(shù)據(jù)缺失值的填充和異常值的修正,還有就是特征工程?,F(xiàn)實的數(shù)據(jù)都是“骯臟”的,也就是不能直接拿來做分析推薦的,我們稱之為有噪聲。缺失值是最常見的,比如某一塊農(nóng)田的某一天的氣溫缺失了,我們就可以用最近幾天的平均值來填充這一缺失值,當然用來填充的方法很多,在檢驗最后用藥推薦的準確率的時候,可以相應的通過修改數(shù)據(jù)處理的方法來不斷地逼近一個比較高的正確率。比如我們收集到了某個地區(qū)某塊地幾年的數(shù)據(jù),有氣溫,降雨量等,甚至可以用往年當天的數(shù)據(jù)來作為當天的缺失值的填充量。另外一種方法就是預測,將不存在缺失值的數(shù)據(jù)放入到機器學習模型中訓練,得到一個較好的模型,然后對于有缺失數(shù)據(jù)的那塊地,我們把那塊地不缺失的數(shù)據(jù)作為訓練特征,然后預測出這塊地缺失的數(shù)據(jù)。
更加深入的處理缺失值的方法有插值法,在數(shù)值分析中,牛頓給出了用插值的方法求得一組數(shù)中缺失的值,只要把缺失值前后對應的數(shù)據(jù)提取出來,建立插值多項式,就可以求得缺失值。異常值也是經(jīng)常遇見的,可以用人工智能機器學習中常用的“滑窗”方法來給數(shù)據(jù)建立一個散點圖,當發(fā)現(xiàn)有偏離正常曲線的點時,就基本可以認定這個點是異常值,修正值可以用曲線來預測。
在統(tǒng)計學中,我們也可以用z-score的方法來判斷是否有異常值。將農(nóng)業(yè)數(shù)據(jù)進行標準化,也就是將每個數(shù)據(jù)減去這組數(shù)的平均數(shù),再除以這組數(shù)方差。經(jīng)過這番處理后,這組數(shù)據(jù)就變成了平均值為0,方差為1的標準數(shù)。利用3σ原則,把絕對值大于3的數(shù)列為不恰當值,也就是異常值。之后就可以把這些異常值視為缺失值,再對這些值進行替換處理,用更準確的數(shù)代替它們。
最后就是特征工程,在機器學習中,有這么一句話:“特征工程決定上限,而模型只是在不斷逼近這個上限”。所以得到好的特征工程可以說是關(guān)鍵一環(huán)。對于一塊特定的農(nóng)田,可以選取當?shù)氐臍鉁刈兓?,施藥的時間,歷年災害等眾多特征,把特定時間的用藥作為標簽,當然,特征的調(diào)整也會影響正確率。不過,對于具體特征的選擇需要采取相應的辦法。
第一種方法就是卡方檢驗,經(jīng)典的卡方檢驗是檢驗定性自變量對定性因變量的相關(guān)性。可以利用它選出與農(nóng)業(yè)用藥相關(guān)性最強的特征集合。
其次就是RFE,即遞歸消除特征法,將所有的特征投入到一個模型進行訓練,然后逐步淘汰掉不太重要的特征,比如在農(nóng)業(yè)大數(shù)據(jù)特征里,可能就會淘汰掉田的形狀等不太相關(guān)的特征,然后遞歸調(diào)用這種方法,直到特征數(shù)滿足我們的需求。
第三種方法是利用模型選取特征,可以選取RandomForest來作為特征選擇的學習器,投入農(nóng)業(yè)大數(shù)據(jù)到學習器中后,它會輸出每個特征的重要性,就可以選取重要的特征。
支持向量機、隨機森林、樸素貝葉斯、線性回歸、神經(jīng)網(wǎng)絡(luò)等都是比較常用的機器學習模型,當然隨著深度學習的發(fā)展,也可嘗試一些深度網(wǎng)絡(luò)等方法。將處理好的農(nóng)業(yè)大數(shù)據(jù)劃分為訓練集和測試集,把訓練集投入到這個模型中,經(jīng)過訓練得到一個標準模型,然后利用測試集檢驗模型的準確率,不斷改變數(shù)據(jù)預處理的方法來獲得一個比較理想的正確率。這樣,一個簡易的農(nóng)業(yè)用藥推薦系統(tǒng)就應運而生。
當然,我們也得注意模型的泛化能力,也就是模型的普適度??赡艽嬖诘那闆r就是,模型在用作訓練集的農(nóng)業(yè)大數(shù)據(jù)里錯誤率比較低,表現(xiàn)很好,但是當農(nóng)戶投入他自己的農(nóng)業(yè)數(shù)據(jù)時,就可能得不到很精確的用藥推薦,這就是因為模型的泛化能力太低了。造成這種現(xiàn)象的原因可能是過擬合,也可能是欠擬合。過擬合就是模型太依賴于訓練集的數(shù)據(jù),而缺失“舉一反三”的能力,欠擬合就是模型沒有很好地擬合數(shù)據(jù),也就是說“課堂內(nèi)容”都沒消化好,就想著去做“模擬試卷”了。
解決這兩種現(xiàn)象的方法有很多。
第一,特征數(shù)和樣本數(shù)的平衡。當樣本數(shù)很少的時候,特征數(shù)也要跟著稍微少一點,防止過擬合。當樣本數(shù)比較多時,也要適當增加特征數(shù),防止欠擬合。
第二,利用交叉驗證的方法,也就是將獲取的農(nóng)業(yè)大數(shù)據(jù)分為兩部分,一個訓練集,一個是測試集。也就是說一個是“課堂內(nèi)容”,用于自己鞏固提高,另一個是“模擬試卷”,檢查自己學習的效果。然后再不斷重新劃分訓練集和測試集,基本保證農(nóng)業(yè)大數(shù)據(jù)的每個部分都曾作為訓練集和測試集。
把簡易的推薦系統(tǒng)進行包裝,就可以得到一個人機交互的推薦系統(tǒng),例如觸屏式機器人,或者app。農(nóng)民按照條件,把作物狀況、土地的相關(guān)參數(shù)、天氣、氣溫等特征填入,就可以得到用藥推薦。
我國是農(nóng)業(yè)大國,將近14億人口對糧食的消耗量是不言而喻的,而農(nóng)藥的使用對糧食的產(chǎn)量起到了關(guān)鍵性的作用,農(nóng)業(yè)用藥不能只憑已有的經(jīng)驗,隨著大數(shù)據(jù)技術(shù)的逐步深入,利用農(nóng)業(yè)大數(shù)據(jù)進行用藥推薦是配方施藥、精準施藥,是大勢所趨,不僅可以提高生產(chǎn)力,還可以實現(xiàn)農(nóng)藥減量,確保農(nóng)產(chǎn)品質(zhì)量安全和農(nóng)業(yè)環(huán)境友好。