精準營銷難?Sophon Base手把手教你從建模到上架

星環科技發表於2021-09-18
Sophon是一款包含 資料分析和機器學習建模的一系列智慧分析軟體。基於本軟體,您可以快速完成從特徵工程、模型訓練到模型上線的機器學習全生命週期開發工作。為了幫助您快速入門,本文將以精準市場營銷模型應用實驗為例來展示Sophon Base的使用過程。


關於Sophon Base
Sophon包含3個主要模組: Sophon Base、Sophon Edge、Sophon KG。其中Sophon Base 資料科學基礎平臺具備完整的資料探索、多資料來源接入、實驗排程、智慧分析、使用者資產以及平臺管理等功能;為使用者提供完整的模型上線閉環,全流程圖形化幫助使用者更加便捷地對線上服務進行管理,實現模型價值。

實驗背景
某家企業希望開拓新使用者進行精準的市場營銷,但企業只知道市場營銷方案對過去的使用者是否產生效果。 用人工甄別的方式篩選現有使用者將消耗大量的人力資源。
透過建立精準市場營銷模型,讓企業可以運用過往使用者資料來預測營銷方案是否會對現有使用者產生效果,從而鎖定 潛在使用者,提高郵件、簡訊營銷的轉化率,減少企業營銷行為的成本。
在本實驗中,我們將以精準市場營銷為案例背景,展示如何使用Sophon Base來完成 精準市場營銷模型的訓練、測試、預測、上線與實際應用。

資料集
Sophon Base平臺在資料樣例中為該實驗提供了兩個樣例資料集,分別為包含過去使用者資訊的資料集pastcompaigndata與包含現在使用者資訊的資料集newcompaigndata。
在實驗開始前,先瀏覽資料集pastcompaigndata中的欄位以及取值:
精準營銷難?Sophon Base手把手教你從建模到上架
資料集pastcompaigndata欄位

在本實驗中,“response”以外的欄位將作為模型的輸入,“response”欄位將作為模型的輸出。
資料集newcompaigndata包含除了“response”以外的所有欄位。因此,您需要使用資料集pastcompaigndata訓練市場營銷模型並測試。訓練出的模型將讀取newcompaigndata中的使用者資訊,並預測營銷方案是否會對這些使用者產生效果。
瀏覽完資料集的欄位後,您已經知道該實驗近似監督學習中的二分類問題。本實驗將選擇隨機森林演算法來訓練模型。因為該資料集欄位較多,這也意味著它具有較高的維度;欄位的取值較少,“gender”、“area”、“email”、“mobile”等字串欄位只有兩種取值。而 隨機森林計算開銷小,效能強大,擅長處理高維度的資料;同時字串欄位取值劃分較少,隨機森林產生的屬性權值具有可信度。在訓練結束後,隨機森林能夠給出哪些欄位比較重要。

開始實驗
在建立專案之前,本文預設您的sophon平臺及各種配置檔案已經成功安裝,正常執行,並且您已成功註冊sophon 使用者。
進入專案首頁,點選“+新建專案”以新建一個專案:
精準營銷難?Sophon Base手把手教你從建模到上架
新建專案

在新建專案對話方塊中配置專案引數:
精準營銷難?Sophon Base手把手教你從建模到上架
引數配置完成後,點選“確認”以建立專案。
在專案首頁,點選建立好的專案,進入專案詳情頁面。該頁面包含實驗、資料集、SQL編輯、特徵、程式碼、Notebook、模型、執行歷史、API模型服務、工作流等資料。
點選左側的實驗,點選實驗,並新建空白實驗:
精準營銷難?Sophon Base手把手教你從建模到上架
精準營銷難?Sophon Base手把手教你從建模到上架
點選實驗,並新建空白實驗

在新建空白實驗頁面,填寫實驗的名稱與儲存位置,點選確定以建立實驗。實驗建立後會自動進入該實驗介面。

資料匯入
在左側運算元選擇中點選“資料集”>“資料樣例”>pastcompaigndata,將pastcompaigndata拖動至右側工作區:
精準營銷難?Sophon Base手把手教你從建模到上架
拖動pastcompaigndata

選中pastcompaigndata,右鍵選單>“檢視資料”,可以預覽資料集的內容,看到結果如下:
精準營銷難?Sophon Base手把手教你從建模到上架
預覽pastcompaigndata資料


