熱線電話:13121318867

登錄
首頁精彩閱讀SAS數據挖掘實戰篇【五】
SAS數據挖掘實戰篇【五】
2016-04-10
收藏

SAS數據挖掘實戰篇【五】

SAS——預測模型
6.1 測模型介紹
預測型(Prediction)是指由歷史的和當前的數據產生的并能推測未來數據趨勢的知識。這類知識可以被認為是以時
間為關鍵屬性的關聯知識,可以應用到以時間為關鍵屬性的源數據挖掘中。從預測的主要功能上看,主要是對未來
數據的概念分類和趨勢輸出。統計學中的回歸方法等可以通過歷史數據直接產生對未來數據預測的連續值。因而這
些預測型知識己經蘊藏在諸如趨勢曲線等輸出形式中。常見的預測模型主要有邏輯回歸、決策樹神經網絡。
1 邏輯回歸模型
一個隨機事件的發生與否往往與多個影響因素有關,Logistic回歸分析能從眾多的影響該事件發生的可疑因素中篩
選出對事件發生概率有影響的因素,并建立用這些因素估計該事件在某段時間內發生概率的回歸模型。
2 決策樹模型
決策樹可能是最受歡迎的數據挖掘算法。用決策樹解決的最常見的數據挖掘任務是分類;例如,確定銀行每個客戶額
信用風險,或者找出這些客戶中哪些客戶可能是在線的購買者。
決策樹的基本原理是遞歸的將數據裁分成子集,以便每一個子集包含目標變量類似的狀態,這些目標變量是可預測
屬性。每一次對樹進行拆分,都要評價所有的輸入屬性對可預測屬性的影響。當這個遞歸的過程結束時,決策樹
就創建完了。決策樹算法與其他的數據挖掘算法相比有一些優勢,比如,利用決策樹可以快速創建挖掘模型,并且
創建的模型也很容易解釋。每一條從根節點到葉節點的路徑就是一條規則?;?a href='/map/jueceshu/' style='color:#000;font-size:inherit;'>決策樹的預測也非常高效。對事例
進行預測的過程是從根節點落到葉節點的路徑,所選擇的路徑基于決策樹中節點的拆分條件。
當某一事例落到一個葉節點時,這個事例的預測值就是基于存儲在節點的統計值的。
人工神經網絡:模擬人的神經元功能,從結構上模仿生物神經網絡,經過輸入層、隱藏層、輸出層等,對數據進行
調整、計算,最后得到結果,是一種通過訓練來學習的非線性預測模型。
6.2  logistic回歸
預測的基本問題就是根據目前的事實正確地判斷未知事件發生的可能性。在實際項目中,未知值稱為目標,已知事
實稱為輸入。輸入和目標描述觀測值的度量方式。輸入和目標變量的度量方式是通過不同的度量尺度表示。SAS EM
為構建模型定義如下度量尺度:
區間度量:允許執行簡單算術運算或者對數運算的數值
有序度量:擁有內在順序的定性屬性
名義度量:缺少內在順序的定性屬性
二元度量:擁有兩個層次的定性屬性
為了解決預測中的基礎問題,構建輸入變量和目標變量之間的數學關系。這種數學關系就是常說的預測模型。一旦
建好預測模型,就可以運用該模型來預測那些目標值未知的輸入觀測值。構建預測模型需要訓練數據集,即先前的
輸入和目標觀測數據集。假設該訓練數據集可以用來代表未知的觀測值。一個非常簡單的預測模型假設所有可能的
輸入和目標組合都記錄在訓練數據集中。一般來說,在真實的訓練數據集中,一個特定的輸入集合某個范圍的目標
區間相對應。由于這種噪聲數據存在,預測模型經常根據輸入集提供目標變量的期望值。針對定性目標,目標變量
的期望值可以通過每個定性級別的概率來解釋。這兩種情況都說明任何預測模型在正確性方面的存在限制。
 
模型角色和度量尺度



 
目標變量時二值的,并且通過logit函數作為鏈接函數的一般線性模型稱為邏輯線性回歸模型。它假設比
率的變化在W定義的方向上是單調的。由于在整個輸入空間比率的變化實在單一的方向,標準的邏輯回
歸模型的決策邊界是一個超平面。邏輯回歸模型的簡單結構使它很容易解釋。
 
邏輯回歸實例
 
作為某商品類目公司的市場分析師,你可能需要為二值目標變量(purchase)建立邏輯回歸模型,判斷
某個顧客是否會產生購買。輸入數據集存放在SAS安裝文件的SAMPSIO.DMEXA1中,該數據集包含
1966個顧客觀測值信息。它包含31個區間變量輸入和18個分類變量輸用于構建模型。該邏輯回歸模型產
生的打分公式應用在新的數據集中,給那些可能產生購買的顧客發送郵件。

