丁邱 嚴(yán)馨 劉艷超 徐廣義 鄧忠瑩
摘 要:現(xiàn)有問答社區(qū)專家發(fā)現(xiàn)方法通過學(xué)習(xí)用戶解答的問題序列單向信息建模用戶興趣,忽略了用戶興趣的波動(dòng)性,對(duì)于解答過較少問題的用戶建模準(zhǔn)確度將受到影響,此外,未考慮歷史回答與問題的語義相關(guān)性對(duì)評(píng)估用戶表現(xiàn)的作用。論文提出基于興趣和專業(yè)度建模的CQA專家發(fā)現(xiàn)方法,首先,使用BERT4Rec學(xué)習(xí)用戶近期解答的問題序列雙向信息得到近期動(dòng)態(tài)興趣表示;其次,構(gòu)建用戶社交網(wǎng)絡(luò),使用DeepWalk算法學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)特征,得到用戶長(zhǎng)期興趣表示;再次,構(gòu)建用戶專業(yè)度評(píng)估網(wǎng)絡(luò),依據(jù)用戶回答與問題的語義相關(guān)性及反饋信息計(jì)算權(quán)重,對(duì)相應(yīng)問題進(jìn)行加權(quán),引入注意力機(jī)制,重點(diǎn)關(guān)注用戶在與新問題相近問題上的表現(xiàn),得到用戶專業(yè)度表示;最后,綜合用戶近期動(dòng)態(tài)興趣、長(zhǎng)期興趣和專業(yè)度表示與新問題進(jìn)行匹配打分,為新問題找出有意愿接受邀請(qǐng)并能提供優(yōu)質(zhì)回答的用戶。實(shí)驗(yàn)表明,該方法取得了較好表現(xiàn),較基線方法在英語、3D打印和天涯問答數(shù)據(jù)集的MRR評(píng)價(jià)指標(biāo)上分別提升了5.2%、2.7%、16.1%。
關(guān)鍵詞:?jiǎn)柎鹕鐓^(qū);專家發(fā)現(xiàn);動(dòng)態(tài)興趣建模;社交網(wǎng)絡(luò);專業(yè)度建模
中圖分類號(hào):TP391
文獻(xiàn)標(biāo)志碼:A
問答社區(qū)(question answering community, CQA)專家發(fā)現(xiàn)就是找出潛在的能夠提供高質(zhì)量答案的用戶,邀請(qǐng)他們回答問題??s短提問者等待回復(fù)的時(shí)間,促進(jìn)用戶參與度,更快獲取到用戶感興趣并有可能提供答案的問題[1]。面向問答社區(qū)的專家發(fā)現(xiàn)方法,包括基于圖、基于內(nèi)容和基于深度學(xué)習(xí)的方法。
基于圖的方法是將用戶之間建立關(guān)系圖,把他們關(guān)聯(lián)起來。YANG等[2]應(yīng)用社交網(wǎng)絡(luò)構(gòu)建任務(wù)和用戶聲望圖,基于圖的算法衡量用戶的專業(yè)知識(shí)和任務(wù)聲望。SUN等[3]提出應(yīng)用專業(yè)知識(shí)增益假設(shè)來緩解數(shù)據(jù)稀疏性問題,并從用戶的歷史活動(dòng)中構(gòu)建競(jìng)爭(zhēng)圖,將競(jìng)爭(zhēng)圖的層次結(jié)構(gòu)解釋為問題難度和用戶專業(yè)知識(shí)。該類方法本質(zhì)上是依據(jù)用戶是否在相似領(lǐng)域活躍過,并沒有系統(tǒng)地對(duì)用戶專業(yè)性和興趣進(jìn)行建模。
基于內(nèi)容的方法是將其看作一個(gè)主題建模問題。通過用戶、問題等信息,找到能回答對(duì)應(yīng)主題的專家。YANG等[4]從用戶偏好主題和擁有的專業(yè)知識(shí)尋找對(duì)應(yīng)專家。ZHAO[5]提出主題級(jí)的專家學(xué)習(xí)框架,綜合鏈接分析與內(nèi)容分析尋找合適的專家。MUMTAZ等[6]利用問題相似度找到相關(guān)用戶,再利用反饋信息對(duì)相關(guān)用戶進(jìn)行排序。利用主題建模思想找出對(duì)應(yīng)主題專家的方法,使用關(guān)鍵詞簡(jiǎn)單表征文本特征,忽略了問題和答案文本的深層特征。
基于深度學(xué)習(xí)的方法是引入深度學(xué)習(xí)提升專家發(fā)現(xiàn)方法性能。HE等[7]設(shè)計(jì)基于神經(jīng)網(wǎng)絡(luò)的協(xié)作過濾通用框架,將矩陣因式分解與前饋神經(jīng)網(wǎng)絡(luò)進(jìn)行聯(lián)合學(xué)習(xí),建模用戶和項(xiàng)目的潛在特征。SEDHAIN等[8]提出基于自動(dòng)編碼器范式的協(xié)同過濾模型,將傳統(tǒng)的線性內(nèi)積替換為自動(dòng)編碼器中評(píng)級(jí)矩陣的非線性分解。LIAN等[9]提出新的壓縮交互網(wǎng)絡(luò)自動(dòng)學(xué)習(xí)高階特征交互,將其與深度神經(jīng)網(wǎng)絡(luò)結(jié)合應(yīng)用于推薦任務(wù)。HE等[10]利用卷積神經(jīng)網(wǎng)絡(luò)以分層方式從局部到全局學(xué)習(xí)嵌入維度之間的高階相關(guān)性,找出潛在的回答者。LI等[11]通過異質(zhì)信息網(wǎng)絡(luò)學(xué)習(xí)問題、提出者和回答者表示,用卷積打分函數(shù)找出高分用戶作為專家。TANG等[12]提出基于注意力的因子分解機(jī)變體,不僅模擬個(gè)體特征對(duì)之間的交互,而且強(qiáng)調(diào)關(guān)鍵特征的作用和成對(duì)的交互。尤麗等[13]將答案質(zhì)量作為推薦因子之一,尋找專家用戶。YIN等[14]考慮社區(qū)動(dòng)態(tài)性,提出適應(yīng)用戶興趣漂移進(jìn)行推薦的方法。呂曉琦等[15]根據(jù)用戶歷史解答序列學(xué)習(xí)用戶動(dòng)態(tài)興趣,依據(jù)用戶興趣推薦專家。HE等[16]提出動(dòng)態(tài)用戶建模方法,考慮用戶興趣的動(dòng)態(tài)性,利用反饋信息獲取用戶的專業(yè)度。
若想找出有極大意愿接受邀請(qǐng)且擁有相應(yīng)專業(yè)知識(shí)的用戶,就要綜合考慮用戶興趣和專業(yè)度,但現(xiàn)有方法要么只考慮了一個(gè)方面,要么對(duì)興趣和專業(yè)度的建模還不夠充分,有待改進(jìn)。從用戶解答過的問題能判斷用戶對(duì)哪些方向領(lǐng)域感興趣,在問答社區(qū)專家發(fā)現(xiàn)任務(wù)中,往往將用戶解答過的問題序列稱為用戶行為序列。目前,大多數(shù)方法利用循環(huán)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)用戶興趣表示,只實(shí)現(xiàn)了從左到右學(xué)習(xí)序列的單向特征,忽略了用戶行為序列更豐富全面的信息。有些用戶解答過較少的問題行為序列較為稀疏,導(dǎo)致僅從行為序列對(duì)用戶進(jìn)行建模的方法性能受到極大影響,而用戶社交網(wǎng)絡(luò)蘊(yùn)含豐富信息,將社交網(wǎng)絡(luò)融入用戶建模中,能夠聚合與用戶有相同興趣的其他用戶特征增強(qiáng)用戶興趣表征,克服數(shù)據(jù)稀疏造成的影響。現(xiàn)有方法多利用回答收到的反饋信息來判斷用戶的專業(yè)度,有些冷門問題其受眾較少,回答收到的反饋信息較少甚至沒有,但不能因此就判定用戶不夠?qū)I(yè)。一個(gè)好的回答往往與問題有較高的語義相關(guān)性,因此,利用回答與問題的語義相關(guān)性能判斷用戶在對(duì)應(yīng)問題上表現(xiàn)是否專業(yè),克服反饋信息缺乏時(shí)對(duì)用戶評(píng)估造成的影響。關(guān)注用戶在與新問題相近那些問題上的表現(xiàn),能夠評(píng)估用戶在新問題領(lǐng)域的專業(yè)度。本文提出基于興趣和專業(yè)度建模的CQA專家發(fā)現(xiàn)方法主要貢獻(xiàn)如下:
使用基于變換網(wǎng)絡(luò)的雙向編碼進(jìn)行推薦的模型[17](sequential recommendation with bidirectional encoder representations from transformer,BERT4Rec)學(xué)習(xí)用戶近期解答的問題序列雙向信息,克服循環(huán)神經(jīng)網(wǎng)絡(luò)僅學(xué)習(xí)序列單向信息的局限性,得到更充分全面的用戶近期動(dòng)態(tài)興趣,有利于找出有極大意愿接受邀請(qǐng)的用戶。
構(gòu)建用戶社交網(wǎng)絡(luò),使用深度游走算法[18](online learning of social representations, Deepwalk)學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)特征,考慮用戶在社區(qū)的社交關(guān)系,聚合與用戶興趣相似的鄰接用戶特征得到用戶長(zhǎng)期興趣表示。融合網(wǎng)絡(luò)表示學(xué)習(xí)對(duì)用戶進(jìn)行建模,有利于解決用戶行為數(shù)據(jù)稀疏問題,即對(duì)那些解答過較少問題的用戶,也能通過蘊(yùn)含豐富信息的社交網(wǎng)絡(luò)對(duì)其進(jìn)行建模。
構(gòu)建用戶專業(yè)度評(píng)估網(wǎng)絡(luò),引入用戶回答與問題的語義相關(guān)性結(jié)合反饋信息判斷用戶在對(duì)應(yīng)問題上表現(xiàn)是否專業(yè),克服反饋信息缺乏造成的影響。引入注意力機(jī)制重點(diǎn)關(guān)注用戶在與新問題相近問題上的表現(xiàn)情況,得到更為準(zhǔn)確的用戶專業(yè)度表示。
在英語、3D打印和天涯問答三個(gè)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),本文方法皆取得了較好表現(xiàn),為新問題找出了有意愿接受邀請(qǐng)的潛在優(yōu)質(zhì)回答者。
1 模型構(gòu)建
1.1 問題分析
使用U={u1,u2,…,ul}表示用戶集,用戶u解答過的歷史問答對(duì)序列表示為:
Q(u)={(qu1,au1,tu1,yu1),(qu2,au2,tu2,yu2),…,(qu|Q(u)|,au|Q(u)|,tu|Q(u)|, yu|Q(u)|)}。其中,(qu1,au1,tu1,yu1)表示用戶u在t1時(shí)刻回答了問題q1,所給答案為a1,y1為答案a1收到的反饋信息。問答對(duì)序列是按用戶回答問題的時(shí)間排列的ti 專家發(fā)現(xiàn)任務(wù)就是給出一個(gè)新問題qm,候選用戶集U以及每個(gè)候選用戶u解答過的歷史問答對(duì)序列Q(u)。計(jì)算每個(gè)用戶u∈U與qm的匹配分?jǐn)?shù),最高分的用戶就是有意愿接受邀請(qǐng),可以為新問題提供較優(yōu)答案的專家用戶。 1.2 模型框架 模型的總體框架如圖1所示。用戶近期動(dòng)態(tài)興趣建模是通過用戶近期解答的問題序列,捕捉用戶動(dòng)態(tài)興趣,判斷用戶是否有意愿接受邀請(qǐng);用戶社交網(wǎng)絡(luò)建模是利用用戶間的交互,挖掘用戶長(zhǎng)期不易發(fā)生變化的長(zhǎng)期興趣,提升用戶建模準(zhǔn)確度;用戶專業(yè)度建模是綜合用戶歷史表現(xiàn)情況,評(píng)估用戶專業(yè)度,判斷用戶是否有能力回答問題。綜合用戶近期動(dòng)態(tài)興趣、長(zhǎng)期興趣和專業(yè)度得到用戶最終表示,將用戶與新問題進(jìn)行匹配打分。得分較高的用戶將是有意愿接受邀請(qǐng),能夠?yàn)樾聠栴}提供較優(yōu)答案的專家用戶。 1.2.1 問題和答案編碼 使用預(yù)訓(xùn)練的基于變換網(wǎng)絡(luò)的雙向編碼[19](bidirectional encoder representation from transformer,BERT)模型對(duì)問題和答案進(jìn)行編碼,學(xué)習(xí)問題和答案的深層特征信息,得到問題和答案表示。問答社區(qū)中問題文本長(zhǎng)度較短,一般就是0~100區(qū)間。答案文本長(zhǎng)度相對(duì)要長(zhǎng)一點(diǎn),但大多數(shù)都是100~200區(qū)間,符合預(yù)訓(xùn)練BERT模型能處理的最大長(zhǎng)度限制。個(gè)別答案會(huì)超出512的長(zhǎng)度限制,據(jù)統(tǒng)計(jì)超出限制的答案前200個(gè)字符已經(jīng)可以概括這個(gè)答案的主要思想,因此,若是遇到超出BERT長(zhǎng)度限制的答案,就將其做截?cái)嗵幚?,保證輸入文本符合BERT的長(zhǎng)度限制。 1.2.2 用戶近期動(dòng)態(tài)興趣建模 用戶的近期解答的問題序列能夠表征其動(dòng)態(tài)的近期興趣,這將是決定用戶目前是否愿意回答新問題的一個(gè)關(guān)鍵因素。現(xiàn)有專家發(fā)現(xiàn)方法廣泛用于處理序列數(shù)據(jù)的循環(huán)神經(jīng)網(wǎng)絡(luò),獲取動(dòng)態(tài)興趣表示,但這種方法只能單向的學(xué)習(xí)序列特征,不能同時(shí)學(xué)習(xí)序列的雙向特征。用戶興趣是波動(dòng)的,并不是單向發(fā)展的,需要利用其近期解答的問題序列充分捕捉到興趣來回波動(dòng)的情況。受文獻(xiàn)[17]啟發(fā)中,使用BERT4Rec代替循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)用戶近期解答的問題序列進(jìn)行處理,從而克服循環(huán)神經(jīng)網(wǎng)絡(luò)沒能有效利用序列雙向信息的缺點(diǎn)。BERT4Rec允許用戶歷史行為中的每一項(xiàng)融合來自左側(cè)和右側(cè)的信息,充分學(xué)習(xí)行為序列的雙向信息,獲取到更為深層全面的用戶動(dòng)態(tài)興趣表示。將用戶u在新問題qm提出之前回答的n個(gè)問題序列{qrec1,qrec2,…,qrecn}作為其近期行為,將編碼后的問題序列輸入BERT4Rec,獲取用戶近期動(dòng)態(tài)興趣表示。圖2為使用BERT4Rec進(jìn)行動(dòng)態(tài)興趣建模的框架圖。 BERT4Rec本質(zhì)就是由多個(gè)雙向Transformer[20]層堆疊起來的,為了使用輸入的序列信息,需要將位置向量與初始輸入求和作為Transformer的輸入。計(jì)算見公式(1)。 h0i=qreci+fi(1) 式中,qreci∈Rd是輸入序列的第i項(xiàng),fi∈Rd是位置索引d維的位置向量,BERT4Rec使用可學(xué)習(xí)的位置向量。將加入位置信息的輸入序列送入多層雙向Transformer層,迭代計(jì)算每一項(xiàng)在每一層的隱藏表示hli∈Rd,l指第l個(gè)Transformer層。 Trm包含多頭自注意力和位置前饋網(wǎng)絡(luò)兩個(gè)子層,使用這兩個(gè)子層對(duì)輸入序列的隱藏矩陣H∈Rn+1×d進(jìn)行處理。在預(yù)測(cè)用戶未來對(duì)什么感興趣時(shí),BERT4Rec在輸入序列的末尾附加了masked,根據(jù)該masked的最終隱藏表示來預(yù)測(cè)下一項(xiàng),也就是輸入序列實(shí)際長(zhǎng)度為n+1,d為隱藏維度。 多頭自注意力子層計(jì)算如下: 式中,Hl為隱藏矩陣;l表示第l個(gè)Transformer層;h為自注意力的頭數(shù);WO∈Rd×d、WQi∈Rd×d/h、WKi∈Rd×d/h和WVi∈Rd×d/h為可學(xué)習(xí)參數(shù)。 位置前饋網(wǎng)絡(luò)子層計(jì)算如下: 其中, Φ(x)是標(biāo)準(zhǔn)高斯分布的累積分布函數(shù);W(1)∈Rd×4d、W(2)∈R4d×d、b(1)∈R4d、b(2)∈Rd是可學(xué)習(xí)參數(shù)。BERT4Rec使用層規(guī)范化函數(shù)LLN對(duì)同一層所有隱藏單元的輸入進(jìn)行規(guī)范化,具體計(jì)算如下: 式中,Hl-1∈Rn+1×d是第l-1層輸出的隱藏矩陣,作為第l層Trm的輸入,經(jīng)過多頭自注意力和位置前饋網(wǎng)絡(luò)兩個(gè)子層后輸出Hl∈Rn+1×d。將最后一層Transformer層的最后一個(gè)隱藏表示hLn+1∈Rd作為用戶的近期動(dòng)態(tài)興趣gu=hLn+1。 1.2.3 用戶社交網(wǎng)絡(luò)建模 問答社區(qū)中回答相同問題的用戶往往興趣相似,若是能夠?qū)⒂脩糸g的社交關(guān)系融入用戶建模中,將能有效改善行為數(shù)據(jù)稀疏問題對(duì)建模造成的影響,通過挖掘用戶間的關(guān)系得到更為精準(zhǔn)的用戶畫像。構(gòu)建用戶社交網(wǎng)絡(luò)G=(U,E),用戶作為網(wǎng)絡(luò)節(jié)點(diǎn),用戶間的關(guān)系作為邊,兩個(gè)用戶若是回答過相同問題,這兩個(gè)用戶節(jié)點(diǎn)之間就有邊。U是用戶節(jié)點(diǎn)集,E是邊集。 運(yùn)用經(jīng)典網(wǎng)絡(luò)表示學(xué)習(xí)方法DeepWalk[18]學(xué)習(xí)用戶社交網(wǎng)絡(luò)節(jié)點(diǎn)表示,即通過挖掘用戶間的關(guān)系,聚合與用戶興趣相似的鄰接用戶特征增強(qiáng)用戶節(jié)點(diǎn)表征,得到用戶穩(wěn)定的長(zhǎng)期興趣表示。首先,使用隨機(jī)游走得到社交網(wǎng)絡(luò)對(duì)應(yīng)節(jié)點(diǎn)序列集;然后,利用Skip-gram算法學(xué)習(xí)得到用戶節(jié)點(diǎn)表示,采用負(fù)采樣方法進(jìn)行優(yōu)化,目標(biāo)函數(shù)見公式(5)。 式中,第一項(xiàng)為正例,即確實(shí)互為鄰接的節(jié)點(diǎn),ui∈Rd1為節(jié)點(diǎn)i的中心向量,uj∈Rd1為節(jié)點(diǎn)i的上下文向量;第二項(xiàng)為負(fù)例,k為負(fù)例的數(shù)目,j′是從預(yù)先定義的噪聲分布p(j′)采樣的負(fù)例節(jié)點(diǎn)。 最后,將經(jīng)過優(yōu)化增強(qiáng)后的用戶節(jié)點(diǎn)的中心向量作為用戶長(zhǎng)期興趣表示zu∈Rd1。 1.2.4 用戶專業(yè)度建模 用戶所給回答收到的反饋信息是評(píng)估用戶表現(xiàn)的重要指標(biāo),但不同社區(qū)擁有的反饋信息會(huì)有所不同,甚至有些受眾較少的問題沒有反饋信息,過度依賴反饋信息會(huì)降低模型通用性。為了提升模型通用性和專業(yè)度評(píng)估準(zhǔn)確度,構(gòu)建用戶專業(yè)度評(píng)估網(wǎng)絡(luò),獲取用戶專業(yè)度表示。 受答案選擇方法[21]啟發(fā),一個(gè)優(yōu)質(zhì)回答往往與問題有較高的語義相關(guān)性,故使用回答與問題的語義相關(guān)性及回答收到的反饋信息計(jì)算用戶在相應(yīng)問題上的表現(xiàn)權(quán)重,對(duì)用戶回答的對(duì)應(yīng)問題進(jìn)行加權(quán),即給那些用戶表現(xiàn)較好的問題更高的權(quán)重。計(jì)算見公式(6)。 pi=(Ccosine(qi,ai)+Aact(yi))·qi(6) 其中,Ccosine()是余弦相似度函數(shù);qi和ai分別是問題和答案表示;Aact()是一個(gè)前饋網(wǎng)絡(luò);yi是反饋向量。對(duì)于沒有反饋信息的回答將其反饋權(quán)值設(shè)為0。使用的反饋信息見表1。 用戶在與新問題相近的那些問題上的表現(xiàn),最能體現(xiàn)用戶在新問題領(lǐng)域?qū)I(yè)水平如何。因此,引入注意力機(jī)制,給予那些與新問題相近的問題更多關(guān)注。注意力權(quán)重計(jì)算見公式(7)。使用注意力給予用戶解答的與新問題相近的問題更高的權(quán)值后,對(duì)加權(quán)后的問題表示序列求和得到用戶專業(yè)度表示eu∈Rd,計(jì)算見公式(8)。 式中,We∈Rd×d是可訓(xùn)練的參數(shù);pi∈Rd是問題表示經(jīng)語義相關(guān)性結(jié)合反饋權(quán)值對(duì)其加權(quán)后的表示;βi為注意力權(quán)值。 1.2.5 用戶問題匹配 經(jīng)過用戶近期動(dòng)態(tài)興趣、社交網(wǎng)絡(luò)建模和專業(yè)度建模,獲得用戶近期動(dòng)態(tài)興趣表示gu∈Rd、長(zhǎng)期興趣表示zu∈Rd1和專業(yè)度表示eu∈Rd。將三者級(jí)聯(lián)經(jīng)過線性變換得到用戶最終表示u,計(jì)算見公式(9)。將用戶與新問題進(jìn)行匹配打分,計(jì)算見公式(10)。 其中,Wp∈R(2d+d1)×d;bp∈Rd是可訓(xùn)練的變換參數(shù)。按得分對(duì)候選用戶進(jìn)行排序,選擇排名最前用戶作為推薦人選。使用hinge損失函數(shù)對(duì)模型進(jìn)行訓(xùn)練。 式中,N為樣本數(shù);λ是一個(gè)常數(shù);S(qm,u+)、S(qm,u-)分別表示正例用戶和負(fù)例用戶的得分。正例用戶就是能夠給問題提供較優(yōu)答案的用戶,反之其他用戶則為負(fù)例用戶。 2 實(shí)驗(yàn)與結(jié)果分析 2.1 數(shù)據(jù)集 Stack Exchange包含許多特定領(lǐng)域的子數(shù)據(jù)集,如數(shù)學(xué)、英語和3D打印等。本文選用英語和3D打印這兩個(gè)子數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。數(shù)據(jù)集包含2011年到2021年的問題、答案和用戶,以及問題提出時(shí)間、回答時(shí)間、回答得分、最佳答案等信息。為了驗(yàn)證方法的通用性,我們搜集了天涯問答社區(qū)的數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。天涯問答數(shù)據(jù)集中的問題和答案,有些是沒有點(diǎn)贊量這類反饋信息的,將這部分?jǐn)?shù)據(jù)也用于模型測(cè)試,進(jìn)一步驗(yàn)證模型通用性。選取候選用戶時(shí),在新問題提出的近期沒有活躍的用戶則不將其作為候選用戶,保證邀請(qǐng)的用戶還在活躍。表2為這三個(gè)數(shù)據(jù)集預(yù)處理后用于實(shí)驗(yàn)的概況。 2.2 參數(shù)設(shè)置 實(shí)驗(yàn)基于Pytorch深度學(xué)習(xí)框架實(shí)現(xiàn),使用Adam優(yōu)化器,學(xué)習(xí)率為0.001。批次大小設(shè)置為32,設(shè)置了8個(gè)epoch。使用開源BERT-base預(yù)訓(xùn)練模型對(duì)問題和答案編碼,編碼所得的問題和答案表示維度為d=768。用戶近期動(dòng)態(tài)興趣建模部分將BERT4Rec隱藏表示和位置嵌入維度設(shè)為768,使用2層Transformer層,多頭注意力的數(shù)量設(shè)為2頭,序列最大長(zhǎng)度為31,即n=30取在新問題提出之前用戶最近回答的30個(gè)問題作為其近期行為。社交網(wǎng)絡(luò)學(xué)習(xí)的節(jié)點(diǎn)維度設(shè)為d1=256。hinge損失函數(shù)中的λ設(shè)置為0.2。將最佳答案的提供者作為正例用戶,其余用戶作為負(fù)例用戶。 2.3 基線 將EDQAU與近幾年的專家發(fā)現(xiàn)方法在英語、3D打印和天涯問答數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn): ConvNCF[10]:該方法基于矩陣分解的多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)學(xué)習(xí)用戶和項(xiàng)目嵌入之間的交互,CNN以多層結(jié)構(gòu)從局部到全局學(xué)習(xí)嵌入維度之間的高階相關(guān)性。 Expert2Vec[6]:該方法基于嵌入方法計(jì)算問題相似度,利用相似度為給定問題找到相關(guān)用戶,最后利用社區(qū)反饋對(duì)相關(guān)用戶進(jìn)行排序。 NeRank[11]:使用異質(zhì)網(wǎng)絡(luò)嵌入算法學(xué)習(xí)問題、提問者和回答者三者的嵌入表示,再將三者作為卷積打分函數(shù)的輸入,根據(jù)打分結(jié)果得到推薦列表。 DUM[16]:考慮社區(qū)動(dòng)態(tài)性,將用戶興趣分解為長(zhǎng)期興趣和動(dòng)態(tài)近期興趣。利用反饋信息獲取用戶專業(yè)度表示,根據(jù)用戶興趣和用戶專業(yè)度對(duì)用戶進(jìn)行排序。 2.4 評(píng)價(jià)指標(biāo) 采用平均倒數(shù)排名(mean reciprocal rank,MRR)、Hit@5和Prec@1作為評(píng)價(jià)指標(biāo)對(duì)模型性能進(jìn)行評(píng)估。 MRR是標(biāo)準(zhǔn)回答者排名倒數(shù)的均值。假設(shè)用于測(cè)試的問題集為Q,那么MRR的計(jì)算為公式(12)。 式中,|Q|表示用于測(cè)試的問題數(shù)量;μi,best表示第i個(gè)問題的標(biāo)準(zhǔn)回答者的排序位置。 Hit@k主要是看標(biāo)準(zhǔn)回答者是否出現(xiàn)在推薦列表的前k位。計(jì)算見公式(13)。 式中,I(μi,best≤k)表示第i個(gè)問題的標(biāo)準(zhǔn)回答者是否在推薦列表的前k位,在則為1,不在為0。 Prec@1則是看標(biāo)準(zhǔn)回答者是否出現(xiàn)在推薦列表的第1位。計(jì)算見公式(14)。 2.5 實(shí)驗(yàn)結(jié)果分析 從表3不同方法的對(duì)比實(shí)驗(yàn)結(jié)果可見,較考慮了用戶動(dòng)態(tài)興趣的基線方法DUM,EDQAU方法在英語、3D打印和天涯問答數(shù)據(jù)集的MRR評(píng)價(jià)指標(biāo)上分別提升了5.2%、2.7%、16.1%,性能和通用性都有所提升。 本文EDQAU方法使用BERT模型對(duì)問題和答案進(jìn)行編碼,所得問題和答案的嵌入表示捕捉了文本上下文信息以及更深層次的語義特征。ConvNCF和Expert2Vec僅是簡(jiǎn)單的使用問題ID或是關(guān)鍵字作為嵌入表示,忽略了文本的豐富語義信息和上下文間的關(guān)系。NeRank和DUM雖然使用了網(wǎng)絡(luò)嵌入算法學(xué)習(xí)文本的嵌入表示,但其方法還是存在局限,沒能充分捕獲到問題、答案這類短文本的深層語義信息,影響了模型的整體性能。EDQAU與ConvNCF、Expert2Vec和NeRank這幾個(gè)沒有考慮用戶動(dòng)態(tài)興趣的方法相比,性能得到較大的提升,因?yàn)橐罁?jù)用戶近期行為建模用戶動(dòng)態(tài)興趣,一定程度上保證了用戶有意愿接受邀請(qǐng)。DUM使用長(zhǎng)短期記憶網(wǎng)絡(luò)(long short-term memory, LSTM)對(duì)用戶動(dòng)態(tài)興趣建模,僅學(xué)習(xí)了序列的單向信息,信息捕捉不夠充分,使用BERT4Rec對(duì)用戶動(dòng)態(tài)興趣建??朔薒STM這一缺陷。此外,我們構(gòu)建用戶社交網(wǎng)絡(luò),通過網(wǎng)絡(luò)結(jié)構(gòu)利用興趣相似的鄰接用戶特征增強(qiáng)目標(biāo)用戶表示,對(duì)于行為數(shù)據(jù)稀疏的用戶也能挖掘到其穩(wěn)定的長(zhǎng)期興趣,依據(jù)用戶歷史表現(xiàn)構(gòu)建專業(yè)度評(píng)估網(wǎng)絡(luò),評(píng)估用戶專業(yè)度,保證找到的用戶有能力回答問題,使模型性能有所改善。 DUM和Expert2Vec在天涯問答數(shù)據(jù)集上表現(xiàn)較在英語和3D打印上表現(xiàn)波動(dòng)要大于其他方法。因?yàn)樘煅膯柎饠?shù)據(jù)集擁有的反饋信息與另外兩個(gè)數(shù)據(jù)集存在差異,甚至是有的用戶、問題沒有反饋信息,這就導(dǎo)致過度依賴反饋信息的方法在該數(shù)據(jù)集上表現(xiàn)受到極大影響。本文方法在三個(gè)數(shù)據(jù)集上性能波動(dòng)較小,較基線方法通用性有所提升。 2.6 消融實(shí)驗(yàn) 為了驗(yàn)證用戶近期動(dòng)態(tài)興趣建模、社交網(wǎng)絡(luò)建模和專業(yè)度建模的重要性,進(jìn)行了消融實(shí)驗(yàn)。表4為消融實(shí)驗(yàn)結(jié)果,其中EDQAU-D表示在本文方法基礎(chǔ)上去除用戶近期動(dòng)態(tài)興趣建模; EDQAU-S表示去除社交網(wǎng)絡(luò)建模;EDQAU-E表示在本文方法基礎(chǔ)上去除用戶專業(yè)度建模,上述方法均通過英語數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。 無論去除哪一個(gè)建模部分都對(duì)模型最終表現(xiàn)產(chǎn)生了影響,在MRR評(píng)價(jià)指標(biāo)上分別降低了8.6%、11.2%和11.5%。用戶有時(shí)對(duì)生活常識(shí)類感興趣,有時(shí)對(duì)旅游類感興趣。用戶最近對(duì)哪個(gè)方面感興趣是很重要的,它決定了用戶有多大的意愿會(huì)接受社區(qū)的邀請(qǐng),為推送給他的新問題提供答案。EDQAU-D模型去除用戶近期動(dòng)態(tài)興趣建模,導(dǎo)致模型未能察覺到用戶興趣發(fā)生了偏移。這些興趣發(fā)生偏移的用戶極有可能會(huì)拒絕社區(qū)邀請(qǐng),從而對(duì)模型的性能造成一定影響。EDQAU-S模型去除社交網(wǎng)絡(luò)建模,導(dǎo)致模型忽略了用戶社區(qū)交互,而社交網(wǎng)絡(luò)富含豐富信息,有利于解決行為數(shù)據(jù)稀疏對(duì)用戶建模造成的影響,通過網(wǎng)絡(luò)結(jié)構(gòu)充分挖掘用戶長(zhǎng)期興趣表示,提升用戶建模準(zhǔn)確度。EDQAU-E模型去除用戶專業(yè)度建模,只考慮用戶對(duì)新問題是否感興趣,但有意愿接受邀請(qǐng)的用戶不一定可以提供優(yōu)質(zhì)的回答,這使得找到的用戶有意愿接受邀請(qǐng),但在新問題領(lǐng)域不一定擁有相應(yīng)的專業(yè)知識(shí),因此,降低了模型性能。 3 總結(jié) 針對(duì)現(xiàn)有方法往往局限于某個(gè)視角對(duì)用戶進(jìn)行建模,導(dǎo)致用戶建模不夠充分、準(zhǔn)確的問題,提出基于興趣和專業(yè)度建模的CQA專家發(fā)現(xiàn)方法。使用BERT4Rec克服傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡(luò)只能學(xué)習(xí)序列單向信息的缺陷,對(duì)用戶近期行為進(jìn)行建模得到近期動(dòng)態(tài)興趣表示;構(gòu)建用戶社交網(wǎng)絡(luò),使用DeepWalk算法學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)特征,融合目標(biāo)用戶鄰接用戶特征得到用戶長(zhǎng)期興趣表示;構(gòu)建用戶專業(yè)度評(píng)估網(wǎng)絡(luò),根據(jù)用戶在歷史問答對(duì)序列中的表現(xiàn)得到用戶專業(yè)度表示。從多個(gè)視角對(duì)用戶進(jìn)行建模,得到更為精準(zhǔn)的用戶畫像。在三個(gè)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)表明,本文方法在專家發(fā)現(xiàn)任務(wù)中取得較好的效果。 在下一步研究工作中,考慮對(duì)問題和答案編碼進(jìn)行改良,嘗試不同的編碼方法,獲取問題和答案文本更深層、精準(zhǔn)的語義信息。問題往往要比答案短,直接使用相同的編碼方式對(duì)問題和答案進(jìn)行編碼,求得兩者的相似度可能還不夠準(zhǔn)確。改良編碼問題將能進(jìn)一步提升模型專業(yè)度評(píng)估的準(zhǔn)確度,使模型性能得到進(jìn)一步提升。 參考文獻(xiàn): [1]WANG X, HUANG C, YAO L, et al. A survey on expert recommendation in community question answering[J]. Journal of Computer Science and Technology, 2018, 33(4): 625-653. [2] YANG J, ADAMIC L A, ACKERMAN M S. Competing to share expertise: the taskcn knowledge sharing community[C]//ICWSM 2008. Washington: ICWSM, 2008: 1-8. [3] SUN J, MOOSAVI S, RAMNATH R, et al. QDEE: question difficulty and expertise estimation in community question answering sites[C]//Twelfth International AAAI Conference on Web and Social Media. California: ICWSM, 2018: 375-382. [4] YANG L, QIU M, GOTTIPATI S, et al. Cqarank: jointly model topics and expertise in community question answering[C]//Proceedings of the 22nd ACM international conference on Information & Knowledge Management. San Francisco California: ACM, 2013: 99-108. [5] ZHAO T, BIAN N, LI C, et al. Topic-level expert modeling in community question answering[C]//Proceedings of the 2013 SIAM International Conference on Data Mining. Austin Texas: Society for Industrial and Applied Mathematics, 2013: 776-784. [6] MUMTAZ S, RODRIGUEZ C, BENATALLAH B. Expert2vec: experts representation in community question answering for question routing[C]//Advanced Information Systems Engineering: 31st International Conference, CAiSE 2019. Rome Italy: Springer Znternational Publishing, 2019: 213-229. [7] HE X, LIAO L, ZHANG H, et al. Neural collaborative filtering[C]//Proceedings of the 26th international conference on world wide web. Perth: ACM, 2017: 173-182. [8] SEDHAIN S, MENON A K, SANNER S, et al. Autorec: autoencoders meet collaborative filtering[C]//Proceedings of the 24th international conference on World Wide Web. Florence:ACM, 2015: 111-112. [9] LIAN J, ZHOU X, ZHANG F, et al. Xdeepfm: combining explicit and implicit feature interactions for recommender systems[C]//Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. London: ACM, 2018: 1754-1763. [10]HE X, DU X, WANG X, et al. Outer product-based neural collaborative filtering[C]//Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence Main track. Stockholm: IJCAI, 2018: 2227-2233. [11]LI Z, JIANG J Y, SUN Y, et al. Personalized question routing via heterogeneous network embedding[C]//Proceedings of the AAAI Conference on Artificial Intelligence. Honolulu: AAAI, 2019, 33(1): 192-199. [12]TANG W, LU T, LI D, et al. Hierarchical attentional factorization machines for expert recommendation in community question answering[J]. IEEE Access, 2020, 8: 35331-35343. [13]尤麗. 融合答案質(zhì)量評(píng)估的問答社區(qū)專家用戶推薦方法研究[D]. 上海: 上海財(cái)經(jīng)大學(xué), 2020. [14]YIN H, ZHOU X, CUI B, et al. Adapting to user interest drift for poi recommendation[J]. IEEE Transactions on Knowledge and Data Engineering, 2016, 28(10): 2566-2581. [15]呂曉琦, 紀(jì)科, 陳貞翔, 等. 結(jié)合注意力與循環(huán)神經(jīng)網(wǎng)絡(luò)的專家推薦算法[J]. 計(jì)算機(jī)科學(xué)與探索, 2022, 16(9): 2068-2077. [16]HE T, GUO C, CHU Y, et al. Dynamic user modeling for expert recommendation in community question answering[J]. Journal of Intelligent & Fuzzy Systems, 2020, 39(5): 7281-7292. [17]SUN F, LIU J, WU J, et al. BERT4Rec: sequential recommendation with bidirectional encoder representations from transformer[C]//Proceedings of the 28th ACM international conference on information and knowledge management. Beijing: ACM, 2019: 1441-1450. [18]PEROZZI B, Al-RFOU R, SKIENA S. Deepwalk: online learning of social representations[C]//Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining. New York: ACM, 2014: 701-710. [19]DEVLIN J, CHANG M W, LEE K, et al. Bert: pre-training of deep bidirectional transformers for language understanding[C]//Proceedings of naacL-HLT. Minneapolis: NAACL, 2019: 4171-4186. [20]VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[J]. Advances in neural information processing systems, 2017, 30:5998-6008. [21]FENG M, XIANG B, GLASS M R, et al. Applying deep learning to answer selection: a study and an open task[C]//2015 IEEE workshop on automatic speech recognition and understanding (ASRU). Scottsdale: IEEE, 2015: 813-820. (責(zé)任編輯:于慧梅) CQA Expert Discovery Method Based on Interest and Expertise Modeling DING Qiu1,2, YAN Xin*1,2, LIU Yanchao3, XU Guangyi4, DENG Zhongying1 (1.Faculty of Information Engineering and Automation, Kunming University of Science and Technology, Kunming 650500, China; 2.Yunnan Key Laboratory of Artificial Intelligence, Kunming University of Science and Technology, Kunming 650500, China; 3.The Information Technology Center, HuBei Engineering University, Xiaogan 432000, China; 4.Yunnan Nantian Electronic Information Industry Co., Ltd., Kunming 650040, China) Abstract: The existing question answering community expert discovery methods model user interest by learning the one-way information of the question sequence answered by users, ignoring the volatility of user interest, which will affect the accuracy of modeling for users who have answered fewer questions. In addition, the role of semantic relevance of historical answers and questions in evaluating user performance is not considered. Therefore, in this research a CQA expert discovery method based on interest and expertise modeling is proposed. First, BERT4Rec is used to learn the two-way information of the recent question sequence answered by users to obtain the recent dynamic interest representation. Secondly, this research builds a user social network, and gets the long-term interest expression of users using DeepWalk algorithm to learn the network structure characteristics. Then, the user professionalism evaluation network is constructed, and weighting corresponding questions is calculated according to the semantic correlation between user answers and questions and feedback information. The attention mechanism is also introduced to focus on the users performance on issues similar to the new questions, and the user professionalism is expressed. Finally, the users recent dynamic interest, long-term interest and professional expression are combined to match with new questions for scoring, so as to identify users who are willing to accept the invitation and can provide high-quality answers to new questions. The experiment shows that this method has achieved good performance: compared with the baseline method, the MRR evaluation indexes of English, 3dprinting and Tianya Q&A datasets are improved by 5.2%, 2.7% and 16.1% respectively. Key words:CQA; expert discovery; dynamic interest modeling; social networking; professional modeling