資料探索
接下來進行資料探索操作。點選左側工具欄的資料集按鈕進入資料集介面:
精準營銷難?Sophon Base手把手教你從建模到上架
資料集按鈕

在資料集介面,點選上方的樣例按鈕,在下方查詢到pastcompaigndata資料集樣例:
精準營銷難?Sophon Base手把手教你從建模到上架
資料集介面

點選該樣例後可以進入樣例的詳情頁面,點選上方的圖形探索按鈕,切換至圖形探索頁面進行資料探索。
拖動左側資料列至右側維度、指標、交叉分類等操作框中來進行繪圖。點選上方的統計分析按鈕,切換至統計分析頁面進行統計分析;勾選資料列,點選“分析”,即可得到資料集的整體統計分析結果。

資料預處理
我們可以透過搭建運算元來快速完成資料的預處理工作。
在左側選擇“預處理”>“字串”>“字串索引”運算元並拖動至工作區,將資料來源的output連線至“字串索引”運算元的input。
在左側選擇“預處理”>“元資訊”>“設定角色”運算元並拖動至工作區,將“字串索引”運算元右側的output連線至“設定角色”運算元的input。
在左側選擇“預處理”>“其他”>“樣本切分”運算元並拖動至工作區,將“設定角色”運算元的output連線至“樣本切分”運算元的input。
您也可以在搜尋框中直接輸入名稱搜尋運算元,對應的運算元會被檢索出來。
運算元連線完成後如圖所示:
精準營銷難?Sophon Base手把手教你從建模到上架
預處理運算元連線


點選選中“字串索引”運算元,在右側進行引數設定:
精準營銷難?Sophon Base手把手教你從建模到上架
“字串索引”運算元>運算元引數

先點選右側的運算元引數,並設定引數:

精準營銷難?Sophon Base手把手教你從建模到上架
之後點選左側的IO引數,然後點選屬性子集右側的按鈕,進入選擇屬性頁面:
精準營銷難?Sophon Base手把手教你從建模到上架
“字串索引”運算元>IO引數設定

在選擇屬性頁面的左側勾選“gender”、“area”、“email”、“mobile”、“response”這五個屬性。然後點選右側的向右按鈕來選中這五個屬性,點選確定來完成選擇:
精準營銷難?Sophon Base手把手教你從建模到上架
“字串索引”運算元>IO引數設定>屬性子集

“是否排除ID列”保持預設值不勾選。至此,“字串索引”運算元的引數設定完成。
點選選中“設定角色”運算元,在右側設定引數:
精準營銷難?Sophon Base手把手教你從建模到上架
點選額外的角色設定右側的按鈕,進入額外的角色設定頁面:
精準營銷難?Sophon Base手把手教你從建模到上架
“設定角色”運算元>額外的角色設定

在額外的角色設定頁面裡,先選擇列名為“response”,目標角色為“label”。然後勾選該列。最後點選確定完成設定。至此,設定角色運算元的引數設定完成。
點選選中“樣本切分”運算元,在右側設定引數。點選切分比例右側的按鈕進入切分比例頁面,如圖示將切分比例設定為7:3,70%的資料作為訓練集,30%的資料作為測試集:
精準營銷難?Sophon Base手把手教你從建模到上架
“樣本切分”運算元>切分比例

勾選比例後點選確定來完成設定。不勾選“分層樣本劃分”,隨機種子設定為0。至此,資料預處理完成。

模型訓練
在左側選擇“機器學習”>“分類”>“隨機森林”運算元並拖動至工作區,將“樣本切分”運算元的partition1連線至“隨機森林”運算元的train set。
在左側選擇“匯入匯出”>“模型寫入”運算元並拖動至工作區,將“隨機森林”運算元的model連線至“模型寫入”運算元的model。
運算元連線完成後如圖所示:
精準營銷難?Sophon Base手把手教你從建模到上架
模型運算元連線

點選選中“隨機森林”運算元,在右側設定引數。
運算元引數:
精準營銷難?Sophon Base手把手教你從建模到上架
值得注意的是, 隨機森林中的樹一般會設定的比較深,以儘可能地降低偏差。本文中“隨機森林”運算元的引數設定僅供參考,您可以對演算法模型設定不同引數除錯來得到多個訓練結果,根據訓練結果來構建效能最佳的模型。
點選選中“模型寫入”運算元,在右側設定引數。如果您還沒有匯出過模型,您可以在右側勾選“建立新模型檔案”併為你的新模型命名。如果您已經匯出過模型,您可以不勾選“建立新模型檔案”並選擇一個已有的模型,實驗執行後,匯出的模型會自動覆蓋選擇的模型。
透過“模型寫入”運算元,我們可以匯出並儲存訓練完的模型。

