AnomalyDetectorClient.TrainMultivariateModelAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
TrainMultivariateModelAsync(ModelInfo, CancellationToken) |
Entraîner un modèle de détection d’anomalie multivarié. |
TrainMultivariateModelAsync(RequestContent, RequestContext) |
[Méthode de protocole] Entraîner un modèle de détection d’anomalie multivarié
|
TrainMultivariateModelAsync(ModelInfo, CancellationToken)
- Source:
- AnomalyDetectorClient.cs
Entraîner un modèle de détection d’anomalie multivarié.
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))
Paramètres
- modelInfo
- ModelInfo
Informations sur le modèle.
- cancellationToken
- CancellationToken
Jeton d’annulation à utiliser.
Retours
Exceptions
modelInfo
a la valeur null.
Exemples
Cet exemple montre comment appeler TrainMultivariateModelAsync avec les paramètres requis.
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);
Remarques
Créer et effectuer l’apprentissage d’un modèle de détection d’anomalies multivarié La demande doit inclure un paramètre source pour indiquer un URI Stockage Blob Azure accessible au service. Il existe deux types d’entrée de données. L’URI stockage Blob peut pointer vers un dossier Stockage Blob Azure qui contient plusieurs fichiers CSV, où chaque fichier CSV a deux colonnes, horodatage et variable. Ou l’URI stockage Blob peut pointer vers un objet blob unique qui contient un fichier CSV contenant toutes les variables et une colonne d’horodatage.
S’applique à
TrainMultivariateModelAsync(RequestContent, RequestContext)
- Source:
- AnomalyDetectorClient.cs
[Méthode de protocole] Entraîner un modèle de détection d’anomalie multivarié
- Cette méthode de protocole permet la création explicite de la demande et le traitement de la réponse pour les scénarios avancés.
- Essayez d’abord la surcharge de commodité plus simple TrainMultivariateModelAsync(ModelInfo, CancellationToken) avec des modèles fortement typés.
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)
Paramètres
- content
- RequestContent
Contenu à envoyer en tant que corps de la demande.
- context
- RequestContext
Contexte de demande, qui peut remplacer les comportements par défaut du pipeline client par appel.
Retours
Réponse retournée par le service.
Exceptions
content
a la valeur null.
Le service a retourné un code de status non réussi.
Exemples
Cet exemple montre comment appeler TrainMultivariateModelAsync avec le contenu de requête requis et comment analyser le résultat.
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());
Cet exemple montre comment appeler TrainMultivariateModelAsync avec tout le contenu de la requête et comment analyser le résultat.
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());
Remarques
Créer et effectuer l’apprentissage d’un modèle de détection d’anomalies multivarié La demande doit inclure un paramètre source pour indiquer un URI de stockage Blob Azure accessible en externe. Il existe deux types d’entrée de données : un URI pointé vers un dossier de stockage Blob Azure qui contient plusieurs fichiers CSV, et chaque fichier CSV contient deux colonnes, horodatage et variable. Un autre type d’entrée est un URI pointé vers un fichier CSV dans stockage blob Azure, qui contient toutes les variables et une colonne d’horodatage.
Vous trouverez ci-dessous le schéma JSON pour les charges utiles de demande et de réponse.
Corps de la demande :
Schéma pour 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.
}
Corps de réponse :
Schéma pour 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.
}
S’applique à
Azure SDK for .NET