本工作流程以廣告CTR預測情境為例,為您介紹如何使用PAI提供的資料採礦組件進行離線調度。
背景資訊
本工作流程流程如下:
通過歷史資料,在阿里雲Machine Learning Platform for AI上進行模型訓練。
通過巨量資料開發套件對模型進行調度。
每天淩晨對廣告投放進行CTR預測,甄選出符合標準的廣告進行推送。
本工作流程資料集是通過Random演算法隨機產生的,因此不對工作流程結果進行評估,僅介紹如何構建工作流程及巨量資料開發套件調度。
步驟一:準備資料集
本工作流程訓練資料集包括2016年09月19日和2016年09月20日的歷史資料,針對2016年09月21日的資料進行預測,使用MaxCompute分區表。資料集的具體欄位如下。
欄位名 | 類型 | 描述 |
id | STRING | 廣告的唯一標識。 |
age | DOUBLE | 廣告投放人群的年齡。 |
sex | DOUBLE | 廣告投放人群的性別。1表示男性,0表示女性。 |
duration | DOUBLE | 廣告在介面的停留時間長度,單位為秒。 |
place | DOUBLE | 廣告投放位置,按照投放位置從上到下的順序依次為0~4。 |
ctr | DOUBLE | 廣告CTR。如果廣告點選量除以展現量的結果大於0.03,則該參數取值為1,反之為0。 |
dt | STRING | 年月日,格式為YYYYMMDD。 |
您可以使用MaxCompute用戶端執行以下命令建立分區表ad。具體操作,請參見建立表。
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');
本工作流程資料表ad的樣本如下。您可以使用Tunnel命令匯入分區表資料。具體操作,請參見匯入資料。
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 |
步驟二:建立工作流程
建立自訂工作流程,並進入工作流程,詳情請參見建立自訂工作流程。
構建工作流程的流程。
在左側組件列表,將源/目標下的讀資料表組件向畫布中拖入兩個,並分別重新命名為ad-1和ad-2。
在左側組件列表,將資料預先處理下的歸一化組件向畫布中拖入兩個。
在左側組件列表,將 下的羅吉斯迴歸二分類組件拖入畫布中。
在左側組件列表,將機器學習下的預測組件拖入畫布中。
在左側組件列表,將源/目標下的寫資料表組件拖入畫布中,並重新命名為ad_result-1。
將以上組件拼接為如下工作流程。
序號
描述
①
資料來源匯入。
②
資料預先處理。
③
模型訓練。
④
預測。
配置組件參數。
分別單擊畫布中的ad-2(訓練資料來源)和ad-1(預測資料來源)組件,在右側面板,配置工作流程資料來源。
頁簽
參數
描述
表選擇
表名
輸入ad。
分區
選中分區複選框。
參數
配置為 dt=@@{yyyyMMdd},確定預測資料為每天的增量資料。
欄位資訊
源表欄位資訊
配置表選擇後,系統會自動同步該資料表的源表欄位資訊,無需手動設定。
分別單擊畫布中的歸一化-1和歸一化-2組件,在右側面板欄位設定頁簽,單擊選擇欄位,選擇DOUBLE或INT類型的欄位。
單擊畫布中的羅吉斯迴歸二分類組件,在右側面板,配置參數(僅配置如下參數,其他參數使用預設值即可)。
頁簽
參數
描述
欄位設定
訓練特徵列
選擇age、sex、duration及place列。
目標列
選擇ctr列。
單擊畫布中的預測組件,在右側面板,配置參數(僅配置如下參數,其他參數使用預設值即可)。
頁簽
參數
描述
欄位設定
特徵列
選擇age、sex、duration及place列。
原樣輸出資料行
選擇ctr列。
單擊畫布中的ad_result-1組件,在右側面板表選擇頁簽,配置寫入表表名為ad_result。
單擊畫布左上方的運行按鈕,運行工作流程。
工作流程運行結束後,按右鍵畫布中的ad_result-1,在捷徑功能表,單擊 ,即可查看預測產生的結果表。
其中:
prediction_result:表示每個廣告ID是否被點擊(1表示被點擊,0表示未被點擊)。
prediction_score:表示對應被點擊的機率。
步驟三:離線調度
使用DataWorks建立、配置並提交PAI任務,詳情請參見建立並使用PAI Studio節點。
配置調度任務時,將具體時間配置為每日淩晨0點進行訓練和推送資訊,詳情請參見時間屬性配置說明。
在提交任務頁面,單擊右上方的營運,即可進入營運中心查看任務日誌,詳情請參見查看並管理周期任務。
相關文檔
您也可以通過Designer提交離線調度任務,詳情請參見使用DataWorks離線調度Designer工作流程。
關于歸一化組件更詳細的內容介紹,請參見歸一化。
關於羅吉斯迴歸二分類更詳細的內容介紹,請參見羅吉斯迴歸二分類。