999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于多任務(wù)學習的機票價格預(yù)測模型

2023-09-13 03:07:28賈玉璇
計算機工程與設(shè)計 2023年8期
關(guān)鍵詞:特征模型

盧 敏,賈玉璇

(1.中國民航大學 計算機科學與技術(shù)學院,天津 300300;2.中國民用航空局 民航智慧機場理論與系統(tǒng)重點實驗室,天津 300300)

0 引 言

現(xiàn)有研究利用機器學習方法來揭示特征之間的潛在關(guān)系,建立機票特征模型,忽略每個票價等級的需求。航班的座位數(shù)量有限,機票需求會影響價格,其次,不同時間的不同航班,機票需求差異較大。為解決上述問題,本文提出一種機票價格預(yù)測的多任務(wù)學習模型,其關(guān)鍵思想是引入機票需求預(yù)測作為輔助任務(wù),利用輔助任務(wù)預(yù)測每個票價等級購買的機票數(shù)量,機票需求特征表示時間序列在日、周、半月和月內(nèi)的需求特征,并且通過一維卷積網(wǎng)絡(luò)中不同尺度的卷積核和卷積步長來學習,最后通過共享多尺度需求特征聯(lián)合訓(xùn)練兩個相關(guān)任務(wù),提高模型的泛化能力。本文的主要貢獻是:①提出一種多任務(wù)學習方法,提高機票價格預(yù)測的性能;②設(shè)計卷積網(wǎng)絡(luò),學習不同層次的需求特征;③由于缺乏公開的數(shù)據(jù)集,現(xiàn)有的方法從在線旅游預(yù)訂網(wǎng)站抓取數(shù)千萬條記錄進行實驗,較之基準算法,該模型在準確率和F1分數(shù)方面提高將近6%,準確率達到51.02%。

1 相關(guān)研究

機票的動態(tài)定價規(guī)則是由航空公司保密的,傳統(tǒng)的機票價格預(yù)測,通過歷史銷售情況預(yù)測未來價格。隨著機器學習的發(fā)展,多數(shù)研究采用機器學習方法訓(xùn)練機票價格預(yù)測模型,輸出機票的票價等級。由于機票定價的復(fù)雜性,機票的價格受到多種影響因素,機票價格預(yù)測具有挑戰(zhàn)性。相關(guān)研究文獻[1-4]分析了旅客因素的影響,介于乘客數(shù)據(jù)的稀疏性和保密性,僅憑借旅客特征進行定價,模型適用性不強。其次,機票價格還受其它因素的影響,例如:He等[3]和Kelemen等[5]分別將航線和航空公司納入機票預(yù)測。上述方法基于機票特征進行建模,不考慮機票需求的影響,機票價格預(yù)測性能較差。

此外,機票價格受時間的變化影響,機票價格在時空上的分布具備一定規(guī)律,相關(guān)學者提出加入時間序列以預(yù)測價格趨勢的方法。Liu等[6]利用上下文感知模型,預(yù)測從購買日期到出發(fā)日期之間特定路線的最低價格。Wang等[7]使用多種機器學習方法預(yù)測不同季節(jié)的平均機票價格,并得出隨機森林算法在處理季度序列方面的性能最優(yōu)。Zhao等[8]設(shè)計雙階段注意機制,向編碼器和解碼器同時加入注意力機制,以應(yīng)對不同時間步長的影響。與上述方法不同的是,本研究聚焦于機票價格預(yù)測,而不是預(yù)測機票的價格趨勢。

機票需求是影響機票價格預(yù)測的關(guān)鍵因素,國內(nèi)外學者對機票需求進行相關(guān)研究。Williams等[9]通過對隨機需求的動態(tài)調(diào)整,揭示了需求與價格之間存在的關(guān)聯(lián)關(guān)系。He等[3]使用異構(gòu)的項目推薦框架來模擬乘客的旅行需求和行為模式,解決飛行的需求隨時間變化問題,建立了時間序列預(yù)測模型。Shihab等[10]提出尋找需求控制問題的最優(yōu)策略決策框架,建立時間序列預(yù)測模型,模擬特定時間段內(nèi)的需求趨勢。Wen等[4]通過研究航空旅客的購買時間與其特征之間的關(guān)系,預(yù)測需求的變化。Pan等[11]提出了一種基于LSTM的垂直時間序列模式,建模機票在不同日期上的需求。上述方法只考慮模擬日水平的需求特征,忽略了周和月水平的需求特征,難以提取不同周期下的機票需求特征,預(yù)測模型性能不佳。

