發表文章

RM 案例分享(二)

圖片
  RapidMiner在業界中有很多實際的應用,這些案例都是RapidMiner自带的,都是真實存在的,大家可以用同樣的操作對案例有一個很好的理解和應用。   01 |案例說明 在實際的工作中,除了數據本身需要處理之外,同時也需要對所建立模型進行檢驗與了解。所以在這個過程之中我們學習 2個比較進階的功能:一個是關於决定屬性和结果之間的關係,從而判斷哪些是更重要的屬性;另外一部分則是在使用模型的时候,如何做更細緻的控制。 案例使用的模型,是一個典型的直接郵件模型,在市場營銷中,通常通過郵件和客戶之間互動或是推銷,雖然現在可能郵件的功能不如社群網路,但是其中的道理是可以一樣的。只要能掌握相關的客戶資料,就可以預測客戶的反應,從而制定和評估市場營銷的策略。但是不見得所有的屬性都很重要,我們希望知道在這麼多的屬性之中,哪一個是最為重要和關鍵的屬性,可以作為 KPI 來做設定。整體的流程如下圖所示:   同時在使用模型的過程之中,我們也希望了解如何使用模型的參數來符合實際的需求,而不是只依靠系统的缺省值而做設定,這樣系统的預測才能和實際的结果更為的吻合。   02 | 數據資料 第一步基本仍然是讀入和理解數據,來檢查數據本身的質量、種類和相關信息。除了基本的數據觀察,比如有無缺失,或者數據的種類之外,我們也可以將鼠標點擊每一個屬性,來得到其基本資料和數據的分布(如果有需要,也可以使用圖形下方的可視化連接,直接打開圖表頁面) 而這邊比較有意思的是,可以看到在數據的種類列表中,有 2個三角形的警示標誌如下圖所示。這個警示標誌只是作為一個建議;意思是說,如果模型使用的“年纪”或者“性别”不同,則可能會產生出在使用上造成不同的可能,並不是對於结果有質量的影響。這個只是作為一個參考,是否使用仍然是由用戶自己决定。   而對於數據本身的相關性,似乎並沒有特别的主要關聯。通常我們可以通過使用分散式矩陣 (Scatter Matrix) 和分散式3D圖(Scatter 3D),來檢視數據和目標值的關係,而這是一個很好的起始點。   03 |操作流程 Step1讀入數據 這個步驟是一個很標準的操作流程,基本上將數據讀入之後,對於數據可以進行初步的了解。然後將不需要的屬性(如 Name)直接去掉,並使用一個複製(Multiple)的算式...

RM 案例分享(一)

圖片
RapidMiner在業界中有很多實際的應用,這些案例都是RapidMiner自帶的,都是真實存在的,大家可以用同樣的操作,對案例有一個很好的理解和應用。   01 |案例說明 首先我們學習最經典的機器學習模型,就是監督學習( Supervised Learning)中的分類模型。這邊使用的是一個電信公司的案例,通過客戶的基本資料和一些簡單的互動信息,建立一個模型,以預測哪些客戶有較高的可能性流失,從而進行補救。 因為研究顯示得到 :「 一個新客戶的成本是维持一個老客戶的 7倍 」 ,並且通過和老客戶维持良好的關係之後,有更多的機會得到老客戶的推薦而產生新客戶,所以對於任何的企業,掌握客戶何時可能會流失,而及早的提出補救做法,對於企業是非常必要和關鍵的,這個流程如下圖所示:   02 |數據資料 首先我們分析數據,共有 9990筆的數據。包括了客戶所使用的電信種類、客戶年纪、客戶開始時間、聯絡紀錄、以及客戶的平均帳單金額。這邊所使用的流失指標,可能是通過其他模型或是人工的方式给予標識,我們使用這個作為我們的指標,來預測客戶流失的可能性。   03 |操作流程 Step1讀入數據 這裡使用了一個簡單讀入數據的算式,但是不要先急著開始做數據的模型,應該先對數據做一個全面的了解,包括數據的質量(有沒有缺失?合不合理?)、種類(多項式?整數?)以及關聯性等等,如下圖所示:     通過這個觀察 , 我們可以看到一些簡單的問題。流失指標並不能作為一個分類的目標值 , 而其目標必須是一個二項式( Binomial)的數值 , 所以這個部分需要在數據整理之中進行處理,或者是有些人的年纪是 1歲 , 這個可能是錄入的錯誤,這個時候要判斷哪些是合理的數據或不是,從而進行處理。 同時也應該做一些簡單的數據分析,大概理解數據的基本性質,這樣可以更有效地對模型進行一個直觀的判斷。通常都是對於數據進行直觀的圖形了解,要使用何種圖形則可以依照不同的目的來了解。例如我們可以通過對於不同屬性和目標值的關係,大概掌握一些特性,如下圖所示:   但是這個只是一個分法,其真正的作用,是在之後的第二階段,我們將其和心理特徵解惑之後,就可以看出其強大的能力。通過這個圖形我們就可以發現數據裡面的一些性質,可以很清楚的看得出來流失的機會和賬單金额有一定的...