崔海燕,李雅文,徐 欣
(1.北京郵電大學(xué)計(jì)算機(jī)學(xué)院,智能通信軟件與多媒體北京重點(diǎn)實(shí)驗(yàn)室,北京 100082;2.北京郵電大學(xué)經(jīng)濟(jì)與管理學(xué)院,北京 100082)
研究科技資源信息的主題熱度時(shí)間序列變化規(guī)律[1],并根據(jù)已有數(shù)據(jù)分析結(jié)果對(duì)未來(lái)的科技需求主題熱度進(jìn)行預(yù)測(cè),對(duì)科研人員快速了解和掌握科技領(lǐng)域資源信息動(dòng)向至關(guān)重要。時(shí)間序列具有趨勢(shì)性、季節(jié)性、周期性和隨機(jī)性4種特征,要找到一個(gè)適用所有場(chǎng)景的通用模型幾乎不可能,因?yàn)楝F(xiàn)實(shí)中每個(gè)預(yù)測(cè)問(wèn)題的背景不同,影響預(yù)測(cè)值的因素與程度也不同,針對(duì)不同的問(wèn)題要采用不同的方法和模型進(jìn)行統(tǒng)計(jì)分析?,F(xiàn)有的時(shí)間序列預(yù)測(cè)方法多適用于平穩(wěn)序列變化預(yù)測(cè),很少有針對(duì)科技需求主題熱度的時(shí)間序列預(yù)測(cè)方法?;谝陨蠁?wèn)題,本文提出一種基于時(shí)間卷積網(wǎng)絡(luò)(Time Convolution Network,TCN)的科技需求主題熱度預(yù)測(cè)方法(Subject Heat of Science and Technology Demand Prediction Based on Time Convolution Network,SHDP-TCN),該方法融入科技需求的主題特征,關(guān)注時(shí)序變化特征以外的主題因素,并使用自注意力機(jī)制處理輸入特征,使得網(wǎng)絡(luò)重點(diǎn)關(guān)注局部歷史信息,然后輸入TCN學(xué)習(xí)全部歷史信息,從而更準(zhǔn)確地預(yù)測(cè)未來(lái),最后通過(guò)實(shí)驗(yàn)驗(yàn)證所提方法在科技需求主題熱度時(shí)間序列預(yù)測(cè)方面的有效性。
目前針對(duì)科技需求主題熱度預(yù)測(cè)的研究主要體現(xiàn)在對(duì)主題強(qiáng)度和主題內(nèi)容方面的分析,即語(yǔ)義分析和時(shí)序分析結(jié)合的主題演進(jìn)規(guī)律分析[2]。主題演化的時(shí)序分析主要通過(guò)構(gòu)建主題演化時(shí)間序列模型,以人工解讀為主來(lái)分析主題演化時(shí)序變化趨勢(shì);主題演化的語(yǔ)義分析主要通過(guò)計(jì)算主題詞間的語(yǔ)義關(guān)聯(lián)情況輔助進(jìn)行。主題演進(jìn)規(guī)律研究的結(jié)合點(diǎn)主要有基于主題間關(guān)聯(lián)關(guān)系的網(wǎng)絡(luò)分析法[3,4]以及主題結(jié)合時(shí)空的時(shí)序分析[5]、地區(qū)分布分析等。其中,主題間關(guān)聯(lián)關(guān)系[6]演化規(guī)律的研究主要基于共詞分析,按照具體分析方法的不同,共詞分析[7,8]可分為共詞網(wǎng)絡(luò)分析、共詞聚類分析和戰(zhàn)略圖分析等;主題結(jié)合時(shí)空的時(shí)序分析和地區(qū)分布分析主要是結(jié)合時(shí)空特性將多種科技資源要素結(jié)合起來(lái),從多維度考慮實(shí)現(xiàn)科技需求主題演化分析。
目前常見(jiàn)的預(yù)測(cè)算法包括傳統(tǒng)的時(shí)間序列預(yù)測(cè)模型如自回歸積分滑動(dòng)平均(Auto Regressive Integrated Moving Average,ARIMA)模型[9],神經(jīng)網(wǎng)絡(luò)[10]模型如長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)[11,12]和TCN,以及Prophet模型。ARIMA模型的缺點(diǎn)是要求時(shí)序數(shù)據(jù)具有穩(wěn)定性,或者通過(guò)差分化后是穩(wěn)定的;對(duì)于數(shù)據(jù)中存在缺失值的情況,需要先進(jìn)行缺失值填補(bǔ),這在很大程度上損害了數(shù)據(jù)的可靠性。LSTM可以記憶歷史信息的序列預(yù)測(cè),常用于金融股票預(yù)測(cè)。LSTM與循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)[13]的主要區(qū)別在于,LSTM在模型中加入了一個(gè)被稱為“記憶單元”(Memory Cell)的“處理器”,這個(gè)處理器可以根據(jù)規(guī)則判斷信息是否有用。LSTM分為單變量預(yù)測(cè)和多變量預(yù)測(cè),可以引入注意力機(jī)制進(jìn)行建模[14]。TCN是單向的結(jié)構(gòu),不是雙向的,只能由因到果,是嚴(yán)格約束時(shí)間的模型,因此,基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)的TCN由于因果卷積不能看到未來(lái)的數(shù)據(jù)[15]。殘差鏈接[16]是訓(xùn)練深層網(wǎng)絡(luò)的有效方法,其網(wǎng)絡(luò)以跨層的方式傳遞信息,且需要構(gòu)建一個(gè)殘差塊來(lái)代替一層的卷積,一個(gè)殘差塊包含兩層的卷積和非線性映射,且在每層網(wǎng)絡(luò)中還加入了WeightNorm和Dropout來(lái)正則化網(wǎng)絡(luò)[17,18]。相比RNN,TCN具有并行性、靈活的感受野、穩(wěn)定的梯度、內(nèi)存使用更低等優(yōu)勢(shì)。Prophet是基于可分解(趨勢(shì)+季節(jié)+節(jié)假日)模型的開(kāi)源庫(kù),支持自定義季節(jié)和節(jié)假日因素的影響[19]。
科技資源主題在時(shí)間序列上的熱度變化不像金融股票[20]有著多變復(fù)雜的時(shí)間特征以及多項(xiàng)數(shù)據(jù)因素影響,而是具有數(shù)據(jù)量大且只根據(jù)前期長(zhǎng)久時(shí)間段內(nèi)積累的數(shù)據(jù)預(yù)測(cè)未來(lái)熱度的特點(diǎn)與需求,所以應(yīng)該選擇基于循環(huán)神經(jīng)網(wǎng)絡(luò)或者卷積神經(jīng)網(wǎng)絡(luò)的時(shí)間序列預(yù)測(cè)模型[21,22],通過(guò)對(duì)已有的神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型的分析,找到適用于科技資源數(shù)據(jù)熱度預(yù)測(cè)的改進(jìn)方法,對(duì)科技需求主題熱度進(jìn)行準(zhǔn)確預(yù)測(cè)。
為了預(yù)測(cè)科技需求主題在時(shí)間序列上的未來(lái)熱度,采用神經(jīng)網(wǎng)絡(luò)模型進(jìn)行數(shù)據(jù)內(nèi)部潛在規(guī)律發(fā)現(xiàn),并給出發(fā)展趨勢(shì)的預(yù)期判斷。對(duì)于時(shí)間序列的主題強(qiáng)度預(yù)測(cè),主要以基于卷積神經(jīng)網(wǎng)絡(luò)的TCN對(duì)為基礎(chǔ),融入自注意力機(jī)制[23]以及主題特征對(duì)時(shí)間序列熱度進(jìn)行預(yù)測(cè)。
TCN同時(shí)使用一維因果卷積和擴(kuò)張卷積作為標(biāo)準(zhǔn)卷積層,并將每?jī)蓚€(gè)這樣的卷積層與恒等映射封裝為一個(gè)殘差模塊(包含ReLU函數(shù));再由殘差模塊堆疊起深度網(wǎng)絡(luò),并在最后幾層使用全卷積層代替全連接層。TCN的殘差鏈接即殘差卷積的跳層連接(Skip-connection)與微軟的殘差網(wǎng)絡(luò) ResNet[24]一樣是經(jīng)典跳層連接,上一層的特征圖x直接與卷積后的F(x)對(duì)齊加和,變?yōu)镕(x)+x(特征圖數(shù)量不夠可用 0 特征補(bǔ)齊,特征圖大小不一可用帶步長(zhǎng)卷積做下采樣)。在每層特征圖中添加上一層的特征信息可使網(wǎng)絡(luò)更深,加快反饋與收斂。
TCN不學(xué)習(xí)序列內(nèi)部的距離位置依賴關(guān)系,也不提取輸入的內(nèi)部相關(guān)信息。自注意力機(jī)制是讓機(jī)器注意到整個(gè)輸入中上下文[25]的不同部分之間的相關(guān)性。基于此,本文提出一種基于自注意力機(jī)制的神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)算法SHDP-TCN,該算法在序列輸入到TCN的因果卷積之前進(jìn)行自注意力機(jī)制編碼,使網(wǎng)絡(luò)除了擁有所有歷史記憶外,還要考慮歷史的時(shí)間步中不同的貢獻(xiàn)權(quán)重,以此結(jié)構(gòu)為基礎(chǔ),對(duì)輸入序列的特征進(jìn)行優(yōu)化,即在輸入序列進(jìn)行自注意力編碼前,通過(guò)加入類別特征,即主題詞特征,加強(qiáng)對(duì)該行業(yè)熱度在該時(shí)間節(jié)點(diǎn)的影響,從而增強(qiáng)預(yù)測(cè)準(zhǔn)確度。
SHDP-TCN主要包括3方面:對(duì)輸入序列特征加入主題詞,然后接入自注意力機(jī)制對(duì)有依賴性的時(shí)間步的貢獻(xiàn)進(jìn)行捕捉,最后將序列輸入到TCN網(wǎng)絡(luò)中記住所有歷史時(shí)間步信息,從而達(dá)到最終的預(yù)測(cè)結(jié)果,具體框架圖如圖1所示。
圖1 基于時(shí)間卷積網(wǎng)絡(luò)的科技需求主題熱度預(yù)測(cè)算法框架圖
算法流程:
基于時(shí)間卷積網(wǎng)絡(luò)的科技需求主題熱度預(yù)測(cè)算法
輸入:科技需求主題熱度在時(shí)間上的熱度序列特征結(jié)合主題特征的輸入向量
輸出:科技需求主題熱度預(yù)測(cè)結(jié)果
①輸入向量線性映射到Q,W,V 3個(gè)不同空間;
②對(duì)映射的向量進(jìn)行內(nèi)積計(jì)算;
③將關(guān)注到重要信息的特征向量輸入擴(kuò)張視野的因果卷積,并進(jìn)行權(quán)重歸一化、激活函數(shù)、正則化操作;
④通過(guò)建立殘差塊形成多層網(wǎng)絡(luò)訓(xùn)練;
⑤輸出未來(lái)時(shí)間步熱度預(yù)測(cè)值
將時(shí)間序列構(gòu)成的向量輸入到自注意力機(jī)制網(wǎng)絡(luò)[26,27]中,自注意力[28]是針對(duì)序列內(nèi)部不同位置進(jìn)行關(guān)聯(lián)計(jì)算,對(duì)于每個(gè)輸入向量A,將輸入信息線性映射到3個(gè)不同空間并建立查詢和打分機(jī)制,計(jì)算句中字詞之間的相關(guān)程度,通過(guò)偏向性地賦予較高的權(quán)重,使得模型更關(guān)注攜帶重要信息的字詞。假設(shè)輸入向量的序列長(zhǎng)度為n,維度為d,通過(guò)3個(gè)不同的權(quán)值矩陣WK、WQ、WV將A映射到不同空間Q、K、V,權(quán)值矩陣維度均為Rd×d,使用縮放點(diǎn)積進(jìn)行注意力計(jì)算的方式如下:
Q,K,V=AWQ,AWK,AWV,
(1)
(2)
TCN 的卷積層結(jié)合了擴(kuò)張卷積與因果卷積兩種結(jié)構(gòu),使用因果卷積是為了保證前面時(shí)間步的預(yù)測(cè)不會(huì)使用未來(lái)的信息,因?yàn)闀r(shí)間步t的輸出只會(huì)根據(jù)t-1及之前時(shí)間步上的卷積運(yùn)算得出。TCN的卷積和普通的一維卷積非常類似,最大的不同是用了擴(kuò)張卷積,隨著層數(shù)越多,卷積窗口越大,卷積窗口中的空孔越多。在TCN的殘差模塊內(nèi),有兩層擴(kuò)張卷積和ReLU[29]非線性函數(shù),且卷積核的權(quán)重都經(jīng)過(guò)了權(quán)重歸一化(圖1)。此外TCN 在殘差模塊內(nèi)的每個(gè)空洞卷積后都添加了 Dropout 以實(shí)現(xiàn)正則化。跳層連接時(shí)直接將下層的特征圖跳層連接到上層,對(duì)應(yīng)的通道數(shù)channel不一致,所以不能直接做加和操作。為了兩個(gè)層加和時(shí)特征圖數(shù)量(通道數(shù)數(shù)量)相同,通過(guò)用1×1卷積進(jìn)行元素合并來(lái)保證兩個(gè)張量的形狀相同。
TCN的因果卷積板塊處理一個(gè)時(shí)間序列,需要根據(jù)序列X=(x1,x2,…,xt)預(yù)測(cè)出序列Y=(y1,y2,…,yt),設(shè)定濾波器為F=(f1,f2,…,ft),那么在xt處的因果卷積可表示為
(3)
其中,K表示一個(gè)視野中節(jié)點(diǎn)個(gè)數(shù),k表示視野中第k個(gè)節(jié)點(diǎn)。
如果卷積的輸入層最后兩個(gè)節(jié)點(diǎn)分別是xt-1和xt,第一層隱藏層的最后一個(gè)節(jié)點(diǎn)為yt,濾波器F=(f1,f2),根據(jù)公式有
yt=f1xt-1+f2xt。
(4)
追溯的歷史信息越多,就會(huì)有越多的隱藏層。如果第二層是輸出層,那么最后的輸出節(jié)點(diǎn)關(guān)聯(lián)了3個(gè)輸入節(jié)點(diǎn);如果第4層輸出層在最后一個(gè)節(jié)點(diǎn)輸出,則關(guān)聯(lián)了4個(gè)輸入節(jié)點(diǎn)。
TCN的空洞卷積如圖1所示,在xt處的擴(kuò)張視野大小為d′的卷積計(jì)算公式為
(5)
第二層隱藏層最后一個(gè)節(jié)點(diǎn)yt,經(jīng)過(guò)濾波器F=(f1,f2,f3),d′=2可以計(jì)算得到:
yt=f1xt-2d′+f2xt-d′+f3xt。
(6)
空洞卷積的感受野大小為(K-1)×d′+1,所以增大K或d′都可以增加感受野。一般情況下,伴隨著網(wǎng)絡(luò)層數(shù)的增加,擴(kuò)張視野d′以2的指數(shù)增長(zhǎng),例如圖1中d′依次為1,2,4。
TCN的殘差模塊主要通過(guò)輸入序列,經(jīng)過(guò)空洞卷積、權(quán)重歸一化、激活函數(shù)、dropout作為殘差函數(shù),經(jīng)歷1×1卷積filter,作為shortcut連接。為了解決網(wǎng)絡(luò)退化問(wèn)題,通過(guò)讓網(wǎng)絡(luò)的某一層學(xué)習(xí)恒等映射函數(shù),即把網(wǎng)絡(luò)設(shè)計(jì)為H(x)=F(x)+x,只要F(x)=0,就有H(x)=x。隨著網(wǎng)絡(luò)深度越大,性能一直保持最優(yōu)狀態(tài)。
基于科技資源主題熱度分布開(kāi)展研究,主要是從時(shí)間角度分析主題熱度隨著時(shí)間變化的情況,同一領(lǐng)域同一應(yīng)用方向的技術(shù)主題詞熱度分布情況,以及利用所采集數(shù)據(jù)中含有的科技需求信息的時(shí)間分布情況,由此進(jìn)行時(shí)間序列的科技需求主題熱度的變化分析。
收集并處理需求數(shù)據(jù)30 872條,經(jīng)過(guò)數(shù)據(jù)清洗、規(guī)范化以及數(shù)據(jù)補(bǔ)全得到的企業(yè)技術(shù)需求可劃分為多個(gè)行業(yè)領(lǐng)域,設(shè)定分類碼進(jìn)行區(qū)分(表1)??萍夹枨笾黝}熱度分析結(jié)果展示中,選擇制造業(yè)在時(shí)間上的主題熱度變化分析進(jìn)行展示,并將主題熱度變化作為預(yù)測(cè)原始數(shù)據(jù)。
表1 科技需求所屬行業(yè)領(lǐng)域分類表
為驗(yàn)證本文提出的SHDP-TCN算法,選取ARAIM、LSTM、CNN[30]和TCN 4種相關(guān)算法進(jìn)行對(duì)比測(cè)試。
根據(jù)數(shù)據(jù)發(fā)布時(shí)間進(jìn)行每個(gè)時(shí)間段的主題熱度計(jì)算,熱度值為該主題詞在某個(gè)時(shí)間段出現(xiàn)的頻次,用數(shù)據(jù)描述該行業(yè)領(lǐng)域企業(yè)技術(shù)需求中提取的每個(gè)熱點(diǎn)主題的熱度隨時(shí)間的變化趨勢(shì),在指定時(shí)間段內(nèi)主題熱度值越高,代表在該行業(yè)領(lǐng)域中此應(yīng)用熱點(diǎn)在該時(shí)間段越熱。
以“制造業(yè)”為例展示在2015-2020年期間二級(jí)主題熱度隨時(shí)間的變化趨勢(shì)。由圖2可知,制造業(yè)中的“自動(dòng)化”整體處于最熱門的技術(shù)應(yīng)用點(diǎn),“傳感器”的熱度值整體處于上升趨勢(shì),說(shuō)明“制造業(yè)”正在向融入互聯(lián)網(wǎng)技術(shù)發(fā)展。
圖2 制造業(yè)科技需求主題熱度隨時(shí)間變化趨勢(shì)圖
為了驗(yàn)證預(yù)測(cè)模型科技需求主題熱度值在時(shí)間維度上的熱度預(yù)測(cè)的有效性,使用真實(shí)的科技需求主題熱度隨時(shí)間變化數(shù)值序列數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練與測(cè)試。
原始數(shù)據(jù)是以月份為單位的時(shí)間序列,序列長(zhǎng)度為126,時(shí)間跨度為2012.01-2021.06。數(shù)據(jù)集以2019年6月為窗口分界點(diǎn),劃分為訓(xùn)練集和測(cè)試集兩部分。2019年6月之前的數(shù)據(jù)進(jìn)入模型訓(xùn)練,并輸出預(yù)測(cè)結(jié)果;2019年6月之后的數(shù)據(jù)為模型輸出的測(cè)試集。第一組實(shí)驗(yàn)不加入主題特征,只對(duì)熱度序列進(jìn)行預(yù)測(cè);第二組實(shí)驗(yàn)除了熱度值外,還加入計(jì)算出的當(dāng)月最高熱度主題詞。
設(shè)置ARIMA、LSTM、CNN、TCN算法參數(shù):原始數(shù)值向量的長(zhǎng)度設(shè)置為100維,加入主題特征的組合輸入向量長(zhǎng)度設(shè)置為150維,SHDP-TCN預(yù)測(cè)網(wǎng)絡(luò)隱藏層的輸出維度與輸入保持一致;batch_size的大小設(shè)置為32,epoch的大小設(shè)置為32,學(xué)習(xí)率設(shè)置為0.000 01,訓(xùn)練時(shí)dropout設(shè)置為0.5;SHDP-TCN網(wǎng)絡(luò)中隱藏層輸出的激活函數(shù)使用ReLU函數(shù)。
為了評(píng)估本算法實(shí)體識(shí)別的效果,使用準(zhǔn)確率(Precision)、召回率(Recall)以及F1-score等指標(biāo)對(duì)主題熱度時(shí)間序列進(jìn)行預(yù)測(cè)效果評(píng)價(jià),結(jié)果如表2所示。
表2 5種算法對(duì)主題熱度時(shí)間序列的預(yù)測(cè)效果對(duì)比
從表2的準(zhǔn)確率和F1-score可知,傳統(tǒng)ARMIA模型和深度學(xué)習(xí)模型LSTM、CNN表現(xiàn)均不如TCN模型,表明TCN結(jié)構(gòu)在序列建模方面更具優(yōu)勢(shì)。因?yàn)锳RMIA模型適用于平穩(wěn)變化規(guī)律序列,LSTM只關(guān)注時(shí)間序列,未按時(shí)間步由因到果的特性預(yù)測(cè),而TCN是在CNN基礎(chǔ)上的改良,主要改進(jìn)了算法運(yùn)行過(guò)程中速度慢的問(wèn)題,所以對(duì)于變化不穩(wěn)定的科技需求主題熱度,TCN能夠捕捉全部的歷史信息并學(xué)習(xí),同時(shí)保證未來(lái)不會(huì)泄漏到過(guò)去,這兩個(gè)特性使得預(yù)測(cè)效果更好。SHDP-TCN是在TCN融入時(shí)間步自注意力機(jī)制和主題特征,改進(jìn)后的模型不僅關(guān)注序列歷史規(guī)律,還加強(qiáng)了內(nèi)部信息的聯(lián)系以及主題因子的影響,所以SHDP-TCN的預(yù)測(cè)結(jié)果明顯提升,模型性能優(yōu)于TCN。
本文提出了基于時(shí)間卷積網(wǎng)絡(luò)的科技需求主題熱度預(yù)測(cè)(SHDP-TCN)算法,利用科技需求數(shù)據(jù)主題的特點(diǎn),針對(duì)數(shù)據(jù)的多維度特性,從時(shí)間序列角度對(duì)科技主題的熱度變化趨勢(shì)進(jìn)行全面分析,發(fā)現(xiàn)科技大數(shù)據(jù)的科技主題熱度變化特點(diǎn)。所提方法結(jié)合熱度值以及主題詞特征全面考慮預(yù)測(cè)相關(guān)參數(shù),且通過(guò)自注意力機(jī)制對(duì)輸入的特征進(jìn)行局部重點(diǎn)信息提取,有效提高了預(yù)測(cè)的準(zhǔn)確性。提煉后的科技需求主題熱度序列經(jīng)過(guò)TCN全面學(xué)習(xí)所有歷史信息,實(shí)現(xiàn)對(duì)科技需求主題熱度值的精準(zhǔn)預(yù)測(cè)。所提方法能夠把握科技需求的未來(lái)發(fā)展方向及科技需求主題熱度的未來(lái)變化趨勢(shì),幫助科研人員更好地把握研究方向,實(shí)現(xiàn)社會(huì)企業(yè)需求與科研成果的銜接,促進(jìn)科研成果的落地應(yīng)用和轉(zhuǎn)化。