一種水產(chǎn)品價格的預(yù)測方法以及裝置的制造方法
【專利摘要】本發(fā)明公開一種水產(chǎn)品價格的預(yù)測方法以及裝置。其中,所述方法包括:獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述歷史價格數(shù)據(jù)計算得到價格序列;采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù)處理,得到訓練數(shù)據(jù)集;根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋優(yōu),得到優(yōu)化參數(shù);根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn)品價格預(yù)測模型;根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二預(yù)設(shè)時間段內(nèi)的價格。通過本發(fā)明,廣大養(yǎng)殖戶可以及時分析水產(chǎn)品市場的趨勢,合理規(guī)劃養(yǎng)殖,同時也有利于政府加強對水產(chǎn)品市場的監(jiān)督和管理,優(yōu)化產(chǎn)業(yè)結(jié)構(gòu)。
【專利說明】
一種水產(chǎn)品價格的預(yù)測方法以及裝置
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及水產(chǎn)品價格領(lǐng)域,具體地,涉及一種水產(chǎn)品價格的預(yù)測方法以及裝置。
【背景技術(shù)】
[0002] 水產(chǎn)品價格作為漁業(yè)生產(chǎn)成本和水產(chǎn)品供求關(guān)系的具體反映,不僅與養(yǎng)殖業(yè)者生 產(chǎn)銷售和經(jīng)濟利益相關(guān),而且與國家宏觀經(jīng)濟政策相關(guān),水產(chǎn)品價格的變化更是水產(chǎn)品市 場各方面關(guān)注的焦點。
[0003] 市場的供求狀況受到多方面因素的影響,而這些因素經(jīng)常是不平穩(wěn)的,處在不斷 變化之中。因此,市場的供求平衡點也是經(jīng)常處于變動之中的。一般來講,供求關(guān)系的變動 可以從價格上反映出來,因此,有必要對價格變動進行科學、準確的預(yù)測。通過把由預(yù)測得 來的價格變化的信息反饋給養(yǎng)殖戶,養(yǎng)殖戶可以及時的根據(jù)市場供求變化調(diào)整生產(chǎn)經(jīng)營活 動,合理規(guī)劃養(yǎng)殖,減少不必要的損失,即減少了生產(chǎn)成本,又獲得了較高的經(jīng)濟效益。
[0004] 但水產(chǎn)品市場有其獨特的特點,價格波動區(qū)間較大,品種分布不一,不同地區(qū)之間 差異很大。這些因素反映在價格上,使得價格序列呈現(xiàn)出非平穩(wěn)、非線性、非周期性等特點, 而且水產(chǎn)品價格受多種因素的影響,養(yǎng)殖戶難以對未來價格的走勢做出準確的預(yù)測和分 析,并及時有效的合理規(guī)劃養(yǎng)殖。
[0005] 因此,亟需一種能夠?qū)λa(chǎn)品市場價格進行分析預(yù)測的方法,能夠?qū)︷B(yǎng)殖戶提供 市場指導,合理規(guī)劃養(yǎng)殖結(jié)構(gòu),同時有利于政府制定行業(yè)政策,科學地對市場進行監(jiān)督和管 理,促進產(chǎn)業(yè)結(jié)構(gòu)轉(zhuǎn)型升級,優(yōu)化資源配置。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的是提供一種水產(chǎn)品價格的預(yù)測方法以及裝置。其中,所述方法能夠 對養(yǎng)殖戶提供市場指導,合理規(guī)劃養(yǎng)殖結(jié)構(gòu),同時有利于政府制定行業(yè)政策,科學地對水產(chǎn) 品市場進行監(jiān)督和管理,促進產(chǎn)業(yè)結(jié)構(gòu)轉(zhuǎn)型升級,優(yōu)化資源配置。
[0007] 為了實現(xiàn)上述目的,本發(fā)明提供一種水產(chǎn)品價格的預(yù)測方法。所述方法包括:
[0008] 獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述歷史價格數(shù)據(jù)計算 得到價格序列;
[0009] 采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù)處理,得到訓練數(shù) 據(jù)集;
[0010] 根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋優(yōu),得到優(yōu)化 參數(shù);
[0011] 根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn)品價格預(yù)測模型;
[0012] 根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二預(yù)設(shè)時間段內(nèi)的價格。
[0013] 可選地,所述根據(jù)所述歷史價格數(shù)據(jù)計算得到價格序列,具體包括:
[0014] 根據(jù)所述歷史價格數(shù)據(jù)計算得到所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的 平均價格;
[0015] 根據(jù)所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格得到所述價格序列。
[0016] 可選地,所述采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù)處 理,得到訓練數(shù)據(jù)集,具體包括:
[0017] 對所述價格序列進行取對數(shù)操作,使得所述價格序列映射到一個波動較小的區(qū)間 上,從而得到第一序列;
[0018] 根據(jù)預(yù)設(shè)的自相關(guān)函數(shù)判斷所述第一序列的平穩(wěn)性;
[0019] 在判斷所述第一序列處于平穩(wěn)狀態(tài)的情況下,根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到 所述第一序列的偏自相關(guān)系數(shù);
[0020] 在判斷所述第一序列處于非平穩(wěn)狀態(tài)的情況下,通過差分操作使得所述第一序列 處于平穩(wěn)狀態(tài),并根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述第一序列的偏自相關(guān)系數(shù);
[0021 ]根據(jù)所述偏自相關(guān)系數(shù)確定所述第一序列的相關(guān)階數(shù)項;
[0022] 根據(jù)處于平穩(wěn)狀態(tài)的第一序列和所述相關(guān)階數(shù)項,構(gòu)建得到所述訓練數(shù)據(jù)集。
[0023] 可選地,所述根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋 優(yōu),得到優(yōu)化參數(shù),具體包括:
[0024] 對支持向量回歸機的每組參數(shù)進行編碼,得到與每組參數(shù)對應(yīng)的實數(shù)串;
[0025]根據(jù)所述實數(shù)串設(shè)置所述支持向量回歸機;
[0026] 根據(jù)所述訓練數(shù)據(jù)集對所述支持向量回歸機進行訓練,得到與每組參數(shù)對應(yīng)的至 少一個訓練值;
[0027] 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將所述至少一個訓練值分別與所述訓練數(shù)據(jù)集的期望值 子集中的期望值的誤差絕對值之和作為每組參數(shù)的適應(yīng)度值;
[0028] 根據(jù)所述每組參數(shù)的適應(yīng)度值選擇參數(shù)組合;
[0029] 對所述參數(shù)組合進行交叉和變異操作,形成新的多組參數(shù);
[0030] 根據(jù)所述新的多組參數(shù)繼續(xù)尋優(yōu);
[0031 ]在滿足預(yù)設(shè)的迭代次數(shù)的情況下,輸出優(yōu)化參數(shù)組合。
[0032] 可選地,所述方法還包括:
[0033]引入K折交叉驗證機制;
[0034] 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將K次均方誤差的均值作為每組參數(shù)的適應(yīng)度值。
[0035] 相應(yīng)地,本發(fā)明還提供一種水產(chǎn)品價格的預(yù)測裝置。所述裝置包括:
[0036]獲取單元,用于獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述歷 史價格數(shù)據(jù)計算得到價格序列;
[0037] 預(yù)處理單元,用于采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù) 處理,得到訓練數(shù)據(jù)集;
[0038] 尋優(yōu)單元,用于根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行 尋優(yōu),得到優(yōu)化參數(shù);
[0039] 建立單元,根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn)品價格預(yù) 測模型;
[0040] 預(yù)測單元,用于根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二預(yù)設(shè)時 間段內(nèi)的價格。
[0041] 可選地,所述獲取單元,具體用于:
[0042] 根據(jù)所述歷史價格數(shù)據(jù)計算得到所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的 平均價格;
[0043] 根據(jù)所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格得到所述價格序列。 [0044] 可選地,所述預(yù)處理單元,具體用于:
[0045] 對所述價格序列進行取對數(shù)操作,使得所述價格序列映射到一個波動較小的區(qū)間 上,從而得到第一序列;
[0046] 根據(jù)預(yù)設(shè)的自相關(guān)函數(shù)判斷所述第一序列的平穩(wěn)性;
[0047] 在判斷所述第一序列處于平穩(wěn)狀態(tài)的情況下,根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到 所述第一序列的偏自相關(guān)系數(shù);
[0048] 在判斷所述第一序列處于非平穩(wěn)狀態(tài)的情況下,通過差分操作使得所述第一序列 處于平穩(wěn)狀態(tài),并根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述第一序列的偏自相關(guān)系數(shù);
[0049] 根據(jù)所述偏自相關(guān)系數(shù)確定所述第一序列的相關(guān)階數(shù)項;
[0050] 根據(jù)處于平穩(wěn)狀態(tài)的第一序列和所述相關(guān)階數(shù)項,構(gòu)建得到所述訓練數(shù)據(jù)集。
[0051] 可選地,所述尋優(yōu)單元,具體用于:
[0052] 對支持向量回歸機的每組參數(shù)進行編碼,得到與每組參數(shù)對應(yīng)的實數(shù)串;
[0053]根據(jù)所述實數(shù)串設(shè)置所述支持向量回歸機;
[0054] 根據(jù)所述訓練數(shù)據(jù)集對所述支持向量回歸機進行訓練,得到與每組參數(shù)對應(yīng)的至 少一個訓練值;
[0055] 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將所述至少一個訓練值分別與所述訓練數(shù)據(jù)集的期望值 子集中的期望值的誤差絕對值之和作為每組參數(shù)的適應(yīng)度值;
[0056] 根據(jù)所述每組參數(shù)的適應(yīng)度值選擇參數(shù)組合;
[0057] 對所述參數(shù)組合進行交叉和變異操作,形成新的多組參數(shù);
[0058]根據(jù)所述新的多組參數(shù)繼續(xù)尋優(yōu);
[0059] 在滿足預(yù)設(shè)的迭代次數(shù)的情況下,輸出優(yōu)化參數(shù)組合。
[0060] 可選地,所述尋優(yōu)單元,還用于:
[0061 ]引入K折交叉驗證機制;
[0062] 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將K次均方誤差的均值作為每組參數(shù)的適應(yīng)度值。
[0063] 通過上述技術(shù)方案,獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)歷 史價格數(shù)據(jù)計算得到價格序列;采用時間序列中偏自相關(guān)系數(shù)分析方法對價格序列進行預(yù) 處理,得到訓練數(shù)據(jù)集;根據(jù)訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋優(yōu), 得到優(yōu)化參數(shù);根據(jù)優(yōu)化參數(shù)設(shè)置支持向量回歸機,建立得到水產(chǎn)品價格預(yù)測模型;以及根 據(jù)水產(chǎn)品價格預(yù)測模型預(yù)測得到水產(chǎn)品在第二預(yù)設(shè)時間段內(nèi)的價格,能夠?qū)︷B(yǎng)殖戶提供市 場指導,合理規(guī)劃養(yǎng)殖結(jié)構(gòu),同時有利于政府制定行業(yè)政策,科學地對水產(chǎn)品市場進行監(jiān)督 和管理,促進產(chǎn)業(yè)結(jié)構(gòu)轉(zhuǎn)型升級,優(yōu)化資源配置。
【附圖說明】
[0064] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹。顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以 根據(jù)這些圖獲得其他的附圖。
[0065] 圖1是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法的流程圖;
[0066] 圖2是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法的預(yù)處理步驟的流程圖;
[0067] 圖3是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法的遺傳算法的流程圖;
[0068] 圖4是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0069]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于 本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護的范圍。
[0070] 圖1是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法的流程圖。如圖1所示,本發(fā) 明一實施例提供的水產(chǎn)品價格的預(yù)測方法包括:
[0071] 在步驟SlOl中,獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述歷 史價格數(shù)據(jù)計算得到價格序列。
[0072] 其中,所述根據(jù)所述歷史價格數(shù)據(jù)計算得到價格序列,具體包括:根據(jù)所述歷史價 格數(shù)據(jù)計算得到所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格;根據(jù)所述水產(chǎn)品 在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格得到所述價格序列。
[0073]舉例來說,獲取武漢地區(qū)2011年到2015年武昌魚的價格數(shù)據(jù),并根據(jù)價格數(shù)據(jù)得 到武昌魚在2011年到2015年的每個月的平均價格。藉此,可得到由60個數(shù)構(gòu)成的價格序列。
[0074] 接著,在步驟S102中,采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進 行預(yù)處理,得到訓練數(shù)據(jù)集。
[0075] 圖2是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法的預(yù)處理步驟的流程圖。如 圖2所示,步驟S102具體包括:對所述價格序列進行取對數(shù)操作,使得所述價格序列映射到 一個波動較小的區(qū)間上,從而得到第一序列;根據(jù)預(yù)設(shè)的自相關(guān)函數(shù)判斷所述第一序列的 平穩(wěn)性;在判斷所述第一序列處于平穩(wěn)狀態(tài)的情況下,根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到 所述第一序列的偏自相關(guān)系數(shù);在判斷所述第一序列處于非平穩(wěn)狀態(tài)的情況下,通過差分 操作使得所述第一序列處于平穩(wěn)狀態(tài),并根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述第一序列 的偏自相關(guān)系數(shù);根據(jù)所述偏自相關(guān)系數(shù)確定所述第一序列的相關(guān)階數(shù)項;根據(jù)處于平穩(wěn) 狀態(tài)的第一序列和所述相關(guān)階數(shù)項,構(gòu)建得到所述訓練數(shù)據(jù)集。
[0076] 舉例來說,假設(shè)價格序列A為:X1,X2,…,Xp,對價格序列A進行取對數(shù)操作,得到第 一序列B,即B = Iog(A),使得價格序列A映射到一個較小的區(qū)間上。之所以要對價格序列進 行取對數(shù)操作,是因為價格序列往往處于一個較大的區(qū)間波動。然后利用序列的自相關(guān)函 數(shù)進行平穩(wěn)性判斷,若序列的自相關(guān)函數(shù)隨著項數(shù)的增大,迅速衰減,則認為序列是平穩(wěn) 的,如果衰減的非常緩慢或者沒有衰減,則認為該序列是非平穩(wěn)的,通過差分操作和季節(jié)差 分操作可以使得序列平穩(wěn)化,一般經(jīng)過一次或兩次差分操作可以使得序列平穩(wěn)化。在得到 平穩(wěn)序列之后,根據(jù)序列的偏自相關(guān)函數(shù)計算得到處于平穩(wěn)狀態(tài)的序列的偏自相關(guān)系數(shù), 并根據(jù)偏自相關(guān)函數(shù)確定處于平穩(wěn)狀態(tài)的序列的相關(guān)階數(shù)項,以及根據(jù)處于平穩(wěn)狀態(tài)的序 列和相關(guān)階數(shù)項,構(gòu)建得到訓練數(shù)據(jù)集。藉此,采用時間序列中偏自相關(guān)系數(shù)分析方法對價 格序列進行分析,使得價格序列滿足預(yù)測的基本要求,保證了預(yù)測的有效性,使得預(yù)測的結(jié) 果更為真實。
[0077] 更為具體地,詳細計算過程為:對于平穩(wěn)的隨機過程,其期望為常數(shù),用μ來表示, 即
[0078]
[0079]
[0080]
[0081] 其中,I/用來度量隨機過程取值對其均值μ的離散程度。相隔k期的兩個隨機變量 Xt與xt+k的協(xié)方差即滯后k期的自協(xié)方差,定義為:
[0082] yk = Cov(xt,xt-k)=E[(xt_y)(xt-k-μ)],k = 0,l,2, · · ·
[0083] 白相羊賽翁宙々為.
[0084]
[0085]
[0086]
[0087]
[0088]當k = 0時,Po=l。以滯后期k為變量的自相關(guān)系數(shù)數(shù)列pk(k = 0,l,2,...)稱為自相 關(guān)函數(shù)。
[0089]偏相關(guān)系數(shù)的遞推公式為:
[0090]
[0091 ]得到序列的偏相關(guān)系數(shù)。統(tǒng)計推斷的依據(jù)為平穩(wěn)序列的自相關(guān)系數(shù)Pk和偏 相關(guān)系數(shù)均服從的正態(tài)分布,可以通過差分和季節(jié)差分操作使序列平穩(wěn)化。 假設(shè)存在和TTl1^ . in
[0092]
[0093]
[0094] 則可認為平穩(wěn)序列適合ARMA(nw,mma)模型,即AR的階數(shù)P=m ar,得到所構(gòu)建的訓練 數(shù)據(jù)集的階數(shù)為P。根據(jù)處于平穩(wěn)狀態(tài)的第一序列和階數(shù)構(gòu)建階數(shù)為P的訓練數(shù)據(jù)集,如下 式所牙
[0095]
[0096]其中,η和m均表示正整數(shù),訓練數(shù)據(jù)集包括訓練子集X和期望值子集¥,&表示訓練 子集X和期望值子集Y中的元素。
[0097]緊接著,在步驟S103中,根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的 參數(shù)進行尋優(yōu),得到優(yōu)化參數(shù)。
[0098] 具體地,步驟S103包括:對支持向量回歸機的每組參數(shù)進行編碼,得到與每組參數(shù) 對應(yīng)的實數(shù)串;根據(jù)所述實數(shù)串設(shè)置所述支持向量回歸機;根據(jù)所述訓練數(shù)據(jù)集對所述支 持向量回歸機進行訓練,得到與每組參數(shù)對應(yīng)的至少一個訓練值;根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù) 將所述至少一個訓練值分別與所述訓練數(shù)據(jù)集的期望值子集中的期望值的誤差絕對值之 和作為每組參數(shù)的適應(yīng)度值;根據(jù)所述每組參數(shù)的適應(yīng)度值選擇參數(shù)組合;對所述參數(shù)組 合進行交叉和變異操作,形成新的多組參數(shù);根據(jù)所述新的多組參數(shù)繼續(xù)尋優(yōu);在滿足預(yù)設(shè) 的迭代次數(shù)的情況下,輸出優(yōu)化參數(shù)組合
[0099]優(yōu)選地,所述方法還包括:引入K折交叉驗證機制;根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將K次均 方誤差的均值作為每組參數(shù)的適應(yīng)度值。其中,K折交叉驗證機制是用來驗證模型性能的一 種統(tǒng)計方法,K折交叉驗證是把訓練數(shù)據(jù)集中訓練子集X隨機分成K個不相關(guān)的子集,然后用 其中的K-I個子集作為訓練集,建立預(yù)測模型,其他的子集為驗證子集。通過K次循環(huán)使每個 子集都充當一次驗證子集,然后對這K次的均方誤差取均值,作為K折交叉驗證的均方誤差。 在這個過程中引入交叉驗證的機制,以減少訓練數(shù)據(jù)集劃分差異對算法的影響。
[0100] 圖3是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法的遺傳算法的流程圖。如圖3 所示,通過遺傳算法獲取選擇徑向基核函數(shù)支持向量機的優(yōu)化參數(shù),其參數(shù)變量有三個,分 別是核函數(shù)系數(shù)γ、懲罰因子C和損失參數(shù)ε。遺傳優(yōu)化算法把生物進化原理引入優(yōu)化參數(shù) 形成的編碼串聯(lián)群體中,按照所選擇的適應(yīng)度函數(shù),通過選擇、交叉和變異對個體進行操 作,直至滿足終止條件。具體計算過程為:1)對染色體進行編碼,這里采用實數(shù)編碼方式,即 每個染色體為一個實數(shù)串,對于待優(yōu)化的參數(shù),染色體X可以表示為 Χ2,Χ3分別對應(yīng)γ,C,e;2)確定適應(yīng)度函數(shù),訓練數(shù)據(jù)對SVR(Support Vector Regression, 支持向量回歸機)進行訓練,并預(yù)測其輸出,把預(yù)測把預(yù)測輸出和期望輸出之間的誤差絕對 值之和作為個體的適應(yīng)度值,引入K折交叉驗證機制后,適應(yīng)度函數(shù)將K次均方誤差的均值 作為適應(yīng)度值,計算公式如下:
[0101] .、、 ··'
[0102] 其中,fj為K折交叉驗證過程中一次循環(huán)產(chǎn)生的值,yi為真實值,O1預(yù)測輸出;F為染 色體的適應(yīng)度值,值越小表示染色體越優(yōu),被選擇的概率就越大;3)選擇操作:為了確保進 化過程朝著優(yōu)化的方向進行,選擇過程根據(jù)求得的適應(yīng)度值的大小,淘汰一些較差的個體, 選出一些比較優(yōu)良的個體,選擇操作有輪盤賭法、錦標賽法等,這里選擇輪盤賭法,即適應(yīng) 度值越優(yōu)的染色體被選擇的概率越大;4)交叉操作:所謂交叉是把兩個染色體的部分結(jié)構(gòu) 加以替換重組而生成新個體的操作,若一對染色體被確定進行交叉操作,則需要確定一個 或多個交叉點,由于染色體采用實數(shù)編碼,所以本實施例選擇的交叉算子是單點實數(shù)交叉 法,即不同染色體在對應(yīng)的某個位置上以概率Pcross進行交叉操作;5)變異操作:本質(zhì)是增 強算法的局部搜索能力,避免陷入局部極小值,同時維持種群的多樣性,以防止過早收斂, 因此,個體以概率Pmut進行變異,改變其當前值,產(chǎn)生新的種群。當?shù)_到最大次數(shù),就停 止迭代,輸出最優(yōu)參數(shù)組合。通過遺傳優(yōu)化算法對模型參數(shù)進行尋優(yōu),并引入交叉驗證機 制,使選擇的參數(shù)更加合理,提高了模型的預(yù)測精度,減少了計算時間,提高了運行效率。
[0103] 具體地,在對支持向量回歸機進行模擬訓練之前,還需要對遺傳算法的參數(shù)進行 設(shè)置,包括概率Pcross和概率Pmut。
[0104] 然后,在步驟S104中,根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn) 品價格預(yù)測模型。
[0105] 具體地,對于水產(chǎn)品價格序列的非線性的特點,使用支持向量機可以很好的處理 這個問題,選擇徑向基核函數(shù),然后構(gòu)造最小化目標函數(shù),將二次規(guī)劃問題轉(zhuǎn)換為相應(yīng)的對 偶問題,得到?jīng)Q策函數(shù),即得到水產(chǎn)品價格預(yù)測模型。其中,支持向量機具有很好的非線性 處理能力,選擇徑向基核函數(shù),能夠很好地捕捉水產(chǎn)品價格序列的非線性部分,使得預(yù)測結(jié) 果更能夠反映真實情況,提高了預(yù)測的準確度。
[0106] 舉例來說,使用得到的優(yōu)化參數(shù)組合對建立在訓練數(shù)據(jù)集上的支持向量回歸機進 行訓練,構(gòu)建預(yù)測模型。具體操作為:定義預(yù)測函數(shù):
[0107]
[0108] 其中,f為預(yù)測函數(shù),p為滯后階數(shù),#0:為核函數(shù),系數(shù)Wi和b可由最小化風險來估 計,回歸風險表示為:
[0109]
[0110] 其中,C為懲罰因子,ε為不敏感損失參數(shù)。本實施例采用徑向基函數(shù)作為SVR的核 函數(shù),那么,其決策函數(shù)就是:
[0111]
[0112] 其中,γ核函數(shù)系數(shù),ρ為滯后階數(shù),Wt和b為預(yù)測函數(shù)系數(shù)。由此,即得到水產(chǎn)品價 格預(yù)測模型。
[0113] 最后,在步驟S105中,根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二 預(yù)設(shè)時間段內(nèi)的價格。
[0114] 具體地,使用訓練數(shù)據(jù)集來對序列進行擬合,將預(yù)測值和真實值進行對比分析,對 水產(chǎn)品價格預(yù)測模型進行評價。用戶通過該預(yù)測模型可以對下一年的價格進行預(yù)測。
[0115] 本實施例通過獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)歷史價格 數(shù)據(jù)計算得到價格序列;采用時間序列中偏自相關(guān)系數(shù)分析方法對價格序列進行預(yù)處理, 得到訓練數(shù)據(jù)集;根據(jù)訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋優(yōu),得到 優(yōu)化參數(shù);根據(jù)優(yōu)化參數(shù)設(shè)置支持向量回歸機,建立得到水產(chǎn)品價格預(yù)測模型;以及根據(jù)水 產(chǎn)品價格預(yù)測模型預(yù)測得到水產(chǎn)品在第二預(yù)設(shè)時間段內(nèi)的價格,能夠?qū)︷B(yǎng)殖戶提供市場指 導,合理規(guī)劃養(yǎng)殖結(jié)構(gòu),同時有利于政府制定行業(yè)政策,科學地對水產(chǎn)品市場進行監(jiān)督和管 理,促進產(chǎn)業(yè)結(jié)構(gòu)轉(zhuǎn)型升級,優(yōu)化資源配置。
[0116] 對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域 技術(shù)人員應(yīng)該知悉,本發(fā)明實施例并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明實施 例,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書 中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明實施例所必須的。
[0117] 圖4是本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測裝置的結(jié)構(gòu)示意圖。如圖4所示, 本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測裝置包括:
[0118] 獲取單元301,用于獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述 歷史價格數(shù)據(jù)計算得到價格序列;
[0119]預(yù)處理單元302,用于采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進 行預(yù)處理,得到訓練數(shù)據(jù)集;
[0120] 尋優(yōu)單元303,用于根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù) 進行尋優(yōu),得到優(yōu)化參數(shù);
[0121] 建立單元304,根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn)品價格 預(yù)測模型;
[0122] 預(yù)測單元305,用于根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二預(yù) 設(shè)時間段內(nèi)的價格。
[0123] 在本發(fā)明一實施例中,所述獲取單元301,具體用于:
[0124] 根據(jù)所述歷史價格數(shù)據(jù)計算得到所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的 平均價格;
[0125] 根據(jù)所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格得到所述價格序列。 [0126]在本發(fā)明一實施例中,所述預(yù)處理單元302,具體用于:
[0127] 對所述價格序列進行取對數(shù)操作,使得所述價格序列映射到一個波動較小的區(qū)間 上,從而得到第一序列;
[0128] 根據(jù)預(yù)設(shè)的自相關(guān)函數(shù)判斷所述第一序列的平穩(wěn)性;
[0129] 在判斷所述第一序列處于平穩(wěn)狀態(tài)的情況下,根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到 所述第一序列的偏自相關(guān)系數(shù);
[0130] 在判斷所述第一序列處于非平穩(wěn)狀態(tài)的情況下,通過差分操作使得所述第一序列 處于平穩(wěn)狀態(tài),并根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述第一序列的偏自相關(guān)系數(shù);
[0131 ]根據(jù)所述偏自相關(guān)系數(shù)確定所述第一序列的相關(guān)階數(shù)項;
[0132] 根據(jù)處于平穩(wěn)狀態(tài)的第一序列和所述相關(guān)階數(shù)項,構(gòu)建得到所述訓練數(shù)據(jù)集。
[0133] 在本發(fā)明一實施例中,所述尋優(yōu)單元303,具體用于:
[0134] 對支持向量回歸機的每組參數(shù)進行編碼,得到與每組參數(shù)對應(yīng)的實數(shù)串;
[0135] 根據(jù)所述實數(shù)串設(shè)置所述支持向量回歸機;
[0136] 根據(jù)所述訓練數(shù)據(jù)集對所述支持向量回歸機進行訓練,得到與每組參數(shù)對應(yīng)的至 少一個訓練值;
[0137] 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將所述至少一個訓練值分別與所述訓練數(shù)據(jù)集的期望值 子集中的期望值的誤差絕對值之和作為每組參數(shù)的適應(yīng)度值;
[0138] 根據(jù)所述每組參數(shù)的適應(yīng)度值選擇參數(shù)組合;
[0139] 對所述參數(shù)組合進行交叉和變異操作,形成新的多組參數(shù);
[0140] 根據(jù)所述新的多組參數(shù)繼續(xù)尋優(yōu);
[0141]在滿足預(yù)設(shè)的迭代次數(shù)的情況下,輸出優(yōu)化參數(shù)組合。
[0142] 在本發(fā)明一實施例中,所述尋優(yōu)單元303,還用于:
[0143] 引入K折交叉驗證機制;
[0144] 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將K次均方誤差的均值作為每組參數(shù)的適應(yīng)度值。
[0145] 對于本發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測裝置中還涉及的具體細節(jié)已在本 發(fā)明一實施例提供的水產(chǎn)品價格的預(yù)測方法中作了詳細的描述,在此不再贅述。
[0146] 應(yīng)當注意的是,在本發(fā)明的系統(tǒng)的各個部件中,根據(jù)其要實現(xiàn)的功能而對其中的 部件進行了邏輯劃分,但是,本發(fā)明不受限于此,可以根據(jù)需要對各個部件進行重新劃分或 者組合,例如,可以將一些部件組合為單個部件,或者可以將一些部件進一步分解為更多的 子部件。
[0147] 本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行 的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當理解,可以在實踐中使用 微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的系統(tǒng)中的一些或者全部部 件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全 部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序 可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以 從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0148] 應(yīng)該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領(lǐng) 域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中, 不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞"包含"不排除存在未 列在權(quán)利要求中的元件或步驟。位于元件之前的單詞"一"或"一個"不排除存在多個這樣的 元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實 現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項 來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名 稱。
[0149] 以上實施方式僅適于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通 技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有 等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護范圍應(yīng)由權(quán)利要求限定。
【主權(quán)項】
1. 一種水產(chǎn)品價格的預(yù)測方法,其特征在于,所述方法包括: 獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述歷史價格數(shù)據(jù)計算得到 價格序列; 采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù)處理,得到訓練數(shù)據(jù) 集; 根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋優(yōu),得到優(yōu)化參 數(shù); 根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn)品價格預(yù)測模型; 根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二預(yù)設(shè)時間段內(nèi)的價格。2. 根據(jù)權(quán)利要求1所述的水產(chǎn)品價格的預(yù)測方法,其特征在于,所述根據(jù)所述歷史價格 數(shù)據(jù)計算得到價格序列,具體包括: 根據(jù)所述歷史價格數(shù)據(jù)計算得到所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均 價格; 根據(jù)所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格得到所述價格序列。3. 根據(jù)權(quán)利要求1所述的水產(chǎn)品價格的預(yù)測方法,其特征在于,所述采用時間序列中偏 自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù)處理,得到訓練數(shù)據(jù)集,具體包括: 對所述價格序列進行取對數(shù)操作,使得所述價格序列映射到一個波動較小的區(qū)間上, 從而得到第一序列; 根據(jù)預(yù)設(shè)的自相關(guān)函數(shù)判斷所述第一序列的平穩(wěn)性; 在判斷所述第一序列處于平穩(wěn)狀態(tài)的情況下,根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述 第一序列的偏自相關(guān)系數(shù); 在判斷所述第一序列處于非平穩(wěn)狀態(tài)的情況下,通過差分操作使得所述第一序列處于 平穩(wěn)狀態(tài),并根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述第一序列的偏自相關(guān)系數(shù); 根據(jù)所述偏自相關(guān)系數(shù)確定所述第一序列的相關(guān)階數(shù)項; 根據(jù)處于平穩(wěn)狀態(tài)的第一序列和所述相關(guān)階數(shù)項,構(gòu)建得到所述訓練數(shù)據(jù)集。4. 根據(jù)權(quán)利要求1所述的水產(chǎn)品價格預(yù)測方法,其特征在于,所述根據(jù)所述訓練數(shù)據(jù)集 采用遺傳算法對支持向量回歸機的參數(shù)進行尋優(yōu),得到優(yōu)化參數(shù),具體包括: 對支持向量回歸機的每組參數(shù)進行編碼,得到與每組參數(shù)對應(yīng)的實數(shù)串; 根據(jù)所述實數(shù)串設(shè)置所述支持向量回歸機; 根據(jù)所述訓練數(shù)據(jù)集對所述支持向量回歸機進行訓練,得到與每組參數(shù)對應(yīng)的至少一 個訓練值; 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將所述至少一個訓練值分別與所述訓練數(shù)據(jù)集的期望值子集 中的期望值的誤差絕對值之和作為每組參數(shù)的適應(yīng)度值; 根據(jù)所述每組參數(shù)的適應(yīng)度值選擇參數(shù)組合; 對所述參數(shù)組合進行交叉和變異操作,形成新的多組參數(shù); 根據(jù)所述新的多組參數(shù)繼續(xù)尋優(yōu); 在滿足預(yù)設(shè)的迭代次數(shù)的情況下,輸出優(yōu)化參數(shù)組合。5. 根據(jù)權(quán)利要求4所述的水產(chǎn)品價格預(yù)測方法,其特征在于,所述方法還包括: 引入K折交叉驗證機制; 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將K次均方誤差的均值作為每組參數(shù)的適應(yīng)度值。6. -種水產(chǎn)品價格的預(yù)測裝置,其特征在于,所述裝置包括: 獲取單元,用于獲取水產(chǎn)品在第一預(yù)設(shè)時間段內(nèi)的歷史價格數(shù)據(jù),并根據(jù)所述歷史價 格數(shù)據(jù)計算得到價格序列; 預(yù)處理單元,用于采用時間序列中偏自相關(guān)系數(shù)分析方法對所述價格序列進行預(yù)處 理,得到訓練數(shù)據(jù)集; 尋優(yōu)單元,用于根據(jù)所述訓練數(shù)據(jù)集采用遺傳算法對支持向量回歸機的參數(shù)進行尋 優(yōu),得到優(yōu)化參數(shù); 建立單元,根據(jù)所述優(yōu)化參數(shù)設(shè)置所述支持向量回歸機,建立得到水產(chǎn)品價格預(yù)測模 型; 預(yù)測單元,用于根據(jù)所述水產(chǎn)品價格預(yù)測模型預(yù)測得到所述水產(chǎn)品在第二預(yù)設(shè)時間段 內(nèi)的價格。7. 根據(jù)權(quán)利要求6所述的水產(chǎn)品價格的預(yù)測裝置,其特征在于,所述獲取單元,具體用 于: 根據(jù)所述歷史價格數(shù)據(jù)計算得到所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均 價格; 根據(jù)所述水產(chǎn)品在所述第一預(yù)設(shè)時間段內(nèi)每個月的平均價格得到所述價格序列。8. 根據(jù)權(quán)利要求6所述的水產(chǎn)品價格的預(yù)測裝置,其特征在于,所述預(yù)處理單元,具體 用于: 對所述價格序列進行取對數(shù)操作,使得所述價格序列映射到一個波動較小的區(qū)間上, 從而得到第一序列; 根據(jù)預(yù)設(shè)的自相關(guān)函數(shù)判斷所述第一序列的平穩(wěn)性; 在判斷所述第一序列處于平穩(wěn)狀態(tài)的情況下,根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述 第一序列的偏自相關(guān)系數(shù); 在判斷所述第一序列處于非平穩(wěn)狀態(tài)的情況下,通過差分操作使得所述第一序列處于 平穩(wěn)狀態(tài),并根據(jù)預(yù)設(shè)的偏自相關(guān)函數(shù)計算得到所述第一序列的偏自相關(guān)系數(shù); 根據(jù)所述偏自相關(guān)系數(shù)確定所述第一序列的相關(guān)階數(shù)項; 根據(jù)處于平穩(wěn)狀態(tài)的第一序列和所述相關(guān)階數(shù)項,構(gòu)建得到所述訓練數(shù)據(jù)集。9. 根據(jù)權(quán)利要求6所述的水產(chǎn)品價格預(yù)測裝置,其特征在于,所述尋優(yōu)單元,具體用于: 對支持向量回歸機的每組參數(shù)進行編碼,得到與每組參數(shù)對應(yīng)的實數(shù)串; 根據(jù)所述實數(shù)串設(shè)置所述支持向量回歸機; 根據(jù)所述訓練數(shù)據(jù)集對所述支持向量回歸機進行訓練,得到與每組參數(shù)對應(yīng)的至少一 個訓練值; 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將所述至少一個訓練值分別與所述訓練數(shù)據(jù)集的期望值子集 中的期望值的誤差絕對值之和作為每組參數(shù)的適應(yīng)度值; 根據(jù)所述每組參數(shù)的適應(yīng)度值選擇參數(shù)組合; 對所述參數(shù)組合進行交叉和變異操作,形成新的多組參數(shù); 根據(jù)所述新的多組參數(shù)繼續(xù)尋優(yōu); 在滿足預(yù)設(shè)的迭代次數(shù)的情況下,輸出優(yōu)化參數(shù)組合。10.根據(jù)權(quán)利要求9所述的水產(chǎn)品價格預(yù)測裝置,其特征在于,所述尋優(yōu)單元,還用于: 引入K折交叉驗證機制; 根據(jù)預(yù)設(shè)的適應(yīng)度函數(shù)將K次均方誤差的均值作為每組參數(shù)的適應(yīng)度值。
【文檔編號】G06Q30/02GK105844353SQ201610165337
【公開日】2016年8月10日
【申請日】2016年3月22日
【發(fā)明人】段青玲, 張磊, 王亮, 汪成, 肖曉琰, 魏芳芳
【申請人】中國農(nóng)業(yè)大學