Leo Yeh's Blog

SAS 機器學習 (6)

教學目標

初步了解 SAS Visual Data Mining and Machine Learning 產生機器學習模型的基本概念,此篇主要為學習筆記。

重點概念

首先異常值主要用於預測分析,像是欺詐偵測,設備健康監測和高光譜圖像分析應用中罕見事件的比例非常低,我們主要將模型擬合到這些資料中,基本上不會考慮事件發生的極端不平衡,此時我們能夠透過特殊的取樣方法是修改不平衡的資料集,通常用於提供更均衡的罕見事件分佈。至於常見的預測建模實務主要是從具有主要結果的樣本基於事件型抽樣 (Event-based Sampling) 用於產生建模資料的技術,在罕見的情況下事件,通常選擇所有事件,然後每個事件結果匹配一個或多個的非事件結果,並且在評分程式碼中包含調整後驗機率能夠修改後驗機率乘以實際機率,以及基於事件機率先前指定的取樣值之比例,而 Model Studio 預設主要就是基於事件型抽樣,此外會自動調整評估指標,評估圖表和偏見的預測估計。

接著我們能夠在 Model Studio 中透過異常偵測節點於識別排除異常支援向量資料描述 (Support Vector Data Description,SVDD),SVDD 主要是透過已確定最小可能之用於建立使用支援向量封裝訓練資料點的超球面來識別異常值。 SVDD 主要排除那些位於構建範圍之外的訓練資料的資料點,使用 SVDD 進行異常檢測對於資料集非常有用,大多數資料皆屬於一個類別,而另一個類別屬於稀缺或遺漏。我們能夠可以使用 SVDD 對於屬於稀缺或遺漏類別的資料進行建模,然後使用該模型執行異常偵測的分析應用。

再來雖然很多機器學習演算法不受異常值影響,但是有些人對於極端或異常值問題非常敏感,像是回歸模型進行最佳預測時,若有異常值則會影響預測模型。在 Model Studio 中最佳轉換並不是真正的轉換,而是一種轉換為間隔輸入轉換最佳的方法或過程。輸入轉換可被用於改變變數分佈形狀壓縮它,以利減少異常值和標準化輸入相同的範圍和規模,以及更可被用於減少輸入模型預測中的偏見。輸入變數的轉換主要是常見的資料預處理任務,在機器學習中,有兩類通常使用的變數轉換類型,分別為數學函數和分箱。我們主要能夠使用取代之後的輸入來取替原始輸入就能夠準確地預測模型,這不僅減輕了極端情況下的影響力,還會在輸入和目標之間建立所需的關聯原始輸入比例,以及透過分箱能夠對於遺漏值進行分類變數,減少異常值可能對於模型所造成的影響。

最後不論異常值是否用於預測分析或不用於預測分析,我們皆有可能需要使用資料前處理相關節點,分別為:

  1. 異常偵測節點
  2. 篩選節點
  3. 設算節點
  4. 管理變數節點
  5. 取代節點
  6. 轉換節點

其中篩選節點主要排除某些觀察值,像是罕見值和異常值,並且從訓練資料中過濾極值,以利參數估計更穩定,更進一步產生更好的模型。取代節點主要用於可以取代異常值和未知類別具有指定值的等級別,但是簡單取代異常值和未知類別等級,並不總是有效的,應該小心有效的進行取代。轉換節點主要透過轉換來變更輸入變數與該變數的某些功能,轉型有許多使用案例,像是可以用於穩定差異,刪除非線性,並且糾正非正態性。

相關資源

⬅️ Go back