欧美中文字幕第一页-欧美中文字幕一区-欧美中文字幕一区二区三区-欧美中文字幕在线-欧美中文字幕在线播放-欧美中文字幕在线视频

告別1人年,教你21天搭建推薦系統(tǒng)

我是創(chuàng)始人李巖:很抱歉!給自己產(chǎn)品做個(gè)廣告,點(diǎn)擊進(jìn)來(lái)看看。  

系統(tǒng) 作者: 盧梭

摘要: 本文作者為阿里云技術(shù)專家鄭重(盧梭),主要分享內(nèi)容是如何在21天內(nèi)快速搭建推薦系統(tǒng)。推薦系統(tǒng)的搭建是個(gè)復(fù)雜工程,涉及到實(shí)時(shí)計(jì)算、離線計(jì)算,以及各種數(shù)據(jù)采集、流轉(zhuǎn)等,對(duì)自建推薦系統(tǒng)來(lái)說(shuō),1人年是跑不掉的。 本文介紹的內(nèi)容還包括如何搭建一個(gè)個(gè)性化推薦系統(tǒng)所需的環(huán)境準(zhǔn)備、基本配置和離線技術(shù)等基本功能的搭建。

本文介紹的內(nèi)容還包括如何搭建一個(gè)個(gè)性化推薦系統(tǒng)所需的環(huán)境準(zhǔn)備、基本配置和離線技術(shù)等基本功能的搭建,也有效果報(bào)表、算法優(yōu)化和實(shí)時(shí)修正等高級(jí)功能的剖析。

