Freigeben über


AnomalyDetectorClient.TrainMultivariateModelAsync Methode

Definition

Überlädt

TrainMultivariateModelAsync(ModelInfo, CancellationToken)

Trainieren eines multivariaten Anomalieerkennungsmodells.

TrainMultivariateModelAsync(RequestContent, RequestContext)

[Protokollmethode] Trainieren eines multivariaten Anomalieerkennungsmodells

TrainMultivariateModelAsync(ModelInfo, CancellationToken)

Source:
AnomalyDetectorClient.cs

Trainieren eines multivariaten Anomalieerkennungsmodells.

public virtual System.Threading.Tasks.Task<Azure.Response<Azure.AI.AnomalyDetector.AnomalyDetectionModel>> TrainMultivariateModelAsync (Azure.AI.AnomalyDetector.ModelInfo modelInfo, System.Threading.CancellationToken cancellationToken = default);
abstract member TrainMultivariateModelAsync : Azure.AI.AnomalyDetector.ModelInfo * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response<Azure.AI.AnomalyDetector.AnomalyDetectionModel>>
override this.TrainMultivariateModelAsync : Azure.AI.AnomalyDetector.ModelInfo * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response<Azure.AI.AnomalyDetector.AnomalyDetectionModel>>
Public Overridable Function TrainMultivariateModelAsync (modelInfo As ModelInfo, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Response(Of AnomalyDetectionModel))

Parameter

modelInfo
ModelInfo

Modellinformationen.

cancellationToken
CancellationToken

Das zu verwendende Abbruchtoken.

Gibt zurück

Ausnahmen

modelInfo ist NULL.

Beispiele

In diesem Beispiel wird gezeigt, wie TrainMultivariateModelAsync mit den erforderlichen Parametern aufgerufen wird.

var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new AnomalyDetectorClient(endpoint, credential);

var modelInfo = new ModelInfo("<dataSource>", DateTimeOffset.UtcNow, DateTimeOffset.UtcNow)
{
    DataSchema = DataSchema.OneTable,
    DisplayName = "<DisplayName>",
    SlidingWindow = 1234,
    AlignPolicy = new AlignPolicy()
{
        AlignMode = AlignMode.Inner,
        FillNAMethod = FillNAMethod.Previous,
        PaddingValue = 3.14f,
    },
};
var result = await client.TrainMultivariateModelAsync(modelInfo);

Hinweise

Erstellt und trainiert ein Modell für die Erkennung multivariater Anomalien. Die Anforderung muss einen Quellparameter enthalten, um einen Azure Blob Storage URI anzugeben, auf den der Dienst zugreifen kann. Es gibt zwei Arten von Dateneingaben. Der Blob Storage-URI kann auf einen Azure Blob Storage Ordner verweisen, der mehrere CSV-Dateien enthält, wobei jede CSV-Datei zwei Spalten, Zeitstempel und Variable enthält. Oder der Blob Storage-URI kann auf ein einzelnes Blob verweisen, das eine CSV-Datei mit allen Variablen und einer Zeitstempelspalte enthält.

Gilt für:

TrainMultivariateModelAsync(RequestContent, RequestContext)

Source:
AnomalyDetectorClient.cs

[Protokollmethode] Trainieren eines multivariaten Anomalieerkennungsmodells

public virtual System.Threading.Tasks.Task<Azure.Response> TrainMultivariateModelAsync (Azure.Core.RequestContent content, Azure.RequestContext context = default);
abstract member TrainMultivariateModelAsync : Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
override this.TrainMultivariateModelAsync : Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function TrainMultivariateModelAsync (content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Response)

Parameter

content
RequestContent

Der Inhalt, der als Textkörper der Anforderung gesendet werden soll.

context
RequestContext

Der Anforderungskontext, der das Standardverhalten der Clientpipeline pro Aufruf außer Kraft setzen kann.

Gibt zurück

Die vom Dienst zurückgegebene Antwort.

Ausnahmen

content ist NULL.

Der Dienst hat einen nicht erfolgreichen status Code zurückgegeben.

Beispiele

In diesem Beispiel wird gezeigt, wie TrainMultivariateModelAsync mit erforderlichem Anforderungsinhalt aufgerufen und das Ergebnis analysiert wird.

var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new AnomalyDetectorClient(endpoint, credential);

var data = new {
    dataSource = "<dataSource>",
    startTime = "2022-05-10T14:57:31.2311892-04:00",
    endTime = "2022-05-10T14:57:31.2311892-04:00",
};

Response response = await client.TrainMultivariateModelAsync(RequestContent.Create(data));

JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("modelId").ToString());
Console.WriteLine(result.GetProperty("createdTime").ToString());
Console.WriteLine(result.GetProperty("lastUpdatedTime").ToString());

In diesem Beispiel wird gezeigt, wie TrainMultivariateModelAsync mit allen Anforderungsinhalten aufgerufen und das Ergebnis analysiert wird.