2 融入航班需求的機票價格預(yù)測算法

機票價格受機票自身屬性和機票需求的影響。如圖1所示,該框架由兩個相關(guān)的任務(wù)組成,主任務(wù)作為機票價格預(yù)測,輸入機票相關(guān)特征并輸出機票類別的概率,并且選擇概率最高的類別作為預(yù)測標簽。輔助任務(wù)是指對機票需求進行預(yù)測,基于未來趨勢將與歷史趨勢相似的假設(shè),通過分析購買歷史數(shù)據(jù)概述對不同類別票價的需求。最后,這兩個任務(wù)通過共享需求特征進行融合。

圖1 基于多任務(wù)學習的機票價格預(yù)測框架

在訓(xùn)練中,兩個任務(wù)的網(wǎng)絡(luò)通過監(jiān)督學習同時學習,聯(lián)合損失函數(shù)Loss定義為

Loss=lossm+βlossa

(1)

其中,β表示多任務(wù)權(quán)重參數(shù),lossm和lossa分別表示主任務(wù)和輔助任務(wù)的損失,在式(6)和式(12)中可以查看損失的詳細信息。模型利用Adam優(yōu)化器,通過最小化聯(lián)合損失學習模型參數(shù)。在測試過程中,主任務(wù)和輔助任務(wù)遵循與訓(xùn)練中相同的預(yù)測過程,模型丟棄機票需求預(yù)測在測試集中的結(jié)果,輸出機票價格類別。

2.1 主任務(wù)

主任務(wù)是設(shè)計一個深度神經(jīng)網(wǎng)絡(luò)來輸出機票的票價等級。機票特征包括出發(fā)機場、到達機場、航空公司、假期開始/結(jié)束等,機票特征的詳細信息見表1。每個類別特征通過嵌入層Embedding編碼映射成低維密集的向量表示。連接機票特征的嵌入向量,得到串聯(lián)特征向量h1m,然后輸入到一個兩層的前饋神經(jīng)網(wǎng)絡(luò),前饋網(wǎng)絡(luò)的輸出為

表1 實驗數(shù)據(jù)集數(shù)據(jù)特性

h2m=max(0,b2m+W2mmax(0,b1m+W1mh1m))

(2)

其中,b1m、b2m表示偏差,W1m、W2m表示神經(jīng)元的權(quán)重。使用max激活函數(shù)捕捉機票特征之間的非線性關(guān)系。

由于機票需求與機票價格高度相關(guān),因此,將多尺度需求特征體融入主任務(wù)中。多尺度特征用來提取不同層次的需求特征(其計算詳見第2.2節(jié)的式(7)),具體而言,將中間特征h2m和需求特征h1a的拼接向量h3m,輸入到具有N個相同層的堆棧中,以學習特定的任務(wù)表示。每一層堆棧都是一個簡單的、位置方面的全連接前饋網(wǎng)絡(luò)。其中,隱藏層先使用殘差連接[12],然后輸入到下一層進行歸一化[13],得到主任務(wù)的高維表征hN+3m,計算過程如式(3)、式(4)所示

h3m=h2m⊕h1a

(3)

hl+1m=hlm+max(0,blm+Wlm×LayerNorm(hlm)),l=3,…,N+2

(4)

hN+3m下一步傳遞到softmax層,如式(5)所示,輸出機票類別的概率分布,主任務(wù)使用交叉熵損失函數(shù)來衡量預(yù)測分布和真實情況之間的差異,計算過程如式(6)所示

m=Softmax(bN+3m+WN+3mhN+3m)

(5)

lossm=-∑ni=1yimlog(im)

(6)

2.2 輔助任務(wù)

