聊聊召回和NLP在推薦系統(tǒng)中的作用
本文轉(zhuǎn)載自微信公眾號(hào)「虞大膽的嘰嘰喳喳」,作者虞大膽。轉(zhuǎn)載本文請(qǐng)聯(lián)系虞大膽的嘰嘰喳喳公眾號(hào)。
推薦系統(tǒng)是有技術(shù)壁壘的,涉及到各類算法和機(jī)器學(xué)習(xí),工程實(shí)現(xiàn)就更難了。所以我們選擇了神策智能推薦服務(wù),但感覺效果不太好,通過他們提供的幾個(gè)pdf,有了個(gè)大概的概念,發(fā)現(xiàn)召回是推薦系統(tǒng)中的重點(diǎn)。
推薦系統(tǒng)的作用:降低信息過載,那如果本身每天可推薦的內(nèi)容不多呢;發(fā)掘長(zhǎng)尾,這個(gè)是核心,能讓好文章有更多的曝光機(jī)會(huì);提高轉(zhuǎn)化率,是提升dau?還是用戶粘性?
如何衡量推薦系統(tǒng)的好壞?可能人的感受更重要,但無法量化;如果利用CTR,一定程度上能反應(yīng)好壞(點(diǎn)擊后不看估計(jì)也沒啥用),點(diǎn)擊后的反饋可能更精準(zhǔn),比如瀏覽時(shí)長(zhǎng),做出準(zhǔn)確的評(píng)論等等。
推薦系統(tǒng)整個(gè)過程主要包括兩點(diǎn),首先就是召回,也就是粗排,篩選出相對(duì)較小的候選集;其次就是排序,也就是精排,對(duì)物品進(jìn)行打分。
推薦系統(tǒng)就是建立任何物品之間的關(guān)系,核心就是數(shù)據(jù),包括三個(gè)部分:首先就是用戶行為,看文章、點(diǎn)收藏都是;其次就是物品信息;最后通過行為和物品信息,形成用戶畫像,這個(gè)畫像可能就是常規(guī)意義上的畫像、標(biāo)簽化,但在機(jī)器學(xué)習(xí)中,它是隱式的,是向量化的,人無法直接理解。
接下去說說神策推薦系統(tǒng)提到的四種召回方法,見下圖:
首先強(qiáng)調(diào)基于深度用戶行為分析的召回,由于是向量化,所以很難向人解釋它的優(yōu)劣,太黑盒了;主要分為兩個(gè)分支,協(xié)同過濾(基于矩陣分解)很常見了,缺點(diǎn)就是無法解決新內(nèi)容冷啟動(dòng)問題,以及時(shí)效性不足;
其次就是深度學(xué)習(xí)召回模型(HMF),借鑒了facebook論文,主要提到四點(diǎn)好處,更全面的行為表達(dá),比如結(jié)合點(diǎn)擊、收藏、搜索等多種行為,能更全面地表示用戶行為偏好;能夠加入一些用戶畫像放到模型中;考慮用戶行為順序(感覺挺牛逼的);組合各類復(fù)雜特征。
其次就是自然語言技術(shù),神策解釋是為了解決新內(nèi)容的冷啟動(dòng)問題,開始我有點(diǎn)疑惑,后來才明白,一篇新內(nèi)容出來,立刻通過NLP技術(shù),從中找到一些標(biāo)簽化(比如關(guān)鍵詞)的內(nèi)容,這樣結(jié)合用戶畫像,快速推薦給用戶。
但可惜的是神策推薦在我們業(yè)務(wù)場(chǎng)景中,居然沒有用到NLP技術(shù)。最近也看一些文章,純粹介于內(nèi)容推薦也能弄出一個(gè)好的推薦系統(tǒng)。
比如通過分詞、主題分析、word2vec(詞向量隱式關(guān)系的分析),有了這些關(guān)鍵“元素”,可以用在相關(guān)性計(jì)算、召回、排序等過程。
如果沒有NLP技術(shù),哪怕人為(編輯或用戶)打分類和標(biāo)簽(更細(xì)分的分類)也行,雖然不智能,也不精準(zhǔn),但也能代表一些民意。
不過圖片和視頻進(jìn)行語義分析就難了,要引入一些其他解決方案。
最后神策提到了NLP技術(shù)的三個(gè)好處:
利用自然語言技術(shù),得到能表示每篇文章主題內(nèi)容的語義向量
根據(jù)語義向量,推薦用戶喜歡的主題的文章
只需要分析文章內(nèi)容,不需要用戶行為,能很好的推薦新文章,解決性能內(nèi)容冷啟動(dòng)問題
接著就是基于用戶畫像的召回,首先就是利用已有的關(guān)注(不是好友之間的關(guān)注)關(guān)系,你在APP上的每個(gè)行為都隱藏了用戶偏好,比如搜索某個(gè)關(guān)鍵詞(是不是表明想看某些相關(guān)的文章?所以文章NLP的分析多么重要),再比如點(diǎn)擊某個(gè)標(biāo)簽(比如軍事標(biāo)簽,是不是說明想看軍事相關(guān)的文章),或者收藏了某篇文章(是不是可以推薦類似的文章)。
其次就是基于標(biāo)簽構(gòu)建用戶畫像,用戶有很多常規(guī)意義上的畫像,可解釋的,也能表明他的一些興趣偏好,比如性別、經(jīng)常發(fā)的文章、站內(nèi)提供的可選擇性標(biāo)簽,反過來,通過推薦系統(tǒng)不斷完善用戶畫像,從而進(jìn)一步做精準(zhǔn)推薦。
最后就是多源數(shù)據(jù),比如入門數(shù)據(jù),編輯推薦文章,KOL文章,官方文章等等,這些在召回的時(shí)候很有用,在神策中是以權(quán)重體現(xiàn),是否說明這用于排序?而非召回?
為什么說神策智能推薦還不成熟,比如沒有來自于用戶的負(fù)反饋(我不喜歡),沒有使用NLP技術(shù)(對(duì)于我們這樣的內(nèi)容APP,這個(gè)太重要了),不理解業(yè)務(wù)型態(tài)(無法針對(duì)性的調(diào)優(yōu),這可能是垂直sass解決方案的弊端,太機(jī)器化了),結(jié)合它們的控制臺(tái),只能看到熱門召回和基于行為的召回,都是默認(rèn)策略。既然是個(gè)性化推薦,它怎么證明做到了個(gè)性化推薦,也擔(dān)心最后的推薦效果退化到了編輯推薦。
最后好好理解這句話,數(shù)據(jù)和特征決定了機(jī)器學(xué)習(xí)的上限,而模型和算法只是逼近這個(gè)上限而已