1  創建SAS EM工程

2  添加輸入數據源節點
設置SAMPSIO.DMEXA1數據集作為輸入數據源
選擇變量選項卡,設置purchase為目標變量,變量amount的模型角色為rejected
設置目標變量的層次,選擇分類變量選項卡,目標變量的順序值決定了事件級別。二值目標變量purchase
擁有兩種值0和1.,0表示NO,1表示YES。默認情況下,目標的順序值設置為降序。在該實例中,主要判
斷顧客是否產生購買(event level = YES)。另外,還可以設置目標變量的目標信息。最后,關閉輸入數
據源節點。

3  添加數據劃分節點
對輸入數據集運用層次抽樣方法創建訓練和驗證數據集。訓練數據集被用來擬合回歸模型,驗證數據集
用來評估回歸模型。層次抽樣技術保留購買者和非購買者在訓練集和驗證集中的初時比率。
首先,在流程圖空間加入數據劃分節點,打開數據劃分節點,在劃分選項卡,設置輸入數據集的70%
作為訓練集,30%作為驗證集,測試為0。針對類型輸入變量STATECOD,選擇層次抽樣方法單選按鈕。
激活層次選項卡,在status列中,設置STATECOD的狀態為use。
關閉數據劃分節點。

4  添加變量轉換節點
打開轉換節點,創建二值變量wealth,當income大于40000同時homeval大于100000,則其值為1,否則為0。
在主菜單中,選擇工具,創建變量。

創建新的分類變量,對age進行分箱處理,劃分為4個年齡組。右擊age變量,選擇transform,選擇bucket菜單

右擊frequent輸入變量,查看分布

從圖中可以發現,frequent的傾斜度很大,極值會影響參數的預測。

右擊frequent,選擇transform,選擇方法log,進行轉換。再查看導出變量的分布。

5  添加回歸模型節點
在輸入數據源節點,可以在區間變量和分類變量選項卡中,查看觀測值的缺失值,在本案例中發現,沒
有缺失值。在實際中,若存在缺失值,可以加入replacement節點,進行處理。在回歸模型中不能直接
處理缺失值觀測值。
打開回歸模型節點,激活變量選項卡,在工具菜單選擇interactive builder,選擇recency變量,設置
degree為2,點擊多項式按鈕,產生新的變量recency * recency;然后,選擇recency和ntitle,點擊cross
,產生新變量recency * ntitle。
選擇selection選項卡,方法選擇stepwise。在Criteria中,設置Entry 和stay Significance Levels 為0.1

關閉回歸節點,運行回歸模型節點,查看結果。

 
回歸窗口是對輸入變量重要性的統計性運用圖形的方式進行描述。該模型有9個參數,對應8個輸入變
量。點擊柱狀圖,可以識別相應的參數。柱狀圖的高度表示參數的重要性,顏色表示效果增加的方向
。紅色表示增長的效果,即相應輸入的值越大,則貢獻越大。反之,則越小。

6  創建模型提升圖
右擊模型節點,選擇模型管理器。在工具菜單,選擇創建lift圖。

7  部署模型
SAS EM有兩種方式部署模型,打分代碼模塊和打分數據集。
打分代碼模塊用來在外部環境產生預測的目標值。它可以創建sas,c以及java等不同語言的代碼。Sas
代碼可以直接嵌入在sas應用程序中產生預測。C語言形式的必須進過編譯。

方式1:創建評價數據集
流程圖空間加入輸入數據源節點,設置數據集角色為score,關閉輸入數據源節點
添加SAS打分節點和SAS代碼節點
打開SAS打分節點,設置如下

執行該節點
打開SAS代碼節點,在數據選項卡中,選擇score單選按鈕
在export選項卡中,點擊add,選擇predict,得到數據集。然后,在program選項卡中輸入下面的sas代碼
data &_pre;
set &_score;
if p_purchaseyes lt 0.60 then delete;
run;
proc print data = &_pre;
var custid p_purchaseyes;
run;

從而得到預測結果。
通過ODBC將結果導入到數據庫
libname MYLIB ODBC dsn='dsn name';
proc datasets library=MYLIB;
delete MY_SCORE_NAME;
run;
quit;
data MYLIB.MY_SCORE_NAME;
set &_SCORE;
keep variable;
run;

方式2:創建打分代碼模塊
打開打分節點,選擇Score code選項卡


數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