隨著互聯(lián)網(wǎng)進入了下半場煎殷,精益化發(fā)展成為了主旋律,為了實現(xiàn)同樣的獲客成本下收益最大化腿箩,各家對推薦系統(tǒng)的需求日益強烈豪直。本文通俗的講述通過幾個段落簡單講述什么是推薦系統(tǒng)、推薦系統(tǒng)運作流程珠移、圖譜應(yīng)用的優(yōu)勢弓乙、圖譜推薦的原理烙样、圖譜推薦的難點供大家參考了解遇绞。
什么是推薦系統(tǒng)
? ? ? 推薦系統(tǒng),正如它的字面信息一樣廊宪,就是通過推薦內(nèi)容滿足用戶個性化的需求浓瞪,解決信息過載的問題的系統(tǒng)懈玻。推薦系統(tǒng)根據(jù)形式的差異接入了不同的場景,在大家的日常生活中就無時不刻都在享受這它的便利乾颁,當(dāng)你一大早打開淘寶涂乌,掃一眼“猜您喜歡”,發(fā)現(xiàn)一個自己喜歡的寶貝钮孵,直接添加進購物車骂倘;打開今日頭條眼滤,看了下自己感興趣的新聞巴席,中間看到一個自己不了解的內(nèi)容,打開百度輸入后诅需,輸入框下面展示了幾個相關(guān)內(nèi)容...
? ? ? ? 根據(jù)推薦的形式能不能清晰地影響用戶的操作可以把推薦劃分為隱形推薦和顯性推薦漾唉。隱形推薦不會對用戶預(yù)期的操作產(chǎn)生影響荧库,如:新聞排序,搜索結(jié)果排序等在用戶不知不覺中給用戶展現(xiàn)赵刑;顯性推薦會改變用戶預(yù)期的操作分衫,如:輸入聯(lián)想、推薦問句等用戶可以根據(jù)推薦的內(nèi)容選擇自己期望的內(nèi)容般此。
? ? ? ? 另外蚪战,根據(jù)推薦的階段不同,也可以將推薦分為相關(guān)性推薦铐懊、預(yù)測式推薦邀桑、生成式推薦。相關(guān)性推薦根據(jù)用戶當(dāng)前信息科乎,召回相似度較高的內(nèi)容作為推薦的內(nèi)容壁畸;預(yù)測式推薦為根據(jù)用戶歷史信息,可以是用戶信息茅茂、操作記錄捏萍、購買記錄等,預(yù)測用戶可能感興趣的內(nèi)容空闲,作為推薦的內(nèi)容令杈;根據(jù)用戶的信息推薦,不管是相關(guān)性還是預(yù)測式的都會導(dǎo)致推薦的內(nèi)容隨用戶使用時長增加进副,變得內(nèi)容單一这揣,降低用戶的新鮮感,因此還需要生成一些無關(guān)的內(nèi)容作為推薦的補充影斑,以滿足用戶的新鮮感给赞,這就是生成式推薦。
推薦流程
? ? ? 推薦的過程可以簡單理解為三個步驟:召回矫户、過濾片迅、排序。首先系統(tǒng)根據(jù)獲取到的信息皆辽,召回適合推薦內(nèi)容柑蛇,獲取的信息可以是用戶的搜索記錄、購買記錄驱闷、評論等耻台。召回的內(nèi)容中有的是這個用戶不關(guān)注的,可能是他已經(jīng)買過了的寶貝或者已經(jīng)看過了的內(nèi)容空另,這會兒就需要根據(jù)過濾的條件盆耽,將不需要的內(nèi)容進行過濾。經(jīng)過過濾產(chǎn)生的推薦集還需要根據(jù)內(nèi)容的相關(guān)度進行排序,最后系統(tǒng)根據(jù)相關(guān)度的排序摄杂,將內(nèi)容分配到對應(yīng)的模塊坝咐,這樣用戶就能看到自己感興趣的內(nèi)容了。
? ? ? 有的系統(tǒng)也會將過濾放在第一步析恢,先根據(jù)條件過濾一些輸入信息墨坚,然后喂給推薦系統(tǒng)。這樣能夠減少推薦系統(tǒng)的計算量映挂,縮短推薦系統(tǒng)處理時間泽篮,提高推薦系統(tǒng)的即時性,但是這么做也會存在一些問題:減少輸入導(dǎo)致類別特征的內(nèi)容丟失柑船,影響推薦系統(tǒng)的內(nèi)容數(shù)量與質(zhì)量
知識圖譜在推薦應(yīng)用的優(yōu)勢
? ? ? 知識圖譜就是實體的屬性關(guān)系網(wǎng)咪辱,能夠很好的表達實體之間的關(guān)系,這個關(guān)系可以是具有同樣屬性的實體椎组,也可以是上下位的實體關(guān)系油狂。對于推薦系統(tǒng)來說,這個圖譜中的實體不僅僅是推薦的內(nèi)容寸癌,還包含了用戶的信息专筷,或者是標(biāo)簽,所以知識圖譜很好的提供了一個推薦對象的關(guān)系網(wǎng)蒸苇。通過知識圖譜磷蛹,推薦系統(tǒng)可以很好給你推薦關(guān)聯(lián)內(nèi)容,例如溪烤,你購買了手機味咳,那么它就可以給你推薦充電寶、保護套檬嘀、鋼化膜等槽驶,因為在它的腦子中知道這些產(chǎn)品是手機的附件。也可以通過用戶搜索的藍(lán)牙耳機鸳兽,給他推薦同樣具有藍(lán)牙功能的耳機掂铐。
圖譜在推薦中的應(yīng)用
我們通過一個簡單的商品圖譜和大家講解圖譜推薦的遍歷邏輯。這是一個數(shù)碼垂類下的耳機的簡化商品圖譜揍异。
下位實體遍歷
? ? ? 下位關(guān)系是相關(guān)性最強的關(guān)系全陨,通常包含的含義是下一步操作、必要條件衷掷,例如:買了手機就會買手機殼辱姨、買了汽車就會買玻璃水等。不過也不是所有的下位關(guān)系都是能放置在推薦序列的前列中的戚嗅,例如:筆記本貼紙與筆記本相關(guān)雨涛,但是不是大家都會貼筆記本貼紙碗旅,所以下位關(guān)系也存在低概率的情況,這部分就會被其他高概率的遍歷邏輯給擠到較后的排列中镜悉。在本文的
組合屬性遍歷
? ? ? 在圖譜中有的實體由多個相同的父實體連接,這種實體之間通常具有強相關(guān)性医瘫,就好比是你同父母的親兄弟侣肄,這種推薦也是應(yīng)用的最多的。在下面這個實例中就可以理解該用戶為bose的忠實用戶醇份,計劃購買它的耳機稼锅,那么我們根據(jù)用戶搜索QC30的記錄,推薦QC35僚纷、QC25等結(jié)果矩距,這樣就既能夠提高成交的可能性,也能夠?qū)崿F(xiàn)更高的客單價怖竭,實現(xiàn)商家锥债、平臺的雙贏。
同屬性遍歷
? ? ? 除了上面兩種相關(guān)性較強的遍歷邏輯之外痊臭,相同父實體的子實體也具有相關(guān)性哮肚,但是我們需要注意當(dāng)一個實體具有多個父實體的情況下,不是所有的父實體都適合被往下遍歷广匙,例如:用戶咨詢QC30允趟,那么我們給它推薦bose的家庭音響解決方案就不合適,因為用戶本質(zhì)需求只是購買耳機鸦致。
二元實體遍歷
? ? ? 二元實體遍歷適合同類父實體的場景潮剪,同類的父實體通常表示這兩個產(chǎn)品是一個互補或者相似的含義,例如:用戶咨詢QC30分唾,那么他可能需要一個MP4來搭配他的耳機抗碰,同樣的情況還有鼠標(biāo)-鍵盤、短袖-短褲等绽乔。
多路徑遍歷對比
? ? ? 優(yōu)于圖譜中實體之間的關(guān)系是網(wǎng)狀的改含,所以在遍歷時存在兩個實體之間可以通過多種遍歷邏輯推理得到。那么我們就需要采取一種方式來對比那種遍歷邏輯的結(jié)果才是我們應(yīng)該采用的迄汛。一般會根據(jù)邊的權(quán)重計算得到兩個實體的相關(guān)度捍壤。
如何過濾
根據(jù)推薦系統(tǒng)生成的推薦序列過濾推薦結(jié)果,這個根據(jù)不同業(yè)務(wù)方的需要會有很大的差別鞍爱,這里就簡單說明一些通用的實例
時間區(qū)間內(nèi)已經(jīng)發(fā)生期望操作的結(jié)果
? ? 期望操作是指用戶使用產(chǎn)品時鹃觉,我們期望用戶最終實現(xiàn)的行為,可能是點擊睹逃、購買等盗扇。如果用戶已經(jīng)對推薦的內(nèi)容發(fā)生了期望操作祷肯,那么繼續(xù)推薦這個內(nèi)容,無疑會浪費有效面積疗隶,導(dǎo)致客單量降低佑笋。為了避免這種情況,推薦系統(tǒng)會針對不同的推薦內(nèi)容設(shè)置一個時間區(qū)間斑鼻,在這個時間區(qū)間內(nèi)已經(jīng)產(chǎn)生過期望操作的就不再進行推薦蒋纬,例如,服飾可以設(shè)置為1個月坚弱,快消品則可以設(shè)置更短的時間限制蜀备。
展示未產(chǎn)生期望操作的結(jié)果
一千個讀者就有一千個哈姆雷特,面對一千個用戶荒叶,推薦系統(tǒng)的結(jié)果肯定不可能都是一千個都是滿意的碾阁,所以當(dāng)推薦的內(nèi)容用戶沒有產(chǎn)生期望操作時,系統(tǒng)可以認(rèn)為該推薦結(jié)果對于這個用戶是弱關(guān)聯(lián)性推薦或者說是無效推薦些楣,那么系統(tǒng)在再次生成推薦序列是就可以將其過濾脂凶,讓其他用戶可能感興趣的結(jié)果補充進行展示。
同類型的結(jié)果
當(dāng)生成的推薦序列中已經(jīng)存在很多的同類產(chǎn)品時愁茁,我們也需要進行過濾艰猬。同類的結(jié)果,用戶只會對其中的幾個結(jié)果產(chǎn)生操作埋市,如果過多地展示同類的內(nèi)容冠桃,就會導(dǎo)致推薦的內(nèi)容豐富度不夠。一般同類的結(jié)果道宅,推薦系統(tǒng)只會保留其中相關(guān)度最高的幾個食听,并且在展示上會將同類結(jié)果控制放置間隔,避免一起出現(xiàn)污茵。
圖譜推薦指標(biāo)
圖譜更新前都需要評估相對的效果樱报,只有相對效果優(yōu)與原先的結(jié)果,圖譜才能上線泞当。評估相對結(jié)果的指標(biāo)可以分為服務(wù)指標(biāo)和業(yè)務(wù)指標(biāo)迹蛤。服務(wù)指標(biāo)是反映圖譜服務(wù)效果的指標(biāo),都是一些客觀數(shù)據(jù)襟士;業(yè)務(wù)指標(biāo)是與業(yè)務(wù)相關(guān)聯(lián)的盗飒,反映的是服務(wù)上線后的服務(wù)效果的指標(biāo)。
服務(wù)指標(biāo):實體識別準(zhǔn)確率=實體解析正確數(shù)/用戶問句總數(shù)
? ? ? ? ? ? ? ? ? 實體識別召回率=實體解析正確數(shù)/相關(guān)實體總數(shù)
? ? ? ? ? ? ? ? ? 內(nèi)容相關(guān)度=用戶評分/推薦數(shù)量? ? ? ? ? ? ? ? ?
業(yè)務(wù)指標(biāo):展現(xiàn)點擊比=用戶點擊數(shù)/展現(xiàn)數(shù)量
? ? ? ? ? ? ? ? ? 轉(zhuǎn)化率=用戶產(chǎn)生期望操作數(shù)/展現(xiàn)數(shù)量
圖譜應(yīng)用的難點
知識圖譜雖然在推薦系統(tǒng)中應(yīng)用存在優(yōu)勢陋桂,但是在實際應(yīng)用中會因為它的種種難點被限制應(yīng)用逆趣,下面和大家一起講講圖譜應(yīng)用的困難。
知識圖譜schema維護
? ? ? 在推薦系統(tǒng)中應(yīng)用的圖譜都是大規(guī)模的圖譜嗜历,實體都是在萬級的宣渗,像阿里的商品圖譜甚至達到了十億級抖所。那么大的圖譜完全由人工運營維護肯定是不現(xiàn)實的,實際上這些圖譜也的確由系統(tǒng)自動進行維護痕囱,人工只是輔助進行運營田轧。系統(tǒng)通過現(xiàn)成的表結(jié)構(gòu)數(shù)據(jù)、機器閱讀理解抽取的實體與關(guān)系自動構(gòu)建知識圖譜鞍恢。例如:阿里的商品圖譜部分?jǐn)?shù)據(jù)來源就是寶貝下面的商品詳情:
? ? ? ? 但是目前的技術(shù)還不能做到100%的自動構(gòu)建準(zhǔn)確傻粘,因此構(gòu)建后如何篩選出有問題的關(guān)系就需要人工借助工具進行調(diào)整了,常見的需要人工糾正的有:
? ? ? ? 1.同寶貝在不同商家出現(xiàn)不同詳情的情況有序,需要人工二次確認(rèn)
? ? ? ? 2.寶貝詳情變化后,需要人工更新
推薦的時效性差
? ? 圖譜的量級達到了一定岛请,如何快速的萬級億級的實體和屬性中找到對應(yīng)的數(shù)據(jù)旭寿,對于模型來說是一個十分艱巨的工作。另外大規(guī)模的圖譜崇败,實體之間的關(guān)系密切盅称,如果做到的二元遍歷,那么延伸出的實體也是指數(shù)量級的后室,無法直接拿來做推薦缩膝。所以圖譜推薦的時效性較差,不適合應(yīng)用于需要實時返回推薦結(jié)果的場景岸霹,所以圖譜推薦往往應(yīng)用在用戶使用的間隙生成推薦的內(nèi)容疾层。例如:資訊推薦、猜您喜歡等
在線維護困難
? ? 圖譜中實體的關(guān)系十分緊密贡避,這就導(dǎo)致了修改一個實體或者一條邊痛黎,那對應(yīng)的變化可能是幾百個實體和邊,一個小小的改動可能就是蝴蝶效應(yīng)刮吧,而且恢復(fù)困難湖饱。所以圖譜服務(wù)都是通過本地數(shù)據(jù)應(yīng)用于中臺服務(wù)中,需要更新圖譜時杀捻,再將本地運營的圖譜發(fā)布到服務(wù)的本地數(shù)據(jù)庫中應(yīng)用井厌。
如何避免臟數(shù)據(jù)對圖譜更新的影響
? ? ? 在購物網(wǎng)站推薦的場景中,圖譜中實體與實體之間的關(guān)系是會有概率值來表示兩個實體之間的相關(guān)度的致讥。這個概率值會根據(jù)用戶的購買操作記錄自動評估實體與實體之間的概率仅仆。但是有時新店為了提高信譽和寶貝的評價,就會發(fā)生刷單的行為垢袱。刷榜單的行為會導(dǎo)致圖譜中概率邊的數(shù)值被影響蝇恶,產(chǎn)生不準(zhǔn)確的數(shù)值,導(dǎo)致推薦出相關(guān)度不足的結(jié)果惶桐。這種情況一般通過清洗訂單數(shù)據(jù)撮弧,只將高置信的購買記錄作為圖譜更新的評估數(shù)據(jù)潘懊。
結(jié)語
基于知識圖譜的推薦只是推薦系統(tǒng)的一部分,推薦系統(tǒng)是一個復(fù)雜的系統(tǒng)贿衍。如今在互聯(lián)網(wǎng)的下半場授舟,推薦系統(tǒng)越來越被重視,圖譜在推薦系統(tǒng)中的應(yīng)用目前還比較淺贸辈,期望圖譜的落地更加成熟释树。
歷史文章: