Microsoft神經網絡是迄今為止最強大、最復雜的算法。要想知道它有多復雜,請看SQL Server聯機叢書對該算法的說明:“這個算法通過建立多層感知神經元網絡,建立分類和回歸挖掘模型。與Microsoft決策樹算法類似,在給定了可預測屬性的每個狀態時, Microsoft神經網絡算法計算輸入屬性每個可能狀態的概率。然后可以用這些概率根據輸入屬性預測被預測屬性的輸出。”什么時候用這個算法呢?推薦在其他算法無法得出有意義的結果時再用,如提升圖輸出的結果。我們經常把Microsoft神經網絡作為“壓箱底”的最后一招,在其他算法處理巨大而復雜的數據集無法得到有意義的結果時才使用它。這個算法可以接受Discrete或Continuous數據類型作為輸入。在大型數據源上使用Microsoft神經網絡之前,一定要用生產級別的負載好好測試,因為處理這類模型的開支太大了。同其他算法一樣,在“算法參數”對話框中也有多個參數可以配置。同其他一些開支比較大的算法一樣,只有在業務理由非常充分的情況下才有必要修改默認值。Microsoft神經網絡算法的一個變體是Microsoft邏輯回歸算法。
下面我們進入主題,同樣我們繼續利用上次的解決方案,依次步驟如下:數據源視圖:
鍵:序列輸入:統率、武力、智力、政治、魅力可預測:身分
數據內容類型:Continuous(連續型):統率、武力、智力、政治、魅力Discrete(離散型):身分
建模完成,產生數據挖掘結構接口包含Mining Structure(挖掘結構)、Mining Models(挖掘模型)、Mining Model Viewer(挖掘模型查看器)、Mining Accuracy Chart(挖掘精確度圖表)以及Mining Model PRediction(挖掘模型預測);其中在Mining Structure(挖掘結構)中,主要是呈現數據間的關聯性以及分析的變量。
挖掘模型:在Mining Models(挖掘模型)中,主要是列出所建立的挖掘模型,也可以新增挖掘模型,并調整變量,變量使用狀況包含Ignore(忽略)、Input(輸入變量)、Predict(預測變量、輸入變量)以及Predict Only(預測變量),如圖所示。在挖掘模型上點擊鼠標右鍵,選擇“設置算法參數...”可修改模型參數設置,如圖所示
其中包含:HIDDEN_NODE_RATIO:指定用于判斷隱藏層中的節點數目。隱藏層內的節點數計算公式為:HIDDEN_NODE_RATIO *sqrt({輸入節點的數目} * {輸出節點的數目})。HOLDOUT_PERCENTAGE:指定用于計算測試組預測錯誤的百分比,作為停止準則的一部分。HOLDOUT_SEED:指定用于隨機產生測試組的種子數據。如果未指定,算法會依據模型名稱產生隨機種子,以保證在重新處理模型時保持測試組相同。MAXIMUM_INPUT_ATTRIBUTES:指定算法可處理的最大輸入變量數目。將此值設置為0,會停用輸入變量。MAXIMUM_OUTPUT_ATTRIBUTES:指定算法可處理的最大輸出變量數目。將此值設置為0,會停用輸出變量。MAXIMUM_STATES:指定算法所支持變量取值狀態的最大數目。如果屬性狀態數大于該值,算法會截取最常用的狀態,并將超過最大值的其余狀態視為遺漏。SAMPLE_SIZE:指定用來訓練模型的案例數目。算法會取小于以下兩者:SAMPLE_SIZE或total_cases *(1-HOLDOUT_PERCENTAGE/100)。
挖掘模型查看器:“挖掘模型查看器”展示該挖掘模型的結果,通過通過柱狀圖表示某一變量的取值狀態對預測變量影響的方向和大小。提升圖:
分類矩陣:
參考文獻:Microsoft 神經網絡算法http://msdn.microsoft.com/zh-cn/library/ms174941(v=sql.105).aspx
新聞熱點
疑難解答