SsaChangePointEstimator Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Rozpoznáte body změn v časových řadách pomocí analýzy jednotného spektra.
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)
- Dědičnost
-
SsaChangePointEstimator
- Implementuje
Poznámky
K vytvoření tohoto estimátoru použijte DetectChangePointBySsa.
Vstupní a výstupní sloupce
Existuje pouze jeden vstupní sloupec. Vstupní sloupec musí obsahovat Single místo, kde Single hodnota označuje hodnotu v časovém razítku časové řady.
Vytvoří sloupec, který je vektorem se 4 prvky. Výstupní vektor postupně obsahuje úroveň upozornění (nenulová hodnota znamená bod změny), skóre, p-hodnotu a hodnotu martingale.
Charakteristiky estimátoru
Potřebuje tento estimátor podívat se na data, aby vytrénovala jeho parametry? | Yes |
Datový typ vstupního sloupce | Single |
Datový typ výstupního sloupce | Vektor 4 elementůDouble |
Exportovatelné do ONNX | No |
Charakteristiky estimátoru
Úloha strojového učení | Detekce anomálií |
Vyžaduje se normalizace? | No |
Vyžaduje se ukládání do mezipaměti? | No |
Požadovaný NuGet kromě Microsoft.ML | Microsoft.ML.TimeSeries |
Podrobnosti trénovacího algoritmu
Tato třída implementuje obecnou transformaci detekce anomálií na základě analýzy jednotného spektra (SSA). SSA je výkonná architektura pro dekódování časových řad na trendy, sezónnost a komponenty šumu a také prognózování budoucích hodnot časových řad. V zásadě služba SSA provádí spektrální analýzu vstupní časové řady, kde každá komponenta ve spektru odpovídá trendu, sezónní komponentě nebo komponentě šumu v časové řadě. Podrobnosti o analýze jednotného spektra (SSA) najdete v tomto dokumentu.
Scorer anomálií
Jakmile se vypočítá nezpracované skóre v časovém razítku, předá se komponentě scoreru anomálií k výpočtu konečného skóre anomálií v daném časovém razítku. V tomto skóre jsou zapojeny dvě statistiky, p-value a martingale skóre.
Skóre P-hodnota
Skóre p-hodnota označuje p-hodnotu aktuálního vypočítaného nezpracovaného skóre podle rozdělení nezpracovaných skóre. Tady se odhaduje rozdělení na základě nejnovějších nezpracovaných hodnot skóre až do určité hloubky zpět v historii. Konkrétně se tato distribuce odhaduje pomocí odhadu hustoty jádra s jádry Gaussian s adaptivní šířkou pásma. Skóre p-hodnota je vždy v $[0, 1]$a nižší jeho hodnota, tím pravděpodobnější je aktuální bod odlehlé hodnoty (označuje se také jako špička).
Detekce bodu změny na základě skóre martingale
Skóre martingale je další úroveň bodování, která je postavena na skóre p-hodnota. Myšlenka je založená na Vyměnitelnosti Martingales , která detekuje změnu rozdělení přes datový proud hodnot i.i.d. Stručně řečeno, hodnota skóre martingale začíná výrazně růst, když sekvence malých p-hodnot zjištěných v řádku; označuje změnu distribuce podkladového procesu generování dat. Proto se skóre martingale používá k detekci bodu změny. Vzhledem k posloupnosti naposledy pozorovaných p-hodnot, $p 1, \tečky, p_n$, se skóre martingale vypočítá jako:? $s(p1; \dots; p_n) = \prod_{i=1}^n \beta(p_i)$. Existují dvě možnosti $\beta$: $\beta(p) = e p^{\epsilon - 1}$ pro $0 < \epsilon < 1$ nebo $\beta(p) = \int_{0}^1 \epsilon p^{\epsilon - 1} d\epsilon$.
Pokud skóre martingle překročí $s(q_1; \tečky, q_n)$ kde $q_i=1 - \frac{\text{confidence}}{100}$, přidružené časové razítko může získat nenulovou hodnotu upozornění pro detekci bodu změn. Všimněte si, že $\text{confidence}$ je definován v podpisech DetectChangePointBySsa nebo DetectIidChangePoint.
Odkazy na příklady použití najdete v části Viz také.
Metody
Fit(IDataView) |
Trénujte a vraťte transformátor. |
GetOutputSchema(SchemaShape) |
Šíření schématu pro transformátory Vrátí výstupní schéma dat, pokud je vstupní schéma podobné zadanému schématu. |
Metody rozšíření
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Připojte k řetězci estimátoru kontrolní bod ukládání do mezipaměti. Tím zajistíte, aby podřízené estimátory byly vytrénovány proti datům uloženým v mezipaměti. Před průchodem více dat je užitečné mít kontrolní bod ukládání do mezipaměti. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Vzhledem k estimátoru vraťte zalamovací objekt, který zavolá delegáta jednou Fit(IDataView) . Často je důležité, aby odhadovač vrátil informace o tom, co bylo vhodné, což je důvod, proč Fit(IDataView) metoda vrací konkrétně typ objekt, nikoli jen obecné ITransformer. Ve stejnou dobu se však často vytvářejí do kanálů s mnoha objekty, takže možná budeme muset vytvořit řetězec estimátorů, kde EstimatorChain<TLastTransformer> je odhadovač, IEstimator<TTransformer> pro který chceme získat transformátor, zakopán někde v tomto řetězci. Pro tento scénář můžeme prostřednictvím této metody připojit delegáta, který bude volána po zavolání fit. |