SsaSpikeEstimator Clase

Definición

Detecte picos en series temporales mediante Singular Spectrum Analysis.

public sealed class SsaSpikeEstimator : Microsoft.ML.IEstimator<Microsoft.ML.Transforms.TimeSeries.SsaSpikeDetector>
type SsaSpikeEstimator = class
    interface IEstimator<SsaSpikeDetector>
Public NotInheritable Class SsaSpikeEstimator
Implements IEstimator(Of SsaSpikeDetector)
Herencia
SsaSpikeEstimator
Implementaciones

Comentarios

Para crear este estimador, use DetectSpikeBySsa

Columnas de entrada y salida

Solo hay una columna de entrada. La columna de entrada debe ser Single donde un Single valor indica un valor en una marca de tiempo de la serie temporal.

Genera una columna que es un vector con 3 elementos. El vector de salida contiene secuencialmente el nivel de alerta (un valor distinto de cero significa un punto de cambio), la puntuación y el valor p.

Características del estimador

¿Este estimador necesita examinar los datos para entrenar sus parámetros?
Tipo de datos de columna de entrada Single
Tipo de datos de columna de salida Vector de 3 elementos de Double
Exportable a ONNX No

Características del estimador

Tarea de Machine Learning Detección de anomalías
¿Se requiere normalización? No
¿Se requiere el almacenamiento en caché? No
NuGet necesario además de Microsoft.ML Microsoft.ML.TimeSeries

Detalles del algoritmo de entrenamiento

Esta clase implementa la transformación de detección de anomalías general basada en Singular Spectrum Analysis (SSA). SSA es un marco eficaz para descomponer la serie temporal en componentes de tendencia, estacionalidad y ruido, así como para predecir los valores futuros de la serie temporal. En principio, SSA realiza análisis espectrales en la serie temporal de entrada donde cada componente del espectro corresponde a un componente de tendencia, estacional o ruido en la serie temporal. Para obtener más información sobre el análisis de espectro singular (SSA), consulte este documento.

Anomaly Scorer

Una vez calculada la puntuación sin procesar en una marca de tiempo, se envía al componente de marcador de anomalías para calcular la puntuación final de anomalías en esa marca de tiempo.

Detección de picos basada en p-value

La puntuación de valor p indica si el punto actual es un valor atípico (también conocido como pico). Cuanto menor sea su valor, más probable es que sea un pico. La puntuación de valor p siempre está en $[0, 1]$.

Esta puntuación es el valor p de la puntuación sin procesar calculada actual según una distribución de puntuaciones sin procesar. Aquí, la distribución se calcula en función de los valores de puntuación sin procesar más recientes hasta cierta profundidad en el historial. Más concretamente, esta distribución se calcula mediante la estimación de densidad del kernel con los kernels gaussianos de ancho de banda adaptable.

Si la puntuación de valor p supera $1 - \frac{\text{confidence}}{100}$, la marca de tiempo asociada puede obtener un valor de alerta distinto de cero en la detección de picos, lo que significa que se detecta un punto de pico. Tenga en cuenta que $\text{confidence}$ se define en las firmas de DetectIidSpike y DetectSpikeBySsa.

Consulte la sección Consulte también los vínculos a ejemplos de uso.

Métodos

Fit(IDataView)

Entrene y devuelva un transformador.

GetOutputSchema(SchemaShape)

Propagación de esquemas para transformadores. Devuelve el esquema de salida de los datos, si el esquema de entrada es similar al proporcionado.

Métodos de extensión

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

Anexe un "punto de control de almacenamiento en caché" a la cadena del estimador. Esto garantizará que los estimadores de nivel inferior se entrenarán con los datos almacenados en caché. Resulta útil tener un punto de control de almacenamiento en caché antes de que los instructores tomen varios pases de datos.

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

Dado un estimador, devuelva un objeto de ajuste que llamará a un delegado una vez Fit(IDataView) que se llame. A menudo, es importante que un estimador devuelva información sobre lo que cabe, por lo que el Fit(IDataView) método devuelve un objeto con tipo específico, en lugar de simplemente un general ITransformer. Sin embargo, al mismo tiempo, IEstimator<TTransformer> a menudo se forman en canalizaciones con muchos objetos, por lo que es posible que tengamos que crear una cadena de estimadores a través EstimatorChain<TLastTransformer> de donde el estimador para el que queremos obtener el transformador está enterrado en algún lugar de esta cadena. En ese escenario, podemos a través de este método adjuntar un delegado al que se llamará una vez que se llame a fit.

Se aplica a

Consulte también