本案例使用經典的CTR點擊率預估資料集Avazu進行一體化模型訓練,並將離線調試完成的歸一化預測->獨熱編碼預測->向量彙總->FM預測流程完整部署到EAS。您線上上環境進行模型預測時,也可以使用離線訓練時的資料預先處理和特徵工程邏輯,以保障線上線下處理流程的一致性。
前提條件
資料集
Avazu是經典的CTR點擊率預估資料集,PAI使用了Avazu的一個子集(包括20萬條樣本資料:訓練集16萬條;預測集4萬條)構建點擊率預估流程。資料詳情請查看Avazu,具體的欄位如下。
列名 | 類型 | 描述 |
id | STRING | 廣告ID |
click | DOUBLE | 是否點擊 |
dt_year | INT | 點擊的年份 |
dt_month | INT | 點擊的月份 |
dt_day | INT | 點擊的時間(天) |
dt_hour | INT | 點擊的時間(小時) |
c1 | STRING | 匿名的離散變數 |
banner_pos | INT | 標題的位置 |
site_id | STRING | 地點ID |
site_domain | STRING | 地點Domain |
site_category | STRING | 地點類別 |
app_id | STRING | 應用ID |
app_domain | STRING | 應用Domain |
app_category | STRING | 應用類別 |
device_id | STRING | 裝置ID |
device_ip | STRING | 裝置IP |
device_model | STRING | 裝置模型 |
device_type | STRING | 裝置類型 |
device_conn_type | STRING | 裝置連線類型 |
c14 - c21 | DOUBLE | 匿名離散變數(共8列) |
操作步驟
進入Designer頁面。
登入PAI控制台。
在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應的工作空間。
在工作空間頁面的左側導覽列選擇 ,進入Designer頁面。
構建工作流程。
在Designer頁面,單擊預置模板頁簽。
在模板列表的保障離線上一致性的CTR預估方案地區,單擊建立。
在建立工作流程對話方塊配置以下關鍵參數,其他參數可以使用預設配置。
其中:工作流程資料存放區配置為OSS Bucket路徑,用於儲存工作流程運行中產出的臨時資料和模型。
單擊確定。
您需要等待大約十秒鐘,工作流程可以建立成功。
在工作流程列表,雙擊保障離線上一致性的CTR預估方案工作流程,進入工作流程。
通過模板建立的工作流程,如下圖所示。
在該工作流程中,PAI將特徵分為以下兩類:
數值型特徵:PAI使用歸一化演算法,將特徵做歸一化處理。
離散型特徵:PAI使用獨熱編碼組件處理。最後將兩類特徵融合成一個向量,並使用FM演算法訓練模型並推理。
運行工作流程並查看輸出結果。
單擊畫布上方的。
工作流程運行結束後,按右鍵畫布中的二分類評估-1,在捷徑功能表,單擊可視化分析,或直接單擊畫布上方的。
在二分類評估-1對話方塊指標資料頁簽,查看預估準確率。
如果指標滿足要求,您可以將資料預先處理、特徵工程、模型預測的完整流程打包,並部署至EAS。
在畫布上方,單擊製作Pipeline模型。
手動選中歸一化批預測-2節點後(會自動選中右側的完整鏈路),單擊下一步。會把選中需要部署的資料處理鏈路和用到的模型打包成一個Pipeline模型。
在製作Pipeline模型對話方塊,確認模型打包資訊,並單擊下一步,啟動Pipeline模型打包任務。打包任務大概需要3~5分鐘即可完成。
部署模型服務。
方式一:在製作Pipeline模型對話方塊,當運行狀態為成功時,單擊部署至EAS,會跳轉到EAS控制台。配置服務名稱和資源部署資訊後,單擊部署,即可完成模型部署,更多詳細內容,請參見Pipeline部署線上服務。
方式二:如果製作Pipeline模型對話方塊已關閉,您可以在畫布右上方單擊全部任務查看,在歷史任務對話方塊,查看製作任務運行狀態。當狀態為成功時:
您可以單擊操作列下的模型>部署,並按照控制台操作指引部署模型服務。
您也可以單擊畫布上方的模型列表,在模型列表中選中打包的模型,單擊部署至EAS並按照控制台操作指引部署模型服務。
在EAS控制台,單擊已部署好的服務操作列下的線上調試,對服務進行線上調試,更多詳細內容,請參見服務線上調試。
其中:Body地區的請求資料可以輸入和資料集相同結構的測試資料,例如:
[{"id":"10000169349117863715","click":0.0,"dt_year":14,"dt_month":10,"dt_day":21,"dt_hour":0,"C1":"1005","banner_pos":0,"site_id":"1fbe01fe","site_domain":"f3845767","site_category":"28905ebd","app_id":"ecad2386","app_domain":"7801e8d9","app_category":"07d7df22","device_id":"a99f214a","device_ip":"96809ac8","device_model":"711ee120","device_type":"1","device_conn_type":"0","c14":15704.0,"c15":320.0,"c16":50.0,"c17":1722.0,"c18":0,"c19":35.0,"c20":100084.0,"c21":79.0}]
該資料在服務中會順序進行歸一化預測->獨熱編碼預測->向量彙總->FM預測,最終得到如下預測結果。