IidChangePointEstimator Classe
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.
Détectez un changement de signal sur une série chronologique distribuée de manière indépendante (i.i.d.) en fonction de l’estimation de densité de noyau adaptative et des martingales.
public sealed class IidChangePointEstimator : Microsoft.ML.Data.TrivialEstimator<Microsoft.ML.Transforms.TimeSeries.IidChangePointDetector>
type IidChangePointEstimator = class
inherit TrivialEstimator<IidChangePointDetector>
Public NotInheritable Class IidChangePointEstimator
Inherits TrivialEstimator(Of IidChangePointDetector)
- Héritage
Remarques
Pour créer cet estimateur, utilisez DetectIidChangePoint.
Colonnes d’entrée et de sortie
Il n’existe qu’une seule colonne d’entrée. La colonne d’entrée doit être Single l’endroit où une Single valeur indique une valeur à un horodatage dans la série chronologique.
Il produit une colonne qui est un vecteur avec 4 éléments. Le vecteur de sortie contient séquentiellement le niveau d’alerte (valeur non nulle signifie un point de modification), le score, la valeur p et la valeur martingale.
Caractéristiques de l’estimateur
Cet estimateur doit-il examiner les données pour entraîner ses paramètres ? | Non |
Type de données de colonne d’entrée | Single |
Type de données de colonne de sortie | Vecteur de 4 éléments deDouble |
Exportable vers ONNX | Non |
Caractéristiques de l’estimateur
Tâche d’apprentissage automatique | Détection des anomalies |
La normalisation est-elle nécessaire ? | Non |
La mise en cache est-elle requise ? | Non |
NuGet requis en plus de Microsoft.ML | Microsoft.ML.TimeSeries |
Détails de l’algorithme d’apprentissage
Ce formateur part du principe que les points de données collectés dans la série chronologique sont échantillonnés indépendamment de la même distribution (indépendamment distribués de la même manière). Par conséquent, la valeur de l’horodatage actuel peut être vue comme valeur à l’horodatage suivant dans l’attente. Si la valeur observée au timestamp $t-1$ est $p$, la valeur prédite à $t$ timestamp serait également $p$.
Scoreur d’anomalie
Une fois que le score brut à un horodatage est calculé, il est alimenté au composant du scoreur d’anomalies pour calculer le score d’anomalie final à cet horodatage. Il existe deux statistiques impliquées dans ce scoreur, p-value et martingale score.
Score P-value
Le score p-value indique la valeur p du score brut calculé actuel en fonction d’une distribution des scores bruts bruts. Ici, la distribution est estimée en fonction des valeurs de score brut les plus récentes jusqu’à une certaine profondeur dans l’historique. Plus précisément, cette distribution est estimée à l’aide de l’estimation de densité du noyau avec les noyaux gaussiens de bande passante adaptative. Le score p-value est toujours en $[0, 1]$, et plus sa valeur est inférieure, plus le point actuel est hors norme (également appelé pic).
Détection de point de modification basée sur le score martingale
Le score martingale est un niveau supplémentaire de scoring basé sur les scores p-value. L’idée est basée sur les martingales d’échange qui détectent un changement de distribution sur un flux de valeurs i.i.d. . En bref, la valeur du score martingale commence à augmenter considérablement lorsqu’une séquence de petites valeurs p détectées dans une ligne; cela indique la modification de la distribution du processus de génération de données sous-jacent. Ainsi, le score martingale est utilisé pour la détection des points de modification. Compte tenu d’une séquence de p-values observées récemment, $p 1, \dots, p_n$, le score martingale est calculé comme suit : $s(p1, \dots, p_n) = \prod_{i=1}^n \beta(p_i)$. Il existe deux choix de $\beta$ : $\beta(p) = e p^{\epsilon - 1}$ pour $0 < \epsilon < 1$ ou $\beta(p) = \int_{0}^1 \epsilon p^{\epsilon - 1} d\epsilon$.
Si le score martingle dépasse $s(q_1, \dots, q_n)$ où $q_i=1 - \frac{\text{confidence}}{100}$, l’horodatage associé peut obtenir une valeur d’alerte non nulle pour la détection des points de modification. Notez que $\text{confidence}$ est défini dans les signatures de DetectChangePointBySsa ou DetectIidChangePoint.
Consultez la section Voir aussi pour obtenir des liens vers des exemples d’utilisation.
Méthodes
Fit(IDataView) |
Détectez un changement de signal sur une série chronologique distribuée de manière indépendante (i.i.d.) en fonction de l’estimation de densité de noyau adaptative et des martingales. (Hérité de TrivialEstimator<TTransformer>) |
GetOutputSchema(SchemaShape) |
Retourne le SchemaShape schéma qui sera produit par le transformateur. Utilisé pour la propagation et la vérification du schéma dans un pipeline. |
Méthodes d’extension
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Ajoutez un « point de contrôle de mise en cache » à la chaîne d’estimateur. Cela garantit que les estimateurs en aval seront entraînés par rapport aux données mises en cache. Il est utile d’avoir un point de contrôle de mise en cache avant les formateurs qui prennent plusieurs passes de données. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Étant donné un estimateur, retournez un objet de création de package de restrictions qui appellera un délégué une fois Fit(IDataView) appelé. Il est souvent important qu’un estimateur retourne des informations sur ce qui était adapté, c’est pourquoi la Fit(IDataView) méthode retourne un objet spécifiquement typé, plutôt que simplement un général ITransformer. Toutefois, en même temps, IEstimator<TTransformer> sont souvent formés en pipelines avec de nombreux objets. Nous pouvons donc avoir besoin de créer une chaîne d’estimateurs par EstimatorChain<TLastTransformer> le biais de laquelle l’estimateur pour lequel nous voulons obtenir le transformateur est enterré quelque part dans cette chaîne. Pour ce scénario, nous pouvons par le biais de cette méthode attacher un délégué qui sera appelé une fois l’ajustement appelé. |