蓋素麗,檀改芳,唐 松,董 佳
(1.河北省科學(xué)院應(yīng)用數(shù)學(xué)研究所,河北 石家莊 050081; 2.河北省信息安全認(rèn)證工程技術(shù)研究中心,河北 石家莊 050081)
關(guān)于專家推薦系統(tǒng),Reichling T等[1]曾提出過一個(gè)比較明確的定義,即專家推薦系統(tǒng)是為了滿足用戶在特定場景下對(duì)專家的咨詢需要,幫助他們推薦合適專家來解決問題。專家推薦系統(tǒng)一般應(yīng)用于專業(yè)性較強(qiáng)的領(lǐng)域,如科研項(xiàng)目申報(bào)[2]、學(xué)術(shù)論文評(píng)審[3]、企業(yè)需求對(duì)接[4]等應(yīng)用場景。這些領(lǐng)域大多擁有自己組織內(nèi)部規(guī)范化、結(jié)構(gòu)化的知識(shí)庫,進(jìn)行專家推薦時(shí),除了通過人工篩選和關(guān)鍵詞查詢外,可以借助基本的計(jì)算方法如模糊邏輯[5]和向量空間模型[6]來計(jì)算用戶需求與專家領(lǐng)域的相關(guān)性,進(jìn)而對(duì)專家進(jìn)行排序并完成推薦。
但是,當(dāng)專家推薦系統(tǒng)由專業(yè)機(jī)構(gòu)轉(zhuǎn)向社會(huì)公眾,用戶不再是規(guī)范的組織機(jī)構(gòu),那些推薦算法所依賴的高質(zhì)量且層次分明的知識(shí)庫也變成了散亂的知識(shí)碎片,它們涉及的學(xué)科更加豐富,彼此交叉、滲透,界限模糊。面對(duì)科技領(lǐng)域的海量數(shù)據(jù)資源,用戶和工作人員難以快速精準(zhǔn)找到滿足需求的專家,便會(huì)陷入知識(shí)困境。此時(shí),任憑專家有多么強(qiáng)的才智能力、多么豐富的知識(shí)經(jīng)驗(yàn),如果不能滿足用戶需求,會(huì)導(dǎo)致極大的資源浪費(fèi)??萍碱I(lǐng)域迫切需要采用一種行之有效的方法去處理日益繁重的專家推薦工作,實(shí)現(xiàn)良善的專家推薦目標(biāo)。
在系統(tǒng)梳理河北省關(guān)于專家和用戶決策咨詢數(shù)據(jù)關(guān)系和程序研究的基礎(chǔ)上,該文提出了契合社會(huì)公眾需求的專家推薦模型,旨在挖掘符合專家研究興趣的用戶需求,并將用戶需求有效推薦給可能解答的專家。模型推動(dòng)專家與用戶之間有效開展決策咨詢工作,保證推薦專家的專業(yè)性以提升用戶決策咨詢質(zhì)量,并做出如下工作:
(1)融合多個(gè)數(shù)據(jù)源構(gòu)建科技服務(wù)知識(shí)庫,對(duì)以往案例中需求與專家知識(shí)進(jìn)行有效提??;
(2)提出知識(shí)融合模型,將需求與專家進(jìn)行統(tǒng)一建模,并挖掘二者之間的潛在知識(shí)關(guān)聯(lián);
(3)提出一種基于ALBERT的專家推薦模型。
近年來,針對(duì)推薦算法[7]的研究發(fā)展迅速,其中應(yīng)用最為廣泛的主要有以下幾種:
(1)基于協(xié)同過濾的推薦。
作為應(yīng)用最早和最為成功的推薦技術(shù)之一,協(xié)同過濾算法面向用戶[8],通過計(jì)算用戶偏好數(shù)據(jù)來預(yù)測新用戶可能喜歡的主題或產(chǎn)品。Javier等[9]在此基礎(chǔ)上,融合推薦和文本信息檢索任務(wù)之間的聯(lián)系,研究出了社交網(wǎng)絡(luò)中有效聯(lián)系人推薦算法的新視角。
(2)基于內(nèi)容的推薦。
作為信息過濾技術(shù)的延續(xù),基于內(nèi)容的推薦算法一般通過向量空間模型將文檔等文本信息表示為多維空間中的向量。隨著用戶行為產(chǎn)生的標(biāo)簽、評(píng)論等文本信息劇增,使得基于內(nèi)容的推薦顯得尤為重要。Wang Donghui等[10]提出的基于卡方特征選擇和softmax回歸的有效混合模型能夠根據(jù)手稿摘要內(nèi)容的優(yōu)先順序推薦合適的投稿期刊或會(huì)議。
(3)基于效用的推薦。
效用理論認(rèn)為,決定物品價(jià)值的是該物品對(duì)人的有用程度,或是人對(duì)該物品的價(jià)值認(rèn)可程度,亦即該物品的效用?;谛в玫耐扑]方法建立在用戶對(duì)物品的滿意情況,并依靠對(duì)象自身屬性和用戶偏好來衡量其效用值。將效用函數(shù)應(yīng)用在專家推薦系統(tǒng)[11],可以把用戶需求屬性和專家興趣同時(shí)進(jìn)行量化,比依托單一的屬性信息進(jìn)行推薦的方法更加靈活。
(4)其他推薦。
在某一具體問題中為了獲得更好的推薦效果,常常需要將兩種甚至以上推薦方法組合在一起,即為組合推薦。此外,推薦算法與深度學(xué)習(xí)[12]尤其是遷移學(xué)習(xí)的結(jié)合,能夠輕松處理稀疏數(shù)據(jù)、捕捉數(shù)據(jù)間的隱藏關(guān)系??缬蛲扑][13]則利用遷移學(xué)習(xí)的方法,將知識(shí)從源域(相關(guān)領(lǐng)域)遷移到目標(biāo)域(研究領(lǐng)域),獲取用戶在不同領(lǐng)域的有效信息,提高目標(biāo)域的推薦性能。張鼐等[14]提出了一種基于語義擴(kuò)展的知識(shí)推薦方法用于文獻(xiàn)推薦。劉魯?shù)萚15]利用維基百科知識(shí)作為背景構(gòu)建專家知識(shí)地圖,能夠直觀度量專家知識(shí)組成和研究興趣。
由此可以看出,現(xiàn)有學(xué)術(shù)資源推薦模型[16]的研究目標(biāo)是為專家個(gè)性化推薦感興趣的文獻(xiàn)或者類似專家。這些推薦模型或研究了文獻(xiàn)之間的聯(lián)系,或研究了專家之間的關(guān)系,不能充分捕捉需求、專家與方案三者之間的潛在知識(shí)關(guān)聯(lián)(見圖1),導(dǎo)致專家推薦的準(zhǔn)確性較低。為了解決這個(gè)問題,在綜合考慮上述推薦方法的基礎(chǔ)上,該文重點(diǎn)關(guān)注用戶需求與專家之間的知識(shí)聯(lián)系,基于預(yù)訓(xùn)練語言模型[17-18]對(duì)需求描述、專家描述進(jìn)行特征提取與知識(shí)建模,提出了一種深度融合輔助知識(shí)的推薦算法。該算法構(gòu)建知識(shí)網(wǎng)絡(luò),對(duì)需求、專家和案例進(jìn)行統(tǒng)一建模,并挖掘需求與專家之間的潛在知識(shí)關(guān)聯(lián),最后通過模型對(duì)需求進(jìn)行專家推薦。
圖1 需求、專家與方案間潛在知識(shí)關(guān)聯(lián)
專家推薦模型的形式化定義:假設(shè)RS是所有需求(requirements)的集合,ES是所有專家(experts)的集合,u()函數(shù)可以計(jì)算專家e(e∈ES)對(duì)需求r(r∈RS)的推薦度,還要考慮專家的可靠性等,即u:RS×ES→L,L是一定范圍內(nèi)的全序的非負(fù)實(shí)數(shù),則:
(1)
即專家推薦平臺(tái)要研究的問題就是找到推薦度L最大的那些專家e*,專家推薦的核心問題轉(zhuǎn)化為計(jì)算u( ),其計(jì)算值用來衡量專家對(duì)需求的有用程度,稱為效用度。
在前述定義了專家科研背景和需求基本特征的基礎(chǔ)上,通過計(jì)算向量空間余弦夾角來衡量專家研究興趣與需求之間的匹配程度,效用函數(shù)u( )定義為:
(2)
式中,Dr、De是兩個(gè)待計(jì)算相似度的目標(biāo)對(duì)象,即為需求與專家,dkr、dke是對(duì)象Dr、De的特征向量權(quán)值。通過計(jì)算,得到其夾角余弦,值越大,二者相似度越大,反之越小,0≤sim(Dr,De)≤1 。
假設(shè)rx為需求集RS中的一個(gè)需求樣本,ex為專家集ES中的一個(gè)專家樣本。給定需求-專家對(duì)(rx,ex),為它設(shè)置一個(gè)狀態(tài)標(biāo)簽yx∈{0,1,2,3},其中0代表未接受需求邀請,3代表接受需求邀請并回答。(rx,ex,yx)是一個(gè)訓(xùn)練樣本。根據(jù)上述定義,n個(gè)訓(xùn)練樣本就組成了訓(xùn)練數(shù)據(jù)集,如公式(3)所示:
Dtrain=((r1,e1,y1),(r2,e2,y2),…,(rn,en,yn))
(3)
通過訓(xùn)練數(shù)據(jù)集Dtrain構(gòu)建推薦模型,并定義損失函數(shù)對(duì)模型進(jìn)行優(yōu)化,判斷當(dāng)前專家ex是否會(huì)接受某個(gè)新需求rx邀請的標(biāo)簽yx。對(duì)得到的標(biāo)簽yx對(duì)所有專家進(jìn)行排序或者加權(quán)等操作,找到最適合需求的專家。
yx=u(rx,ex)
(4)
結(jié)合專家動(dòng)態(tài)研究興趣特征將研究重點(diǎn)放在挖掘其學(xué)術(shù)論文、發(fā)明專利、工程案例中的相關(guān)知識(shí),獲取需求與專家描述的有效信息,構(gòu)建科技服務(wù)知識(shí)庫。通過文本多特征提取與知識(shí)融合可以對(duì)需求和專家文本數(shù)據(jù)進(jìn)行統(tǒng)一建模,模型結(jié)構(gòu)如圖2所示。
圖2 知識(shí)融合模型結(jié)構(gòu)
知識(shí)融合模型主要由局部特征獲取、上下文特征獲取、多特征融合和分類四部分組成。首先,獲取三種不同輸入特征,包括詞向量表示、詞位置特征、句子位置特征;然后,獲取上下文特征,增強(qiáng)模型的特征學(xué)習(xí)能力;最后,將以上特征進(jìn)行融合,并輸入到分類層進(jìn)行分類,預(yù)測并得到類別標(biāo)簽。
該文選取ALBERT模型融合多種特征,并對(duì)輸入文本進(jìn)行語義理解,提高文本的表征能力及文本分類的準(zhǔn)確率。同時(shí),文本輸入時(shí)的處理上要充分考慮任務(wù)需求,比如輸入是句子對(duì),輸出是對(duì)該句子每個(gè)字的包含上下文信息的編碼結(jié)果。然后,對(duì)需求及專家分別進(jìn)行個(gè)性化表征后應(yīng)用于推薦系統(tǒng)。
實(shí)現(xiàn)專家推薦模型需要深入分析需求服務(wù)案例中的需求與專家,挖掘二者之間的潛在知識(shí)關(guān)聯(lián),然后進(jìn)行專家推薦。在上述知識(shí)融合模型基礎(chǔ)上提出一種面向公眾決策需求咨詢服務(wù)的專家推薦模型,結(jié)構(gòu)如圖3所示,其具體實(shí)現(xiàn)流程如下:
圖3 專家推薦模型結(jié)構(gòu)
步驟1:對(duì)過往服務(wù)案例中需求與專家知識(shí)進(jìn)行有效提取,建立科技服務(wù)知識(shí)庫,篩選訓(xùn)練語料。
步驟2:以標(biāo)題及內(nèi)容的知識(shí)表征需求,以專業(yè)領(lǐng)域及研究成果的知識(shí)表征專家,將二者聯(lián)合信息作為模型輸入,獲取聯(lián)合需求屬性與專家偏好的深度特征。
步驟3:專家推薦模型的編碼層采用在通用領(lǐng)域預(yù)訓(xùn)練好的ALBERT模型,并在事先準(zhǔn)備好的數(shù)據(jù)集上進(jìn)行訓(xùn)練,獲取需求與專家的隱性知識(shí)關(guān)聯(lián),使模型由通用領(lǐng)域遷移到科技服務(wù)領(lǐng)域。
步驟4:使用驗(yàn)證集評(píng)估模型訓(xùn)練效果。在模型通過驗(yàn)證集之后,使用測試集評(píng)估訓(xùn)練模型效果,獲取最佳模型即為專家推薦模型。
通過該模型可以對(duì)需求、專家、案例進(jìn)行多特征知識(shí)融合,并通過理解需求語義信息和學(xué)習(xí)專家特征之間的關(guān)系獲取需求與專家的隱藏知識(shí)關(guān)聯(lián),最終獲得準(zhǔn)確的專家推薦結(jié)果。
在系統(tǒng)梳理河北省關(guān)于專家和用戶決策咨詢數(shù)據(jù)關(guān)系的基礎(chǔ)上,該文融合學(xué)術(shù)論文、發(fā)明專利、工程案例等多個(gè)數(shù)據(jù)源中的有效信息(包括需求信息、專家信息、歷史需求服務(wù)案例等內(nèi)容),組成科技服務(wù)知識(shí)庫。然后,經(jīng)過團(tuán)隊(duì)人工標(biāo)注最終篩選出3 000條專家信息,25 000條歷史服務(wù)需求專家匹配信息組成實(shí)驗(yàn)數(shù)據(jù)集,按比例8∶1∶1劃分為訓(xùn)練集、測試集和驗(yàn)證集三個(gè)子集,數(shù)據(jù)已作脫敏處理。
實(shí)驗(yàn)硬件、軟件環(huán)境如表1所示。
表1 實(shí)驗(yàn)環(huán)境
該文總共選取了兩種不同的預(yù)訓(xùn)練語言模型即BERT與ALBERT作為專家推薦模型的編碼層,并分別采用softmax與TextCNN作為分類層進(jìn)行訓(xùn)練模型推薦效果的對(duì)比實(shí)驗(yàn),并對(duì)相應(yīng)的推薦結(jié)果進(jìn)行判定。
專家推薦模型在實(shí)驗(yàn)環(huán)節(jié)采用固定的參數(shù)配置(見表2),此次對(duì)比實(shí)驗(yàn)采用谷歌官方發(fā)布的中文版BERT及tiny版的ALBERT進(jìn)行文本特征的提取,并通過數(shù)據(jù)處理階段整理出的需求與專家數(shù)據(jù)集微調(diào)模型。
表2 模型參數(shù)設(shè)置
專家推薦模型的準(zhǔn)確度是評(píng)價(jià)模型的最基本指標(biāo),其衡量推薦模型能夠準(zhǔn)確預(yù)測用戶需求對(duì)服務(wù)專家及專家對(duì)推薦需求的喜歡程度。本次實(shí)驗(yàn)主要考察訓(xùn)練及測試數(shù)據(jù)的一些統(tǒng)計(jì)特性,故采用分類準(zhǔn)確率分?jǐn)?shù)(accuracy_score)和多類別交叉熵?fù)p失函數(shù)(categorical_crossentropy)評(píng)價(jià)專家推薦模型效果。
由表3可以看出,基于BERT的專家推薦模型能夠獲得很好的準(zhǔn)確率,但是由于BERT模型參數(shù)量巨大,模型訓(xùn)練耗時(shí)太久。以BERT-TextCNN為基礎(chǔ)的專家推薦模型訓(xùn)練耗時(shí)有所增加而且推薦效果更差。基于ALBERT的專家推薦模型訓(xùn)練耗時(shí)更少,計(jì)算成本更低,準(zhǔn)確率上能夠取得明顯的提升。
表3 不同語言模型訓(xùn)練效果對(duì)比
由圖4可以看出,基于ALBERT的專家推薦模型在上述各類模型中收斂速度更快、準(zhǔn)確率更高,能夠更高效地推薦出合適的服務(wù)專家。
圖4 不同語言模型訓(xùn)練效果對(duì)比
該文研究了科技領(lǐng)域公眾決策咨詢專家推薦服務(wù)對(duì)知識(shí)整合和知識(shí)推薦的需求,為了解決專家推薦不合理不準(zhǔn)確的難題,在對(duì)知識(shí)整合、知識(shí)推薦理論及預(yù)處理語言模型進(jìn)行全面分析的基礎(chǔ)上,對(duì)推薦服務(wù)所需材料進(jìn)行整合并統(tǒng)一建模,從而將科技領(lǐng)域現(xiàn)有的信息孤島發(fā)展成一個(gè)數(shù)據(jù)庫。最終提出了一種面向科技領(lǐng)域用戶決策咨詢需求服務(wù)的專家推薦模型,模型能夠深入分析需求服務(wù)案例中的需求與專家,并針對(duì)隱性知識(shí)的特點(diǎn),挖掘二者之間的潛在知識(shí)關(guān)聯(lián),從而完成對(duì)所需服務(wù)專家的推薦。通過實(shí)驗(yàn)表明該專家推薦模型在使用過程中能夠取得很好的推薦效果。
計(jì)算機(jī)技術(shù)與發(fā)展2022年10期