輔助任務(wù)主要是設(shè)計一個模型以學習機票的需求特征,然后將學習到的需求特征合并到主任務(wù)。如圖1所示,輔助任務(wù)的輸入包括出發(fā)/到達機場、日期和過去銷售的矩陣M。每條航線由一對出發(fā)和到達機場表示,并使用矩陣M指定此航線的歷史銷售記錄信息。矩陣M列數(shù)和行分別是365和17,其中矩陣M的每一列指一天中分別銷售在17個票價等級的數(shù)量。輔助任務(wù)中,首先對矩陣M進行屏蔽,對本航班某一日期以后購買記錄設(shè)置為不可見,然后將矩陣M輸入神經(jīng)網(wǎng)絡(luò)。

利用掩碼對未來區(qū)域設(shè)置為0,對歷史區(qū)域設(shè)置為1,以保留當前日期之前的歷史訂單,然后掩碼矩陣輸入到一維卷積層,對歷史訂單進行特征提取。通過設(shè)置多尺度的卷積步長,來獲取不同周期下的需求特征,矩陣的多尺度特征代表航班在日、周、月層面和需求相關(guān)的時間序列特征。這些特征通過兩個步驟獲得,第一步是利用一維卷積核獲取歷史訂單數(shù)據(jù)不同周期長度的時間序列特征,即將卷積步長設(shè)置1、7、14、28,以捕獲連續(xù)幾天、幾周和幾個月的機票需求特征,并將卷積后得到的特征通過向量拼接進行連接;第二步是在連接后的特征上應(yīng)用前饋神經(jīng)網(wǎng)絡(luò),以獲取機票需求特征的高維表示,計算過程如式(7)、式(8)所示

h0a=Conv1D(M⊙M*,k1,s1)⊕…⊕Conv1D(M⊙M*,kn,sn)

(7)

h1a=max(0,b1a+W1ah0a)

(8)

其中,k1,…,kn和s1,…,sn分別表示一維卷積核大小和卷積步長,M*表示掩碼矩陣,⊙表示連接操作。

然后,將需求特征和出發(fā)機場、到達機場的嵌入向量進行拼接得到h2a,同樣地,拼接向量h2a輸入到N個相同層的堆棧中,其中每一層都由一個前饋網(wǎng)絡(luò)層和一個殘差連接層組成,計算過程為

h2a=h1a⊕Embed(起飛機場)⊕Embed(到達機場)

(9)

hl+1a=hla+max(0,bla+Wla×LayerNorm(hla)),l=2,…,N+1

(10)

將hN+2a輸入線性層進行變換,預(yù)測不同類別票價的數(shù)量。因此,輔助任務(wù)使用均方誤差損失函數(shù)衡量預(yù)測值與真實值之間的差異,計算過程如式(11)、式(12)所示

a=bN+2a+WN+2ahN+2a

(11)

lossa=1n∑ni=1(yia-ia)2

(12)

3 實驗及結(jié)果分析

本文實驗是在真實的海量訂單數(shù)據(jù)集上進行。主要從以下3個方面驗證模型的有效性:首先,驗證本文提出方法,較之基準方法,是否可以獲得更高的性能,其中基準算法包括的算法有SVM、ACEC、LSTM、BERT和STL,并在實驗中采用4種評價措施從多個方面對模型的性能進行對比分析;其次,通過特征分析驗證多任務(wù)學習機制的有效性;最后,分析卷積核的不同步長對多尺度需求特征的影響。

3.1 實驗設(shè)置

3.1.1 實驗數(shù)據(jù)

實驗數(shù)據(jù)集是由周期為一年的民航旅客訂票日志PNR(passenger name record)生成的,其中PNR是機票預(yù)訂的內(nèi)部記錄。一條PNR記錄是一次訂票信息,主要字段包括旅客籍貫(信息加密)、航空公司、起飛日期、票價類別、出發(fā)機場和到達機場、訂單順序等,示例見表1。實驗的數(shù)據(jù)集大小為52.2 GB,總共66 928 656條記錄,包括13 943 370名乘客、2675條航線、19 748趟航班,示例見表2。此外,實驗數(shù)據(jù)集由兩部分組成:一個是機票特征,其本質(zhì)是PNR數(shù)據(jù);另一個是機票銷售矩陣,其中機票銷售矩陣數(shù)據(jù)中的一列表示一天中售出17個票價等級的數(shù)量。