大數(shù)據(jù)有三個(gè)非常經(jīng)典的應(yīng)用:計(jì)算廣告、搜索、推薦。每一種應(yīng)用最核心的地方都離不開(kāi)三個(gè)字——個(gè)性化。廣告不用說(shuō)了,計(jì)算廣告的基本要求就是要精準(zhǔn),為廣告選擇對(duì)其感興趣的目標(biāo)受眾;搜索可以理解為對(duì)搜索關(guān)鍵詞的個(gè)性化;而推薦,則需要在用戶和物品之間建立興趣關(guān)系。推薦的業(yè)態(tài)比較復(fù)雜,有類似淘寶天貓這樣的真正意義上大數(shù)據(jù)場(chǎng)景,也有很多中小網(wǎng)站、應(yīng)用,數(shù)據(jù)量其實(shí)并不是很大。阿里云推薦引擎(https://data.aliyun.com/product/re)的初衷,是為了幫助阿里云的客戶、創(chuàng)業(yè)者、中小網(wǎng)站,讓他們能夠更好的運(yùn)營(yíng)自己的產(chǎn)品或網(wǎng)站。

推薦系統(tǒng)一般包括展現(xiàn)子系統(tǒng)、日志子系統(tǒng)和算法子系統(tǒng)三個(gè)部分,三者互為一體。

系統(tǒng)架構(gòu)
“展現(xiàn)”部分不僅要負(fù)擔(dān)展現(xiàn),還是數(shù)據(jù)采集的窗口,用戶在展現(xiàn)系統(tǒng)的所有行為通過(guò)日志錄入,采集到的數(shù)據(jù)經(jīng)過(guò)算法子系統(tǒng)的計(jì)算,可以得到用戶的偏好或者個(gè)性化興趣,然后回過(guò)頭來(lái)指導(dǎo)“展現(xiàn)”部分怎樣做的更聚焦。

阿里云推薦引擎(RecEng)是推薦系統(tǒng)的一部分,主要實(shí)現(xiàn)的是算法子系統(tǒng),需要和其他子系統(tǒng)配合工作。使用阿里云推薦引擎分為兩大階段

第一階段:基本功能的搭建

Day1. 環(huán)境準(zhǔn)備

環(huán)境準(zhǔn)備
環(huán)境準(zhǔn)備分為兩部分。圖中左側(cè)為云上資源的準(zhǔn)備,我們需要擁有阿里公有云賬號(hào),然后開(kāi)通云監(jiān)控服務(wù)(可選)和阿里云數(shù)加服務(wù)(必選);開(kāi)通數(shù)加賬號(hào)后,大數(shù)據(jù)計(jì)算服務(wù)(MaxCompute,原名ODPS)和大數(shù)據(jù)開(kāi)發(fā)DataIDE就默認(rèn)開(kāi)通了(DataIDE相當(dāng)于MaxCompute的可視化包裝),最后開(kāi)通推薦引擎。未來(lái)客戶在推薦引擎中用到的數(shù)據(jù),以及相關(guān)離線計(jì)算,都在客戶自己的MaxCompute項(xiàng)目中完成。右側(cè)為客戶側(cè)的準(zhǔn)備,前端的展現(xiàn),以及日志的采集和管理都需要客戶自己完成,通過(guò)推薦引擎提供的API與推薦引擎進(jìn)行交互。通常情況下,客戶側(cè)的后臺(tái)相關(guān)功能會(huì)集中在推薦服務(wù)器中實(shí)現(xiàn),這也是阿里云推薦引擎墻裂建議的方案。推薦服務(wù)器可以是客戶自己的物理機(jī),也可以是阿里云的虛擬機(jī)ECS,都是可以的。

Day2-3. 數(shù)據(jù)準(zhǔn)備

DT時(shí)代的基本要求是數(shù)據(jù)要能夠“存、通、用”。采集日志,并將其上傳到公共云實(shí)現(xiàn)了數(shù)據(jù)“存”的過(guò)程;推薦引擎負(fù)責(zé)解決數(shù)據(jù)的“通”和“用”。“用”比較好理解,“通”則指的是所有進(jìn)入推薦引擎的數(shù)據(jù)必須滿足推薦引擎所定義的格式規(guī)范。推薦有三類數(shù)據(jù):用戶數(shù)據(jù)、物品數(shù)據(jù)和行為數(shù)據(jù),我們定義了這三種表的格式規(guī)范,比較簡(jiǎn)單,具體細(xì)節(jié)可以參考:鏈接

那么,如何把數(shù)據(jù)傳到公共云上來(lái)呢?目前主要有兩種方法,一是利用集成在MaxComputeconsole中的Tunnel命令,該命令的缺點(diǎn)只能上傳文本格式數(shù)據(jù);另一種方法是定制DataX上傳,DataX作為連接各種數(shù)據(jù)庫(kù)中間的節(jié)點(diǎn),它除了可以作為文本上傳,還可以把各種數(shù)據(jù)庫(kù)打通。DataX的缺點(diǎn)是目前只能在Linux環(huán)境下運(yùn)行。

當(dāng)然,未必每一個(gè)業(yè)務(wù)的數(shù)據(jù)都滿足規(guī)范的要求,所以還需要做一些格式轉(zhuǎn)換。DataIDE提供了比較友好的格式轉(zhuǎn)換界面,還可以把配置好的任務(wù)設(shè)置為定時(shí)任務(wù),每天定時(shí)調(diào)度;也可以在MaxComputeconsole下直接執(zhí)行格式轉(zhuǎn)換的SQL腳本,再利用系統(tǒng)的crontab命令實(shí)現(xiàn)定時(shí)任務(wù)。

Day4-5. 基本配置和離線計(jì)算

離線計(jì)算
環(huán)境和數(shù)據(jù)都準(zhǔn)備好了之后,接下來(lái)需要進(jìn)入阿里云推薦引擎產(chǎn)品,真正開(kāi)始使用推薦引擎了。不過(guò)在此之前,還需要對(duì)產(chǎn)品中的一些關(guān)鍵概念進(jìn)行必要的說(shuō)明。

第一個(gè)概念是業(yè)務(wù)。 在阿里云推薦引擎中,業(yè)務(wù)指的是一組可被用來(lái)進(jìn)行推薦算法計(jì)算的完備數(shù)據(jù)集,包括物品表、行為表、用戶表這三張表。也可以簡(jiǎn)單的認(rèn)為這三張表就構(gòu)成了一個(gè)業(yè)務(wù)。

第二個(gè)概念是場(chǎng)景, 所謂場(chǎng)景就是推薦的上下文。換句話說(shuō),就是在進(jìn)行推薦時(shí)有哪些可用的參數(shù)。比如在進(jìn)行首頁(yè)推薦的時(shí)候,可用的參數(shù)只有用戶的ID;在進(jìn)行詳情頁(yè)推薦的時(shí)候,可用的參數(shù)除了用戶ID,還可以由詳情頁(yè)上展示的物品ID,這樣首頁(yè)推薦和詳情頁(yè)推薦就是兩個(gè)推薦的場(chǎng)景。一個(gè)業(yè)務(wù)可以包括多個(gè)場(chǎng)景。

第三個(gè)概念是算法流程, 算法流程指的是數(shù)據(jù)端到端的處理流程,從客戶的輸入數(shù)據(jù)開(kāi)始,到產(chǎn)出最終結(jié)果為止。推薦算法流程從屬于場(chǎng)景,一個(gè)場(chǎng)景可以包含多個(gè)算法流程。每個(gè)推薦算法流程都包括兩部分,離線計(jì)算流程和在線計(jì)算流程。離線計(jì)算流程負(fù)責(zé)從原始的業(yè)務(wù)數(shù)據(jù)(用戶、物品、行為)開(kāi)始,計(jì)算用戶對(duì)物品的興趣,輸出本場(chǎng)景下用戶可能會(huì)感興趣的物品集合;在線計(jì)算流程實(shí)時(shí)接受推薦請(qǐng)求,從離線計(jì)算流程得到的物品集合中根據(jù)業(yè)務(wù)規(guī)則挑選出最合適的若干個(gè)物品返回給請(qǐng)求方。一個(gè)場(chǎng)景包含多個(gè)推薦算法流程這種設(shè)定使得我們?cè)谧鲂Ч麑?duì)比變的比較容易,后面會(huì)介紹A/BTesting,在A/BTesting中,每個(gè)推薦算法流程都是一個(gè)可被效果指標(biāo)度量的最小單元。在做完A/BTesting之后,通常只會(huì)在一個(gè)場(chǎng)景下保留一個(gè)效果最好的推薦算法流程。

