一級支援向量機器

重要

Machine Learning 工作室 (傳統) 的支援將於 2024 年 8 月 31 日結束。 建議您在該日期之前轉換成 Azure Machine Learning

自 2021 年 12 月 1 日起,您將無法建立新的 Machine Learning 工作室 (傳統) 資源。 在 2024 年 8 月 31 日之前,您可以繼續使用現有的 Machine Learning 工作室 (傳統) 資源。

ML 工作室 (傳統) 文件即將淘汰,未來將不再更新。

建立一級支援向量機器模型以便進行異常偵測

類別: 異常偵測

注意

適用于僅限機器學習 Studio (傳統)

Azure Machine Learning 設計工具中提供類似的拖放模組。

模組概觀

本文說明如何使用機器學習 Studio (傳統) 中的「單一類別」支援向量模型模組,來建立異常偵測模型。

如果您有許多「正常」的資料,而不是您想要偵測的異常狀況,則此模組特別有用。 例如,如果您需要偵測詐騙交易,您可能沒有許多詐騙範例可用於定型一般分類模型,但您可能會有許多良好交易的範例。

您可以使用 [ 一級支援向量模型 ] 模組來建立模型,然後使用 定型異常偵測模型來定型模型。 您用於定型的資料集可以包含全部或大部分的一般案例。

然後,您可以套用不同的度量來識別潛在的異常狀況。 例如,您可以使用大型交易的大型資料集來識別可能代表詐騙交易的案例。

深入瞭解單一類別 SVM

支援向量機器 (SVM) 是監督式學習模型,可分析資料和辨識模式,還可用於分類和迴歸工作。

一般而言,SVM 演算法會提供一組標示為屬於兩個類別之一的定型範例。 SVM 模型是根據定型範例點分成不同的分類,盡可能以最寬的間隔為單位,而 penalizing 的定型樣本則落在錯誤的側邊。 然後,SVM 模型會將點指派給間隙的一端或另一端,藉以進行預測。

有時會使用超取樣來複寫現有的範例,讓您可以建立兩個類別的模型,但無法從有限的範例預測所有新的詐騙或系統錯誤模式。 此外,收集有限範例所費不貲。

因此,在一個類別 SVM 中,支援向量模型會針對只有一個類別的資料(也就是「標準」類別)進行定型。 它會推斷一般案例的屬性,而從這些屬性可以預測哪些範例和一般範例不同。 這對異常偵測很有説明,因為定型範例的水源不足情形是定義異常的情況:亦即,通常會有很少的網路入侵、詐騙或其他異常行為的範例。

如需詳細資訊,包括基本研究的連結,請參閱 技術 提示一節。

注意

一級支援向量模型模組會建立核心 SVM 模型,這表示它沒有很高的擴充性。 如果定型時間有限,或您的資料太多,您可以使用其他方法來進行異常偵測器,例如以 PCA 為基礎的異常偵測

如何設定 One-Class SVM

  1. 一級支援向量模型 模組新增至您在 Studio (傳統) 中的實驗。 您可以在 [異常偵測] 類別中的 [機器學習初始化] 下找到此模組。

  2. 按兩下 [ 一級支援向量模型 ] 模組以開啟 [ 屬性 ] 窗格。

  3. 針對 [ 建立定型模式],選取一個選項來指出如何訓練模型:

    • 單一參數:如果您知道要如何設定模型,請使用此選項,並提供一組特定值做為引數。

    • 參數範圍:如果您不確定最佳參數,且想要執行參數清除以找出最佳設定,請使用此選項。

  4. η:輸入代表極端值分數上限的值。 此參數對應于 本白皮書中所述的 nu 屬性。 此屬性可讓您控制極端值和一般案例之間的取捨。

  5. ε (epsilon) :輸入要用來作為停止容錯的值。 停止容錯,會影響優化模型時所使用的反覆運算次數,並取決於停止準則的值。 當超過此值時,定型器會停止反覆運算方案。

  6. 連線訓練資料集,以及其中一個訓練課程模組:

    注意

    如果您傳遞參數範圍來 定型異常偵測模型,它只會使用 [參數範圍] 清單中的第一個值。

    如果您將一組參數值傳遞至 微調模型超參數 模組,當它預期每個參數的設定範圍時,會忽略這些值並使用學習模組的預設值。

    如果您選取 [ 參數範圍 ] 選項,並輸入任何參數的單一值,就會在整個清除中使用該單一值,即使其他參數會在某個範圍的值之間變更也一樣。

  7. 執行實驗。

結果

模組會傳回已定型的異常偵測模型。 您可以將模型儲存在工作區中,也可以連接「 評分模型 」模組,並使用定型的模型來偵測可能的異常。

如果您使用參數清除來定型模型,請記下在設定模型以用於生產環境時所要使用的最佳參數設定。

範例

如需有關如何在異常偵測中使用此模組的範例,請參閱 Azure AI 資源庫

  • 異常偵測:信用風險:此範例說明如何使用參數清除來尋找最佳模型,以尋找資料中的極端值。 然後,它會將該模型套用到新的資料,以識別可能代表詐騙的風險交易,並比較兩個不同的異常偵測模型。

技術說明

來自 單一類別 SVM 的預測是可能未系結的 uncalibrated 分數。 如 Cortana 智慧資源庫中的範例所示,如果您要根據不同的演算法來比較模型,請務必標準化分數。

參考

此實作為包裝支援向量機器(名為 libsvm)的程式庫。 以下是 Schӧlkopf et 的一般理論 libsvm ,也就是一種支援向量機器的方法,在這些檔中有說明。

模組參數

名稱 類型 範圍 選用 描述 預設
建立訓練模式 建立訓練模式 清單:單一參數 | 參數範圍 必要 單一參數 指定學習模組選項。

使用 [單一參數] 選項以手動指定所有值。

使用 [參數範圍] 以掃掠可微調的參數。
nu Float >=double.Epsilon 模式:單一參數 0.1 此參數 (以希臘文字母 nu 表示,) 決定極端值的分數與支援向量數目之間的取捨。
epsilon Float >=double.Epsilon 模式:單一參數 0.001 指定停止容錯。
psnu ParameterRangeSettings [0.001; 1.0] 模式:參數範圍 0.001;0.01;0.1 指定極端值的分數與支援向量數目之間的取捨範圍。
psEpsilon ParameterRangeSettings [1e-6;1.0] 模式:參數範圍 0.001;0.01;0.1 指定用於停止容錯的範圍。

輸出

名稱 類型 描述
未定型的模型 ILearner 介面 未定型的異常偵測模型

另請參閱

分類
定型異常偵測模型