Quora是如何做推薦的,quora怎么才能使用Quora是如何做推薦的知乎聯(lián)合創(chuàng)始人張亮在值乎上問了俞軍老師一個(gè)問題,「以您的使用體驗(yàn)看,您覺得知乎現(xiàn)在最急需做的三到五項(xiàng)產(chǎn)品改進(jìn)是哪些」俞軍老師的回答中給的第一個(gè)意見就是,「個(gè)性化內(nèi)容的挖掘和推快遞,我知道知乎里有大量內(nèi)容是我感興趣的,但知乎推快遞的內(nèi)容只有很少是我愿......
知乎聯(lián)合創(chuàng)始人張亮在值乎上問了俞軍老師一個(gè)問題,「以您的使用體驗(yàn)看,您覺得知乎現(xiàn)在最急需做的三到五項(xiàng)產(chǎn)品改進(jìn)是哪些」俞軍老師的回答中給的第一個(gè)意見就是,「個(gè)性化內(nèi)容的挖掘和推快遞,我知道知乎里有大量內(nèi)容是我感興趣的,但知乎推快遞的內(nèi)容只有很少是我愿意點(diǎn)擊的,總讓我有種入寶山而空回的感覺,這方面網(wǎng)易云音樂、淘寶、今日頭條都是不錯(cuò)的學(xué)習(xí)對(duì)象?!鼓敲?,有著“美版知乎”之稱的Quora是如何做推薦的呢以下內(nèi)容選自RecsysChina。
Quora的VP Engineering機(jī)器學(xué)習(xí)大牛Xavier Amatriain,曾在WWW2016大會(huì)的Question Answering Workshop做了一個(gè)報(bào)告,Machine Learning for QA Sites:The Quora Example[1]。
Quora的Mission:To share and grow the worlds knowledge。
Quora主要考慮的三個(gè)因素:Relevance、Quality和Demand。
Quora核心的數(shù)據(jù)模型及其之間的關(guān)系:
Feed Ranking
Quora做推薦的一個(gè)最核心問題就是Personalized Feed Ranking。Quora是以問題、答案與主題為核心把「知識(shí)」串聯(lián)起來,然后基于用戶的頂和踩等動(dòng)作來劃分內(nèi)容質(zhì)量,最后再通過人和問題的Follow關(guān)系讓知識(shí)在社區(qū)內(nèi)流動(dòng)起來。而個(gè)人Feed正是這種「流動(dòng)」的最主要的載體。Xavier說Quora做Feed Ranking的難度要比Netflix大,這也正常,沒有更大的挑戰(zhàn)想來Xavier也不會(huì)跳槽是吧。Quora Feed Ranking的首要目標(biāo)是確保推快遞進(jìn)用戶Feed的內(nèi)容應(yīng)該是和用戶興趣高度相關(guān)的,其次還需要考慮的包括用戶之間的Follow關(guān)系以及互動(dòng),Xavier管這個(gè)叫做social relevance,另外還有時(shí)間因素,比如一些和熱點(diǎn)事件相關(guān)的問答,也應(yīng)該及時(shí)地推快遞進(jìn)用戶Feed。
1.目標(biāo):Present most interesting stories for a user at a given time
·Interesting=topical relevance+social relevance+timeliness
·Stories=questions+answers
2.主要使用的是個(gè)性化的learningtorank方法
3.Xavier確認(rèn)了一點(diǎn),相比于時(shí)間排序(timeordered),相關(guān)度排序大大提升了用戶參與度。
4.面臨的挑戰(zhàn):
·potentially many candidate stories
·realtime ranking
·optimize for relevance
下圖是Quora做Feed Ranking最最基礎(chǔ)的數(shù)據(jù)構(gòu)成,Quora管這個(gè)叫做「impression logs」。
圍繞這些基礎(chǔ)行為,Quora定義的Relevance函數(shù)如下。
簡單講就是使用一個(gè)「行為加權(quán)函數(shù)」來預(yù)測用戶對(duì)一個(gè)story的感興趣程度。有兩種可選的計(jì)算方法,一種是把所有行為弄到一個(gè)回歸模型里面直接預(yù)測最終值,另外一種就是先分別預(yù)測每個(gè)動(dòng)作的可能性(比如頂、閱讀、分享等)然后再綜合起來加權(quán)求和。第一種簡單,但可解釋性稍差,第二種可以更好的利用每個(gè)動(dòng)作信號(hào),但需要給每個(gè)動(dòng)作配一個(gè)分類器,計(jì)算消耗大。
Quora主要使用的三類模型如下:
另外Xavier也強(qiáng)調(diào)了特征工程的重要性,在這塊下功夫搞一下對(duì)最終能得到一個(gè)好的ranking結(jié)果非常有幫助,如果能夠?qū)崟r(shí)在線的更新特征就更好了,這樣可以更及時(shí)地對(duì)用戶的行為作出響應(yīng)。Quora最主要的特征包括:
·user(e.g.age,country,recent activity)
·story(e.g.popularity,trendiness,quality)
·interactions between the two(e.g.topic or author affinity)
從整體框架來看,Quora的Feed Ranking也沒有什么太特別的地方,基本上也是業(yè)界的標(biāo)準(zhǔn)打法。Quora比較特別的是它的數(shù)據(jù)模型相對(duì)其他網(wǎng)站更復(fù)雜,之間的關(guān)系也更多樣化。比如從用戶角度看,既可以follow其他用戶User,又可以follow問題Question,還可以follow主題Topic。
1.Follow用戶接收到的信息范圍更廣也更多樣化,驚喜內(nèi)容很可能就是來自于自己關(guān)注的有趣的用戶,但也可能最容易制造不相關(guān)的內(nèi)容噪音,這塊的最重要工作是用戶專業(yè)度的評(píng)估。
2.Question/Answer是Quora最核心的內(nèi)容元素,也是驅(qū)動(dòng)Quora體系里知識(shí)流動(dòng)的原力,這塊的主要工作是引導(dǎo)更多的高專業(yè)度用戶來貢獻(xiàn)優(yōu)質(zhì)答案,另外就是如何激發(fā)生產(chǎn)出更多的好問題(甚至是自動(dòng)生成問題),要計(jì)算answer ranking,還有要做反sapm的工作。
3.Topic是對(duì)一個(gè)主題內(nèi)容的聚合,Topic在Quora的信息架構(gòu)里面承載著極其重要的角色,是知識(shí)結(jié)構(gòu)的骨架,Quora管這個(gè)叫做Topic Network,如何構(gòu)建Topic Network本身就是一個(gè)非常大的挑戰(zhàn),另外還需要解決的問題包括,如何把Topic下(潛在)優(yōu)質(zhì)的問題發(fā)掘出來,以及如何把水問題降權(quán)和過濾/合并重復(fù)問題等。
圍繞著這些核心問題,Quora分別都進(jìn)行了更深入的工作。Answer Ranking
Goal:Given a question and n answers,come up with the ideal ranking of those n answers.
Quora主要考慮了下面三大維度來進(jìn)行Ranking計(jì)算,每個(gè)大維度下面又包含了很多的features。
4.答案內(nèi)容本身的質(zhì)量度。Quora對(duì)什么是「好的答案」有明確的指導(dǎo)[2],比如應(yīng)該是有事實(shí)根據(jù)的,有可復(fù)用價(jià)值的,提供了解釋說明的,進(jìn)行了好的格式排版的等等。
5.互動(dòng),包括頂/踩、評(píng)論、分享、收藏、點(diǎn)擊等等。
6.回答者本身的一些特征,比如回答者在問題領(lǐng)域的專業(yè)度。
另外這塊的工作也包含非個(gè)性化的與個(gè)性化的兩部分,某些類問題的排序是非個(gè)性化的,最好的答案對(duì)所有用戶而言都是一致的,而另外一些問題則是個(gè)性化的,對(duì)于每個(gè)人而言最好的答案會(huì)有自己個(gè)性化的判斷。總之,Answer Ranking對(duì)Quora非常重要,這塊Quora做得很細(xì)致,Quora的blog上有一篇專門的文章講這個(gè),有興趣的朋友可以去看看原文[3]。
The Answer Ranking system endtoend
Ask2Answers
A2A是Quora產(chǎn)品里面非常重要的一個(gè)功能,本來Quora是可以直接把相關(guān)問題推薦給系統(tǒng)認(rèn)為的合適的回答者的,Quora最開始也是這么做的,但系統(tǒng)自動(dòng)做這事兒顯然不如發(fā)動(dòng)群眾人肉邀請(qǐng)回答來得感覺好,A2A操作增強(qiáng)了儀式感,讓被邀請(qǐng)者有種被人需要的感覺,心理上很滿足,另外這也是一種社交動(dòng)作,社交的精髓之一就是為用戶制造「裝逼」的便利,回答問題前很隨意的「謝邀/瀉藥」,一切盡在不言中了。這個(gè)功能看似很簡單,Quora也是下了功夫的,Quora把A2A這事model成了一個(gè)機(jī)器學(xué)習(xí)問題:Given a question and a viewer rank all other users based on how「wellsuited」they are。其中「wellsuited」=likelihood of viewer sending a request+likelihood of the candidate adding a good answer,既要考慮瀏覽用戶發(fā)快遞邀請(qǐng)的可能性,又要考慮被邀請(qǐng)者受邀回答的可能性。Quora的blog上也有一篇文章詳細(xì)講解了他們的做法[4]。
Topic Network
Quora花了很大力氣來正確引導(dǎo)用戶給內(nèi)容打標(biāo)簽,持續(xù)不斷堅(jiān)持這項(xiàng)工作的好處開始逐漸顯露出來了,他們發(fā)現(xiàn)[5],
隨著用戶群體的擴(kuò)大,Topic正在呈現(xiàn)出迅速多樣化的勢頭。
很多領(lǐng)域都自組織出了相當(dāng)不錯(cuò)的層級(jí)知識(shí)結(jié)構(gòu)。
Quora相信這種依靠社群來組織領(lǐng)域知識(shí)的方式是可行的。
User Trust/Expertise Inference
這是Quora另一件非常重要的事情,Quora需要找出某個(gè)領(lǐng)域的專家,然后通過產(chǎn)品引導(dǎo)這些專家在這個(gè)領(lǐng)域里貢獻(xiàn)更多的優(yōu)質(zhì)答案。Quora會(huì)考慮用戶在某個(gè)領(lǐng)域里回答問題的多少,接收到的頂、踩、感謝、分享、收藏及瀏覽等數(shù)據(jù)。另外還有一個(gè)很重要的是專業(yè)度的傳播效應(yīng),比如Xavier在推薦系統(tǒng)領(lǐng)域?qū)δ硞€(gè)答案頂了一下,那么這個(gè)答案作者在推薦系統(tǒng)領(lǐng)域很可能具備較高的專業(yè)度。
其他
其他相關(guān)的,包括推薦主題、推薦用戶、相關(guān)問題、重復(fù)問題、反Spam等等,Quora大量地在使用機(jī)器學(xué)習(xí)的方法來解決這些問題。
Quora最大的寶藏,就是這幾年在各個(gè)領(lǐng)域不斷積累下來的大量有價(jià)值的內(nèi)容,Quora自然也少不了對(duì)這些的挖掘,有篇文章叫Mapping the Discussion on Quora Over Time through Question Text[6],就是一個(gè)很好的挖掘數(shù)據(jù)價(jià)值的案例。
Facebook等幾個(gè)主題隨時(shí)間的變化情況
參考資料:
[1]http://www.slideshare.net/xamat/machinelearningforqasitesthequoraexample
[2]https://www.quora.com/WhatdoesagoodansweronQuoralooklikeWhatdoesitmeantobehelpful/answer/QuoraOfficialAccount
[3]https://engineering.quora.com/AMachineLearningApproachtoRankingAnswersonQuora
[4]https://engineering.quora.com/AskToAnswerasaMachineLearningProblem
[5]https://data.quora.com/TheQuoraTopicNetwork
[6]https://data.quora.com/MappingtheDiscussiononQuoraOverTimethroughQuestionText
特別聲明:以上文章內(nèi)容僅代表作者本人觀點(diǎn),不代表ESG跨境電商觀點(diǎn)或立場。如有關(guān)于作品內(nèi)容、版權(quán)或其它問題請(qǐng)于作品發(fā)表后的30日內(nèi)與ESG跨境電商聯(lián)系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號(hào)密碼登錄
平臺(tái)顧問
微信掃一掃
馬上聯(lián)系在線顧問
小程序
ESG跨境小程序
手機(jī)入駐更便捷
返回頂部