效能驗證
我們需要對訓練完的模型進行驗證與評估。
在左側選擇“驗證與評估”>“應用模型”運算元並拖動至工作區,將“隨機森林”運算元的model連線至“應用模型”運算元右側的model。同時將“樣本切分”運算元的partition2連線至“應用模型”運算元左側的input。
在左側選擇“驗證與評估”>“效能(二分類)”運算元並拖動至工作區,將“應用模型”運算元的output連線至“效能(二分類)”運算元的input。
運算元連線完成後如圖所示:
精準營銷難?Sophon Base手把手教你從建模到上架
效能驗證運算元連線

點選選中“效能(二分類)”運算元,在右側設定引數,此處您可以根據自己的實際需要選擇評估標準:
精準營銷難?Sophon Base手把手教你從建模到上架

將“效能(二分類)”運算元的output連線至result,點選上方的執行按鈕,輸出訓練模型的測試結果,對得到的測試結果進行分析:
精準營銷難?Sophon Base手把手教你從建模到上架
混淆矩陣

測試集中有119個“yes”樣本與157個“no”樣本。為方便理解,分別稱它們為真樣本與假樣本。
如果一個真樣本被預測為真,我們稱其為真陽性(TP);一個真樣本被預測為假,我們稱其為假陰性(FN);以此類推,一個假樣本被預測為真,我們稱其為假陽性(FP);一個假樣本被預測為假,我們稱其為真陰性(TN)。
您可以透過召回率和精準率來初步評估模型的好壞。召回率體現了所有正樣本中被識別出的正樣本的比例,精準率體現了所有預測為正的樣本中預測正確的比例。召回率與精準率可以由以上四個數字得出:召回率=TP / (TP + FN)、精準率= TP / (TP + FP)。
根據混淆矩陣中的資訊,您可以知道:有115個真陽性,10個假陽性,4個假陰性,147個真陰性,召回率為0.966、精準率為0.920。可以看出該模型無論是召回率還是精準率都較高。
您也可以使用ROC曲線來評估模型的效能。 ROC曲線可以反映模型在選取不同閾值時其命中率與誤判率的趨勢走向。
精準營銷難?Sophon Base手把手教你從建模到上架
ROC曲線

其中,命中率即真正類率(true postive rate TPR),等同於召回率。TPR越大,預測正類中預測正確的比例越高;誤判率即負正類率(false postive rate FPR)。FPR越小,誤判率越低,預測正類中實際負類越小。在ROC曲線中,FPR作為橫軸而TPR作為縱軸。
在ROC曲線圖中的四個頂點有其特殊的含義。
第一個點,(0,1),即FPR=0,TPR=1,這是最完美的診斷,它將所有樣本都正確分類。第二個點,(1,0),即FPR=1,TPR=0,最糟糕的分類器,它成功避開了所有正確答案。第三個點,(0,0),即FPR=TPR=0,即FP=TP=0,所有樣本均被預測為假樣本。第四個點,(1,1),所有的樣本均被預測為真樣本。
一個好的分類模型的ROC曲線應儘可能靠近點(0,1),為了精確地評價分類器的好壞,您可以參考AUC值。AUC值為ROC曲線下的面積,該值越大意味著當前模型準確率越高。從上圖可以看到,黃色的線即ROC曲線。它與點(0,1)之間的距離非常近;AUC值為0.9922,接近1,可以看出訓練出的模型效果很好。
在執行實驗後,您訓練完成的模型已經被匯出,可以在模型介面檢視該模型的詳細資訊。
精準營銷難?Sophon Base手把手教你從建模到上架
模型引數重要性

在詳細資訊中,我們可以看到該模型給出的引數重要性。可以看到在使用者資訊中,使用者使用郵箱的評級與使用者使用行動電話的頻率都對使用者的營銷結果有著較大的影響;而使用者6個月內的銷售次數與使用者總銷售次數對結果的影響較小。

