一文 Get 汽車知識的語義網(wǎng)絡(luò)及圖譜構(gòu)建(2)
問題1:單個領(lǐng)域內(nèi),?檔內(nèi)容和格式多樣,需要?量的標(biāo)注數(shù)據(jù),成本?。問題2:領(lǐng)域之間遷移的效果不夠好,跨領(lǐng)域的可規(guī)模化拓展的代價?。關(guān)鍵點:模型基本都是針對特定?業(yè)特定場景,換?個場景,效果會出現(xiàn)明顯下降。解決思路:Pre-train + Finetune的范式。預(yù)訓(xùn)練:重量級底座讓模型“?多識?”,充分利??規(guī)模多?業(yè)的?標(biāo)?檔,訓(xùn)練?個統(tǒng)?的預(yù)訓(xùn)練底座,增強(qiáng)模型對各類?檔的表示和理解能?;微調(diào):輕量級?檔結(jié)構(gòu)化算法。在預(yù)訓(xùn)練基礎(chǔ)上,構(gòu)建輕量級的?向?檔結(jié)構(gòu)化的算法,降低標(biāo)注成本。基于??本的預(yù)訓(xùn)練?法,大多都沒有考慮?檔特性,如空間(Spartial)、視覺(Visual)等信息。并且基于?本設(shè)計的PretrainTask,整體是針對純?本進(jìn)?的設(shè)計,?沒有針對?檔的邏輯結(jié)構(gòu)設(shè)計。針對該問題這里介紹一種??檔預(yù)訓(xùn)練模型DocBert[3],DocBert模型設(shè)計。使??規(guī)模(百萬級)?標(biāo)注?檔數(shù)據(jù)進(jìn)?預(yù)訓(xùn)練,基于?檔的?本語義(Text)、版?信息(Layout)、視覺特征(Visual)構(gòu)建?監(jiān)督學(xué)習(xí)任務(wù),使模型更好地理解?檔語義和結(jié)構(gòu)信息。Layout-Aware MLM:在Mask語?模型中考慮?本的位置、字體??信息,實現(xiàn)?檔布局感知的語義理解。Text-Image Alignment:融合?檔視覺特征,重建圖像中被Mask的?字,幫助模型學(xué)習(xí)?本、版?、圖像不同模態(tài)間的對?關(guān)系。Title Permutation:以?監(jiān)督的?式構(gòu)建標(biāo)題重建任務(wù),增強(qiáng)模型對?檔邏輯結(jié)構(gòu)的理解能?。Sparse Transformer Layers:?Sparse Attention的?法,增強(qiáng)模型對??檔的處理能力(見下圖)。挖掘概念,興趣詞標(biāo)簽,關(guān)聯(lián)到車系、實體除了結(jié)構(gòu)化和非結(jié)構(gòu)化文本中獲取三元組,我們還挖掘物料所包含的分類、概念標(biāo)簽和興趣關(guān)鍵詞標(biāo)簽,并建立物料和車實體之間的關(guān)聯(lián),為汽車知識圖譜帶來新的知識。下面從分類、概念標(biāo)簽、興趣詞標(biāo)簽來介紹汽車之家所做的內(nèi)容理解部分工作以及思考。分類體系作為內(nèi)容刻畫的基礎(chǔ),對物料進(jìn)行粗粒度的劃分。基于人工定義的方式建立統(tǒng)一的內(nèi)容體系,通過AI模型進(jìn)行進(jìn)一步劃分。在分類方法上,我們采用了主動學(xué)習(xí)的方式,對比較難分的數(shù)據(jù)進(jìn)行標(biāo)注,同時采用數(shù)據(jù)增強(qiáng)、對抗訓(xùn)練,以及關(guān)鍵詞融合等方法提高分類的效果,分類算法流程見下圖。概念標(biāo)簽粒度介于分類和興趣詞標(biāo)簽之間,比分類粒度更細(xì),同時比興趣詞對于興趣點刻畫更加完整。我們建立了車視野、人視野、內(nèi)容視野三個維度,豐富了標(biāo)簽維度,細(xì)化了標(biāo)簽粒度。豐富且具體的物料標(biāo)簽,更加方便搜索推薦基于標(biāo)簽的模型優(yōu)化,且可用于標(biāo)簽外展起到吸引用戶及二次引流等作用。概念標(biāo)簽的挖掘,結(jié)合在query等重要數(shù)據(jù)上采用機(jī)器挖掘的方式,對概括性進(jìn)行分析,通過人工review,拿到概念標(biāo)簽集合,采用多標(biāo)簽?zāi)P头诸悺?/span>
興趣詞標(biāo)簽是最細(xì)粒度的標(biāo)簽,映射為用戶興趣,根據(jù)不同用戶興趣偏好可以更好的進(jìn)行個性化推薦。關(guān)鍵詞的挖掘采用多種興趣詞挖掘相結(jié)合的方式,包括Keybert提取關(guān)鍵子串,并結(jié)合TextRank、PositionRank、singlerank、TopicRank、MultipartiteRank等句法分析多種方法,產(chǎn)生興趣詞候選。最后,通過聚類+人工的方式生成最終版高質(zhì)量興趣標(biāo)簽。
對于不同粒度的標(biāo)簽還是在物料層面,我們需要把標(biāo)簽和車建立起關(guān)聯(lián)。首先,我們分別計算出標(biāo)題\文章的所屬標(biāo)簽,然后識別出標(biāo)題\文章內(nèi)的實體,得到若干標(biāo)簽—實體偽標(biāo)簽,最后根據(jù)大量語料,共現(xiàn)概率高的標(biāo)簽就會標(biāo)記為該實體的標(biāo)簽。通過以上三個任務(wù),我們獲得了豐富且海量的標(biāo)簽。對車系、實體關(guān)聯(lián)上這些標(biāo)簽,會極大豐富我們的汽車圖譜,建立了媒體和用戶的關(guān)注車標(biāo)簽。人效提升為了實現(xiàn)更好的模型效果,獲得更大規(guī)模的訓(xùn)練樣本,解決標(biāo)注成本高和標(biāo)注周期長成為亟待解決的問題。首先,我們使用半監(jiān)督學(xué)習(xí),利用海量未標(biāo)注數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練。之后采用主動學(xué)習(xí)方式,最大化標(biāo)注數(shù)據(jù)的價值,迭代選擇高信息量樣本進(jìn)行標(biāo)注。最后利用遠(yuǎn)程監(jiān)督,發(fā)揮已有知識的價值,發(fā)覺任務(wù)之間的相關(guān)性。知識入庫知識圖譜中的知識是通過RDF結(jié)構(gòu)來進(jìn)行表示的,其基本單元是事實。每個事實是一個三元組(S, P, O),在實際系統(tǒng)中,按照存儲方式的不同,知識圖譜的存儲可以分為基于RDF表結(jié)構(gòu)的存儲和基于屬性圖結(jié)構(gòu)的存儲。圖庫更多是采用屬性圖結(jié)構(gòu)的存儲,常見的存儲系統(tǒng)有Neo4j、JanusGraph、OritentDB、InfoGrid等。圖數(shù)據(jù)庫選擇通過 JanusGraph[4] 與 Neo4J、ArangoDB、OrientDB 這幾種主流圖數(shù)據(jù)庫的對比,我們最終選擇JanusGraph 作為項目的圖數(shù)據(jù)庫,之所以選擇 JanusGraph,主要有以下原因:
基于 Apache 2 許可協(xié)議開放源碼,開放性好;
支持使用 Hadoop 框架進(jìn)行全局圖分析和批量圖處理;
支持很大的并發(fā)事務(wù)處理和圖操作處理。通過添加機(jī)器橫向擴(kuò)展 JanusGraph 的事務(wù) 處理能力,可以完成毫秒級別相應(yīng)和大圖的復(fù)雜查詢;
原生支持 Apache TinkerPop 描述的當(dāng)前流行的屬性圖數(shù)據(jù)模型;
原生支持圖遍歷語言 Gremlin。
下圖是主流圖數(shù)據(jù)庫對比。JanusGraph數(shù)據(jù)存儲模型了解Janusgraph存儲數(shù)據(jù)的方式,有助于我們更好的利用該圖庫。JanusGraph 以鄰接列表格式存儲圖形,這意味著圖形存儲為頂點及其鄰接列表的集合。頂點的鄰接列表包含頂點的所有入射邊(和屬性)。
JanusGraph 將每個鄰接列表作為一行存儲在底層存儲后端中。(64 位)頂點 ID(JanusGraph 唯一分配給每個頂點)是指向包含頂點鄰接列表的行的鍵。每個邊和屬性都存儲為行中的一個單獨的單元格,允許有效的插入和刪除。因此,特定存儲后端中每行允許的最大單元數(shù)也是 JanusGraph 可以針對該后端支持的頂點的最大度數(shù)。如果存儲后端支持 key-order,則鄰接表將按頂點 id 排序,JanusGraph 可以分配頂點 id,以便對圖進(jìn)行有效分區(qū)。分配 id 使得經(jīng)常共同訪問的頂點具有絕對差異小的 id。
知識圖譜在推薦中的應(yīng)用汽車領(lǐng)域擁有專業(yè)參數(shù)劃分和多領(lǐng)域技術(shù),同時延伸到社會、科技、娛樂等多個方面,知識圖譜在汽車推薦中提供了內(nèi)容之外豐富的知識信息,在推薦中起到了十分重要的作用,在汽車的看、買、用等不同場景都能帶來明顯的效果提升。在看車場景中,低頻用戶對應(yīng)的點擊行為少,可能導(dǎo)致內(nèi)容推薦效果差等問題,此時可通過圖譜引入額外信息(相似用戶群組、車系屬性標(biāo)簽等),使用跨域知識增強(qiáng)改善數(shù)據(jù)稀疏性問題。在買車場景中,通過顯式的知識展示、路徑召回,以及解釋理由生成,直觀地告訴用戶推薦他某款車的理由,以及召回對應(yīng)的汽車類資訊。在用車場景中,通過用戶的看車及購買行為,從汽車保養(yǎng)、維修、用車成本等方面有效提升用戶的用車體驗。本章基于汽車的不同應(yīng)用場景,從KG在推薦系統(tǒng)中冷啟、理由、排序等方面,介紹推薦可用的相關(guān)技術(shù),為圖譜及下游應(yīng)用的實踐提供了思路。知識圖譜在推薦冷啟動中的應(yīng)用知識圖譜能夠從user-item交互中建模KG中隱藏的高階關(guān)系,很好地解決了因用戶調(diào)用有限數(shù)量的行為而導(dǎo)致的數(shù)據(jù)稀疏性,進(jìn)而可以應(yīng)用在解決冷啟動的問題上。Sang 等[5]提出了一種雙通道神經(jīng)交互的方法,稱為知識圖增強(qiáng)的殘差遞歸神經(jīng)協(xié)同過濾(KGNCF-RRN),該方法利用KG上下文的長期關(guān)系依賴性和用戶項交互進(jìn)行推薦。Du Y等[6]提出了一種新的基于元學(xué)習(xí)框架的冷啟問題解決方案MetaKG,包括collaborative-aware meta learner和knowledge-aware meta learner,捕捉用戶的偏好和實體冷啟動知識。在兩個learner的指導(dǎo)下,MetaKG可以有效地捕捉到高階的協(xié)作關(guān)系和語義表示,輕松適應(yīng)冷啟動場景。此外,作者還設(shè)計了一種自適應(yīng)任務(wù),可以自適應(yīng)地選擇KG信息進(jìn)行學(xué)習(xí),以防止模型被噪聲信息干擾,MetaKG架構(gòu)如下圖所示。知識圖譜在推薦理由生成中的應(yīng)用推薦理由能提高推薦系統(tǒng)的可解釋性,讓用戶理解生成推薦結(jié)果的計算過程,同時也可以解釋item受歡迎的原因。例如,我們在推薦一篇新車導(dǎo)購的文章時, 使用“粉色系的歐拉外觀非常好看,落地才十萬,你要不要看看?”,或者是“粉色的特斯拉很適合小姐姐開,真是又美又颯!”,這樣類似朋友間的敘述,會有效提升用戶的閱讀體驗。早期的可解釋推薦主要以模板為主,模板好處是保證高可讀性和準(zhǔn)確率,但需要人工整理,且泛化性不高,給人一種重復(fù)的感覺。后來發(fā)展成不需要預(yù)設(shè)的free-form形式。在知識圖譜上,以其中一條高分路徑作為解釋向用戶展示。對應(yīng)的基于user-item知識圖譜的路徑推理建模方法有多種,例如具有代表性的KPRN[7]和ECR[8]等,該類模型主要思想是通過用戶的歷史行為,尋找一條item評分最高的最優(yōu)路徑。例如下圖,通過用戶的“居住地”和“偏好”,可以得到更為形象的汽車推薦理由:“同在長沙,和你一樣喜歡小螞蟻的李先生點贊了這篇文章”。知識圖譜在推薦排序中的應(yīng)用KG可以通過給item用不同的屬性進(jìn)行鏈接,建立user-item之間的interaction,將uesr-item graph和KG結(jié)合成一張大圖,可以捕獲item之間的高階聯(lián)系。傳統(tǒng)的推薦方法是將問題建模為一個監(jiān)督學(xué)習(xí)任務(wù),這種方式會忽略item之間的內(nèi)在聯(lián)系(例如凱美瑞和雅閣的競品關(guān)系),并且無法從user行為中獲取協(xié)同信號。下面介紹兩篇KG應(yīng)用在推薦排序的論文。Wang[9]等人設(shè)計了KGAT算法(見下圖),首先利用GNN迭代對embedding進(jìn)行傳播、更新,從而能夠快速捕捉高階聯(lián)系。其次,在aggregation時使用attention機(jī)制,傳播過程中學(xué)習(xí)到每個neighbor的weight,反應(yīng)高階聯(lián)系的重要程度。最后,通過N階傳播更新得到user-item的N個隱式表示,不同layer表示不同階數(shù)的連接信息。KGAT可以捕捉更豐富、不特定的高階聯(lián)系。Zhang[10]等人提出RippleNet模型(見下圖),其關(guān)鍵思想是興趣傳播:RippleNet將用戶的歷史興趣作為KG中的種子集合(seed set),然后沿著KG的連接向外擴(kuò)展用戶興趣,形成用戶在KG上的興趣分布。RippleNet最大的優(yōu)勢在于它可以自動地挖掘從用戶歷史點擊過的物品到候選物品的可能路徑,不需要任何人工設(shè)計元路徑或元圖。
總結(jié)綜上,我們主要圍繞推薦介紹了圖譜構(gòu)建詳細(xì)流程,對其中的困難和挑戰(zhàn)做出了分析。同時也綜述了很多重要的工作,以及給出了具體的解決方案,思路以及建議。最后介紹了知識圖譜的應(yīng)用,特別是推薦領(lǐng)域中冷起、可解釋性、召回排序等方面,介紹了知識圖譜的作用與使用。(注:文中數(shù)據(jù)來源為汽車之家網(wǎng)站)引用[1] Kim S,Oh S G.Extracting and Applying Evaluation Criteria for Ontology Quality Assessment[J].Library Hi Tech,2019.[2] Protege: https://protegewiki.stanford.edu[3] DocBert,[1] Adhikari A , Ram A , Tang R , et al. DocBERT: BERT for Document Classification[J]. 2019.[4] JanusGraph,https://docs.janusgraph.org/[5] Sang L, Xu M, Qian S, et al. Knowledge graph enhanced neural collaborative filtering with residual recurrent network[J]. Neurocomputing, 2021, 454: 417-429.[6] Du Y , Zhu X , Chen L , et al. MetaKG: Meta-learning on Knowledge Graph for Cold-start Recommendation[J]. arXiv e-prints, 2022.[7] X.Wang, D.Wang, C. Xu, X. He, Y. Cao, and T. Chua, “Explainable reasoning over knowledge graphs for recommendation,” in AAAI, 2019, pp. 5329–5336[8] Chen Z , Wang X , Xie X , et al. Towards Explainable Conversational Recommendation[C]// Twenty-Ninth International Joint Conference on Artificial Intelligence and Seventeenth Pacific Rim International Conference on Artificial Intelligence {IJCAI-PRICAI-20. 2020.[9] Wang X , He X , Cao Y , et al. KGAT: Knowledge Graph Attention Network for Recommendation[J]. ACM, 2019.[10] Wang H , Zhang F , Wang J , et al. RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems[J]. ACM, 2018.
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。
攝像頭相關(guān)文章:攝像頭原理