亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        多種算法融合的產(chǎn)品銷售預(yù)測(cè)模型應(yīng)用①

        2020-09-22 07:45:44張雷東李冬梅朱湘寧焦艷菲
        關(guān)鍵詞:特征選擇預(yù)測(cè)特征

        張雷東,王 嵩,李冬梅,朱湘寧,焦艷菲

        1(中國科學(xué)院大學(xué) 計(jì)算機(jī)控制與工程學(xué)院,北京 100049)

        2(中國科學(xué)院 沈陽計(jì)算技術(shù)研究所,沈陽 110168)

        3(沈陽高精數(shù)控智能技術(shù)股份有限公司,沈陽 110168)

        1 引言

        隨著經(jīng)濟(jì)全球化的逐漸加深,企業(yè)之間的競(jìng)爭(zhēng)日益激烈.并且當(dāng)下隨著電子商業(yè)的飛速發(fā)展,每天都有上萬筆交易在互聯(lián)網(wǎng)上完成,這樣就產(chǎn)生了海量的數(shù)據(jù).企業(yè)如果能利用這些數(shù)據(jù),從數(shù)據(jù)中挖掘出用戶購買的一些規(guī)律,就能更好的在這個(gè)市場(chǎng)中占據(jù)有利的位置.銷量預(yù)測(cè)一直是一個(gè)重點(diǎn)研究的問題,一個(gè)準(zhǔn)確的銷量預(yù)測(cè)可以為企業(yè)控制成本,提前規(guī)劃市場(chǎng)和部署戰(zhàn)略.這個(gè)問題解決的好就能為企業(yè)的未來規(guī)劃提供重要決策的理論支持.

        目前為止,銷量預(yù)測(cè)的研究方法有自回歸移動(dòng)平均法 (ARMA)、線性回歸、灰色系統(tǒng)理論等.基于時(shí)間序列的預(yù)測(cè)方法也被越來越多的學(xué)者采用,鄭琰等基于時(shí)間序列的商品預(yù)測(cè)模型研究[1]、顧涵等支持向量歸等在高頻時(shí)間序列中的研究中[2]以及Fan ZP 等在預(yù)測(cè)產(chǎn)品銷售時(shí)[3],采用這樣方法都得了良好的效果.隨著深度學(xué)習(xí)的崛起,又有了長(zhǎng)短記憶網(wǎng)絡(luò)(LSTM)這樣優(yōu)秀的預(yù)測(cè)算法,葛娜等利用Prophet-LSTM 組合模型對(duì)銷售量進(jìn)行預(yù)測(cè)研究[4].除此之外,張彤等利用LSTM 的該井模型GRU 結(jié)合LMD 形成了一種新的預(yù)測(cè)方法[5].往往將傳統(tǒng)的線性模型和深度學(xué)習(xí)算法相結(jié)合,通常比單一算法表現(xiàn)優(yōu)秀,或者結(jié)合以上某兩種算法.例如馮晨等基于 XGBoost 和 LSTM 加權(quán)組合模型在銷售預(yù)測(cè)的應(yīng)用[6],表示不同模型的組合,很大的提高了模型的泛化能力.

        集成學(xué)習(xí)就是這樣的一種策略,集中幾種模型的優(yōu)勢(shì),大大提高模型的性能.Stacking 模型堆疊就是一種集成學(xué)習(xí)的思想,集成幾種模型的優(yōu)勢(shì).盛杰等利用Stacking 算法對(duì)惡意軟件進(jìn)行檢測(cè)[7],包志強(qiáng)等將傳統(tǒng)的Stacking 算法進(jìn)行了改進(jìn),提出了一種熵權(quán)法的Stacking 算法[8],明顯提高了算法的預(yù)測(cè)性能。

        2 預(yù)測(cè)算法核心內(nèi)容

        2.1 預(yù)測(cè)算法框架

        整個(gè)預(yù)測(cè)算法框架如圖1所示.

        (1) 將整個(gè)數(shù)據(jù)集分為訓(xùn)練集和測(cè)試集.

        (2) 對(duì)所有的特征進(jìn)行Pearson 相關(guān)系數(shù)計(jì)算,篩選掉冗余的特征,選擇相關(guān)性的特征,作為模型訓(xùn)練的特征向量.

        (3) 將SVR、GRU、XGBoost 作為Stacking 的基礎(chǔ)模型,利用特征向量進(jìn)行訓(xùn)練.

        (4) 將歷史信息、均值、價(jià)格變化、評(píng)價(jià)分析和Stacking 第一層的輸出以及原始的特征進(jìn)行特征融合,形成最終預(yù)測(cè)模型的輸入.

        (5) 將lightGBM 作為Stacking 算法的次級(jí)預(yù)測(cè)模型,進(jìn)行訓(xùn)練并且在測(cè)試集上進(jìn)行預(yù)測(cè),得到結(jié)果.

        圖1 預(yù)測(cè)算法框架圖

        2.2 Stacking 算法

        Stacking 算法簡(jiǎn)單理解就是幾個(gè)簡(jiǎn)單的模型,一般采用將它們進(jìn)行K 折交叉驗(yàn)證輸出預(yù)測(cè)結(jié)果,然后將每個(gè)模型輸出的預(yù)測(cè)結(jié)果合并為新的特征,并使用新的模型加以訓(xùn)練.

        Stacking 通常分為很多層,每一層的輸出作為下一層的輸入.但是伴隨著層數(shù)的增多,模型的復(fù)雜度也在增加,訓(xùn)練起來也會(huì)慢很多.所以通常采用兩層結(jié)構(gòu).在第一層時(shí),將K-1 份數(shù)據(jù)作為訓(xùn)練集進(jìn)行訓(xùn)練,將剩下的一份用來預(yù)測(cè).這樣K輪下來以后,將K輪的預(yù)測(cè)結(jié)果和原始數(shù)據(jù)進(jìn)行拼接就形成了新的訓(xùn)練集.然后,第二層的模型利用新的數(shù)據(jù)集進(jìn)行訓(xùn)練.最終預(yù)測(cè),輸出結(jié)果.如圖2所示.

        在本文中,將SVR、GRU、XGBoost 作為第一層的預(yù)測(cè)模型,lightGBM 作為第二層的預(yù)測(cè)模型.具體訓(xùn)練過程如下:

        (1) 將處理好的訓(xùn)練集平均分為5 份數(shù)據(jù)量大小相等的數(shù)據(jù)Di(i∈1,2,3,4,5);

        (2) 在每一輪訓(xùn)練中,對(duì)于每一訓(xùn)練模型,例如SVR,在4 份數(shù)據(jù)上進(jìn)行訓(xùn)練,剩下一份用來預(yù)測(cè)得到Pi;

        (3) 將第一層預(yù)測(cè)模型的輸出Pi和原始的特征進(jìn)行拼接,得到最終的訓(xùn)練數(shù)據(jù)集D;

        (4) 利用最終模型lightGBM 在訓(xùn)練集D上進(jìn)行訓(xùn)練;

        (5) 最后在測(cè)試集上進(jìn)行預(yù)測(cè),得到最終的預(yù)測(cè)結(jié)果Prediction.

        圖2 Stacking 算法結(jié)構(gòu)圖

        2.3 LightGBM 算法

        LigthGBM 是Boosting 集合模型中的新進(jìn)成員,由微軟提供,它和XGBoost 一樣是對(duì)GBDT 的高效實(shí)現(xiàn).LightGBM 通過使用Gradient-based One-Side Sampling(GOSS)和Exclusive Feature Bundling (EFB)兩種方法來解決特征選擇的問題,進(jìn)而加速訓(xùn)練速度.偽代碼如算法1 及算法2.

        算法1.GOSS算法偽代碼輸入:I:training data,d:iterations,a:sampling ratio of large gradient data,b:sampling ratio of small gradient data,loss:loss function,L:weak learner 1-a models ← {},fact ← topN ← a*len(I),randN ← b*len(I)For i=1 to d do preds ← models.Predict(I)g ← loss(I,preds),w ← {1,1,…}sorted ← GetSortedIndices(abs(g))topSet ← sorted[1:topN]b randSet ← RanomPick(sorted[topN:len(I)],randN)usedSet ← topSet+randSet W[randSet] *=fact ? Assign weight fact to the Small gradient data newModel ← L(I[usedSet],- g[usedSet],w[usedSet])Models.append(newModel)

        算法2.EFB算法偽代碼輸入:F:feature,K:max conflict count輸出:bundles Construct graph G searchOrder ← G.sortByDegree()Bundles ← {},bundlesConflict ← {}for i in searchOrder do needNew ← True for j =1 to len(bundles) do cnt ← ConflictCnt(bundles[j],F[i])if cnt + bundlesConflict[i]<= K then bundles[j].add(F[i]),needNew ← false break if needNew then Add F[i] as a new bundle to bundles

        2.4 數(shù)據(jù)預(yù)處理

        (1) 對(duì)于缺失值和由于促銷引起的銷量數(shù)據(jù)激增,采用這個(gè)月銷量的均值代替.

        (2) 將標(biāo)簽特征利用one-hot 編碼轉(zhuǎn)化為0 或1 的特征.

        2.5 特征工程

        特征工程的結(jié)果對(duì)模型對(duì)著模型效果改善有著重要的作用.特征工程通常用來減少冗余的特征,提高模型訓(xùn)練的速度以及準(zhǔn)確率.經(jīng)常用的特征選擇的方法有Pearson 相關(guān)系數(shù)、互信息和最大信息系數(shù)、皮爾森卡方檢驗(yàn)、距離相關(guān)系數(shù)等.

        2.5.1 特征選擇

        在這里選用Pearson 相關(guān)系數(shù),這是比較簡(jiǎn)單使用的特征選擇方法.這種方法能夠反映特征和預(yù)測(cè)值之間的線性相關(guān)關(guān)系,結(jié)果值范圍在[-1,1],-1 表示該特征和預(yù)測(cè)值完全是負(fù)相關(guān),0 表示沒有線性相關(guān)的關(guān)系,1 則表示該特征值和預(yù)測(cè)值正相關(guān).其計(jì)算公式如下:

        在式(1)中c ov(X,Y)表示兩個(gè)變量的協(xié)方差,其計(jì)算公式如下:

        在式(1)中 σX表示變量X的標(biāo)準(zhǔn)差,計(jì)算公式如下:

        2.5.2 特征構(gòu)造

        (1) 按照一級(jí)類型、二級(jí)類型統(tǒng)計(jì)該類型產(chǎn)品月銷量的均值.

        (2) 提取當(dāng)前月的前第一個(gè)月、前第二個(gè)月、前第三個(gè)月、前第四個(gè)月、前年該月的銷量數(shù)據(jù).

        (3) 加入商品的價(jià)格變化.

        (4) 商品的評(píng)價(jià)分析:對(duì)評(píng)論數(shù)據(jù)進(jìn)行分詞,然后構(gòu)造情感詞典,計(jì)算每條評(píng)論的情感值,最后累加每天的評(píng)論情感值.

        3 實(shí)驗(yàn)與結(jié)果分析

        本實(shí)驗(yàn)數(shù)據(jù)來源于一個(gè)氨綸制造的企業(yè).數(shù)據(jù)主要包括從2014年1月到2018年1月每一天的歷史銷量數(shù)據(jù).數(shù)據(jù)屬性主要有:產(chǎn)品id、產(chǎn)品類型、產(chǎn)品等級(jí)、產(chǎn)品用途、產(chǎn)品價(jià)格、重量、日期等.

        3.1 評(píng)價(jià)指標(biāo)

        (1)RMSE均方根誤差

        均方根誤差是預(yù)測(cè)值與真實(shí)值偏差的平方與觀測(cè)次數(shù)n比值的平方根.計(jì)算公式如下:

        (2)MAE平均絕對(duì)誤差

        MAE是真實(shí)值與預(yù)測(cè)值的差值的平方然后求和平均.計(jì)算公式如下:

        (3)MAPE平均絕對(duì)百分比誤差

        3.2 特征選擇

        利用Pearson 相關(guān)系數(shù),篩選掉一些相關(guān)性弱的特征.最終選擇了產(chǎn)品id、產(chǎn)品等級(jí)、價(jià)格、產(chǎn)品類型、產(chǎn)品用途、顏色、材質(zhì)、是否有促銷活動(dòng)、所屬的年月等屬性.

        3.3 實(shí)驗(yàn)結(jié)果

        3.3.1 模型參數(shù)設(shè)置

        利用XGBoost 和LightGBM 單模型在訓(xùn)練集訓(xùn)練模型時(shí),使用Skit-learn 機(jī)器學(xué)習(xí)庫中的GridSearchCV方法,對(duì)模型的參數(shù)使用交叉驗(yàn)證的方式去探索最優(yōu)的參數(shù).核心參數(shù)如表1和表2所示.

        表1 LightGBM 參數(shù)表

        表2 XGBoost 參數(shù)表

        SVR 模型涉及的核心參數(shù)主要有3 個(gè):選用的核函數(shù)、懲罰因子以及核系數(shù).通過Grid Search 實(shí)驗(yàn)驗(yàn)證最佳的參數(shù)見表3.

        表3 SVR 參數(shù)表

        3.3.2 預(yù)測(cè)結(jié)果分析

        在訓(xùn)練集上訓(xùn)練單模型以及組合模型,最終在測(cè)試集上進(jìn)行預(yù)測(cè).將預(yù)測(cè)結(jié)果繪制成折線圖,得到的結(jié)果圖對(duì)比如下.

        為了更加具體的比較出各個(gè)模型預(yù)測(cè)性能之間的差異,采取RMSE、MAE以及MAPE3 個(gè)評(píng)判指標(biāo)進(jìn)行對(duì)比.具體的結(jié)果對(duì)比見表4.

        表4 各模型預(yù)測(cè)性能對(duì)比

        從圖3中可以看出SVR 預(yù)測(cè)結(jié)果最差,LightGBM要比XGBoost 好一些.組合模型和SVR、XGBoost、LightGBM 以及GRU 相比,性能都有所提升.Sacking組合模型的性能最優(yōu).因此,基于Stacking 集成策略的組合模型確實(shí)能提升算法的預(yù)測(cè)性能.在做回歸問題時(shí)可以使用Stacking 方式集中幾個(gè)模型的優(yōu)勢(shì),可以為實(shí)驗(yàn)準(zhǔn)確度的提升帶來一定的幫助.

        圖3 各個(gè)模型最終預(yù)測(cè)效果圖

        在加入歷史信息、均值、價(jià)格變化以及評(píng)價(jià)分析這些新的特征以后,和沒有進(jìn)行特征融合的算法預(yù)測(cè)結(jié)果進(jìn)行對(duì)比.將預(yù)測(cè)結(jié)果繪制成圖,如圖4所示.

        圖4 特征融合之后預(yù)測(cè)結(jié)果對(duì)比圖

        按照評(píng)價(jià)標(biāo)準(zhǔn)進(jìn)行計(jì)算后,具體結(jié)果見表5.

        表5 模型融合后的預(yù)測(cè)性能對(duì)比

        從預(yù)測(cè)效果圖上可以看出,在加入新的特征之后,算法預(yù)測(cè)性能有明顯提高.從3 個(gè)評(píng)價(jià)指標(biāo)的數(shù)值上也可以看出,特征融合之后的算法預(yù)測(cè)的MAPE提升到了2%.也證明這些新的特征確實(shí)發(fā)揮了作用.

        4 總結(jié)

        本文使用Stacking 策略結(jié)合了LightGBM、GRU、SVR、XGBoost 幾種經(jīng)典的解決回歸問題的算法提出了一種多種算法融合的產(chǎn)品銷售預(yù)測(cè)模型,并且結(jié)合數(shù)據(jù)做了實(shí)驗(yàn).實(shí)驗(yàn)證明這種多種算法融合的產(chǎn)品銷售預(yù)測(cè)模型的預(yù)測(cè)結(jié)果要比這些單一模型的預(yù)測(cè)結(jié)果更加接近真實(shí)數(shù)據(jù).并且在引入了歷史信息、均值、價(jià)格變化以及消費(fèi)者的評(píng)價(jià)分析等這些新的特征后,算法的預(yù)測(cè)性能又有了進(jìn)一步的提升.

        最終實(shí)驗(yàn)表明,通過集成學(xué)習(xí)能夠有效提高氨綸產(chǎn)品銷量的預(yù)測(cè)性能.為回歸問題的提出一種新的思考方式和解決辦法.同時(shí),Stacking 策略也使得整個(gè)組合模型的復(fù)雜度變高,訓(xùn)練速度變得緩慢,這也是進(jìn)一步要嘗試改進(jìn)的地方.同時(shí)未來工作中,將進(jìn)一步嘗試結(jié)合不同新的模型來做回歸類問題的研究.

        猜你喜歡
        特征選擇預(yù)測(cè)特征
        無可預(yù)測(cè)
        黃河之聲(2022年10期)2022-09-27 13:59:46
        選修2-2期中考試預(yù)測(cè)卷(A卷)
        選修2-2期中考試預(yù)測(cè)卷(B卷)
        如何表達(dá)“特征”
        不忠誠的四個(gè)特征
        抓住特征巧觀察
        不必預(yù)測(cè)未來,只需把握現(xiàn)在
        Kmeans 應(yīng)用與特征選擇
        電子制作(2017年23期)2017-02-02 07:17:06
        聯(lián)合互信息水下目標(biāo)特征選擇算法
        基于特征選擇和RRVPMCD的滾動(dòng)軸承故障診斷方法
        欧美大屁股xxxx| 日本成本人片视频免费| 一区二区和激情视频| 少妇伦子伦情品无吗| 国产乱了真实在线观看| 亚洲成a∨人片在无码2023| 久久精品夜夜夜夜夜久久| 久久久久国产一级毛片高清版A| 亚洲av无码1区2区久久| 日本www一道久久久免费榴莲| 国产精品18久久久久网站 | 国产一区二区丁香婷婷| 亚洲素人av在线观看| 色婷婷av一区二区三区丝袜美腿| 白浆国产精品一区二区| 午夜时刻免费入口| 亚洲国产日韩欧美一区二区三区| 少妇太爽了在线观看| 国产精品理人伦国色天香一区二区| 男性一插就想射是因为啥| 日韩人妻av不卡一区二区三区| 自拍偷区亚洲综合第一页| 99久久精品费精品国产一区二| 先锋五月婷婷丁香草草| 久久精品国产第一区二区三区| 日韩成人无码v清免费| 免费观看成人稀缺视频在线播放| 强迫人妻hd中文字幕| 久久久国产乱子伦精品| 宝贝把腿张开我要添你下边动态图 | 在线观看亚洲视频一区二区| 日韩中文字幕在线观看一区| 国产真实乱对白精彩| 99久久国产露脸精品竹菊传媒| 最新无码国产在线播放| 久久亚洲一级av一片| 国产韩国一区二区三区| 亚洲av成人无码一区二区三区在线观看 | 亚洲av区,一区二区三区色婷婷| a级毛片无码久久精品免费| 天天影视色香欲综合久久|