今日彩蛋?? 邊播放邊閱讀實(shí)錄文字,會(huì)遇到驚喜哦 大家好,我是周涵寧,來自于Hulu。Hulu是美國(guó)第二大的視頻網(wǎng)站,今天我要分享是視頻推薦系統(tǒng)。 在講基于網(wǎng)頁的推薦之前,我想先講講傳統(tǒng)的視頻推薦。傳統(tǒng)的視頻更多的是出現(xiàn)在租碟店,也就是五年、十年以前大家經(jīng)常光顧的光盤店。當(dāng)你去的時(shí)候,老板就會(huì)跟你說,昨天晚上又新進(jìn)了一個(gè)很好的片子。老板做這種推薦的話,你會(huì)信任這個(gè)老板對(duì)你的了解,以及他對(duì)現(xiàn)在電影市場(chǎng)的了解,他對(duì)影視內(nèi)容的品位。你和租碟店老板之間形成了一種良性的互動(dòng)。 到了網(wǎng)絡(luò)時(shí)代,出現(xiàn)了很多視頻網(wǎng)站,包括愛奇藝、搜狐、優(yōu)酷土豆。這些網(wǎng)站不可能為每個(gè)用戶都雇一個(gè)專職的老板來做推薦,所以它會(huì)用自動(dòng)的方法,用數(shù)字的特征去描述一個(gè)用戶的喜好,然后產(chǎn)生出一些推薦的結(jié)果。 奈飛(Netflix)大家都知道,在十年以前舉辦了一次推薦算法的比賽,獎(jiǎng)金是一百萬美元,比賽是為了解決它當(dāng)時(shí)對(duì)于用戶評(píng)分的一個(gè)預(yù)測(cè)問題,所以推薦算法在視頻網(wǎng)站的應(yīng)用歷史應(yīng)該是比較悠久的。 那么現(xiàn)在從業(yè)務(wù)的角度,我們和十年以前有哪些差別? 最大的改變可能是很多的視頻網(wǎng)站都加入了電視直播的內(nèi)容。最早的時(shí)候,點(diǎn)播是一個(gè)錄下來的昨天放過的電視劇,或者之前已經(jīng)制作好的節(jié)目。直播的場(chǎng)景的話就非常不一樣,它是實(shí)時(shí)發(fā)生的,正在發(fā)生的可能是體育比賽、某個(gè)新聞的事件。對(duì)于這種內(nèi)容的推薦,還有一些獨(dú)特的挑戰(zhàn)。今天我也會(huì)講到,對(duì)于這種在線直播,需要用不同的模型和不同的特征。 這個(gè)是我們今天課程的一個(gè)內(nèi)容提要。第一,我會(huì)講一下優(yōu)化目標(biāo)和框架,第二,模型。模型里面又包括Exploitation和Exploration的兩種具體的模型。然后基于這個(gè)模型,我會(huì)講兩個(gè)應(yīng)用場(chǎng)景。
推薦系統(tǒng)的優(yōu)化目標(biāo),如果從用戶的偏好來講,我們是希望提供給用戶一個(gè)非常健康的組合,既符合他們的口味,又有足夠的多樣性,就是有營(yíng)養(yǎng)的內(nèi)容。但是平臺(tái)本身呢,它又有商業(yè)變現(xiàn)的要求,所以有的時(shí)候?yàn)榱似胶庥脩舻男枨蠛推脚_(tái)本身的需求,我們就要做出某種折中。也許我們不會(huì)提供像麥當(dāng)勞這樣的快餐,但是我們可能要為了獲得一些短期的回報(bào),在一個(gè)完全健康的食品和這種快餐之間取得某種折中。 最后從算法或者數(shù)學(xué)抽象來講,我們就把這個(gè)問題抽象成為“怎樣最大化用戶的觀看時(shí)長(zhǎng)”。 為了達(dá)成這個(gè)目標(biāo),我們就要預(yù)測(cè)用戶喜歡哪些內(nèi)容。具體來講,用戶觀看時(shí)長(zhǎng)可以用什么方法來最大化?有幾個(gè)關(guān)鍵的要素,第一個(gè)就是,點(diǎn)擊進(jìn)去看一個(gè)視頻之后,你看了多長(zhǎng)時(shí)間?這個(gè)跟視頻本身的長(zhǎng)度有關(guān),跟你的完成度有關(guān),我們叫playback_duration。第二個(gè)叫做有效點(diǎn)擊eCTR。第三個(gè)就是整個(gè)內(nèi)容的曝光量。大家如果做一個(gè)簡(jiǎn)單的代數(shù)運(yùn)算,把這三項(xiàng)乘在一起的話,就變成了每個(gè)用戶的觀看時(shí)長(zhǎng)。 為了優(yōu)化總的觀看時(shí)長(zhǎng),推薦系統(tǒng)可以控制的就是曝光量這個(gè)要素。具體來講,就是把我們想要更多地展現(xiàn)給用戶的內(nèi)容排在前面,這樣用戶在第一屏就會(huì)看到。推薦結(jié)果的好壞表現(xiàn)在eCTR,這是一個(gè)我們不能夠直接控制的量,我們通過選擇正確的物品分配更大的曝光而間接控制eCTR。我們最終想要最大化的是eCTR和曝光量的乘積。 這個(gè)圖表里,橫軸是曝光量,縱軸是eCTR,我們把去年10月曝光量比較大的一些內(nèi)容在這個(gè)圖表里展示了一下,大家可以看到這兩個(gè)量基本上是成正比的。這說明我們的推薦系統(tǒng)還是做了正確的決定,就是給eCTR高的內(nèi)容提供了更大的曝光。 當(dāng)然從這個(gè)曲線里面,我們也看到有一些eCTR不是那么高的內(nèi)容,比如說College football,在最右下角的地方,它也獲得了比較大的曝光,這就屬于過度曝光。所以這也提出了我們優(yōu)化的一些可能的空間:可以把分給點(diǎn)擊不是那么高的物品的曝光量,勻一些給其它的更高點(diǎn)擊、但是曝光不足的內(nèi)容。
剛才講了通過KPI里面的這些維度的劃分,怎么樣找到一個(gè)推薦系統(tǒng)的表現(xiàn)的好壞以及改進(jìn)它的機(jī)會(huì)。那么具體來講,我們要建立一個(gè)推薦系統(tǒng)的話,它需要幾層? 我們可以把推薦系統(tǒng)抽象成為四層,最底下一層是基礎(chǔ)數(shù)據(jù)。第二層是特征,特征可以分為用戶的特征和內(nèi)容的特征。用戶的特征具體來講又是每個(gè)用戶單獨(dú)的特征,或者是一群用戶的一個(gè)畫像,群體特征。內(nèi)容的特征可以是每個(gè)內(nèi)容單獨(dú)的特征,或者是一批內(nèi)容的總體特征。 基于第二層的特征之上,我們會(huì)建一些模型。這些模型的優(yōu)化目標(biāo)有兩個(gè),一個(gè)是利用,一個(gè)是探索。利用(Exploitation)又可以有一些子目標(biāo),包括Relevant,就是相關(guān)性,包括透明度,對(duì)產(chǎn)品經(jīng)理還是對(duì)最終用戶是不是可解釋,包括是不是上下文相關(guān),充分利用了時(shí)間、設(shè)備、地點(diǎn)這些上下文信息。探索(Exploration)主要講的是對(duì)新內(nèi)容我們有沒有給足夠的展現(xiàn),以及有沒有給用戶驚喜、發(fā)現(xiàn)用戶隱藏的一些興趣。當(dāng)用戶興趣發(fā)生改變的時(shí)候,我們是不是非??斓剡m應(yīng)了用戶這種興趣改變,也就是adaptive。最后一個(gè)是多樣性,就是我們給出的這個(gè)套餐是不是組合了很多不同的類別,而不是非常單調(diào)、單一的。 在模型之上,我們要做一些應(yīng)用。這些應(yīng)用主要是服務(wù)四個(gè)用戶的階段。首先是所謂Onborading,就是一個(gè)新用戶,剛剛訂閱我們的服務(wù)的時(shí)候,還在一個(gè)初始的、給我們一些信號(hào)的階段。我們讓用戶選擇他最喜歡的內(nèi)容頻道,然后用戶會(huì)告訴我們他喜歡體育、喜劇或者動(dòng)作片?;谶@些大類,我們可以給他做一個(gè)冷啟動(dòng),給他第一屏的推薦結(jié)果。 之后,在一個(gè)新用戶進(jìn)來之后,我們大概有七天的時(shí)間把他轉(zhuǎn)化為一個(gè)付費(fèi)用戶。從試用期到付費(fèi)期的轉(zhuǎn)化,就是Convert-to-Pay。在這個(gè)階段,我們需要快速地探索用戶的各種需求,讓他體會(huì)到我們的服務(wù)非常有價(jià)值,那么他才愿意買單。 到了第三個(gè)階段,就是用戶已經(jīng)是一個(gè)付費(fèi)用戶,那我們就需要留住他,所以就是不斷的去給他更多的、他之前可能沒有看過,但是和之前看過的很相關(guān)的內(nèi)容。 最后,第四個(gè)階段是Monetization。在有很多渠道付費(fèi)訂閱的時(shí)候,當(dāng)然訂閱費(fèi)本身是一種變現(xiàn)的手段。但是我這里指的變現(xiàn),主要還是廣告變現(xiàn)。具體來講,廣告變現(xiàn)的業(yè)務(wù)指標(biāo)就是用戶的觀看時(shí)長(zhǎng)。因?yàn)椴迦霃V告點(diǎn)的個(gè)數(shù),以及廣告的庫存量是直接和用戶的觀看時(shí)長(zhǎng)以及活躍用戶數(shù)相關(guān)的。所以這是我們所有這些模型服務(wù)的第四個(gè)任務(wù),就是一個(gè)已經(jīng)付費(fèi)的用戶,已經(jīng)留下來的用戶,我們?cè)趺礃佑脧V告把他的流量變現(xiàn)。
利用方面的模型,如果從推薦系統(tǒng)、特別是相關(guān)性的利用來講,有兩大類,一個(gè)是基于用戶行為的,一個(gè)是基于內(nèi)容的。 基于用戶行為的話就叫做協(xié)同濾波。具體來講,協(xié)同濾波下面又有更細(xì)的分類,有基于存儲(chǔ)的Memory-based和基于模型的Model-based?;诖鎯?chǔ)的話有item-based CF,基于模型的話有矩陣分解和神經(jīng)網(wǎng)絡(luò)的方法。矩陣分解下面又可以再細(xì)分。然后神經(jīng)網(wǎng)絡(luò)現(xiàn)在也有基于RBM的,還有Embedding-based Neural Network。 Hulu經(jīng)歷了三代相關(guān)性算法的演進(jìn),第一代是item-based CF,第二代是基于矩陣分解,現(xiàn)在我們正在開發(fā)的第三代是基于Embedding-based Neural Network。從Netflix公開的文件來看,它主要使用的是SVD和RBM的方法。 第1代算法:協(xié)同濾波 我們先講比較古老的一代相關(guān)性算法:基于物品的協(xié)同濾波。最早是20年前亞馬遜在它的電商網(wǎng)站上使用的。它會(huì)構(gòu)建一個(gè)用戶和物品的相對(duì)評(píng)分或者影視的相關(guān)性矩陣。就是我在左下角畫的這個(gè)矩陣,它每一行是一個(gè)用戶,每一列是一個(gè)物品,里面的數(shù)值可以是用戶購買這個(gè)物品的次數(shù),或者點(diǎn)擊這個(gè)物品的次數(shù)。就是用一些用戶的隱式行為,把它轉(zhuǎn)換成為用戶和這個(gè)物品之間的某種評(píng)分。這個(gè)分?jǐn)?shù)越高的話,它就和這個(gè)物品的相關(guān)性越高。 大家可以看到里面有很多的缺失數(shù)據(jù),因?yàn)檫@個(gè)矩陣是非常稀疏的,在幾萬個(gè)視頻里面,用戶能看的也可能只有幾百個(gè)。所以大約有百分之七八十的數(shù)據(jù)是實(shí)際上是零。 那么,基于這么一個(gè)簡(jiǎn)單的表示,可以去度量?jī)蓚€(gè)物品之間的相似性。如果在這個(gè)矩陣?yán)锩鎯闪械臄?shù)值的cos distance很接近的話,我們可以認(rèn)為兩個(gè)物品是類似的,因?yàn)樵谌坑脩羯蠈?duì)這兩個(gè)物品的相對(duì)評(píng)分是很接近的。 第2代算法:矩陣分解 接下來就是從協(xié)同濾波進(jìn)化到矩陣分解。 剛才講到協(xié)同濾波有一個(gè)稀疏性的問題,矩陣分解為了解決這個(gè)稀疏性的問題,使用了線性代數(shù)里面的一個(gè)特性,就是一個(gè)低秩矩陣,可以用兩個(gè)相對(duì)低維度矩陣的乘積來表示。具體來講,評(píng)分矩陣R是低秩的,它可以用一個(gè)矩陣P和矩陣Q的乘積來表示。P就是所有用戶的特征,用一個(gè)大概一百多維的特征向量就可以表示,每個(gè)用戶用一百多維來表示,相比原來幾萬維的用戶和所有內(nèi)容的交叉,就節(jié)省了很多的存儲(chǔ)以及計(jì)算。相對(duì)的,每個(gè)內(nèi)容也可以用一個(gè)列矩陣,就是Q來表示。 我們使用矩陣分解之后,在線上也觀察到了很多好的表現(xiàn),那么,我們肯定不滿足于這種矩陣分解的算法,我們還想要進(jìn)一步引入更多side information側(cè)面信息,其中包括用戶的demographic的這種元數(shù)據(jù)信息。 第3代算法:神經(jīng)網(wǎng)絡(luò) 在矩陣分解的框架底下,不太容易直接地使用這些side information,所以我們就引入了一種深度神經(jīng)網(wǎng)絡(luò)的框架。 也就是,把原來矩陣分解里面代數(shù)運(yùn)算的步驟,用一個(gè)前向神經(jīng)網(wǎng)絡(luò)來替換。這樣的好處一方面是非線性前向神經(jīng)網(wǎng)絡(luò)允許一些非線性的映射,可以有更好的表達(dá)能力去model一個(gè)更復(fù)雜的分布。另外的一個(gè)好處就是我們可以直接把關(guān)于用戶的除了行為之外的所有信息,用一個(gè)矢量feed到這個(gè)神經(jīng)網(wǎng)絡(luò)里面去。對(duì)內(nèi)容我們也可以做相應(yīng)的處理,就是把元數(shù)據(jù),比如說導(dǎo)演、演員信息用一個(gè)向量來表示,然后把它feed到神經(jīng)網(wǎng)絡(luò)里面去。 相關(guān)性算法的應(yīng)用場(chǎng)景 相關(guān)性算法有兩個(gè)應(yīng)用場(chǎng)景,一個(gè)是所謂的貨架場(chǎng)景,就是給一個(gè)網(wǎng)格里面按照相關(guān)性做了排序,然后希望用戶點(diǎn)越靠上越靠左的這些內(nèi)容。另外一個(gè)是自動(dòng)播放的場(chǎng)景,就是播完一個(gè)內(nèi)容之后,我們會(huì)自動(dòng)地開始下一個(gè)我們覺得用戶最可能看的內(nèi)容。對(duì)應(yīng)這兩種不同的場(chǎng)景,其實(shí)需要不同的相關(guān)運(yùn)算。 具體來講,剛才所說的協(xié)同濾波方法,它比較適用于貨架場(chǎng)景的召回和排序。對(duì)于自動(dòng)連續(xù)播放的場(chǎng)景,我們采用了另外一種模型,就是時(shí)間序列的模型,叫做循環(huán)神經(jīng)網(wǎng)絡(luò)。 我們把用戶在網(wǎng)站上的一個(gè)行為序列,認(rèn)為是由這種RNN模型所產(chǎn)生的。我們可以用反向傳播的方法去訓(xùn)練一個(gè)RNN模型,來預(yù)測(cè)用戶在網(wǎng)絡(luò)上的下一個(gè)行為。采用了RNN的時(shí)間序列之后,我們?cè)诰€上的測(cè)試觀察到了非常高的提升。我們仿真測(cè)試的方法就是當(dāng)用戶看完劇A/B/C之后,我們假裝不知道這個(gè)用戶接下來看了哪一個(gè),然后基于時(shí)間序列的建模,來算出一個(gè)最可能看的劇,它可能是當(dāng)前這一劇的下一集,或者是跳到另外一個(gè)劇D或者是另外一個(gè)劇E。根據(jù)RNN模型,我們找到最有可能的下一個(gè)劇,然后和用戶實(shí)際看的下一個(gè)劇之間做比對(duì),這是離線的一種評(píng)估方案。
剛才講完了一些利用,就是基于用戶行為以及side information做貨架場(chǎng)景的排序和自動(dòng)播放的這種持續(xù)預(yù)測(cè)。接下來我們來講探索。 自適應(yīng) 我們先來看探索中的自適應(yīng)的問題。為了解決用戶興趣的時(shí)變以及新內(nèi)容的冷啟動(dòng),我們采用一種叫做多臂老虎機(jī)(MAB)的模型。 多臂老虎機(jī)是借用了賭場(chǎng)的一種場(chǎng)景。一個(gè)賭徒可以在不同的時(shí)間選擇不同的搖臂,每個(gè)搖臂會(huì)給這個(gè)賭徒不同的贏率。如果賭徒每次都選擇搖臂1的話,有可能不是最優(yōu)的,因?yàn)榭赡芰硗庖粋€(gè)搖臂的反饋更好。我們把賭場(chǎng)的場(chǎng)景應(yīng)用到推薦系統(tǒng)里面,就是每個(gè)搖臂是我們可以推給用戶的一個(gè)劇,而我們的算法就是這個(gè)賭徒,它通過一些策略來選擇將哪個(gè)劇推給用戶。而每個(gè)搖臂獲得的獎(jiǎng)勵(lì),就是用戶是否點(diǎn)擊和觀看了。用戶的興趣本身就是這個(gè)老虎機(jī)自己的一些參數(shù)設(shè)定。 多臂老虎機(jī)已經(jīng)是一個(gè)歷史比較悠久的問題,所以也有很多成熟的算法。我們采用了一種比較流行的算法,叫做LinUCB算法。我們會(huì)根據(jù)當(dāng)前推的結(jié)果,來實(shí)時(shí)更新對(duì)每個(gè)搖臂的點(diǎn)擊率的預(yù)測(cè)。 具體來講,在線上部署LinUCB的算法,有一個(gè)線上更新提取特征以及模型運(yùn)算的過程,以及一個(gè)線下根據(jù)之前模型采集到的信號(hào)去更新模型參數(shù)的過程。 在我們這個(gè)實(shí)驗(yàn)里面,可能對(duì)大家比較有參考意義的就是我們發(fā)現(xiàn)的LinUCB的一些特征,其中包括用戶當(dāng)前看劇的完成度,就是他看到了第幾集、是不是看到了高潮部分還是快要結(jié)束的部分。完成度是一個(gè)很重要的特征維度。然后就是上次給用戶曝光這個(gè)劇的時(shí)間和現(xiàn)在之間的時(shí)間間隔,以及它歷史上的點(diǎn)擊率,還有這個(gè)劇的一些元數(shù)據(jù)信息,它在外面的流行程度,以及根據(jù)剛才講的協(xié)同濾波的方法,得到的用戶和這個(gè)劇之間的相關(guān)性。 多樣性 接下來講多樣性的一個(gè)模型,叫做行列式點(diǎn)過程。 我們?yōu)槭裁匆P(guān)注多樣性?是因?yàn)橛脩舻呐d趣愛好可能不是單峰分布的。有可能用戶有多個(gè)興趣愛好,其中有非常突出的一個(gè),就是這個(gè)比較高的右邊的峰。但是還有一個(gè)比較低的,就是右邊這張圖里面的靠左的這個(gè)峰值。如果我們用簡(jiǎn)單的相關(guān)性排序的方法,就會(huì)把右邊峰值里的很多內(nèi)容都排在前面。而用戶隱含的興趣,就是左邊這個(gè)比較矮的峰,就不會(huì)出現(xiàn)。所以我們要用一些多樣性的策略,使得左邊這個(gè)矮的峰里面的一些好的內(nèi)容也會(huì)被推薦。 用戶多樣性的問題也已經(jīng)被廣泛研究過。傳統(tǒng)上使用啟發(fā)式的方法,它會(huì)在多樣性和相關(guān)性之間用一個(gè)加權(quán)平均的方法來獲得一個(gè)總體的優(yōu)化目標(biāo),然后兩兩之間比較當(dāng)前推薦的差異性,然后試圖最大化這個(gè)總的平衡了之后的優(yōu)化目標(biāo),用窮舉的方法。 我們?cè)诂F(xiàn)有的啟發(fā)式的搜索基礎(chǔ)上,采用了一些不同的代數(shù)模型,就是把兩兩之間比較不相似性改變成為用一個(gè)多邊形的體積來量化我們給出的不同物品之間的差異性。把每個(gè)物品看作一個(gè)多維空間里的向量,然后用這些向量總體張成的一個(gè)多邊形的體積來度量這個(gè)集合的差異性。 這種方法也有一種貪婪式的解,它的計(jì)算復(fù)雜度是選品總數(shù)的立方,比剛才的那個(gè)Heuristic,就是兩兩之間比較的話,它的計(jì)算復(fù)雜度要更高一些。所以為了解決這種更優(yōu)的度量帶來的計(jì)算復(fù)雜度的增加,我們用了一些代數(shù)的方法去加速,最終我們達(dá)成了一種線性復(fù)雜度的方法。 就是這個(gè)圖里面畫的這條紅色的線,它可以和剛才講的DPP的原始實(shí)現(xiàn)達(dá)到同樣的精度。但是由于我們采用了incremental update的方法,有效地降低了計(jì)算復(fù)雜度,把原來Y的立方的這種計(jì)算復(fù)雜度變成了線性。
最后我們來講幾個(gè)應(yīng)用場(chǎng)景,其中比較重要的一個(gè)叫做推薦的理由。 Lady Gaga有一首歌唱的是“我有一億種理由離開,但是我只需要一個(gè)好的理由留下”。(彩蛋來啦,Bazinga?。?/span>那么對(duì)推薦系統(tǒng)來說,它可能推出完全相同的結(jié)果,但是如果我們可以給出一個(gè)好的理由,那么用戶會(huì)對(duì)它的信任會(huì)更高,點(diǎn)擊率也會(huì)相應(yīng)提高。 比如說,當(dāng)我們推薦《終結(jié)者2》,我們說是由于你歷史上看過《終結(jié)者1》,這時(shí)候就比完全沒有任何原因的推薦顯得更加順理成章。如何構(gòu)建一個(gè)推薦的理由?我們可以用剛才很簡(jiǎn)單的模板,就是因?yàn)槟銡v史上看過和它相關(guān)的一個(gè)劇。 但是如果我們想做得更加人性化、更加自然,我們要用一種知識(shí)圖譜的方法。在知識(shí)圖譜里面構(gòu)建內(nèi)容,用戶的群組,相關(guān)性的信息,以及一些統(tǒng)計(jì)信息,包括這個(gè)劇的流行程度,它在外面的排名。我們用一種N元組的方法來記錄這個(gè)知識(shí)圖譜。 基于這個(gè)知識(shí)圖譜,我們可以設(shè)定一些推理規(guī)則,每一條規(guī)則其實(shí)對(duì)應(yīng)某一種經(jīng)典算法,比如第一條規(guī)則,就是如果用戶喜歡電視劇,一是由于他曾經(jīng)看過電視劇,二是電視劇2和1非常相近,這就是item-based CF邏輯的一種表達(dá)方式。類似的話,我們還可以把user-based CF也用一條規(guī)則來表達(dá)。比如說這個(gè)地方列出的第二條規(guī)則,就是如果用戶屬于某一個(gè)群組,而這個(gè)群組里面60%的人都看過劇1,那就說明當(dāng)前這個(gè)用戶也可能會(huì)喜歡看劇1。 列出了很多這樣的規(guī)則之后,我們可以在知識(shí)圖譜里面建立一個(gè)規(guī)則樹,就是為了推理出當(dāng)前這個(gè)用戶多大的幾率會(huì)喜歡一個(gè)劇X。我們可以用所有的規(guī)則和每個(gè)劇之間做一個(gè)實(shí)例化,然后來度量它是否有證據(jù)來支持當(dāng)前這個(gè)規(guī)則的證明。這個(gè)推理樹里面的節(jié)點(diǎn)會(huì)隨著規(guī)則的不斷展開,而從根節(jié)點(diǎn)開始逐漸成長(zhǎng),長(zhǎng)成一棵非常大的樹。 大家看到這個(gè)節(jié)點(diǎn)里面的紅色部分,就是待證明的某一個(gè)假設(shè)或者規(guī)則。藍(lán)色的部分就是實(shí)例化之后,找到了事實(shí)去支持這個(gè)假設(shè)的部分證明。當(dāng)一個(gè)節(jié)點(diǎn)從紅色完全變成藍(lán)色,大家看到最下面的葉子節(jié)點(diǎn),那就說明它已經(jīng)用所有的事實(shí)完全證畢。 當(dāng)然,并不是所有的規(guī)則推理最后都能夠被所有的事實(shí)來支撐,比如說最左邊的這個(gè)葉子結(jié)點(diǎn),它有一個(gè)紅色的待證明項(xiàng),是找不到事實(shí)支撐的,那么這整條路徑就是失敗的。但是我們?cè)谶@個(gè)樹里面,如果你的知識(shí)圖譜足夠豐富的話,它總可以找到某一個(gè)子路徑,是可以證明當(dāng)前這個(gè)推理的。
第二個(gè)應(yīng)用場(chǎng)景是基于語音交互的一種對(duì)話的推薦。 當(dāng)前很多的應(yīng)用都是在手機(jī)上或者PC上,是基于圖形界面,用戶需要點(diǎn)擊,用戶能夠給到系統(tǒng)的反饋是非常有限的。沒有點(diǎn)擊有可能是因?yàn)椴幌矚g,有可能是因?yàn)楫?dāng)前時(shí)機(jī)不對(duì),也有可能是你之前看過了。我們是無法獲得更深層次的用戶反饋的。而用戶要進(jìn)行一個(gè)查詢,他要告訴系說,“我要看一個(gè)80年代情景劇”,他要通過多級(jí)復(fù)雜的菜單嵌套來完成這個(gè)查詢。所以圖形界面的局限性就限制了它的交互自然性。 我們提出基于語音對(duì)話的推薦,使得整個(gè)過程更加自然。我們可以允許用戶用一個(gè)簡(jiǎn)單的自然語言來表述一個(gè)非常復(fù)雜的查詢條件。然后當(dāng)用戶對(duì)當(dāng)前的推薦不滿的時(shí)候,他也可以用自然語言來告訴我們,為什么他不喜歡這個(gè)劇,以及他想要換另外一個(gè)什么樣的劇。我們認(rèn)為語音交互會(huì)成為下一代計(jì)算的一個(gè)催化劑。大家知道PC時(shí)代,鼠標(biāo)和鍵盤是最流行的交互方式,到了移動(dòng)時(shí)代,觸屏變成了手機(jī)上的最流行的交互方式。隨著物聯(lián)網(wǎng)的發(fā)展,我們認(rèn)為語音會(huì)成為下一代的交互方式。 以上就是公開課的所有內(nèi)容。
Q:怎么識(shí)別用戶的興趣是否改變呢? A:其實(shí)對(duì)于多臂老虎機(jī)的問題模型來講,我們并不是顯式地去建模用戶的興趣是否改變,而是把用戶的興趣(一個(gè)老虎機(jī)的模型參數(shù)設(shè)定),認(rèn)為是一個(gè)可以實(shí)時(shí)更新的參數(shù)。我們不斷去追蹤這個(gè)參數(shù)的改變,或者換句話講,就是我們永遠(yuǎn)都假設(shè)用戶興趣和之前是可以有差異的。所以我們不斷地在跟蹤一個(gè)不斷改變的參數(shù)。 Q:知識(shí)圖譜是怎么建立和生成的? A:我們所用的知識(shí)圖譜,一方面是從第三方采買的,有專門的構(gòu)建知識(shí)圖譜的廠商,他們會(huì)做數(shù)據(jù)清洗爬取。另外一部分是我們從內(nèi)容提供商那里獲得的一些元數(shù)據(jù)信息。 Q:基于規(guī)則的推理要人工構(gòu)建嗎?規(guī)則要有多少?彼此之間會(huì)不會(huì)沖突? A:這個(gè)規(guī)則的構(gòu)建過程是手工建立的,但是規(guī)則條目其實(shí)并不多。我們?nèi)绻憷F(xiàn)有的所有推薦的算法的話,每種算法大類來講,大約會(huì)產(chǎn)生一到兩條規(guī)則,所以最終我們可能只有不超過50條,規(guī)則之間是有可能沖突的,所以沖突就是它們都可以用來解釋某一個(gè)用戶喜歡內(nèi)容X或者是說它可以推理出一個(gè)用戶既喜歡內(nèi)容X又喜歡內(nèi)容Y。所以這個(gè)時(shí)候要做路徑的選擇,就是剛才推理樹里面哪一條路徑最有可能是真實(shí)的。所以我們會(huì)用配置認(rèn)可的方法,去在這個(gè)圖里面這個(gè)推理數(shù)的圖里面做隨機(jī)游走,然后找到最終權(quán)重最高的一條路徑。 Q:能否基于用戶行為和金融產(chǎn)品的歷史表現(xiàn)做金融產(chǎn)品的推薦? A:關(guān)于金融產(chǎn)品的推薦,其實(shí)美國(guó)已經(jīng)有公司在做。我上次去參加推薦系統(tǒng)會(huì)議的時(shí)候,就有一家紐約的公司,做的事情有點(diǎn)類似于定向廣告,就是它會(huì)根據(jù)用戶之前的消費(fèi)記錄、投資記錄,選擇金融產(chǎn)品。
周涵寧,現(xiàn)任Hulu北京研發(fā)中心推薦算法研發(fā)負(fù)責(zé)人,具有15年的研發(fā)創(chuàng)新和管理經(jīng)驗(yàn),專注于應(yīng)用數(shù)據(jù)和算法實(shí)現(xiàn)產(chǎn)品落地,有豐富的數(shù)據(jù)分析和機(jī)器學(xué)習(xí)實(shí)踐經(jīng)驗(yàn)。 他本科畢業(yè)于清華大學(xué)自動(dòng)化系,于伊利諾伊大學(xué)香檳分校獲得計(jì)算機(jī)視覺領(lǐng)域博士學(xué)位。歷任施樂硅谷研究中心研究員,亞馬遜美國(guó)總部高級(jí)技術(shù)經(jīng)理,盛大創(chuàng)新院資深研究員兼產(chǎn)品總監(jiān),智谷公司技術(shù)副總裁和寶寶樹CTO。他擁有十多項(xiàng)美國(guó)專利授權(quán),發(fā)表學(xué)術(shù)論文二十余篇。 還沒聽夠? |
|