流程
產(chǎn)品里的配置都比較簡(jiǎn)單,配置業(yè)務(wù)基本信息、配置業(yè)務(wù)依賴的云資源、配置業(yè)務(wù)數(shù)據(jù)表,接著配置場(chǎng)景、配置API參數(shù),最后配置算法流程,阿里云推薦引擎提供了兩個(gè)默認(rèn)的推薦算法流程模板,分別針對(duì)首頁(yè)場(chǎng)景和詳細(xì)頁(yè)場(chǎng)景,圖為首頁(yè)場(chǎng)景的離線計(jì)算流程模板,圖中每一個(gè)節(jié)點(diǎn)就是一個(gè)算法,最終產(chǎn)出離線計(jì)算結(jié)果。

Day6-8. 推薦API集成

集成
到了這一步,云端推薦引擎里的推薦算法邏輯已經(jīng)配置完成,剩下的事情就是把系統(tǒng)串起來(lái),讓推薦引擎和日志、展示兩個(gè)子系統(tǒng)結(jié)合起來(lái),成為推薦系統(tǒng)。阿里云推薦引擎提供了一組API,這里要做的就是把這些API集成到推薦服務(wù)器中。

首先需要把離線數(shù)據(jù)傳上來(lái),可以用前面提到的方法,Tunnel啊,DataX啊,都可以,但是一定要是定時(shí)任務(wù),我們總不能每天都去手工執(zhí)行數(shù)據(jù)上傳。上傳完成之后首先調(diào)用數(shù)據(jù)預(yù)處理API,對(duì)數(shù)據(jù)做一些預(yù)處理;然后調(diào)用離線計(jì)算API,啟動(dòng)離線計(jì)算。待離線計(jì)算完成后,通過(guò)推薦API就可以實(shí)時(shí)獲取用戶的推薦結(jié)果了。在離線計(jì)算的過(guò)程中,還可以通過(guò)查看計(jì)算任務(wù)狀態(tài)API實(shí)時(shí)獲取計(jì)算任務(wù)的狀態(tài),便于及時(shí)發(fā)現(xiàn)異常。

上圖也展示了我們對(duì)推薦服務(wù)器的一些基本建議。諸如數(shù)據(jù)上傳、啟動(dòng)離線計(jì)算這些功能建議由一個(gè)相對(duì)獨(dú)立的數(shù)據(jù)管理組件來(lái)負(fù)責(zé);而實(shí)時(shí)性要求比較高的推薦結(jié)果獲取建議由專門的推薦管理組件來(lái)負(fù)責(zé)。推薦管理組件和數(shù)據(jù)管理組件為什么要有一個(gè)交互呢?這是因?yàn)閺耐扑]引擎返回的結(jié)果中可能只包括了物品的ID,展示時(shí)不能只展示一個(gè)ID,還有很多材料,這些東西可以放在推薦服務(wù)器中,由數(shù)據(jù)管理模塊負(fù)責(zé)管理。UI可以提供人工管理數(shù)據(jù)的界面,比如新錄入了一個(gè)物品,或者某個(gè)物品賣完了要下線,需要做實(shí)時(shí)修正時(shí)就可以用到了。

這些工作都完成之后,一個(gè)具備最基本功能的推薦系統(tǒng)就可以運(yùn)行起來(lái)了。

via:博客園

End.

本文被轉(zhuǎn)載1次

首發(fā)媒體 36大數(shù)據(jù) | 轉(zhuǎn)發(fā)媒體

隨意打賞

告別2015年
提交建議
微信掃一掃,分享給好友吧。
主站蜘蛛池模板: 蜜桃视频黄色 | 天天曰曰| 国产亚洲综合视频 | 破外女出血一级毛片 | 欧美日韩国产超高清免费看片 | 神马不卡 | 国产成人精品在线观看 | 久久久久香蕉视频 | 亚洲人成亚洲精品 | 91精品免费不卡在线观看 | 另类综合网| 一区二区三区免费视频观看 | 欧美 日产 国产精选 | 五月色综合 | 国产精品视频福利视频网 | 久久午夜青青草原影院 | 999国内精品永久免费视频 | 乱色欧美videos黑人 | 99久久综合久中文字幕 | 国产99福利视频在线 | 免费综合网| 曰本性l交片视频视频 | 奇米影视狠狠干 | 免费不卡毛片 | 午夜毛片 | 成人www视频 | 国产欧美精品一区二区三区-老狼 | 国产综合久久久久影院 | 欧美日韩一卡二卡 | 久久欧美精品欧美九久欧美 | 国产在线观看一区二区三区四区 | 在线观看国产一区 | 色综合久久久久久 | 国产高清对白国产露脸91 | 欧美成人精品在线 | 国产精品 色 | 天天操天天干天天摸 | 国产精品久久九九 | 一区二区在线播放福利视频 | 一区二区在线精品免费视频 | 女人牲交视频一级毛片 |