離線調(diào)度
本工作流以廣告CTR預(yù)測(cè)場(chǎng)景為例,為您介紹如何使用PAI提供的數(shù)據(jù)挖掘組件進(jìn)行離線調(diào)度。
背景信息
本工作流流程如下:
通過歷史數(shù)據(jù),在阿里云機(jī)器學(xué)習(xí)平臺(tái)上進(jìn)行模型訓(xùn)練。
通過大數(shù)據(jù)開發(fā)套件對(duì)模型進(jìn)行調(diào)度。
每天凌晨對(duì)廣告投放進(jìn)行CTR預(yù)測(cè),甄選出符合標(biāo)準(zhǔn)的廣告進(jìn)行推送。
本工作流數(shù)據(jù)集是通過Random算法隨機(jī)生成的,因此不對(duì)工作流結(jié)果進(jìn)行評(píng)估,僅介紹如何構(gòu)建工作流及大數(shù)據(jù)開發(fā)套件調(diào)度。
步驟一:準(zhǔn)備數(shù)據(jù)集
本工作流訓(xùn)練數(shù)據(jù)集包括2016年09月19日和2016年09月20日的歷史數(shù)據(jù),針對(duì)2016年09月21日的數(shù)據(jù)進(jìn)行預(yù)測(cè),使用MaxCompute分區(qū)表。數(shù)據(jù)集的具體字段如下。
字段名 | 類型 | 描述 |
id | STRING | 廣告的唯一標(biāo)識(shí)。 |
age | DOUBLE | 廣告投放人群的年齡。 |
sex | DOUBLE | 廣告投放人群的性別。1表示男性,0表示女性。 |
duration | DOUBLE | 廣告在界面的停留時(shí)長(zhǎng),單位為秒。 |
place | DOUBLE | 廣告投放位置,按照投放位置從上到下的順序依次為0~4。 |
ctr | DOUBLE | 廣告CTR。如果廣告點(diǎn)擊量除以展現(xiàn)量的結(jié)果大于0.03,則該參數(shù)取值為1,反之為0。 |
dt | STRING | 年月日,格式為YYYYMMDD。 |
您可以使用MaxCompute客戶端執(zhí)行以下命令創(chuàng)建分區(qū)表ad。具體操作,請(qǐng)參見創(chuàng)建表。
create table if not exists ad (id STRING,age DOUBLE,sex DOUBLE,duration DOUBLE,place DOUBLE,ctr DOUBLE ) partitioned by (dt STRING) ;
alter table ad add if not exists partition (dt='20160919') partition (dt='20160920');
本工作流數(shù)據(jù)表ad的示例如下。您可以使用Tunnel命令導(dǎo)入分區(qū)表數(shù)據(jù)。具體操作,請(qǐng)參見導(dǎo)入數(shù)據(jù)。
id | age | sex | duration | place | ctr | dt |
0 | 49 | 1 | 9 | 0 | 0 | 20160919 |
1 | 17 | 1 | 3 | 1 | 1 | 20160919 |
2 | 44 | 0 | 4 | 0 | 0 | 20160919 |
3 | 14 | 1 | 9 | 1 | 0 | 20160919 |
4 | 44 | 1 | 5 | 4 | 0 | 20160919 |
5 | 10 | 1 | 9 | 3 | 1 | 20160919 |
6 | 42 | 1 | 7 | 3 | 0 | 20160919 |
7 | 51 | 1 | 3 | 1 | 1 | 20160919 |
8 | 18 | 0 | 3 | 3 | 0 | 20160919 |
9 | 39 | 0 | 8 | 4 | 1 | 20160919 |
10 | 45 | 1 | 3 | 2 | 0 | 20160919 |
11 | 57 | 0 | 8 | 2 | 0 | 20160919 |
12 | 14 | 0 | 7 | 2 | 1 | 20160919 |
步驟二:創(chuàng)建工作流
新建自定義工作流,并進(jìn)入工作流,詳情請(qǐng)參見新建自定義工作流。
構(gòu)建工作流的流程。
在左側(cè)組件列表,將源/目標(biāo)下的讀數(shù)據(jù)表組件向畫布中拖入兩個(gè),并分別重命名為ad-1和ad-2。
在左側(cè)組件列表,將數(shù)據(jù)預(yù)處理下的歸一化組件向畫布中拖入兩個(gè)。
在左側(cè)組件列表,將 下的邏輯回歸二分類組件拖入畫布中。
在左側(cè)組件列表,將機(jī)器學(xué)習(xí)下的預(yù)測(cè)組件拖入畫布中。
在左側(cè)組件列表,將源/目標(biāo)下的寫數(shù)據(jù)表組件拖入畫布中,并重命名為ad_result-1。
將以上組件拼接為如下工作流。
序號(hào)
描述
①
數(shù)據(jù)源導(dǎo)入。
②
數(shù)據(jù)預(yù)處理。
③
模型訓(xùn)練。
④
預(yù)測(cè)。
配置組件參數(shù)。
分別單擊畫布中的ad-2(訓(xùn)練數(shù)據(jù)源)和ad-1(預(yù)測(cè)數(shù)據(jù)源)組件,在右側(cè)面板,配置工作流數(shù)據(jù)源。
頁(yè)簽
參數(shù)
描述
表選擇
表名
輸入ad。
分區(qū)
選中分區(qū)復(fù)選框。
參數(shù)
配置為 dt=@@{yyyyMMdd},確定預(yù)測(cè)數(shù)據(jù)為每天的增量數(shù)據(jù)。
字段信息
源表字段信息
配置表選擇后,系統(tǒng)會(huì)自動(dòng)同步該數(shù)據(jù)表的源表字段信息,無(wú)需手動(dòng)配置。
分別單擊畫布中的歸一化-1和歸一化-2組件,在右側(cè)面板字段設(shè)置頁(yè)簽,單擊選擇字段,選擇DOUBLE或INT類型的字段。
單擊畫布中的邏輯回歸二分類組件,在右側(cè)面板,配置參數(shù)(僅配置如下參數(shù),其他參數(shù)使用默認(rèn)值即可)。
頁(yè)簽
參數(shù)
描述
字段設(shè)置
訓(xùn)練特征列
選擇age、sex、duration及place列。
目標(biāo)列
選擇ctr列。
單擊畫布中的預(yù)測(cè)組件,在右側(cè)面板,配置參數(shù)(僅配置如下參數(shù),其他參數(shù)使用默認(rèn)值即可)。
頁(yè)簽
參數(shù)
描述
字段設(shè)置
特征列
選擇age、sex、duration及place列。
原樣輸出列
選擇ctr列。
單擊畫布中的ad_result-1組件,在右側(cè)面板表選擇頁(yè)簽,配置寫入表表名為ad_result。
單擊畫布左上方的運(yùn)行按鈕,運(yùn)行工作流。
工作流運(yùn)行結(jié)束后,右鍵單擊畫布中的ad_result-1,在快捷菜單,單擊 ,即可查看預(yù)測(cè)生成的結(jié)果表。
其中:
prediction_result:表示每個(gè)廣告ID是否被點(diǎn)擊(1表示被點(diǎn)擊,0表示未被點(diǎn)擊)。
prediction_score:表示對(duì)應(yīng)被點(diǎn)擊的概率。
步驟三:離線調(diào)度
使用DataWorks創(chuàng)建、配置并提交PAI任務(wù),詳情請(qǐng)參見創(chuàng)建并使用PAI Studio節(jié)點(diǎn)。
配置調(diào)度任務(wù)時(shí),將具體時(shí)間配置為每日凌晨0點(diǎn)進(jìn)行訓(xùn)練和推送信息,詳情請(qǐng)參見時(shí)間屬性配置說明。
在提交任務(wù)頁(yè)面,單擊右上方的運(yùn)維,即可進(jìn)入運(yùn)維中心查看任務(wù)日志,詳情請(qǐng)參見查看并管理周期任務(wù)。
相關(guān)文檔
您也可以通過Designer提交離線調(diào)度任務(wù),詳情請(qǐng)參見使用DataWorks離線調(diào)度Designer工作流。
關(guān)于歸一化組件更詳細(xì)的內(nèi)容介紹,請(qǐng)參見歸一化。
關(guān)于邏輯回歸二分類更詳細(xì)的內(nèi)容介紹,請(qǐng)參見邏輯回歸二分類。