王臨科,蔣祖華+,李心雨
(1.上海交通大學(xué) 機械與動力工程學(xué)院,上海 200240;2.新加坡南洋理工大學(xué) 機械與宇航工程學(xué)院,新加坡 639798)
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展與信息時代的到來,知識已成為企業(yè)極具價值的重要資產(chǎn),通過高效的知識管理手段提供優(yōu)質(zhì)的知識服務(wù),對驅(qū)動企業(yè)產(chǎn)品創(chuàng)新設(shè)計、增強企業(yè)競爭力至關(guān)重要[1]。目前,知識管理系統(tǒng)(Knowledge Management System, KMS)是企業(yè)提升自身知識服務(wù)能力的主要手段。作為能夠收集、處理、共享一個組織全部知識的信息系統(tǒng),KMS支持具有相似興趣或?qū)I(yè)背景的用戶群體,以開放協(xié)作的形式共同創(chuàng)造積累和共享利用知識[2]。當(dāng)用戶進(jìn)行工程任務(wù)時,要求KMS能夠推送最相關(guān)的知識條目,為用戶提供有力的技術(shù)支撐,而推薦算法的性能決定了知識推送的效果[3]。用戶歷史行為數(shù)據(jù)中包含了用戶的興趣偏好,推薦算法可以根據(jù)這些數(shù)據(jù)構(gòu)建用戶興趣畫像,進(jìn)而從爆發(fā)式增長的海量知識資源中為用戶篩選出合適的知識條目。傳統(tǒng)推薦算法通?;谟脩艏绊椖康南嗨贫冗M(jìn)行推薦,并僅以提升準(zhǔn)確度為目標(biāo)對算法性能進(jìn)行評估[4],在工程知識推薦背景下會導(dǎo)致兩方面問題:
(1)為了盡可能提升準(zhǔn)確度,推薦算法傾向于推薦與用戶歷史瀏覽高度相似的知識條目,導(dǎo)致KMS中僅有少數(shù)經(jīng)常被瀏覽的“流行知識條目”能夠參與推薦。在電商領(lǐng)域,只推薦流行項目也能夠滿足大部分人的興趣與需求,因此是可被接受的,但工程用戶針對不同的情境會產(chǎn)生特定的知識需求[5],若僅推薦流行知識條目,會使推薦算法在特定情境下降低甚至喪失其效用。
(2)工程問題普遍具有學(xué)科融合、領(lǐng)域交叉的復(fù)雜背景,使基于知識重用的工程任務(wù)成為多學(xué)科、知識密集型活動[6]。例如,船舶機艙布置圖設(shè)計需要參考查閱主機、油泵、管路、電路等多個主題領(lǐng)域的知識,而傳統(tǒng)推薦算法僅以準(zhǔn)確度為優(yōu)化目標(biāo),且未充分利用豐富的工程語義信息,導(dǎo)致知識推薦列表主題單一、同質(zhì)化嚴(yán)重,缺乏針對工程問題和用戶真實知識需求的全局視角[7],大大降低了推薦算法的效用。
綜上所述,研究如何解決推薦列表“流行化”和“同質(zhì)化”問題對提升知識推薦效果具有理論意義,對企業(yè)創(chuàng)新設(shè)計能力與競爭力的增強具有重要實踐價值。
圍繞以上問題,眾多學(xué)者關(guān)于推薦服務(wù)的研究主要集中于多樣性領(lǐng)域。Kunaver等[7]指出,在推薦中引入多樣性能夠減輕推薦列表同質(zhì)化問題,提升用戶滿意度;Wu等[8]認(rèn)為多樣性已成為評估推薦有效性的重要指標(biāo),并指出該領(lǐng)域的研究關(guān)鍵是如何平衡準(zhǔn)確度和多樣性;Wang等[9]將多樣性分為集體多樣性和個體多樣性,并將個體多樣性定義為單個推薦列表中所有項目對的平均差異度,即以準(zhǔn)確度和個體多樣性作為優(yōu)化目標(biāo),使推薦列表中的知識準(zhǔn)確且全面地覆蓋目標(biāo)用戶的興趣與需求?;谝陨蟼€體多樣性的定義,現(xiàn)有研究主要集中于開發(fā)新的多樣性推薦方法并提出適當(dāng)?shù)亩鄻有栽u估方法[7]。在多樣性推薦方法中,后過濾與重排序策略應(yīng)用廣泛,這類方法首先基于現(xiàn)有推薦方法尋找與用戶最相關(guān)的項目,然后對這些相關(guān)項目進(jìn)行重新排序以提升推薦結(jié)果多樣性。Zhang等[10]提出一種兩階段協(xié)同過濾優(yōu)化方法,首先利用基于用戶的協(xié)同過濾(User-based Collaborative Filtering, UCF)方法初步篩選出符合用戶多個興趣點的項目,然后基于用戶興趣和社會影響力生成最終推薦列表,以實現(xiàn)推薦準(zhǔn)確度和多樣性的平衡;Kotkov等[11]提出一種面向偶然性的重排序算法,通過項目特征多樣化提高推薦的偶然性,進(jìn)而提升推薦結(jié)果的多樣性;Eskandanian等[12]提出一種聚類后過濾方法,滿足了用戶對多樣性程度的不同偏好。也有部分學(xué)者將多樣性推薦視為多目標(biāo)優(yōu)化問題[13-15],即分別建立準(zhǔn)確度、多樣性的目標(biāo)函數(shù),然后利用遺傳算法、蟻群算法、群體智能算法等求帕累托最優(yōu)解,進(jìn)而通過對推薦列表進(jìn)行重排序完成推薦。為了利用項目間的關(guān)聯(lián)性,圖論方法也被引入多樣性推薦中。Lee等[16]利用用戶的正向評價信息構(gòu)建無向圖,并利用圖中音樂項目間的關(guān)聯(lián)關(guān)系提升推薦結(jié)果的多樣性;Zhou等[17]利用三方偏好圖改進(jìn)傳統(tǒng)基于用戶的協(xié)同過濾方法,平衡了推薦結(jié)果的準(zhǔn)確度和多樣性。對于多樣性的評估,不同方法的差別在于使用不同信息計算項目間的相似度或差異度,主要有3種:①基于屬性類別信息[18],使推薦列表中盡可能包含不同主題或種類的項目,常用于電影、音樂推薦;②基于項目評級信息[8,19],通過最大化推薦列表中項目評分向量間的幾何距離提升多樣性,適用于電商推薦;③基于內(nèi)容信息[20],一般針對文本類推薦,利用關(guān)鍵詞共現(xiàn)統(tǒng)計方法或關(guān)鍵詞TD-IDF(term frequency-inverse document frequency)權(quán)重向量距離計算文本項目間的相似度,實現(xiàn)對推薦列表多樣性的評估。
從現(xiàn)有研究成果來看:
(1)現(xiàn)有研究大多通過隨機策略提升推薦多樣性,未能充分挖掘特定情境下知識條目間的關(guān)聯(lián)關(guān)系,雖然增加了推薦結(jié)果多樣性,卻大大降低了特定情境下所推薦知識條目的效用[21]。
(2)現(xiàn)有研究無論是多樣性推薦方法還是多樣性評估方法,都缺乏對情境和知識條目間工程語義關(guān)系的深入分析[22],因而無法有效解決面向工程領(lǐng)域的多樣性知識需求。
為此,本文提出一種面向工程領(lǐng)域的主題多樣性知識推薦(Topic-Diversity Knowledge Recommendation, TDKR)方法,在現(xiàn)有研究的基礎(chǔ)上,充分考慮工程語義信息、知識應(yīng)用情境以及知識任務(wù)相似度等信息,結(jié)合改進(jìn)的基于用戶的協(xié)同過濾方法(UCF),提出新的后過濾與重排序策略,在特定情境下有針對性地提升知識推薦結(jié)果的主題多樣性,有效提升企業(yè)知識推送服務(wù)質(zhì)量,進(jìn)而驅(qū)動企業(yè)產(chǎn)品創(chuàng)新設(shè)計、增強企業(yè)競爭力。
知識管理系統(tǒng)(KMS)能夠為企業(yè)提供知識的積累、集成、維護(hù)、共享和重用等服務(wù)。例如,國內(nèi)某船廠大約80%的船舶舾裝設(shè)計工作都需要查閱參考行業(yè)標(biāo)準(zhǔn)、歷史經(jīng)驗案例等各類知識[23],該船廠利用KMS實現(xiàn)有效的知識管理。KMS用戶能夠基于系統(tǒng)提供的模板創(chuàng)建新知識或修改已有的知識條目,經(jīng)過管理員或領(lǐng)域?qū)<覍徍送ㄟ^后,存入企業(yè)知識庫,形成企業(yè)的知識資產(chǎn)。用戶可以通過主動檢索和被動接收KMS系統(tǒng)推薦兩種方式進(jìn)行知識獲取,以輔助當(dāng)前工程任務(wù)[24]。
在國內(nèi)某船廠的KMS中,與舾裝設(shè)計相關(guān)的知識主要有3類:①經(jīng)驗案例知識,指員工在舾裝設(shè)計任務(wù)中總結(jié)的成功與失敗的經(jīng)驗教訓(xùn),如圖1a所示;②規(guī)范知識,指船舶領(lǐng)域的各種行業(yè)級或公司級標(biāo)準(zhǔn)規(guī)范文檔,主要由各大船級社或企業(yè)內(nèi)部領(lǐng)域?qū)<医y(tǒng)一制定,如圖1b所示;③專利知識,指企業(yè)擁有的與船舶設(shè)計相關(guān)的專利文檔,如圖1c所示。
a 經(jīng)驗案例知識
b 規(guī)范知識
c 專利知識圖1 知識條目示例
在工程領(lǐng)域,知識的產(chǎn)生和應(yīng)用都具有特定的背景與環(huán)境,即不同的知識具有不同的應(yīng)用情境[5]。知識應(yīng)用情境可以視為知識應(yīng)用的限定條件,是知識共享和知識重用的重要基礎(chǔ),能夠有效解決知識過載問題[25]??紤]到如圖1中知識的半結(jié)構(gòu)化特征,本文整理出船舶類型、設(shè)備(舾裝件)名稱、舾裝區(qū)域、案例類型、專業(yè)領(lǐng)域、船級社6個通用屬性作為船舶舾裝設(shè)計知識的應(yīng)用情境C(C中的屬性值ci均為船舶領(lǐng)域?qū)S忻~,為枚舉類型,可以為空)。表1所示為情境屬性及其部分屬性值,為方便計算,將屬性值用數(shù)字統(tǒng)一編碼,并用向量表示為C=(c1,c2,c3,c4,c5,c6)。
表1 船舶舾裝設(shè)計知識應(yīng)用情境示例
續(xù)表1
KMS以用戶日志的形式記錄用戶操作行為數(shù)據(jù),并存入相應(yīng)的數(shù)據(jù)庫,部分行為數(shù)據(jù)如表2所示。為便于研究,將用戶行為數(shù)據(jù)表示為R={U,I,C,ΔT,O},即用戶U對應(yīng)用情境為C的知識條目I進(jìn)行了時長為ΔT的O操作。其中:C為表1中6種屬性的編碼向量;O包括創(chuàng)建(Oc)、修改(Or)、瀏覽(Ob)三種操作。
表2 用戶行為數(shù)據(jù)示例
為滿足工程領(lǐng)域用戶多樣性的知識需求,本文提出了TDKR方法,方法框架如圖2所示。
TDKR方法框架主要包含4部分:
(1)知識主題社區(qū) 挖掘知識條目間的內(nèi)容相似度、應(yīng)用情境相似度以及任務(wù)相似度,據(jù)此構(gòu)建知識相關(guān)性網(wǎng)絡(luò),進(jìn)而利用Louvain社區(qū)發(fā)現(xiàn)算法從知識相關(guān)性網(wǎng)絡(luò)中發(fā)現(xiàn)知識主題社區(qū),用于建立用戶—主題興趣模型和計算用戶—主題專業(yè)度。
(2)用戶興趣模型 分別建立用戶—知識興趣模型和用戶—主題興趣模型,以挖掘用戶對瀏覽過的知識條目和相應(yīng)知識主題的偏好,前者用于構(gòu)建初始評分矩陣,后者用于實施多樣性策略。
(3)用戶—主題專業(yè)度 利用用戶群瀏覽行為數(shù)據(jù)計算知識文檔質(zhì)量,并進(jìn)一步根據(jù)用戶創(chuàng)建和修改行為數(shù)據(jù)以及知識主題社區(qū)劃分結(jié)果計算用戶對相應(yīng)知識主題的專業(yè)度,用于改進(jìn)傳統(tǒng)UCF方法。
(4)主題多樣性知識推薦 首先利用用戶—主題專業(yè)度改進(jìn)傳統(tǒng)UCF方法,并為目標(biāo)用戶查找近鄰用戶,進(jìn)而根據(jù)近鄰用戶預(yù)測初始評分矩陣中的缺失評分,然后定義知識對于目標(biāo)用戶的情境可用性,并同時考慮用戶—主題興趣模型,實施情境感知多樣性后過濾推薦策略,對初始預(yù)測評分進(jìn)行重新打分排序,進(jìn)而為目標(biāo)用戶進(jìn)行Top-N推薦。
知識推薦部分(2.5節(jié))利用模型層對知識的表征和用戶的建模進(jìn)行推薦。基于輸入的目標(biāo)用戶及其瀏覽行為序列數(shù)據(jù),首先考慮用戶—主題專業(yè)度為目標(biāo)用戶查找近鄰用戶,然后利用UCF方法對目標(biāo)用戶的缺失評分?jǐn)?shù)據(jù)進(jìn)行預(yù)測,最后根據(jù)用戶—主題興趣模型以及情境信息實施后過濾多樣性推薦策略,為目標(biāo)用戶輸出具有主題多樣性的知識推薦列表。
本文旨在有針對性地提升知識推薦列表的主題多樣性。因此,本節(jié)首先構(gòu)建知識網(wǎng)絡(luò),然后利用社區(qū)發(fā)現(xiàn)算法將知識網(wǎng)絡(luò)劃分為多個知識主題社區(qū)。
2.2.1 知識網(wǎng)絡(luò)構(gòu)建
在知識網(wǎng)絡(luò)中,節(jié)點表示知識條目,邊和權(quán)值表示知識條目間的關(guān)聯(lián)關(guān)系及其關(guān)聯(lián)度大小。知識條目間的關(guān)聯(lián)關(guān)系包括共享相似的工程概念(即內(nèi)容相似度)、在相似的情況下被相似的工程師重用(即情境相似度)、解決相關(guān)的工程問題(即面向問題解決的相關(guān)性)等。為便于計算分析,本文首先分別計算這3種關(guān)聯(lián)關(guān)系權(quán)重,再綜合計算知識條目間的總體關(guān)聯(lián)度[26]。
(1)知識內(nèi)容相似度計算。計算知識內(nèi)容相似度之前,需要對知識進(jìn)行表示。本文引入向量空間模型,將知識內(nèi)容表示為一系列關(guān)鍵詞權(quán)重二元組形式。首先分別對每個知識條目進(jìn)行預(yù)處理,包括分詞、去除停用詞、詞性標(biāo)注、關(guān)鍵詞提取、基于同義詞詞典的關(guān)鍵詞融合等操作,然后使用TF-IDF算法計算關(guān)鍵詞權(quán)重,即可將知識條目I表示為
I={(k1,w1),(k2,w2),…,(kn,wn)}。
(1)
式中wi為關(guān)鍵詞ki在知識條目I中的TF-IDF值,
(2)
(3)
(4)
(5)
(3)知識任務(wù)相似度計算。知識任務(wù)相似度指兩條知識條目能夠解決相關(guān)工程問題的概率。用戶在解決工程問題時,需要瀏覽并參考KMS中的知識條目。由于用戶短期內(nèi)針對相同或相似的工程問題總是會連續(xù)瀏覽較為相關(guān)的知識條目,利用用戶群瀏覽行為序列數(shù)據(jù)可以挖掘知識任務(wù)相似度。首先利用表2中的信息將每個用戶的瀏覽行為序列數(shù)據(jù)表示為向量的形式:
Rb(Ui)={(I,ΔT)1st,(I,ΔT)2nd,…,(I,ΔT)nth}。
(6)
式中包含了用戶Ui的所有瀏覽記錄?;谒杏脩舻臑g覽行為序列數(shù)據(jù)即可計算I1和I2的知識任務(wù)相似度:
TaskSim(I1,I2)=
(7)
式中:U表示所有用戶集合;I1?I2表示在用戶瀏覽序列數(shù)據(jù)中知識條目I1和I2相鄰出現(xiàn);|I1|和|I2|分別表示I1和I2的文本長度,用以消除文本長度對瀏覽時長的影響。
綜上所述,知識條目I1和I2的關(guān)聯(lián)度
Rel(I1,I2)=TextSim(I1,I2)×
CxtSim(CI1,CI2)×TaskSim(I1,I2)。
(8)
根據(jù)式(8)計算所有知識條目間的關(guān)聯(lián)度,即可構(gòu)建知識相關(guān)性網(wǎng)絡(luò)G=(V,E),其中:結(jié)點V表示所有知識條目,帶權(quán)邊E表示知識條目間的關(guān)聯(lián)度。
2.2.2 知識主題社區(qū)劃分
在知識網(wǎng)絡(luò)G中,面向相關(guān)工程問題的知識條目間關(guān)聯(lián)度較大,聯(lián)系也會較為緊密,本文利用Louvain算法[27]將知識網(wǎng)絡(luò)劃分為多個面向工程領(lǐng)域的知識主題社區(qū)。Louvain算法是基于圖的社區(qū)發(fā)現(xiàn)算法,具有快速、準(zhǔn)確的優(yōu)點,被認(rèn)為是最好的社區(qū)發(fā)現(xiàn)算法之一。該算法基于模塊度劃分社區(qū),即算法的優(yōu)化目標(biāo)為最大化整個網(wǎng)絡(luò)圖結(jié)構(gòu)的模塊度,根據(jù)本文知識網(wǎng)絡(luò)的特點,模塊度的定義如下:
Aij=Rel(Ii,Ij),
ki=∑Ij∈GRel(Ii,Ij),kj=∑Ii∈GRel(Ii,Ij),
m=∑Rel(Ii,Ij),
(9)
式中:Aij為圖中結(jié)點Ii和Ij之間邊的權(quán)重;ki和kj分別表示圖中所有與Ii和Ij相連的邊的權(quán)重之和;m為圖中所有邊的權(quán)重之和;TPI表示知識條目I所屬的主題。根據(jù)算法的運行結(jié)果,最終可以將知識網(wǎng)絡(luò)圖G中的所有知識條目結(jié)點劃分為n類知識主題,即TP={TP1st,TP2nd,…,TPnth}。
傳統(tǒng)推薦算法利用顯性用戶行為數(shù)據(jù)表示用戶興趣。在電商推薦中,可以根據(jù)用戶是否購買或收藏構(gòu)建0-1用戶評分矩陣;在電影/音樂推薦中,也可以利用用戶對項目的評分?jǐn)?shù)據(jù)(如1~5星)構(gòu)建用戶評分矩陣。然而,企業(yè)KMS中用戶評價系統(tǒng)的缺失導(dǎo)致無法獲取顯性用戶評分?jǐn)?shù)據(jù)??紤]到企業(yè)KMS可以收集隱性用戶行為數(shù)據(jù)(如表2),且隱性用戶行為數(shù)據(jù)能夠反映短期內(nèi)用戶的真實興趣偏好,避免顯性用戶評分中蓄意打高/低分的問題,本文利用表2中的用戶瀏覽行為數(shù)據(jù)構(gòu)建用戶興趣模型,包括用戶對歷史瀏覽的知識條目的偏好和用戶對不同知識主題的偏好。
2.3.1 用戶—知識興趣模型
用戶Ui的瀏覽行為序列數(shù)據(jù)如式(6)所示,Rb(Ui)中包含該用戶所有n次瀏覽記錄。然而,用戶的興趣隨著時間不斷變化,過早的瀏覽行為通常與用戶當(dāng)前興趣偏好相異,因此本文取Rb(Ui)中最近的L次瀏覽行為數(shù)據(jù)構(gòu)建用戶—知識興趣模型如下:
(10)
2.3.2 用戶—主題興趣模型
(11)
不同專業(yè)與工作背景的用戶對不同知識主題的專業(yè)度不同,選取對相關(guān)主題專業(yè)度高的用戶作為近鄰用戶,能夠提升推薦效果。本文根據(jù)用戶的創(chuàng)建和修改行為計算用戶對各個主題的專業(yè)度,基于表2,分別利用式(12)和式(13)表示用戶Ui的創(chuàng)建和修改行為序列數(shù)據(jù):
Rc(Ui)={(I,ΔT)1st,(I,ΔT)2nd,…,(I,ΔT)n1th} ,
(12)
Rr(Ui)={(I,ΔT)1st,(I,ΔT)2nd,…,(I,ΔT)n2th}。
(13)
首先將Rc(Ui)和Rr(Ui)中所有知識條目表示為如式(1)所示的詞向量形式,然后將這些詞向量合并,如式(14)所示,用以表示用戶Ui的專業(yè)領(lǐng)域。
UP(Ui)={(k1,w1),(k2,w2),…,(kn3,wn3)}。
(14)
考慮到用戶Ui參與創(chuàng)建或修改的知識條目I的質(zhì)量更能反映Ui對I的專業(yè)度,因此本文定義知識條目I的質(zhì)量q(I)為用戶群對I的平均相對興趣評分,并利用式(15)計算。
q(I)=
(15)
(16)
(17)
式中:UP(Ui)表示用戶專業(yè)領(lǐng)域的詞向量,如式(14)所示;TextSim(UP(Ui),I)為兩個詞向量的相似度,由式(3)計算;|TPjth|為主題TPjth中包含的知識條目數(shù)量。
本文結(jié)合改進(jìn)的基于用戶的協(xié)同過濾方法(UCF)和后過濾重排序策略進(jìn)行推薦。首先選取與目標(biāo)用戶Ui相似度最高的Top-K個近鄰用戶,然后利用UCF對Ui的缺失評分進(jìn)行預(yù)測,最后采取后過濾多樣性推薦策略完成推薦。
2.5.1 考慮用戶—主題專業(yè)度的近鄰用戶查找
近鄰用戶指的是與目標(biāo)用戶有相似知識偏好的用戶,在本文中,具有相似行為的用戶即為近鄰用戶。本文用戶行為數(shù)據(jù)中包含創(chuàng)建、修改、瀏覽3類行為,用戶—主題專業(yè)度能夠反映創(chuàng)建/修改行為信息,而用戶—知識興趣模型(即用戶評分)能夠反映用戶瀏覽行為信息。實際在UCF中,用戶—主題專業(yè)度能夠衡量用戶評分的參考價值,即用戶的可信度,因此,應(yīng)當(dāng)在計算目標(biāo)用戶Ui與其他用戶U的相似度時考慮用戶—主題專業(yè)度,如式(18)所示。
(18)
式中:TPI為知識條目I所屬知識主題;UserSim(Ui,U)為用戶U對于目標(biāo)用戶Ui的相似度,UserSim(Ui,U)≠UserSim(U,Ui)。
2.5.2 基于近鄰用戶的評分矩陣預(yù)填充
利用式(10)計算部分評分?jǐn)?shù)據(jù),進(jìn)而構(gòu)建用戶—知識評分矩陣,如式(19)所示:
(19)
由于企業(yè)KMS中知識數(shù)量遠(yuǎn)大于用戶數(shù)量,導(dǎo)致評分矩陣F極其稀疏,針對缺失的評分?jǐn)?shù)據(jù)F*(Ui,Ij),采用式(20)進(jìn)行預(yù)測:
(20)
2.5.3 多樣性推薦策略
本文運用后過濾策略,對2.5.2節(jié)中所有預(yù)測評分進(jìn)行重新打分排序,進(jìn)而完成主題多樣性知識推薦,如式(21)所示。
FDiv(Ui,Ij)=F*(Ui,Ij)·KCE
(21)
為驗證本文方法在工程知識推薦中的效果,本文以課題組與某船廠的合作項目成果“舾裝智能化設(shè)計知識庫管理系統(tǒng)”(即KMS)為例進(jìn)行了實例研究。船舶設(shè)計領(lǐng)域絕大部分工作都極其依賴于相關(guān)知識的支撐[23],因此知識供應(yīng)質(zhì)量直接影響設(shè)計任務(wù)的進(jìn)度。該船廠的KMS系統(tǒng)中集成了對企業(yè)知識庫中各類知識的管理,并面向相關(guān)用戶提供查詢、共享等知識服務(wù),以輔助用戶設(shè)計任務(wù),但由于技術(shù)條件限制,已有KMS系統(tǒng)出現(xiàn)了兩個主要問題:①KMS中知識數(shù)量眾多,當(dāng)用戶遇到陌生領(lǐng)域問題時,想要檢索到所需知識較為困難;②船舶設(shè)計任務(wù)復(fù)雜,通常需要參考多種知識,即用戶有多樣性的知識需求,而由于用戶自身知識結(jié)構(gòu)限制,通常無法通過檢索獲取到所有相關(guān)知識條目[26]。這些問題導(dǎo)致企業(yè)知識重用效率低下,嚴(yán)重阻礙了企業(yè)知識管理的發(fā)展與企業(yè)知識資產(chǎn)的轉(zhuǎn)化。
針對以上問題,本文將TDKR方法應(yīng)用于KMS中,主動挖掘目標(biāo)用戶興趣,并為其推送合適的知識條目,以期更好地滿足用戶多樣性的知識需求。對于系統(tǒng)當(dāng)前用戶,KMS利用TDKR方法為其生成相應(yīng)的推薦列表,該用戶可以從推薦列表中選擇所需知識條目點擊瀏覽,若沒有所需知識條目,則繼續(xù)搜索瀏覽其他知識條目。用戶的行為數(shù)據(jù)會被不斷存入KMS后臺數(shù)據(jù)庫,以便及時更新TDKR方法模型。
為評估TDKR方法的推薦性能,從該船廠KMS系統(tǒng)中獲取379條知識條目內(nèi)容和2 867條用戶行為數(shù)據(jù)(包括163條創(chuàng)建記錄、84條修改記錄和2 620條瀏覽記錄)作為本實驗所用數(shù)據(jù),行為數(shù)據(jù)來自該船廠某舾裝設(shè)計團隊中的13名設(shè)計人員對這379條知識條目的操作記錄,部分?jǐn)?shù)據(jù)如表2所示。本實驗中,相應(yīng)算法在Core-i5、16RAM的MacOS-10.15計算機配置環(huán)境下,使用Python-3.7編碼。
(22)
(23)
式中:|U|為集合U中用戶人數(shù),|Rec(Ui)|和|Real(Ui)|分別為兩個列表中知識條目的數(shù)量。本文多樣性是指單個推薦列表中知識條目間的差異程度。若用div(Rec(Ui))表示單個推薦列表Rec(Ui)的多樣性,則TDKR方法在單次實驗中的多樣性Div用式(24)計算[9]。
(24)
式(24)采用所有用戶推薦列表的多樣性均值作為單次實驗的多樣性指標(biāo),其中TextSim(I1,I2)為知識條目I1和I2的相似度,由式(3)計算。式(3)利用自然語言處理(Natural Language Processing, NLP)技術(shù)分析計算了知識條目間關(guān)鍵詞語義級別的內(nèi)容相似度,使式(24)更適用于面向工程領(lǐng)域問題解決的知識推薦。為消除實驗結(jié)果隨機性因素的影響,本文采用5次實驗結(jié)果的平均值作為評估標(biāo)準(zhǔn),并保證每次實驗所用數(shù)據(jù)不同。
(1)知識主題社區(qū)劃分 根據(jù)2.2.1節(jié)方法構(gòu)建知識網(wǎng)絡(luò)。在利用公式表示知識時,為方便計算,僅保留TF-IDF權(quán)重最高的前30個關(guān)鍵詞,知識地圖根據(jù)文獻(xiàn)[23]構(gòu)建,其中包含從379條知識條目中提取的65個領(lǐng)域概念和230條語義路徑?;?.2.2節(jié)方法將知識網(wǎng)絡(luò)劃分為30個面向舾裝設(shè)計領(lǐng)域的知識主題社區(qū)(如表3),表3中“主題關(guān)鍵詞”為人工選出以供展示,非權(quán)重最高的詞。
表3 船舶舾裝設(shè)計領(lǐng)域知識主題社區(qū)
(2)用戶興趣模型構(gòu)建 根據(jù)2.3.1節(jié)方法構(gòu)建用戶—知識興趣模型,計算每名用戶對近期40條瀏覽記錄中的知識條目的評分并歸一化處理,進(jìn)而初步構(gòu)建用戶評分矩陣F13×379,由于存在重復(fù)瀏覽現(xiàn)象,F(xiàn)13×379中包含目標(biāo)用戶U3的32個評分?jǐn)?shù)據(jù)。根據(jù)2.3.2節(jié)方法構(gòu)建用戶—主題興趣模型,計算U3對每個知識主題的偏好并歸一化處理,如表4所示。
表4 目標(biāo)用戶—主題偏好評分
(3)用戶—主題專業(yè)度計算 根據(jù)2.4節(jié)方法,基于每位用戶創(chuàng)建、修改行為數(shù)據(jù)計算用戶對相應(yīng)知識主題的專業(yè)度并歸一化處理,如表5所示。在利用式(14)表示用戶時,同樣保留TF-IDF值最高的30個詞。表5中加粗顯示的為該主題擁有的最高專業(yè)度。
表5 用戶—主題專業(yè)度
(4)主題多樣性知識推薦 基于式(18),結(jié)合表5用戶—主題專業(yè)度查找目標(biāo)用戶U3的6個近鄰用戶,根據(jù)用戶相似度排序依次為U1>U13>U9>U4>U11>U6。結(jié)合表4可知,近鄰用戶對目標(biāo)用戶U3偏好的主題普遍具有較高專業(yè)度,如U1對TP7和TP13、U9對TP22、U11對TP11和TP24等都具有最高專業(yè)度。根據(jù)式(20)預(yù)測目標(biāo)用戶U3的缺失評分?jǐn)?shù)據(jù),若U3為對知識條目I所在主題TPI專業(yè)度最高的用戶,則將U3現(xiàn)有評分最小值作為U3對I的評分,否則根據(jù)6個近鄰用戶預(yù)測評分,結(jié)果算得143個U3的缺失評分?jǐn)?shù)據(jù)。基于式(21),結(jié)合表4對143個預(yù)測評分進(jìn)行后過濾重排序,將最終評分最高的5條知識推送給目標(biāo)用戶U3。如表6所示為推薦列表以及用戶真實瀏覽的8條知識。
表6 目標(biāo)用戶的推薦列表及真實瀏覽列表
由表6可知,U3真實瀏覽的8個知識條目中,I179與I10的瀏覽時長較短,根據(jù)其內(nèi)容可知,這兩條知識與機艙布置相關(guān)性較小,而其余6條知識都與機艙內(nèi)設(shè)備安裝、布局相關(guān),即目標(biāo)用戶真實瀏覽行為與其任務(wù)目標(biāo)一致。對于推薦結(jié)果,未采用后過濾時,命中I271和I72,F(xiàn)1和Div分別為0.31和0.42,又經(jīng)該用戶確認(rèn),I63對機艙布置圖設(shè)計任務(wù)也具有參考價值,而I138和I2的參考價值不高,即推薦列表中有3條知識對當(dāng)前工程任務(wù)有參考價值,可以認(rèn)為本文在預(yù)測評分時考慮用戶專業(yè)度能夠提升評分預(yù)測準(zhǔn)確度。采用后過濾策略后,與之前的推薦結(jié)果相比,調(diào)換了I63和I72的位置,并將I2替換為I243,命中三條知識,F(xiàn)1和Div分別提升至0.46和0.44。I243與主滑油泵安裝相關(guān),且屬于TP7(目標(biāo)用戶最感興趣的主題之一,如表4),表明本文同時考慮知識情境可用性和用戶—主題興趣模型的后過濾策略能夠在保證推薦結(jié)果準(zhǔn)確度的前提下,有針對性地提升推薦結(jié)果的主題多樣性。
相較于傳統(tǒng)推薦算法,本文TDKR方法主要有3點改進(jìn)之處,即在2.5.1節(jié)查找近鄰用戶時考慮用戶—主題專業(yè)度(User-Topic-Professionalism, UTP),以及在2.5.3節(jié)多樣性知識推薦中同時考慮了知識的情境可用性(Knowledge-Context-based-Effectiveness, KCE)和用戶—主題興趣模型(User-Topic-Interest, UTI)。對此,設(shè)計以下對比算法:①基于用戶的協(xié)同過濾算法(UCF);②在TDKR基礎(chǔ)上去除第一點改進(jìn)(TDKR without UTP);③在TDKR基礎(chǔ)上去除第二點改進(jìn)(TDKR w/o KCE);④在TDKR基礎(chǔ)上去除第3點改進(jìn)(TDKR w/o UTI)。TDKR方法與4種對比算法的推薦性能表現(xiàn)如圖5所示。
由于UCF方法未進(jìn)行任何優(yōu)化,算法準(zhǔn)確度極差,F(xiàn)1僅為0.18,而由于協(xié)同過濾的推薦結(jié)果具有隨機性,多樣性Div的值遠(yuǎn)高于其F1值,達(dá)到0.32。TDKR方法采用了上述3種改進(jìn)方式,具有很高準(zhǔn)確度,且能有針對性地提升推薦結(jié)果的主題多樣性,F(xiàn)1和Div分別達(dá)到了0.49和0.52。對于TDKR w/o UTP,由于其采用了KCE和UTI兩種改進(jìn),能夠提升知識推薦結(jié)果的情境可用性和主題多樣性,F(xiàn)1和Div分別提升到了0.36和0.51,但相比TDKR去除了UTP改進(jìn),即在查找近鄰用戶時忽略了用戶—主題專業(yè)度,導(dǎo)致了其基于近鄰用戶的協(xié)同過濾算法的評分預(yù)測值可信度降低,因此F1值低于TDKR;對于TDKR w/o KCE,由于在后過濾多樣性推薦時未考慮知識的情境可用性,導(dǎo)致準(zhǔn)確度相比于TDKR降至0.34;對于TDKR w/o UTI,F(xiàn)1和Div分別為0.42和0.37,相較于TDKR都下降較多,這是由于其未采用多樣性策略,推薦結(jié)果無法滿足用戶多樣性的知識需求,證明本文基于用戶—主題興趣模型的多樣性策略能夠幫助用戶發(fā)掘面向工程領(lǐng)域問題解決的知識關(guān)聯(lián)關(guān)系,有針對性地提升推薦結(jié)果的主題多樣性,更好地滿足用戶多樣性的求,且對于KMS系統(tǒng)來說,也增加了冷門知識被推薦的概率,緩解了僅推薦流行項目的問題。
綜上所述,TDKR方法能夠較好地滿足用戶在特定情境下對知識推薦結(jié)果的準(zhǔn)確度和多樣性的要求,在工程知識推薦任務(wù)中具有良好表現(xiàn)。
為了更好地滿足KMS用戶多樣性的知識需求,本文提出一種能夠應(yīng)用于現(xiàn)有KMS中的主題多樣性知識推薦方法(TDKR)。該方法考慮了知識應(yīng)用情境與用戶—主題專業(yè)度,并基于劃分的知識主題社區(qū)和用戶—主題興趣模型實施多樣性推薦策略,能夠有針對性地提升知識推薦列表的主題多樣性,以更智能的方式協(xié)助KMS用戶完成工程任務(wù)。本文貢獻(xiàn)總結(jié)如下:
(1)構(gòu)建知識網(wǎng)絡(luò)并劃分知識主題社區(qū) 利用關(guān)鍵詞權(quán)重向量與知識地圖計算知識內(nèi)容相似度,歸納知識應(yīng)用情境并計算相似度,定義并基于用戶群瀏覽行為序列數(shù)據(jù)計算知識任務(wù)相似度,進(jìn)而構(gòu)建知識相關(guān)性網(wǎng)絡(luò),最后再利用Louvain算法將知識相關(guān)性網(wǎng)絡(luò)劃分為多個知識主題社區(qū)。由于知識相關(guān)性網(wǎng)絡(luò)構(gòu)建方法利用了工程領(lǐng)域豐富的語義信息和用戶群的行為信息,相比于其他聚類算法,本文主題劃分結(jié)果更符合領(lǐng)域特征。
(2)構(gòu)建用戶—主題興趣模型并計算用戶—主題專業(yè)度 在劃分好的知識主題社區(qū)基礎(chǔ)上,首先利用用戶瀏覽行為序列數(shù)據(jù)建立用戶—主題興趣模型,用于實施多樣性策略;然后利用用戶的創(chuàng)建和修改行為序列數(shù)據(jù)計算用戶—主題專業(yè)度,用于改進(jìn)近鄰用戶查找方法,以使基于近鄰用戶的協(xié)同過濾方法(UCF)的預(yù)測值更為準(zhǔn)確可靠。
(3)提出考慮知識情境可用性和用戶—主題興趣的多樣性推薦策略 在多樣性推薦策略中,同時考慮知識情境可用性和用戶—主題興趣模型。對比實驗結(jié)果表明,知識情境可用性可以保證推薦結(jié)果的準(zhǔn)確度和可用性,而用戶—主題興趣模型能夠幫助KMS用戶發(fā)掘面向問題解決的知識關(guān)聯(lián)性,有針對性地提升知識推薦列表的主題多樣性,進(jìn)而更好地滿足用戶多樣性的知識需求。
高質(zhì)量的知識推薦不僅依賴于先進(jìn)的知識推薦算法,還需要有大量優(yōu)質(zhì)的知識源信息以及相應(yīng)的知識組織與表征技術(shù)等的支持,而作為一種具有極強的表達(dá)能力和建模靈活性的語義網(wǎng)絡(luò),知識圖譜能夠以更合理、更智能的方式進(jìn)行知識表征與鏈接,在推薦系統(tǒng)領(lǐng)域具有廣泛的應(yīng)用前景。因此,可以考慮結(jié)合知識圖譜技術(shù),并從以下3個方面擴展本文研究內(nèi)容:①可以利用知識圖譜對工程問題、任務(wù)、情境、解決方案等內(nèi)容進(jìn)行智能化表征,進(jìn)而實現(xiàn)更為優(yōu)質(zhì)的場景化推薦和任務(wù)型推薦;②可以利用知識圖譜連接不同領(lǐng)域的知識,進(jìn)而實現(xiàn)跨領(lǐng)域推薦,盡可能為用戶提供更多的解決方案;③知識圖譜中包含的豐富語義信息極大提升了推薦結(jié)果的可解釋性,可以據(jù)此獲取用戶的行為反饋信息,從而實現(xiàn)數(shù)據(jù)模型的及時更新,更好地滿足用戶需求。