Share via


SsaChangePointEstimator Klasse

Definition

Erkennen von Änderungspunkten in der Zeitreihe mithilfe der Singular Spectrum Analysis.

public sealed class SsaChangePointEstimator : Microsoft.ML.IEstimator<Microsoft.ML.Transforms.TimeSeries.SsaChangePointDetector>
type SsaChangePointEstimator = class
    interface IEstimator<SsaChangePointDetector>
Public NotInheritable Class SsaChangePointEstimator
Implements IEstimator(Of SsaChangePointDetector)
Vererbung
SsaChangePointEstimator
Implementiert

Hinweise

Verwenden Sie "DetectChangePointBySsa", um diese Schätzung zu erstellen.

Eingabe- und Ausgabespalten

Es gibt nur eine Eingabespalte. Die Eingabespalte muss sein Single , wo ein Single Wert einen Wert bei einem Zeitstempel in der Zeitreihe angibt.

Es erzeugt eine Spalte, die ein Vektor mit 4 Elementen ist. Der Ausgabevektor enthält sequenzielle Warnungsstufe (Nicht-Null-Wert bedeutet einen Änderungspunkt), Score, P-Wert und Martingale-Wert.

Stimatoreigenschaften

Muss diese Schätzung die Daten untersuchen, um seine Parameter zu trainieren? Yes
Eingabespaltendatentyp Single
Ausgabespaltendatentyp 4-Elementvektor vonDouble
Exportierbar in ONNX No

Stimatoreigenschaften

ML-Aufgabe Anomalieerkennung
Ist die Normalisierung erforderlich? No
Ist zwischenspeichern erforderlich? No
Erforderliche NuGet zusätzlich zu Microsoft.ML Microsoft.ML.TimeSeries

Schulungsalgorithmusdetails

Diese Klasse implementiert die allgemeine Anomalieerkennungstransformation basierend auf der Singular Spectrum Analysis (SSA). SSA ist ein leistungsstarkes Framework für die Zersetzung der Zeitreihen in Trend- und Saisonalitätskomponenten sowie die Prognose der zukünftigen Werte der Zeitreihe. Im Prinzip führt SSA die Spektralanalyse für die Eingabezeitreihe aus, in der jede Komponente im Spektrum einem Trend, einer saisonal oder rauschigen Komponente in der Zeitreihe entspricht. Ausführliche Informationen zur Singular Spectrum Analysis (SSA) finden Sie in diesem Dokument.

Omaly Scorer

Sobald die unformatierte Bewertung bei einer Zeitstempel berechnet wird, wird sie an die Anomaly scorer-Komponente gefüttert, um die endgültige Anomalybewertung zu diesem Zeitstempel zu berechnen. Es gibt zwei Statistiken, die an diesem Scorer, P-Wert und martingale Score beteiligt sind.

P-Wertbewertung

Die p-Wertbewertung gibt den p-Wert der aktuellen berechneten rohen Bewertung entsprechend einer Verteilung von Rohbewertungen an. Hier wird die Verteilung basierend auf den neuesten Rohbewertungswerten bis zu bestimmten Tiefen zurück in der Geschichte geschätzt. Insbesondere wird diese Verteilung mit der Kerneldichteschätzung mit den Gaussian-Kerneln der adaptiven Bandbreite geschätzt. Die P-Wertbewertung befindet sich immer in $[0, 1]$, und der niedrigeren Wert, desto wahrscheinlicher ist der aktuelle Punkt ein Ausreißer (auch als Spitzen bezeichnet).

Änderungspunkterkennung basierend auf der Martingale-Bewertung

Die Martingale-Bewertung ist eine zusätzliche Bewertungsstufe, die auf den P-Wert-Bewertungen basiert. Die Idee basiert auf der Exchangeability Martingales , die eine Änderung der Verteilung über einen Datenstrom von i.i.d. Werten erkennen. Kurz gesagt, der Wert der Martingale-Bewertung beginnt deutlich zu erhöhen, wenn eine Sequenz von kleinen P-Werten in einer Zeile erkannt wurde; dies gibt die Änderung der Verteilung des zugrunde liegenden Datengenerierungsprozesses an. Daher wird die Martingale-Bewertung für die Änderungspunkterkennung verwendet. Angesichts einer Sequenz der zuletzt beobachteten P-Werte, $p 1, \dots, p_n$, wird die Martingale-Bewertung als:? $s(p1, \dots, p_n) = \prod_{i=1}^n \beta(p_i)$. Es gibt zwei Optionen von $\beta$: $\beta(p) = e^{\epsilon - 1}$ für $0 << \epsilon 1$ oder $\beta(p) = \int_{0}^1 \epsilon p^{\epsilon - 1} d\epsilon$.

Wenn die Martingle-Bewertung $s(q_1, \dots, q_n)$ überschreitet, wobei $q_i=1 - \frac{\text{konfidenz}}{100}$, kann der zugehörige Zeitstempel einen Nicht-Null-Warnungswert für die Änderungspunkterkennung erhalten. Beachten Sie, dass $\text{confidence}$ in den Signaturen von DetectChangePointBySsa oder DetectIidChangePoint definiert ist.

Überprüfen Sie den Abschnitt "Siehe auch", um Links zu Verwendungsbeispielen zu finden.

Methoden

Fit(IDataView)

Zug und Zurückgeben eines Transformators.

GetOutputSchema(SchemaShape)

Schemaverteilung für Transformatoren. Gibt das Ausgabeschema der Daten zurück, wenn das Eingabeschema wie die bereitgestellte ist.

Erweiterungsmethoden

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Fügen Sie einen "Zwischenspeicherpunkt" an die Stimatorkette an. Dadurch wird sichergestellt, dass die nachgelagerten Stimatoren gegen zwischengespeicherte Daten trainiert werden. Es ist hilfreich, einen Cache-Prüfpunkt zu haben, bevor Trainer, die mehrere Daten übergeben.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Geben Sie aufgrund einer Schätzung ein Umbruchobjekt zurück, das einen Stellvertretung aufruft, sobald Fit(IDataView) er aufgerufen wird. Es ist oft wichtig, dass eine Schätzung Informationen zu dem zurückgibt, was passt, weshalb die Fit(IDataView) Methode ein spezifisches typiertes Objekt zurückgibt, anstatt nur ein allgemeines ITransformer. Gleichzeitig IEstimator<TTransformer> werden jedoch oft Pipelines mit vielen Objekten gebildet, sodass wir möglicherweise eine Kette von EstimatorChain<TLastTransformer> Schätzern erstellen müssen, über die der Schätzer, für den wir den Transformator erhalten möchten, irgendwo in dieser Kette begraben wird. Für dieses Szenario können wir über diese Methode eine Stellvertretung anfügen, die einmal aufgerufen wird, wenn die Anpassung aufgerufen wird.

Gilt für:

Weitere Informationen