# 異常偵測與處理

使用智慧模型最佳化時，會提供異常偵測與處理功能。藉由這些功能，Qlik Predict 可以透過特定處理自動處理訓練資料中的異常值。在訓練期間，訓練資料中的異常值資料不會被完全移除，而是使用演算法驅動的加權系統進行處理。

在幾乎所有您可以處理的資料類型中，觀察到異常值或異常情況是很常見的。異常情況是指發生在您可能預期的常規預期範圍之外的資料值。在訓練機器學習模型時，可以容忍一定比例的異常情況，甚至可能因為反映了現實世界的偏差而成為理想的情況。然而，在極端情況下，異常情況和異常值會將偏差引入模型中，從而降低其可靠性和實用性。

## 範例

並非所有異常情況都應一視同仁，也不應總是將其視為要從資料中移除的項目。例如，如果資料異常情況是自然可能發生但在收集資料時不常觀察到的情況，那麼您希望將其用於您訓練的模型中可能是有道理的。一個很好的例子是金融交易中的詐欺實例。在數百萬筆交易中，可能只有少數幾筆與詐欺有關。根據您想要使用模型分析和解決的問題，日常交易中的詐欺機率可能是您在產生預測時想要考慮的因素。

您可能想要移除的異常情況範例是收集資料時發生的意外失敗。例如，假設您正在建立一個將用於預測天氣模式的模型。您的模型正在使用來自監控天氣指標的感測器資料進行訓練，而無關的停電導致從感測器收集到錯誤的資料。此錯誤資料可能會被視為您想要在完成模型訓練之前移除的異常資料。

## Qlik Predict 如何處理異常情況？

當您使用智慧模型最佳化訓練模型時，會執行異常偵測與處理，此功能在新的實驗中預設為開啟。

異常情況的處理通常可以被認為發生在兩個獨立的程序中：偵測和實際的模型訓練。

### 異常偵測

當您執行訓練版本時，Qlik Predict 會在模型訓練開始之前完成幾個步驟。這包括資料分類、空值插補以及許多其他程序。異常偵測會在此階段完成，且僅在開啟智慧模型最佳化時才會完成。

在技術層面上，Qlik Predict 使用基於決策樹的演算法 (孤立森林演算法) 來偵測訓練資料中的異常情況和異常值。在智慧模型最佳化的資料處理階段，資料集中的每個資料點 (通常稱為記錄) 都會被指派一個異常分數，並根據其為異常情況的確定程度進行加權。

### 模型訓練中的異常處理

在根據需要處理和轉換您的資料後，Qlik Predict 會開始訓練模型。在此程序中，先前產生的加權異常分數會用於調整每一列對模型的影響。例如，被認為極有可能包含異常情況的列，在模型訓練中會被指派較低的影響力。

此加權評分系統允許 Qlik Predict 避免捨棄資料，而是單純地減少異常值資料對模型的影響。

## 考量

儘管 Qlik Predict 提供了異常偵測功能，但這並不意味著任何資料都可以用來訓練高品質的模型。如果您的資料包含異常大比例的錯誤或損毀資訊，異常偵測無法補救所有這些問題。

在這些情況下，建議您返回資料收集程序，以確保您擁有最高品質且最真實的可用資料。這將有助於您最佳化機器學習模型的可靠性和成功率。