表2 實驗數(shù)據(jù)集數(shù)統(tǒng)計

3.1.2 評價指標

本文的評價指標采用準確率(Accuracy)、精確率(Precision)、召回率(Recall)和F1分數(shù)。準確率表示正確分類的機票占總機票數(shù)的百分比。精確率表示正確預(yù)測為正例的機票數(shù)占實際為正例機票數(shù)的比例。召回率表示實際為正例的機票數(shù)占預(yù)測為正例機票數(shù)的比例。F1分數(shù)表示精確率與召回率的調(diào)和平均數(shù),對精確率和召回率的結(jié)果進行綜合,可以客觀全面地反映模型性能。對于準確率、精確率、召回率和F1分數(shù)而言,均是值越高模型越性能越好,具體計算公式如下

Accuracy=TP+TNTP+TN+FP+FN

(13)

Precision=TPTP+FP

(14)

Recall=TPTP+FN

(15)

F1=2×Precision×RecallPrecision+Recall

(16)

其中,TP(true positive)、TN(true negative)、FP(false positive)、FN(false negative)分別表示在多分類模型中被預(yù)測為正例的正樣本、被預(yù)測為負例的負樣本、被預(yù)測為正例的負樣本和被預(yù)測為負例的正樣本。

由于機票價格預(yù)測是一個多類別分類預(yù)測問題,故在上述指標的基礎(chǔ)上加入宏觀平均(Macro-average)和微觀平均(Micro-average),從多個方面對多分類任務(wù)的性能進行客觀評價。在宏觀平均中,先對每一個類統(tǒng)計指標值,然后再對所有類求算術(shù)平均值,即所有類別都被平等對待。相反,微觀平均根據(jù)真實實例的數(shù)量對每個類的分數(shù)進行加權(quán),建立全局混淆矩陣,然后計算相應(yīng)指標

MacroF1=(F1class1+F1class2+…+F1classn)n

(17)

MicroF1=(F1class1*f1+F1class2*f2+…+F1classn*fn)n

(18)

其中,f1,f2,…,fn表示n個類中實例的比率。

3.2 實驗結(jié)果

3.2.1 基準方法

為驗證所提出方法的有效性,本文將所提出的模型與其它現(xiàn)有的5個分類方法進行對比。

SVM[14]是多分類的支持向量機模型,通過求解幾何間隔最大,對高維的機票特征進行分類,輸出票價類別。

ACEC[6]是一種自適應(yīng)上下文感知集成模型,用于根據(jù)時間序列分析具有不同上下文的機票數(shù)據(jù),最后將softmax層應(yīng)用于上下文以輸出票價類別。

LSTM[15]是指基于LSTM的分類模型。該模型使用LSTM來捕獲需求特征,這些特征被送入多分類層進行預(yù)測。

BERT[16]是指基于雙向Transformer編碼的分類模型,經(jīng)過BERT提取特征之后,通過一個多分類器輸出機票等級。

STL建立一個與所提出的方法具有相同網(wǎng)絡(luò)架構(gòu)的模型,這兩個方法在是否包含機票需求損失方面存在差異。實際上,模型STL是所提出方法的一個特例,其權(quán)重參數(shù)β=0,這表明STL只存在機票價格預(yù)測任務(wù),忽視機票需求預(yù)測,以此驗證多任務(wù)學習的有效性。

本文在模型訓(xùn)練實驗過程中的參數(shù)設(shè)置如下:批量大小batchsize、訓(xùn)練過程的最大輪數(shù)epoch、學習率和dropout分別設(shè)置為4096、100、0.01和0.1,模型的嵌入層維數(shù)設(shè)置為64。為平衡多個任務(wù)的學習率,即對更新快的方向,設(shè)置較小的學習率,對更新慢的方向,設(shè)置較大的學習率,將多任務(wù)學習中組合損失的權(quán)重參數(shù)β設(shè)置為0.001。最后,為捕捉不同層次的需求特征,內(nèi)核大小和內(nèi)核步長分別取1、3、5、7和1、7、14、28的組合。

