葉煉煉,林揚(yáng)武
(廈門海洋職業(yè)技術(shù)學(xué)院,福建 廈門 361012)
粗獷型水產(chǎn)養(yǎng)殖模式對我國水產(chǎn)品產(chǎn)量的快速增長起了重大作用,水產(chǎn)養(yǎng)殖極大地改善了民生,增加了農(nóng)民收入。我國水產(chǎn)養(yǎng)殖業(yè)經(jīng)歷了十多年的黃金時(shí)期,但傳統(tǒng)憑經(jīng)驗(yàn)養(yǎng)殖的老辦法在生產(chǎn)實(shí)踐中卻存在種種弊端,水產(chǎn)養(yǎng)殖的暴利時(shí)期慢慢遠(yuǎn)去,所生產(chǎn)的水產(chǎn)品難以滿足市場需求[1]。
大數(shù)據(jù)背景下,各行各業(yè)都需要數(shù)據(jù)支持。互聯(lián)網(wǎng)上有著豐富的水產(chǎn)品價(jià)格資源,可以通過爬蟲抓取數(shù)據(jù)和處理分析,使其成為有價(jià)值的數(shù)據(jù)[2]。如何利用海洋大數(shù)據(jù)更好地服務(wù)于海洋產(chǎn)業(yè)的發(fā)展,這個(gè)問題的研究很有理論意義及現(xiàn)實(shí)應(yīng)用價(jià)值。
海洋水產(chǎn)價(jià)格大數(shù)據(jù)系統(tǒng)平臺(tái)分為數(shù)據(jù)層、技術(shù)層和應(yīng)用層,架構(gòu)如圖1所示。
(1)系統(tǒng)的基礎(chǔ)是數(shù)據(jù)層:包括水產(chǎn)品種、水產(chǎn)名稱、價(jià)格等數(shù)據(jù)。在獲取了海洋水產(chǎn)價(jià)格大數(shù)據(jù)后,需要建設(shè)專業(yè)的大數(shù)據(jù)平臺(tái),以支持海洋水產(chǎn)價(jià)格的分析工作。通過分析、挖掘、預(yù)報(bào)、可視化等技術(shù),在大數(shù)據(jù)平臺(tái)上可以配置相應(yīng)的操作環(huán)境,來配合海洋大數(shù)據(jù)的分析及應(yīng)用研究,實(shí)現(xiàn)海洋水產(chǎn)價(jià)格的個(gè)性化檢索,并對海洋水產(chǎn)的價(jià)格進(jìn)行預(yù)報(bào)。
(2)系統(tǒng)的核心是技術(shù)層:利用分析方法對數(shù)據(jù)進(jìn)行建模,從中提取數(shù)據(jù)的潛在價(jià)值[3]。通過對價(jià)格數(shù)據(jù)的實(shí)時(shí)分析和處理,應(yīng)用于海鮮產(chǎn)品價(jià)格走勢預(yù)測等領(lǐng)域。
(3)系統(tǒng)的價(jià)值是應(yīng)用層:通過互聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)給用戶所需要的數(shù)據(jù)集,以圖表等形式展示得到的信息,并可以查詢、檢索歷史信息和預(yù)測未來的走勢。
海洋大數(shù)據(jù)分析預(yù)測系統(tǒng)主要包括:數(shù)據(jù)采集模塊、數(shù)據(jù)處理存儲(chǔ)模塊、數(shù)據(jù)計(jì)算模塊和數(shù)據(jù)可視化模塊等,如圖2所示。

