訓練與部署模型

清除、準備資料並移至物件儲存之後,您就可以開始訓練及部署模型。

建立並訓練模型

當您建立模型時,請指定訓練資料資產並設定一些參數。模型會在您建立時自動經過訓練。

下圖顯示處理程序。

training-flow.png 的描述請參見下方
training-flow.png 圖解描述

以下是建立及訓練模型的程序:

  1. 建立專案。您可以在 OCI 的區間中建立專案,並為專案提供名稱。區間可以是特別用來保存一或多個異常偵測專案的區間。
  2. 指定訓練資料資產,這是物件儲存中的檔案。「檔案」應為乾淨且可進行訓練。如果不是,您可以使用 OCI 服務 (例如「資料科學」) 來進行清理與預先處理。檔案可以是 CSV 格式或 JSON 格式。
  3. 建立模型。當您建立模型時,請選取訓練資料資產,並設定「偽警示機率」和「訓練分數比率」。模型已訓練為建立程序的一部分。

「異常偵測服務」文件提供如何執行的詳細指示。您可以使用主控台 UI,也可以使用 REST API。

以下是設定誤警機率和列車分數比率的部分指引:

假警示機率
這是偵測到的異常機率,實際上並非異常。將此值設定為接近您在實際業務案例中發現之異常百分比的相同層次。值 0.01 (1%) 適用於許多案例。值越低,訓練模型所需的時間就越長。此外,如果您將目標 false 警示機率設得太低,模型可能無法達到目標。
串列分數比率
這是用於訓練的資料量。例如,值 0.7 指定訓練使用 70%的資料,並使用 30%來測試和評估模型的效能。

部署並測試模型

建立模型之後,您必須先部署它,才能使用它。

模型部署之後,即可接收想要測試異常值的資料。

您可以使用「主控台 UI」來部署模型,或使用 REST API。當您部署模型時,請為其命名。您也可以提供描述 (選擇性)。一個模型可以有一個以上的部署。

下列螢幕擷取畫面顯示主控台 UI 中的模型範例。若要新增部署,請按一下新增部署按鈕。

add-deployment.png 的描述如下
add-deployment.png 圖解描述

偵測異常

您可以批次送出資料以進行異常偵測,也可以偵測串流資料中的異常。

下圖說明批次處理架構。

predictions-batch-flow.png 的描述如下
predictions-batch-flow.png 圖解描述

批次的處理方式如下:

  1. 資料會從串流處理或透過 Oracle Data Integration 從其他資料庫收集至物件儲存的儲存桶。
  2. 物件儲存是「異常偵測」服務要處理之批次資料的登陸區域。
  3. 您可以在代管的應用程式、容器或無伺服器功能上完成資料預先處理。已處理的資料會傳送至「異常偵測」服務。
  4. 「異常偵測」服務會使用訓練階段期間訓練和部署的模型進行預測。
  5. 「異常偵測」服務產生的推論會變成透過 REST 傳送至應用程式或通知平台的立即動作。
  6. 「異常偵測」服務推斷結果可以儲存在物件儲存上,供日後用於分析、記錄日誌和通知服務。

串流架構比批次架構更為複雜,但當您想要即時或接近即時異常偵測時需要此架構。

下圖說明串流架構。

predictions-streaming-flow.png 的描述如下
predictions-streaming-flow.png 圖解描述
  1. 串流服務會從不同的串流資料來源擷取資料。
  2. 如有需要,可透過代管的應用程式、容器或無伺服器函數來完成資料預先處理。已處理的資料會傳送至「異常偵測」服務串流介面。如果資料已知且不需要其他處理,串流可以直接連線至「異常偵測」服務。
  3. 「異常偵測」服務會使用訓練階段期間訓練和部署的模型進行預測。
  4. 「異常偵測」服務會將推斷張貼至輸出串流,以供採取動作及記錄日誌。
  5. 「異常偵測」服務產生的推論會變成透過 VM 或容器上的應用程式或透過無伺服器函數傳送至應用程式或通知平台的立即動作。
  6. 「異常偵測」服務的輸出串流可以填入順流作業和分析的管線。

「異常偵測」服務推斷結果可以儲存在物件儲存上,供日後用於分析、記錄日誌和通知服務。