IidChangePointEstimator 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í.
Zjištění změny signálu u nezávislé identické distribuované časové řady (tj. i.d.) na základě odhadu hustoty adaptivního jádra a 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)
- Dědičnost
Poznámky
Chcete-li vytvořit tento estimátor, použijte DetectIidChangePoint.
Vstupní a výstupní sloupce
Existuje pouze jeden vstupní sloupec. Vstupní sloupec musí být Single tam, kde Single hodnota označuje hodnotu v časovém razítku v časové řadě.
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 odhadu
Potřebuje tento estimátor podívat se na data, aby se natrénovala jeho parametry? | No |
Datový typ vstupního sloupce | Single |
Datový typ výstupního sloupce | Vektor 4 elementůDouble |
Exportovatelný do ONNX | No |
Charakteristiky odhadu
Úloha strojového učení | Detekce anomálií |
Vyžaduje se normalizace? | No |
Vyžaduje se ukládání do mezipaměti? | No |
Povinné nuGet kromě Microsoft.ML | Microsoft.ML.TimeSeries |
Podrobnosti o trénovacím algoritmu
Tento trenér předpokládá, že datové body shromážděné v časových řadách se nezávisle vzorkují ze stejného rozdělení (nezávisle na rozdělení). Proto lze hodnotu v aktuálním časovém razítku zobrazit jako hodnotu v dalším časovém razítku v očekávání. Pokud je pozorovaná hodnota v časovém razítku $t-1$ $p$, predikovaná hodnota v $t$ časového razítka by byla také $p$.
Anomálie Scorer
Jakmile se vypočítá nezpracované skóre v časovém razítku, přidá se komponentě 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-value
Skóre p-hodnota označuje p-hodnotu aktuálního počítaného nezpracovaného skóre podle rozdělení nezpracovaných skóre. V této části se rozdělení odhaduje 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 adaptivní šířky 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 bodů změn na základě skóre martingale
Skóre martingale je extra úroveň skóre, která je postavena na skóre p-hodnota. Myšlenka je založená na Exchangeability Martingales , která detekuje změnu distribuce přes datový proud hodnot 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; to označuje změnu distribuce podkladového procesu generování dat. Proto se skóre martingale používá k detekci bodů změn. Vzhledem k posloupnosti naposledy pozorovaných hodnot p-hodnot $p 1, \dots, p_n$, se skóre martingale vypočítá jako:? $s(p1; \tečky; 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.
V části Viz také najdete odkazy na příklady použití.
Metody
Fit(IDataView) |
Zjištění změny signálu u nezávislé identické distribuované časové řady (tj. i.d.) na základě odhadu hustoty adaptivního jádra a martingales. (Zděděno od TrivialEstimator<TTransformer>) |
GetOutputSchema(SchemaShape) |
SchemaShape Vrátí schéma, které bude vytvořen transformátorem. Používá se k šíření a ověřování schématu v kanálu. |
Metody rozšíření
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Připojte k řetězci odhadu kontrolní bod ukládání do mezipaměti. Tím zajistíte, aby se podřízené estimátory natrénovaly na data uložená 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>) |
Pokud získáte odhadátor, vraťte obtékání objektu, který jednou zavolá delegáta Fit(IDataView) . Často je důležité, aby estimátor vrátil informace o tom, co bylo vhodné, což je důvod, proč Fit(IDataView) metoda vrací konkrétně zadaný objekt, a ne 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 odhadovačů prostřednictvím EstimatorChain<TLastTransformer> toho, kde je odhadovač, IEstimator<TTransformer> pro který chceme získat transformátor, uložen někde v tomto řetězu. Pro tento scénář můžeme prostřednictvím této metody připojit delegáta, který bude volána po volání fit. |