AnomalyDetectorClient.TrainMultivariateModel 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
TrainMultivariateModel(ModelInfo, CancellationToken) |
Effectuer l’apprentissage d’un modèle de détection d’anomalie multivarié. |
TrainMultivariateModel(RequestContent, RequestContext) |
[Méthode de protocole] Entraîner un modèle de détection d’anomalies multivarié
|
TrainMultivariateModel(ModelInfo, CancellationToken)
- Source:
- AnomalyDetectorClient.cs
Effectuer l’apprentissage d’un modèle de détection d’anomalie multivarié.
public virtual Azure.Response<Azure.AI.AnomalyDetector.AnomalyDetectionModel> TrainMultivariateModel (Azure.AI.AnomalyDetector.ModelInfo modelInfo, System.Threading.CancellationToken cancellationToken = default);
abstract member TrainMultivariateModel : Azure.AI.AnomalyDetector.ModelInfo * System.Threading.CancellationToken -> Azure.Response<Azure.AI.AnomalyDetector.AnomalyDetectionModel>
override this.TrainMultivariateModel : Azure.AI.AnomalyDetector.ModelInfo * System.Threading.CancellationToken -> Azure.Response<Azure.AI.AnomalyDetector.AnomalyDetectionModel>
Public Overridable Function TrainMultivariateModel (modelInfo As ModelInfo, Optional cancellationToken As CancellationToken = Nothing) As 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 TrainMultivariateModel 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 = client.TrainMultivariateModel(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 à
TrainMultivariateModel(RequestContent, RequestContext)
- Source:
- AnomalyDetectorClient.cs
[Méthode de protocole] Entraîner un modèle de détection d’anomalies 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 TrainMultivariateModel(ModelInfo, CancellationToken) avec des modèles fortement typés.
public virtual Azure.Response TrainMultivariateModel (Azure.Core.RequestContent content, Azure.RequestContext context = default);
abstract member TrainMultivariateModel : Azure.Core.RequestContent * Azure.RequestContext -> Azure.Response
override this.TrainMultivariateModel : Azure.Core.RequestContent * Azure.RequestContext -> Azure.Response
Public Overridable Function TrainMultivariateModel (content As RequestContent, Optional context As RequestContext = Nothing) As Response
Paramètres
- content
- RequestContent
Contenu à envoyer en tant que corps de la demande.
- context
- RequestContext
Contexte de la 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 TrainMultivariateModel 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 = client.TrainMultivariateModel(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 TrainMultivariateModel 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 = client.TrainMultivariateModel(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 requête doit inclure un paramètre source pour indiquer un URI de stockage d’objets blob Azure accessible en externe. Il existe deux types d’entrée de données : un URI pointant vers un dossier de stockage d’objets blob Azure qui contient plusieurs fichiers CSV, et chaque fichier CSV contient deux colonnes, timestamp et variable. Un autre type d’entrée est un URI pointé vers un fichier CSV dans le stockage Blob Azure, qui contient toutes les variables et une colonne timestamp.
Vous trouverez ci-dessous le schéma JSON pour les charges utiles de requête 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