教學課程:使用 Azure AI 服務的異常偵測
在本教學課程中,您將了解如何使用 Azure AI 服務,輕鬆地豐富 Azure Synapse Analytics 中的資料。 您將使用 Azure AI 異常偵測程式來尋找異常狀況。 Azure Synapse 中的使用者可以直接選取資料表來進行異常偵測。
此教學課程涵蓋:
- 取得包含時間序列資料之 Spark 資料表資料集的步驟。
- 使用 Azure Synapse 中的精靈體驗,透過異常偵測器來擴充資料。
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
必要條件
- Azure Synapse Analytics 工作區,其中 Azure Data Lake Storage Gen2 儲存體帳戶已設定為預設儲存體。 使用 Data Lake Storage Gen2 檔案系統時,您必須是該檔案系統的儲存體 Blob 資料參與者。
- 在您 Azure Synapse Analytics 工作區中的 Spark SQL 集區。 如需詳細資訊,請參閱在 Azure Synapse 中建立 Spark 集區。
- 完成在 Azure Synapse 中設定 Azure AI 服務教學課程中的預先設定步驟。
登入 Azure 入口網站
登入 Azure 入口網站。
建立 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 服務精靈
以滑鼠右鍵按一下在上一個步驟中建立的 Spark 資料表。 選取 [機器學習]>[使用模型預測]。
設定面板隨即出現,而且系統會要求您選取預先訓練模型。 選取 [異常偵測器]。
設定異常偵測器
請提供下列詳細資料以設定異常偵測器:
Azure 認知服務連結服務:作為先決條件步驟的一部分,您已建立 Azure AI 服務的連結服務。 請在這裡選取此服務。
細微性:資料的取樣率。 選擇每月。
時間戳記資料行:代表時間序列的資料行。 選擇時間戳記 (字串)。
時間序列值資料行:代表時間戳記資料行所指定之時間序列值的資料行。 選擇值 (雙精度)。
群組資料行:將序列分組的資料行。 也就是說,在此資料行中具有相同值的所有資料列都應該形成一個時間序列。 選擇群組 (字串)。
完成時,請選取 [開啟筆記本]。 這時會使用 PySpark 程式碼為您產生筆記本,以使用 Azure AI 服務執行異常偵測。
執行該筆記本
您剛開啟的筆記本會使用 SynapseML 程式庫連線至 Azure AI 服務。 您所提供的 Azure AI 服務連結服務可讓您安全地從這個體驗參考 Azure AI 服務,而不會揭露任何秘密。
您現在可以執行所有儲存格,以執行異常偵測。 選取 [全部執行]。 深入了解 Azure AI 服務中的異常偵測器。