如表3所示,SVM模型表現(xiàn)出的性能最差,主要原因如下:一方面,SVM模型不能很好地處理大量的分類特征;另一方面,SVM模型沒有考慮機票需求特征。ACEC模型在所有評估措施方面都優(yōu)于SVM模型,這是因為ACEC模型在捕獲序列數(shù)據(jù)方面具背一定優(yōu)勢,同樣地,ACEC模型沒有處理需求特性。與ACEC模型相比,LSTM模型通過捕獲需求的時間序列特征,準確率提高了11.04%,驗證需求特征的有效性。與LSTM模型捕獲以天為單位的需求特征不同,BERT模型使用雙向Transformer編碼,對捕捉長距離時間序列特征更加有效,相比LSTM模型,BERT模型在所有評估指標方面至少提高了6.83%。

表3 不同模型的性能結(jié)果

與BERT模型對捕獲長序列的需求特征不同,STL模型包含不同級別的多尺度需求特征,對長序列和短序列特征捕捉方面更有效。表3表明,在宏平均精確率指標方面,STL模型提高了6.98%。由于STL是本文所提出方法在多任務(wù)權(quán)重參數(shù)β=0時的特例,本文所提出的模型是β≠0時的改進,以顯示輔助任務(wù)中多尺度特征提取的優(yōu)勢。同時,與模型STL相比,所提出的方法在權(quán)重參數(shù)β=0.001時,宏觀平均F1分數(shù)提高了6.06%。這表明β=0.001時,多任務(wù)聯(lián)合訓(xùn)練效果明顯,模型可以更好地利用需求特征進行票價預(yù)測。

3.2.2 特征分析

機票特征與機票價格的關(guān)系。本小節(jié)旨在研究機票特征與價格之間的相關(guān)性。圖2顯示了航空公司和機票等級之間的相關(guān)性。航空公司“A”比其它航空公司提供更多的低成本機票,其潛在解釋是低成本航空公司傾向于以較低的價格增加銷售額。從圖3可以看出,航線價格分布不同,例如“NGB→CAN”和“PEK→CTU”,其中“NGB”、“CAN”和“CTU”是機場的IATA三字母代碼。然而,該分布顯示往返航線的規(guī)律是相似的,例如“NGB→CAN”和“CAN→NGB”,其原因是往返相似的旅客對機票價格的敏感程度相似。

圖2 航空公司與機票類別的相關(guān)性分析

圖3 航線與機票類別的相關(guān)性分析

3.2.3 超參數(shù)分析

通過設(shè)置不同的參數(shù)對隨機選擇的180條航線進行分析,共有4 517 548條訂單記錄,研究了模型訓(xùn)練中權(quán)重參數(shù)β和卷積核移動步長(Strides)的影響。

權(quán)重參數(shù)β目的是平衡主任務(wù)和輔助任務(wù)的損失,保證主任務(wù)和輔助任務(wù)學習率一致。在模型訓(xùn)練過程中,直接使用損失函數(shù)相加的方式,易導(dǎo)致多任務(wù)學習被機票預(yù)測任務(wù)或機票需求任務(wù)所主導(dǎo),當模型傾向于擬合其中一個任務(wù)時,另一個任務(wù)的效果會受到負面影響,多任務(wù)學習模型效果會變差。通過多次實驗得出的經(jīng)驗,將β設(shè)置為0.001、0.01、0.02、0.05和0.1。如表4所示,所提出模型在β=0.001時的準確率最高。它表明輔助任務(wù)確實利用相關(guān)信息來提高性能。

表4 對隨機選擇的180條航線上的權(quán)重參數(shù)β分析

卷積步長(Strides)在學習多尺度需求特征方面起著關(guān)鍵作用。步長為1、7、14、28分別代表日、周、半月、月層次的機票需求特征。如表5所示,通過設(shè)置不同的卷積核步長組合,驗證所提出的方法在步幅1、7、14、28的組合情況下達到了最好的性能,這表明不同層次的需求特征可以提高價格預(yù)測的性能。