var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new AnomalyDetectorClient(endpoint, credential);

var data = new {
    dataSource = "<dataSource>",
    dataSchema = "OneTable",
    startTime = "2022-05-10T14:57:31.2311892-04:00",
    endTime = "2022-05-10T14:57:31.2311892-04:00",
    displayName = "<displayName>",
    slidingWindow = 1234,
    alignPolicy = new {
        alignMode = "Inner",
        fillNAMethod = "Previous",
        paddingValue = 123.45f,
    },
};

Response response = await client.TrainMultivariateModelAsync(RequestContent.Create(data), new RequestContext());

JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("modelId").ToString());
Console.WriteLine(result.GetProperty("createdTime").ToString());
Console.WriteLine(result.GetProperty("lastUpdatedTime").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("dataSource").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("dataSchema").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("startTime").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("endTime").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("displayName").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("slidingWindow").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("alignPolicy").GetProperty("alignMode").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("alignPolicy").GetProperty("fillNAMethod").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("alignPolicy").GetProperty("paddingValue").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("status").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("errors")[0].GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("errors")[0].GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("modelState").GetProperty("epochIds")[0].ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("modelState").GetProperty("trainLosses")[0].ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("modelState").GetProperty("validationLosses")[0].ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("modelState").GetProperty("latenciesInSeconds")[0].ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("variableStates")[0].GetProperty("variable").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("variableStates")[0].GetProperty("filledNARatio").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("variableStates")[0].GetProperty("effectiveCount").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("variableStates")[0].GetProperty("firstTimestamp").ToString());
Console.WriteLine(result.GetProperty("modelInfo").GetProperty("diagnosticsInfo").GetProperty("variableStates")[0].GetProperty("lastTimestamp").ToString());

Hinweise

Erstellt und trainiert ein Modell für die Erkennung multivariater Anomalien. Die Anforderung muss einen Quellparameter enthalten, um einen extern zugänglichen Azure Blob Storage-URI anzugeben. Es gibt zwei Arten von Dateneingaben: Ein URI, der auf einen Azure Blob Storage-Ordner verweist, der mehrere CSV-Dateien enthält, und jede CSV-Datei enthält zwei Spalten: Zeitstempel und Variable. Ein anderer Eingabetyp ist ein URI, der auf eine CSV-Datei in Azure Blob Storage verweist, die alle Variablen und eine Zeitstempelspalte enthält.

Im Folgenden finden Sie das JSON-Schema für die Anforderungs- und Antwortnutzlasten.

Anforderungstext:

Schema für ModelInfo:

{
  dataSource: string, # Required.
  dataSchema: "OneTable" | "MultiTable", # Optional.
  startTime: string (date & time), # Required.
  endTime: string (date & time), # Required.
  displayName: string, # Optional.
  slidingWindow: number, # Optional.
  alignPolicy: {
    alignMode: "Inner" | "Outer", # Optional.
    fillNAMethod: "Previous" | "Subsequent" | "Linear" | "Zero" | "Fixed", # Optional.
    paddingValue: number, # Optional.
  }, # Optional.
  status: "CREATED" | "RUNNING" | "READY" | "FAILED", # Optional.
  errors: [
    {
      code: string, # Required.
      message: string, # Required.
    }
  ], # Optional.
  diagnosticsInfo: {
    modelState: {
      epochIds: [number], # Optional.
      trainLosses: [number], # Optional.
      validationLosses: [number], # Optional.
      latenciesInSeconds: [number], # Optional.
    }, # Optional.
    variableStates: [VariableState], # Optional.
  }, # Optional.
}

Antworttext:

Schema für AnomalyDetectionModel:

{
  modelId: string, # Required.
  createdTime: string (date & time), # Required.
  lastUpdatedTime: string (date & time), # Required.
  modelInfo: {
    dataSource: string, # Required.
    dataSchema: "OneTable" | "MultiTable", # Optional.
    startTime: string (date & time), # Required.
    endTime: string (date & time), # Required.
    displayName: string, # Optional.
    slidingWindow: number, # Optional.
    alignPolicy: {
      alignMode: "Inner" | "Outer", # Optional.
      fillNAMethod: "Previous" | "Subsequent" | "Linear" | "Zero" | "Fixed", # Optional.
      paddingValue: number, # Optional.
    }, # Optional.
    status: "CREATED" | "RUNNING" | "READY" | "FAILED", # Optional.
    errors: [
      {
        code: string, # Required.
        message: string, # Required.
      }
    ], # Optional.
    diagnosticsInfo: {
      modelState: {
        epochIds: [number], # Optional.
        trainLosses: [number], # Optional.
        validationLosses: [number], # Optional.
        latenciesInSeconds: [number], # Optional.
      }, # Optional.
      variableStates: [VariableState], # Optional.
    }, # Optional.
  }, # Optional.
}

Gilt für: