【編者按】本文是FREES互聯(lián)網(wǎng)團(tuán)隊(duì)成員覃超與徐萬(wàn)鴻進(jìn)行的一場(chǎng) Ask Me Anything。徐是前 Facebook新聞流排序組的資深工程師,在今年9月回國(guó)出任神州專車 CTO。本文中他們聊的是關(guān)于 Facebook 的 Growth Hacking 策略、反垃圾信息系統(tǒng)、信息流排序,以及為什么選擇回國(guó)參與創(chuàng)業(yè)。雷鋒網(wǎng)做了不修改原意的編輯。
所謂新聞流排序(news feed ranking),指的是 Facebook 的一項(xiàng)看家本領(lǐng):用戶每天會(huì)收到兩三千條新鮮事,卻只會(huì)閱讀前 50 至 100 條。利用機(jī)器學(xué)習(xí)將用戶最想看的內(nèi)容排到最前面,從而提高粘性和日活。
這固然是一篇著重技術(shù)的文章,所在公司 Facebook 更是世界上最大的互聯(lián)網(wǎng)公司之一。但這并不妨礙創(chuàng)業(yè)者從中得到經(jīng)驗(yàn)。利用 A/B 測(cè)試作為迭代方法,借助 Growth Hacking 的核心——數(shù)據(jù)來(lái)驅(qū)動(dòng)開(kāi)發(fā),新員工的入職宣講……這些做法都體現(xiàn)了這位社交之王不同維度的文化所在:精神層面注重實(shí)現(xiàn)夢(mèng)想,統(tǒng)一目標(biāo);而這一目標(biāo)下放到微觀層面,就是對(duì)于數(shù)據(jù)的尊重。
Facebook利用Sigma 系統(tǒng)做了什么?
我第一次去Facebook工作的時(shí)候,當(dāng)時(shí)專注于用戶增長(zhǎng)的 VP 負(fù)責(zé)宣講。他說(shuō)將來(lái)全球所有人都會(huì)使用 Facebook,這家公司將來(lái)會(huì)成為萬(wàn)億美元的公司,這讓我印象很深刻。公司的所有人都很興奮,對(duì)設(shè)定的目標(biāo)有非常大的信心。他們的工作使命感非常強(qiáng),非常專注。
這是Facebook給我印象深刻的一件事。
在 Facebook 的 site-integrity (站點(diǎn)完整性) 組工作了兩年。當(dāng)時(shí) Facebook 有很多的垃圾私信、垃圾信息,就像人人、微博上有各種廣告、垃圾鏈接。有些用戶的賬號(hào)被盜用了,會(huì)使用個(gè)人頁(yè)面發(fā)送垃圾短信、廣告、病毒,還有一些不受歡迎的朋友請(qǐng)求。我會(huì)處理所有類似這些涉及到影響用戶體驗(yàn)的東西。
Facebook 使用了一個(gè)叫做 sigma 的系統(tǒng)來(lái)抵制這些垃圾信息。這個(gè)系統(tǒng)安裝在 2000 多臺(tái)機(jī)器上面,F(xiàn)acebook 用戶做的任何事情,都會(huì)經(jīng)過(guò) sigma 系統(tǒng)分析處理,比如評(píng)論、鏈接、朋友請(qǐng)求,都會(huì)被這個(gè)系統(tǒng)進(jìn)行判斷,是正常行為、濫用行為還是有問(wèn)題的行為。
利用 Sigma 系統(tǒng),F(xiàn)acebook 會(huì)對(duì)垃圾信息進(jìn)行過(guò)濾和清理。
舉個(gè)例子說(shuō),比如發(fā)送朋友請(qǐng)求,F(xiàn)acebook 的系統(tǒng)會(huì)自動(dòng)判斷一下:如果這個(gè)人的朋友請(qǐng)求都被別人拒絕了,他再發(fā)送朋友請(qǐng)求是不會(huì)被批準(zhǔn)的。如果一個(gè)人發(fā)送的朋友請(qǐng)求十個(gè)有九個(gè)都被拒絕了,那么他下一次的朋友請(qǐng)求就會(huì)被系統(tǒng)拒絕。
當(dāng)然這個(gè)系統(tǒng)還有其他的判斷信號(hào)。
它是一個(gè)機(jī)器學(xué)習(xí)系統(tǒng),通過(guò)你之前發(fā)的朋友請(qǐng)求拒絕概率高低來(lái)判斷你被拒絕的概率有多高。
如果這個(gè)比率很高,F(xiàn)acebook 會(huì)讓你進(jìn)行手機(jī)短信或其他方式認(rèn)證,來(lái)驗(yàn)證是軟件還是真人發(fā)送的,以此判斷你是不是真的要發(fā)送朋友請(qǐng)求,比如你發(fā)出的朋友請(qǐng)求對(duì)象與你沒(méi)有任何共同好友,那就可能是一個(gè)不合理的請(qǐng)求。
基本上,你在 Facebook 上做的任何事情,都會(huì)經(jīng)過(guò)這個(gè)系統(tǒng)來(lái)分析、預(yù)測(cè)、決定是否允許你發(fā)出信息,借此希望會(huì)減少生態(tài)圈中的騷擾行為。當(dāng)時(shí) Facebook 每天有上百億次的信息發(fā)生要通過(guò)這個(gè)系統(tǒng)進(jìn)行判斷。
機(jī)器學(xué)習(xí)是Sigma 系統(tǒng)的核心
Sigma 系統(tǒng)中有些是人為規(guī)則也有機(jī)器算法,請(qǐng)求通過(guò)和拒絕就是一個(gè)迅捷數(shù)據(jù)組(Scrum)。任務(wù)通過(guò),則說(shuō)明這個(gè)任務(wù)是一個(gè)對(duì)機(jī)器學(xué)習(xí)來(lái)說(shuō)的正樣本,被拒絕則是一個(gè)負(fù)樣本,很像 0 和 1。
比如發(fā)送朋友請(qǐng)求如果被接受,y 值是 1,如果被拒絕就是 0。如果是評(píng)論和點(diǎn)贊,系統(tǒng)就能尋找 y 值,用戶發(fā)送的不當(dāng)信息就會(huì)被刪除。
而機(jī)器學(xué)習(xí)是整個(gè) Sigma 系統(tǒng)的核心。
另外一個(gè)方法是通過(guò)一些異常行為的分析、數(shù)據(jù)挖掘的方法來(lái)分析用戶的異常行為。
比如一個(gè)人發(fā)的同樣類型評(píng)論非常多,所有評(píng)論里都有一個(gè)相似鏈接,這就非常有問(wèn)題。正常操作不會(huì)在不同人的主頁(yè)上留同樣的評(píng)論,這顯然屬于異常行為,我們不會(huì)允許。
新聞流是Facebook最重要的產(chǎn)品
我工作兩年之后選擇去了這個(gè)組。
“排序” 指的是信息流的順序。它決定了打開(kāi)你的 Facebook 朋友圈,你的信息流是個(gè)什么樣子,信息的位置。每個(gè)人產(chǎn)生的內(nèi)容、新聞會(huì)有兩三千個(gè),用戶只能看到 50-100 個(gè)。你需要把兩三千個(gè)最好地展示出來(lái)。有些我們不給用戶顯示,比如你喜歡游戲,你的朋友不喜歡。
我 2012 年剛?cè)サ臅r(shí)候,新聞流排序組只有五六個(gè)人,盡管這可能是公司最大的機(jī)器學(xué)習(xí)系統(tǒng),最核心的產(chǎn)品。每天有十億多人上線,每個(gè)用戶花 40 分鐘在 Facebook 上,其中一半時(shí)間都花在新聞流上。Facebook 大部分收入來(lái)自新聞流廣告。比如說(shuō),移動(dòng)廣告收入占所有廣告的 70%,而其中所有的移動(dòng)的廣告都來(lái)自新聞流。不管是從用戶的停留時(shí)間,還是收入來(lái)說(shuō),新聞流都是最重要的產(chǎn)品。
新聞流是 Facebook 最重要的產(chǎn)品,直接決定了用戶所看到的內(nèi)容。
做好新聞流排序是很難的問(wèn)題,因?yàn)橛脩粼谛侣劻魃系男袨橛泻芏喾N,不只是傳統(tǒng)廣告點(diǎn)擊或者不點(diǎn)擊這一種操作,用戶可以在新聞流里贊、評(píng)論、分享或者隱藏這個(gè)新聞流,也可以播放視頻。我需要理解用戶喜歡什么東西,評(píng)論、分享什么東西,想看什么樣的視頻。理解用戶的興趣所在,根據(jù)我們的訊息把最好的東西放在新聞流的最前面。
以國(guó)內(nèi)的社交媒體作對(duì)比來(lái)說(shuō),微信的朋友圈是所有內(nèi)容全部顯示,它不需要排序,是因?yàn)榕笥讶θ萘坎皇翘貏e多,大家可以看完所有的內(nèi)容。朋友越來(lái)越多的話,沒(méi)有時(shí)間把分享看完,排序是必然的事情。你會(huì)很容易漏掉很重要人的圖片,它們迅速埋沒(méi)在大部分你不感興趣的內(nèi)容了。
Facebook 之前也是全部顯示,慢慢到后來(lái)用戶是看不完所有的信息的。如果不做排序,把最好的服務(wù)挑出來(lái)的話,用戶不會(huì)愿意訪問(wèn)新聞流,因?yàn)樗吹胶芏嗖桓信d趣的東西,感興趣的部分他已經(jīng)沒(méi)有時(shí)間找出來(lái)了。從不排序到排序是必然的過(guò)程,你的朋友越來(lái)越多,公眾頁(yè)面越來(lái)越多,排序是必然的。
比如說(shuō)新浪微博沒(méi)有做排序,有些細(xì)節(jié)雜亂無(wú)章,他們測(cè)試過(guò),但是做得不太好。所以放棄了。微信的朋友圈也會(huì)到要做排序的階段。Facebook 不只是排序,還會(huì)隱藏用戶不感興趣的內(nèi)容,比如你的朋友玩過(guò) Candy Crush 游戲,但可能你本身不玩任何游戲,關(guān)于這方面的信息就沒(méi)有意義。Facebook 就不會(huì)給你顯示這些內(nèi)容——“朋友們?cè)谕媸裁从螒?rdquo;。
社交媒體的碎片化已成事實(shí)。只有采取更好的排序手段,推送給用戶更精準(zhǔn)的內(nèi)容,才能提高平臺(tái)停留時(shí)間,加強(qiáng)粘性。
新聞流排序的工作原理是什么?
基本上,新聞流是從兩三千條內(nèi)容里面,挑出了 四五十 個(gè)。按照每個(gè)內(nèi)容打分,分高的內(nèi)容排在最前面。每個(gè)內(nèi)容、照片、分享或者狀態(tài),我們會(huì)預(yù)測(cè)一些概率值,比如你點(diǎn)贊的概率,評(píng)論、分享的概率。每個(gè)用戶的行為,比如點(diǎn)贊、分享、評(píng)論,系統(tǒng)都會(huì)給權(quán)值。評(píng)這些用戶行為概率是通過(guò)機(jī)器學(xué)習(xí)來(lái)系統(tǒng)計(jì)算的。如果用戶對(duì)某個(gè)內(nèi)容點(diǎn)贊、評(píng)論或者分享,說(shuō)明用戶愿意看到這個(gè)內(nèi)容,對(duì)內(nèi)容產(chǎn)生了反饋。
舉個(gè)例子來(lái)說(shuō),比如你是我的好友,你上傳了 100 張照片,我點(diǎn)贊了 20 次,那么點(diǎn)贊概率就是 20%。我們知道每個(gè)用戶以前對(duì)哪些內(nèi)容點(diǎn)贊、評(píng)論,這些都是我們的訓(xùn)練樣本。我們通過(guò)學(xué)習(xí)用戶的歷史行為,進(jìn)行相同類型、相同個(gè)人的未來(lái)行為預(yù)測(cè),因?yàn)橛脩舳唐谛袨椴粫?huì)大幅變化,過(guò)去對(duì)哪些東西進(jìn)行評(píng)論,將來(lái)也很有可能對(duì)相似內(nèi)容進(jìn)行評(píng)論。
對(duì)用戶內(nèi)容的預(yù)測(cè)
很多人關(guān)心,是否可以針對(duì)用戶內(nèi)容來(lái)進(jìn)行預(yù)測(cè)?比如分析用戶發(fā)了什么樣的文字或者圖片?這是可以的。如果是圖片我們可以抽取圖片特點(diǎn),對(duì)圖片進(jìn)行模式識(shí)別,分析圖片的主題,打上相應(yīng)的標(biāo)簽,用機(jī)器來(lái)識(shí)別這些圖片。現(xiàn)在在做相應(yīng)的工作。Facebook 有 AI 實(shí)驗(yàn)室,可以對(duì)圖片進(jìn)行內(nèi)容識(shí)別。
那么,F(xiàn)acebook 該如何檢測(cè)這套算法的有效性呢?該如何進(jìn)行更新迭代?
其實(shí),這可以通過(guò) A/B 測(cè)試來(lái)實(shí)現(xiàn)。我們會(huì)抽取 1% 用戶進(jìn)行新的算法,1%進(jìn)行舊的算法。如果新的算法下用戶每天點(diǎn)贊、評(píng)論或者分享次數(shù)增長(zhǎng)了,那說(shuō)明新的算法更好。我們就把新的算法發(fā)布給所有的用戶。我們主要的核心目標(biāo)是:讓日活躍用戶更多,停留時(shí)間更長(zhǎng),訪問(wèn) Facebook 更頻繁。
A/B 測(cè)試是很好的迭代方法。建立起核心指標(biāo),進(jìn)行 A/B 測(cè)試,看新的改動(dòng)能否提高核心指標(biāo),提高就發(fā)布,沒(méi)有提高就不用發(fā)布。這很像 Growth hacking,當(dāng)然最終目的還是提高 DAU。如果用戶喜歡你的新聞流,就會(huì)更頻繁訪問(wèn),最終目的還是在線時(shí)長(zhǎng)和日活躍用戶。
A/B 測(cè)試是 Facebook 用來(lái)測(cè)試迭代可行性的手段,目前峰瑞資本所投資的吆喝科技,想讓初創(chuàng)企業(yè)也能使用到這一技術(shù)。
“我已經(jīng)沒(méi)法看完所有朋友圈的內(nèi)容”
我已經(jīng)沒(méi)法看完所有朋友圈內(nèi)容了。一種改進(jìn)方法是排序,把最好的內(nèi)容放最前面,通過(guò)你以前點(diǎn)贊的內(nèi)容,來(lái)學(xué)習(xí)你關(guān)心的內(nèi)容,比如你女朋友發(fā)的東西你都會(huì)點(diǎn)贊。另外一種改進(jìn)方法叫做 “內(nèi)容置頂”(Story bumped)。有時(shí)候我早上起來(lái)刷微信,會(huì)看不完,只看了一小部分。過(guò)一會(huì)兒再刷的時(shí)候,已經(jīng)沒(méi)有什么新的內(nèi)容了。
Facebook 的內(nèi)容置頂功能會(huì)把你沒(méi)有看完的東西再放到上面去再次推送給你。
微信是知道哪些內(nèi)容你沒(méi)看過(guò)的,我有很多在美國(guó)的朋友,朋友圈會(huì)有很多內(nèi)容,上班前看不完只看了一部分。再刷新的時(shí)候就已經(jīng)沒(méi)有新的東西出來(lái)了,我也沒(méi)有關(guān)心沒(méi)看完的東西,朋友發(fā)的照片。Facebook 的 “內(nèi)容置頂” 把很重要的、還沒(méi)看的、有點(diǎn)舊的內(nèi)容放在朋友圈前面,讓你再看一眼,怕你漏掉重要的內(nèi)容。
在九月份的時(shí)候我加入神州專車擔(dān)任 CTO,從事業(yè)角度來(lái)說(shuō),我希望把從 Facebook 學(xué)到的公司文化、技術(shù)帶回中國(guó)。中國(guó)在計(jì)算機(jī)行業(yè)上有很大的潛力?,F(xiàn)在國(guó)內(nèi)的產(chǎn)品質(zhì)量上和美國(guó)產(chǎn)品已經(jīng)相當(dāng)了,比如微信,F(xiàn)acebook 的產(chǎn)品經(jīng)理也學(xué)習(xí)了微信里面的功能。再往后面看幾年的話,中國(guó)有機(jī)會(huì)趕上美國(guó)。
計(jì)算機(jī)學(xué)科已經(jīng)成熟,創(chuàng)造力在慢慢變好。很多初創(chuàng)企業(yè)嘗試不同的想法,中國(guó)的創(chuàng)業(yè)者是美國(guó)的好多倍,都在嘗試不同的想法,會(huì)誕生出成功的公司。技術(shù)上,中國(guó)正在逼近美國(guó),甚至?xí)矫绹?guó)。長(zhǎng)遠(yuǎn)來(lái)看,中國(guó)的計(jì)算機(jī)行業(yè)、互聯(lián)網(wǎng)行業(yè),應(yīng)該是有潛力成為世界上互聯(lián)網(wǎng)行業(yè)最好的國(guó)家。