異常検出

オブジェクトの異常確率が0.5を超えると、そのオブジェクトはEM異常モデルの外れ値として識別されます。

ラベル1は正常を示し、ラベル0は異常を示します。EM手法は、データ・セットの基礎となるデータ分布をモデル化し、データ・レコードの確率密度が異常確率に変換されます。

次の例では、期待値最大化アルゴリズムを使用した異常検出に使用するコード・スニペットを示します。EMCS_OUTLIER_RATE設定を指定して、トレーニング・データ・セットの目標の外れ値率を取得します。


-- SET OUTLIER RATE IN SETTINGS TABLE - DEFAULT IS 0.05
--

BEGIN DBMS_DATA_MINING.DROP_MODEL('CUSTOMERS360MODEL_AD');
EXCEPTION WHEN OTHERS THEN NULL; END;
/
DECLARE
  v_setlst DBMS_DATA_MINING.SETTING_LIST;
BEGIN
  v_setlst('ALGO_NAME')         := 'ALGO_EXPECTATION_MAXIMIZATION';
  v_setlst('PREP_AUTO')         := 'ON';
  v_setlst('EMCS_OUTLIER_RATE') := '0.1';
        
  DBMS_DATA_MINING.CREATE_MODEL2(
        MODEL_NAME          => 'CUSTOMERS360MODEL_AD',
        MINING_FUNCTION     => 'CLASSIFICATION',
        DATA_QUERY          => 'SELECT * FROM CUSTOMERS360_V',
        CASE_ID_COLUMN_NAME => 'CUST_ID',
        SET_LIST            => v_setlst,
        TARGET_COLUMN_NAME  => NULL); -- NULL target indicates anomaly detection      
END;
/