チュートリアル: Azure AI サービスを使用した異常検出

このチュートリアルでは、Azure AI サービスを使用して、Azure Synapse Analytics でデータを簡単に強化する方法について説明します。 Azure AI Anomaly Detector を使用して異常を検出します。 Azure Synapse のユーザーは、異常を検出するために強化するテーブルを選択するだけです。

このチュートリアルの内容:

  • 時系列データを含む Spark テーブル データセットを取得するための手順。
  • Azure Synapse のウィザード エクスペリエンスを使用し、Anomaly Detector を使ってデータを強化する。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

前提条件

Azure portal にサインインする

Azure portal にサインインします。

Spark テーブルを作成する

このチュートリアルには Spark テーブルが必要です。

PySpark ノートブックを作成し、次のコードを実行します。

from pyspark.sql.functions import lit

df = spark.createDataFrame([
    ("1972-01-01T00:00:00Z", 826.0),
    ("1972-02-01T00:00:00Z", 799.0),
    ("1972-03-01T00:00:00Z", 890.0),
    ("1972-04-01T00:00:00Z", 900.0),
    ("1972-05-01T00:00:00Z", 766.0),
    ("1972-06-01T00:00:00Z", 805.0),
    ("1972-07-01T00:00:00Z", 821.0),
    ("1972-08-01T00:00:00Z", 20000.0),
    ("1972-09-01T00:00:00Z", 883.0),
    ("1972-10-01T00:00:00Z", 898.0),
    ("1972-11-01T00:00:00Z", 957.0),
    ("1972-12-01T00:00:00Z", 924.0),
    ("1973-01-01T00:00:00Z", 881.0),
    ("1973-02-01T00:00:00Z", 837.0),
    ("1973-03-01T00:00:00Z", 9000.0)
], ["timestamp", "value"]).withColumn("group", lit("series1"))

df.write.mode("overwrite").saveAsTable("anomaly_detector_testing_data")

anomaly_detector_testing_data という名前の Spark テーブルが既定の Spark データベースに表示されます。

Azure AI サービス ウィザードを開く

  1. 前の手順で作成した Spark テーブルを右クリックします。 [機械学習]>[モデルを使用した予測] を選択し、ウィザードを開きます。

    スコアリング ウィザードを開くための選択を示すスクリーンショット。

  2. 構成パネルが表示され、事前トレーニング モデルを選択するように求められます。 [Anomaly Detector] を選択します。

    モデルとしての Anomaly Detector の選択を示すスクリーンショット。

Anomaly Detector を構成する

次の詳細を指定して、Anomaly Detector を構成します。

  • Azure Cognitive Services のリンク サービス: 前提条件の手順の一部として、Azure AI サービスへのリンク サービスを作成しました。 それをここで選択します。

  • [細分性] : データがサンプリングされる速度。 [monthly](月単位) を選択します。

  • [Timestamp column](タイムスタンプ列) : 系列の時間を表す列。 [timestamp (string)](timestamp (文字列)) を選択します。

  • [Time series value column](時系列値列) : [Timestamp column](タイムスタンプ列) で指定した時間における系列の値を表す列。 [value (double)] を選択します。

  • [Grouping column](グループ化列) : 系列をグループ化する列。 つまり、この列に同じ値を含むすべての行は 1 つの時系列を形成します。 [group (string)](group (文字列)) を選択します。

完了したら、 [Open notebook](ノートブックを開く) を選択します。 これにより、Azure AI サービスを使用して異常を検出する PySpark コードを含むノートブックが生成されます。

Anomaly Detector の構成の詳細を示すスクリーンショット。

ノートブックを実行する

先ほど開いたノートブックでは、SynapseML ライブラリ を使用して Azure AI サービスに接続します。 指定した Azure AI サービスのリンク サービスを使用すると、シークレットを開示することなく、このエクスペリエンスからコグニティブ サービスを安全に参照できます。

これで、すべてのセルを実行して異常検出を実行できるようになりました。 [すべて実行] を選択します。 Azure AI サービスの Anomaly Detector の詳細をご覧ください

異常検出を示すスクリーンショット。

次の手順