使用模型來預測結果
您已經得到了訓練完成的模型,現在可以用它來預測營銷方案對現在的使用者是否產生效果。
新建一個新實驗。點選左側實驗按鈕進入實驗頁面,點選實驗,新建空白實驗。進入實驗後在左側是運算元選擇中點選資料集,點選資料樣例,選擇newcompaigndata。此部分與上一個實驗操作基本相同,不再重複。
將newcompaigndata拖動至右側工作區並預覽資料:
精準營銷難?Sophon Base手把手教你從建模到上架
預覽newcompaigndata資料

在左側選擇“預處理”>“字串”>“字串索引”運算元並拖動至工作區,將資料來源的output連線至“字串索引”運算元的input。
在左側選擇“預處理”>“元資訊”>“設定角色”運算元並拖動至工作區,將“字串索引”運算元的output連線至“設定角色”運算元的input。
運算元連線完成後如圖所示:
精準營銷難?Sophon Base手把手教你從建模到上架
預處理運算元連線

點選選中“字串索引”運算元,在右側設定引數。newcompaigndata沒有“response”欄位,選擇屬性時去除“response”,其餘設定與上一個實驗相同,不再重複。
點選選中“設定角色”運算元,在右側設定引數:
精準營銷難?Sophon Base手把手教你從建模到上架
在左側選擇“模型”,選擇之前匯出的模型運算元並拖動至工作區。

在左側選擇“驗證與評估”中的“應用模型”運算元並拖向右側工作區,將模型運算元的model連線至“應用模型”運算元右側的model。同時將“設定角色”運算元的output連線至“應用模型”運算元左側的input。
運算元連線完成後如圖所示:
精準營銷難?Sophon Base手把手教你從建模到上架
模型運算元連線

模型服務部署
如果希望您訓練出的模型可以投入使用,您可以選擇部署您的模型服務。模型服務部署分為2個步驟, 模型上架(模型管理)及模型上線(服務管理)。
在預測實驗右上方點選模型上架按鈕,會彈出“模型上架”對話方塊。
在第一步選擇模型服務中填寫引數:
精準營銷難?Sophon Base手把手教你從建模到上架
模型上架頁面>選擇模型服務
模型上架頁面>選擇模型服務

精準營銷難?Sophon Base手把手教你從建模到上架
全部填寫完成後點選“下一步”。在第二步新建模型版本中填寫引數:
精準營銷難?Sophon Base手把手教你從建模到上架
全部填寫完成後點選“下一步”。
在第三步介面配置中填寫引數。先在“給上架的模型設定輸入”中勾選newcampagindata。之後勾選“基礎資料資料集”右側的“全選”。最後點選“上架”以上架模型:
精準營銷難?Sophon Base手把手教你從建模到上架
模型上架頁面>介面配置

上架後點選左側工具欄的“模型服務”按鈕進入模型管理頁面:
精準營銷難?Sophon Base手把手教你從建模到上架
左側工具欄的“模型服務”按鈕


在模型管理頁面找到剛才上架的模型,點選版本管理按鈕進入版本管理頁面:
精準營銷難?Sophon Base手把手教你從建模到上架
模型管理頁面


在版本管理頁面中,點選上線按鈕進入上線模型服務頁面:
精準營銷難?Sophon Base手把手教你從建模到上架
版本管理頁面


在上線模型服務頁面中設定引數:
精準營銷難?Sophon Base手把手教你從建模到上架
引數設定完成後,點選上線按鈕。
點選左側工具欄的模型服務按鈕進入模型服務介面,點選上方的服務管理按鈕進入服務管理頁面。在該頁面可以看到剛剛上線的模型。
精準營銷難?Sophon Base手把手教你從建模到上架
服務管理頁面


可以點選測試連線按鈕測試連線狀態。如果API有返回代表連線成功,無返回代表連線失敗。模型剛上線時會顯示連線失敗,請稍後再嘗試測試連線。


小結
本文透過精準市場營銷模型的訓練、測試、預測、上線與實際應用為您展示了Sophon Base的使用流程。在Sophon Base的幫助下企業可以簡單快速地訓練出模型並得到模型的預測結果, 根據預測結果,企業能夠及時調整營銷方案、篩選目標使用者、輔助領導者進行決策。將模型上架後開發人員可以直接使用API對新使用者進行篩選,最終實現企業對特定使用者進行精準市場營銷的目的。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69994106/viewspace-2792796/,如需轉載,請註明出處,否則將追究法律責任。

相關文章