表5 對隨機選擇的180條航線上的卷積步幅分析

4 結(jié)束語

本文針對機票價格預(yù)測未考慮機票需求問題,設(shè)計了一個多任務(wù)學習框架,旨在將機票需求特征集成到機票價格預(yù)測,該框架為機票價格預(yù)測和機票需求預(yù)測分別設(shè)計了深度神經(jīng)網(wǎng)絡(luò)。首先,本文提出的網(wǎng)絡(luò)學習每個任務(wù)的低緯向量表示;然后,主任務(wù)和輔助任務(wù)通過共享多尺度需求特征進行關(guān)聯(lián);最后,模型設(shè)計一個帶有殘差連接層和歸一化層的前饋神經(jīng)網(wǎng)絡(luò),學習特定的任務(wù)表示。模型在大規(guī)模旅客訂單數(shù)據(jù)集上進行廣泛實驗,驗證了多任務(wù)學習機制的有效性。此外,實驗驗證并分析多任務(wù)融合參數(shù)和多尺度特征對機票價格預(yù)測結(jié)果的影響,為航空公司進一步優(yōu)化機票定價模型提供參考。

猜你喜歡
特征模型
一半模型
抓住特征巧觀察
重要模型『一線三等角』
新型冠狀病毒及其流行病學特征認識
重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
主站蜘蛛池模板: 高清精品美女在线播放| 九九九精品成人免费视频7| 久久99国产乱子伦精品免| 永久成人无码激情视频免费| 国产成人综合久久精品下载| 精品无码一区二区三区在线视频| 国产区免费| 五月天福利视频| 1024你懂的国产精品| 国产成人1024精品下载| 99久久人妻精品免费二区| 国产午夜在线观看视频| 亚洲丝袜第一页| 国产精品亚洲αv天堂无码| 日韩av在线直播| 日韩不卡高清视频| 99中文字幕亚洲一区二区| 亚洲Av综合日韩精品久久久| 日韩欧美高清视频| 国产男人的天堂| 亚洲男人的天堂在线观看| www.99在线观看| 国产成人艳妇AA视频在线| 波多野结衣一区二区三区AV| Aⅴ无码专区在线观看| 永久天堂网Av| 亚洲天堂网视频| 高清不卡毛片| 国产粉嫩粉嫩的18在线播放91| 色偷偷一区二区三区| 亚洲第一视频免费在线| 亚洲aⅴ天堂| 国产精品美女免费视频大全| 国产在线欧美| 国产av剧情无码精品色午夜| 欧美国产中文| 亚洲69视频| 久久久久无码国产精品不卡 | 亚洲无码高清一区| 在线中文字幕日韩| 亚洲天堂视频在线免费观看| 日日噜噜夜夜狠狠视频| 欧亚日韩Av| 国产日韩欧美成人| 国产尹人香蕉综合在线电影 | 亚洲动漫h| 国产美女91视频| 二级特黄绝大片免费视频大片| 国产亚洲精| 国产综合亚洲欧洲区精品无码| 日本五区在线不卡精品| 欧美日韩中文国产| 美女国内精品自产拍在线播放| 亚洲综合网在线观看| 成人午夜天| 在线观看国产黄色| 免费在线看黄网址| 亚洲欧美在线精品一区二区| 日韩精品无码不卡无码| 日韩av电影一区二区三区四区 | 永久天堂网Av| 亚洲热线99精品视频| 69综合网| 亚洲美女一级毛片| 嫩草在线视频| 婷婷亚洲视频| 99青青青精品视频在线| 日韩大乳视频中文字幕 | 久久精品人妻中文视频| 天堂中文在线资源| 久久久受www免费人成| 米奇精品一区二区三区| 91视频青青草| 香蕉视频国产精品人| 国产丝袜啪啪| 内射人妻无套中出无码| 免费全部高H视频无码无遮掩| 亚洲人成网站色7799在线播放| 国产尹人香蕉综合在线电影| 亚洲av无码成人专区| 黄色福利在线| 亚洲精品麻豆|