人工智能案例分析:Quora 采用的機器學習應用與技術(shù)
【第一類機器學習技術(shù):排名算法】
本文引用地址:http://m.butianyuan.cn/article/201808/385676.htm排名可以說是網(wǎng)上最重要的機器學習應用之一了。大大小小的公司都圍繞著排名建立起業(yè)務模型,例如,查詢字符串返回的結(jié)果。Quora 在不同的環(huán)境、為了不同的目的,使用了不同的排名算法。一個有趣的例子就是答案排名。假設一個問題有好幾個答案,我們感興趣的是,如何對它們降序排列,使得“最佳”答案在最前,而最差答案在最后。確定一個問題答案的正確排序涉及到多種特征。要確定順序,首先我們要確定Quora如何定義“好答案”。要得出這個定義,有個好辦法是研究一下《Quora認為什么樣的答案是有用的》這篇帖子,里面會提到答案要“真實”、“可重用”、“給出解釋”、“格式良好”等等標準。我們的機器學習算法實現(xiàn)了一種特殊的機器學習排名方法,使用了多種特征,試圖將與上述抽象概念相關(guān)聯(lián)的多個維度進行編碼。例如,我們使用了描述寫作質(zhì)量信息的特征,也使用了描述該答案收到的互動情況的特征(如贊、踩以及展開數(shù)量)。我們還使用了與答案作者相關(guān)的特征,比如,他在問題領(lǐng)域的專業(yè)性。在Quora,還有很多其他的排名應用,有些甚至不為人察覺。例如,對于一個答案點贊的用戶名也是排序后顯示的,目的是要將我們認為對于該問題/答案最有見識的用戶排在最前。同樣,對于特定問題顯示可能的回答者時,那些推薦的用戶也是排過序的。讓我們來仔細看看機器學習排名算法的兩個特例:搜索以及個性化排名。【機器學習排名算法特例一:搜索算法】對于Quora這樣的應用,搜索算法可以被視為排名的另一個應用。實際上,搜索可以分解為兩個步驟:文字匹配和排名。第一步,以某種方式返回與搜索框輸入的查詢字符串匹配的文檔(問題)。然后,這些文檔作為第二步的候選問題,進行排名,以使點擊概率等方面得到優(yōu)化。第二步中很多的特征可以使用,它確實是另一個機器學習排名算法的例子。包括已在最初文字匹配階段使用過的簡單文字特征,以及其它與用戶行為相關(guān)的特征,或是如流行度等對象屬性。【機器學習排名算法特例一:個性化排名】在如上文描述的一些場景中,也許一個對所有用戶的全局最優(yōu)排名就夠用了。換句話說,我們可以假定,對于給定問題,最“有幫助”答案的排序?qū)τ陂喿x答案的用戶來說是獨立的。然而,這一假設在很多重要場合并不成立。場合之一就是Quora Feed,從根本上說它是任意登入這一產(chǎn)品的用戶都可見的主頁。在這個主頁上,我們試圖為特定的用戶在特定的時間挑選最“有趣”的故事,并進行排名(見下例)。這就是一個典型的機器學習個性化排名,與Netflix主頁對電影和電視劇進行排名類似。而Quora的用例比Netflix電影電視劇排名更具挑戰(zhàn)性。事實上,我們的用例可以看作是Netflix、Facebook以及Google News優(yōu)化個性化排名的結(jié)合體。一方面,我們要保證排名靠前的故事在主題上與用戶相關(guān)。另一方面,Quora與用戶之間也有明確的關(guān)系。你在“社交網(wǎng)絡”上的行為也應當對排名有所影響。再次,Quora上的故事有時或許與正在進行的潮流事件相關(guān)聯(lián)。及時性是另一個應當影響模型決策的因素,來決定一個故事的排名應當提升還是降低。正因如此,Quora的個性化排名涉及到各種不同的特征。下面列出若干:1、問題/答案的質(zhì)量;2、用戶感興趣的主題;3、該用戶關(guān)注的其他用戶;4、熱門事件 … 其實,請務必記住,在Quora我們不僅對如何吸引用戶來閱讀有趣的內(nèi)容感興趣,也對將問題提交給能寫出有趣內(nèi)容的用戶感興趣。因此,我們必須將涉及答案趣味性的特征以及針對問題的特征都納入。為了得到這些特征,我們使用從用戶、作者以及對象(如答案/問題)行為推導出的信息。這些行為都被考慮在內(nèi)并累計在不同的時間窗口內(nèi),并提供給排名算法。實際上,可以得到很多不同的特征來加入我們的個性化推送模型,而且我們一直嘗試加入更多的特征。對于我們的 Feed 排名應用,另一個重要的考慮是我們需要能對用戶的行為、觀感,甚至是熱門事件做出我們數(shù)以百萬的問題和答案還在不停增長,因此我們不能試圖為每一個用戶進行實時排名。為了優(yōu)化體驗,我們實現(xiàn)了一個多段式排名解決方案,其中提前就對候選者進行選擇和排序,之后真正執(zhí)行最終的排名。
【第二類機器學習技術(shù):推薦算法】
上述的個性化排名已經(jīng)是推薦的一種形式了。類似的方法用在不同的案例中。例如,廣受歡迎的 Quora 郵件精選包括了一系列為你挑選并推薦的故事。這是一個不同的機器學習排名模型,根據(jù)不同的目標函數(shù)進行優(yōu)化。除了排名算法,我們在產(chǎn)品的各個不同部分有其它的個性化推薦算法。例如,在好幾處地方,你都可以看到人物或主題的推薦?!就扑]的依據(jù):相關(guān)問題】另一個推薦的源由是為了給用戶展示與當前問題有某種關(guān)系的其他問題。相關(guān)問題由另一個機器學習模型來確定的,它考慮多種不同特征,例如,文字相似性、共享數(shù)據(jù)(co-visit data),或是如主題等相同的特征。與流行度、或是問題質(zhì)量相關(guān)的特征也要考慮。有必要指出,一個好的“相似問題”推薦,不僅是一個條目與源問題有多相似,還包括目標問題的“趣味性”。實際上,對于任何一個“相關(guān)條目”機器學習模型,最麻煩的問題是在相似性和其它關(guān)聯(lián)性因素間進行權(quán)衡。相關(guān)問題這個模型對于吸引登出用戶從外部搜索中訪問問題頁面特別有效。這也是為何至今這一推薦模型并未個性化的原因之一?!就扑]的極端情況:重復問題】重復問題是上述相關(guān)問題的極端情況。對于Quora而言,這是一個難題,因為我們要保證用戶回答一個特定問題的精力會被分享,并且被集中到正確的地方。同樣,有必要為想要在網(wǎng)站上提問的用戶指出已有的答案。所以,我們花費了大量精力來檢測重復問題,特別是在發(fā)起問題的階段。我們現(xiàn)有的解決方案是基于使用重復/非重復標簽訓練的二元分類器。我們使用多種信號量,包括從文本向量空間模型到基于使用量的特征。
【第三類機器學習技術(shù):用戶可信度/專業(yè)性推斷】
在Quora這樣的應用里,掌握用戶的可信度是非常重要的事情。實際上,我們并不僅僅完全局限于回答問題本身,還對其與相關(guān)主題的關(guān)聯(lián)性感興趣。某一用戶也許對于某些主題知識淵博,但對于其它領(lǐng)域就不一定了。Quora使用機器學習技術(shù)來推斷用戶的專業(yè)性。我們不僅了解用戶對于給定主題寫了什么答案,也知道這些答案得到了多少贊、多少踩,以及什么樣的評論。我們還知道這個用戶在這個領(lǐng)域得到了多少“推薦”。推薦(Endorsements)是從其他用戶角度對于某人專業(yè)性非常明確的認可。另外還有件要事要記住,可信度/專業(yè)性通過網(wǎng)絡傳播,這也需要被算法考慮。例如,如果一位機器學習專家對我在機器學習領(lǐng)域的回答給出一個贊,它的分量應該超過該領(lǐng)域非專家的隨機用戶給出的贊。這也同樣適用于推薦以及其它用戶間特征。
【第四類機器學習技術(shù):垃圾信息檢測與節(jié)制(Moderation)】
像Quora這樣以保持內(nèi)容高質(zhì)量為傲的網(wǎng)站,必須對使用垃圾、惡意或非常低質(zhì)量的內(nèi)容愚弄系統(tǒng)的行為非常警惕。純粹的人工審閱模式無法擴展。而問題的解決之道,正如你猜測的那樣,是使用機器學習模型來檢測這些問題。Quora有好些個模型來檢測內(nèi)容質(zhì)量相關(guān)的問題。這些分類器的輸出大部分情況下不會直接用作決策,而是將這些問題/答案提供給節(jié)制隊列,然后進行人工審閱。
【第五類機器學習技術(shù):內(nèi)容創(chuàng)建的預測】
對 Quora 來說,有一點非常重要,要記?。何覀儗ο到y(tǒng)很多部分進行優(yōu)化,不只是為了吸引讀者,也是為了產(chǎn)出最好的質(zhì)量、最受歡迎的內(nèi)容。因此,我們有一個機器學習模型來預測某一用戶撰寫某一問題答案的可能性。這使得我們的系統(tǒng)能用多種方式給予這些問題優(yōu)先權(quán)。其中之一就是系統(tǒng)的自動 A2A(Ask to Answer)問題通過提示發(fā)送給潛在的回答者。上述其它的排名系統(tǒng)也使用這個模型來預測概率。
【核心技術(shù)方案:建立有效靈活的模型】
Quora對于前文所述不同的案例嘗試過很多不同的模型。有時,我們使用開源實現(xiàn),但更多時候我們最后實現(xiàn)了更有效、更靈活的內(nèi)部版本。我不會討論模型的細節(jié),但會列出我們系統(tǒng)使用的模型:1、邏輯回歸;2、彈性網(wǎng)絡;3、梯度增強決策樹;4、隨機森林;5、神經(jīng)網(wǎng)絡;6、LambdaMART;7、矩陣分解;8、向量模型以及其它自然語言處理技術(shù)投入
綜上所述,Quora運用機器學習的方式多種多樣。我們使用這些機器學習方法已經(jīng)取得了非常重大的收益,我們堅信未來還會有更多收益,并且我們對于新技術(shù)還會持續(xù)投入。另外,在不久的將來還有激動人心的機器學習新應用,我們已經(jīng)有所思考了。這些新應用包括廣告排名、機器翻譯以及其它自然語言處理領(lǐng)域,這些都將直接成為我們計劃馬上添加的產(chǎn)品新特征。
評論