圖2 系統(tǒng)功能模塊
(1)數(shù)據(jù)采集模塊:利用基于Python的網(wǎng)絡(luò)爬蟲軟件實(shí)時(shí)采集行業(yè)專業(yè)水產(chǎn)價(jià)格網(wǎng)站和幾大電商平臺(tái)上的水產(chǎn)價(jià)格數(shù)據(jù)。由于來自不同的渠道,對收集的海量級數(shù)據(jù)中非結(jié)構(gòu)化、半結(jié)構(gòu)化的數(shù)據(jù)進(jìn)行分類,篩選、壓縮生成符合一定規(guī)范的源數(shù)據(jù),因此,需要對數(shù)據(jù)進(jìn)行預(yù)處理,如數(shù)據(jù)“清洗”,為后續(xù)流程提供統(tǒng)一的、高質(zhì)量的數(shù)據(jù)集。
(2)數(shù)據(jù)處理存儲(chǔ)模塊:根據(jù)數(shù)據(jù)來源不同可將其分為兩大類:在線的實(shí)時(shí)流數(shù)據(jù)處理,離線歷史數(shù)據(jù)庫大數(shù)據(jù)處理。基于Hadoop的大數(shù)據(jù)處理和Hbase數(shù)據(jù)存儲(chǔ)的優(yōu)勢,應(yīng)用范圍覆蓋各種規(guī)模和不同數(shù)據(jù)量[4]。基于流化的數(shù)據(jù)處理流程包括:結(jié)構(gòu)化、非結(jié)構(gòu)化、關(guān)系數(shù)據(jù)庫、非關(guān)系數(shù)據(jù)庫和實(shí)時(shí)流處理。
(3)數(shù)據(jù)計(jì)算模塊:本預(yù)測系統(tǒng)使用keras深度學(xué)習(xí)庫,后端基于谷歌人工智能學(xué)習(xí)系統(tǒng)TensorFlow,構(gòu)建多層感知器(Multi-Layer Perceptron,MLP)神經(jīng)網(wǎng)絡(luò)模型,用于預(yù)測未來數(shù)天及數(shù)個(gè)月的水產(chǎn)價(jià)格[5]。該模型有3個(gè)主要結(jié)構(gòu)模塊:全局?jǐn)?shù)據(jù)特征提取與數(shù)據(jù)時(shí)序特征提取以及特征整合預(yù)測模塊,內(nèi)部包含兩個(gè)長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)、多個(gè)深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks,DNN)等網(wǎng)絡(luò)結(jié)構(gòu)。模型總參數(shù)284 184個(gè),需訓(xùn)練參數(shù)283 672個(gè)。使用均方誤差(Mean_Squared_Error,MSE)計(jì)算損失值,并使用adam優(yōu)化器調(diào)整模型參數(shù)。通過將歷史水產(chǎn)價(jià)格以及歷史天氣等數(shù)據(jù)集輸入到神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型,最終可得到可預(yù)測水產(chǎn)價(jià)格的神經(jīng)網(wǎng)絡(luò)模型,如圖3所示。
(4)數(shù)據(jù)可視化模塊:用戶提供標(biāo)簽云、聚類圖、曲線圖、熱圖、其他數(shù)據(jù)展示等豐富的數(shù)據(jù)查詢、分析與預(yù)測功能。通過互聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)給用戶所需要的數(shù)據(jù)集,以圖表等形式展示得到的信息,并可以查詢、檢索歷史信息和預(yù)測未來的走勢。

圖3 預(yù)測系統(tǒng)的模型結(jié)構(gòu)
文章構(gòu)建的基于水產(chǎn)養(yǎng)殖價(jià)格的大數(shù)據(jù)分析預(yù)測系統(tǒng),通過對給定網(wǎng)站的頁面抓取、頁面分析及數(shù)據(jù)清洗提取入庫等步驟,建立了水產(chǎn)品價(jià)格預(yù)測模型,擁有較好的穩(wěn)定性和較優(yōu)的性能。由于水產(chǎn)價(jià)格數(shù)據(jù)源離散,特別是互聯(lián)網(wǎng)上的水產(chǎn)價(jià)格網(wǎng)站比較少,水產(chǎn)數(shù)據(jù)更新不及時(shí),導(dǎo)致部分水產(chǎn)預(yù)測價(jià)格會(huì)出現(xiàn)較大的偏差。下一步的研究重點(diǎn)為訓(xùn)練數(shù)據(jù)集,進(jìn)一步提高水產(chǎn)價(jià)格預(yù)測的精度。