TimeSeriesCatalog.DetectIidSpike Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
DetectIidSpike(TransformsCatalog, String, String, Double, Int32, AnomalySide) |
Utwórz IidSpikeEstimatorelement , który przewiduje wzrosty liczby niezależnie rozproszonych serii czasowych (i.i.d.) na podstawie adaptacyjnych oszacowań gęstości jądra i wyników martingale. |
DetectIidSpike(TransformsCatalog, String, String, Int32, Int32, AnomalySide) |
Przestarzałe.
Utwórz IidSpikeEstimatorelement , który przewiduje wzrosty liczby niezależnie rozproszonych serii czasowych (i.i.d.) na podstawie adaptacyjnych oszacowań gęstości jądra i wyników martingale. |
DetectIidSpike(TransformsCatalog, String, String, Double, Int32, AnomalySide)
Utwórz IidSpikeEstimatorelement , który przewiduje wzrosty liczby niezależnie rozproszonych serii czasowych (i.i.d.) na podstawie adaptacyjnych oszacowań gęstości jądra i wyników martingale.
public static Microsoft.ML.Transforms.TimeSeries.IidSpikeEstimator DetectIidSpike (this Microsoft.ML.TransformsCatalog catalog, string outputColumnName, string inputColumnName, double confidence, int pvalueHistoryLength, Microsoft.ML.Transforms.TimeSeries.AnomalySide side = Microsoft.ML.Transforms.TimeSeries.AnomalySide.TwoSided);
static member DetectIidSpike : Microsoft.ML.TransformsCatalog * string * string * double * int * Microsoft.ML.Transforms.TimeSeries.AnomalySide -> Microsoft.ML.Transforms.TimeSeries.IidSpikeEstimator
<Extension()>
Public Function DetectIidSpike (catalog As TransformsCatalog, outputColumnName As String, inputColumnName As String, confidence As Double, pvalueHistoryLength As Integer, Optional side As AnomalySide = Microsoft.ML.Transforms.TimeSeries.AnomalySide.TwoSided) As IidSpikeEstimator
Parametry
- catalog
- TransformsCatalog
Wykaz przekształcenia.
- outputColumnName
- String
Nazwa kolumny wynikającej z przekształcenia elementu inputColumnName
.
Dane kolumny są wektorem .Double Wektor zawiera 3 elementy: alert (wartość niezerowa oznacza skok), nieprzetworzone wyniki i wartość p.
- inputColumnName
- String
Nazwa kolumny do przekształcenia. Dane kolumny muszą mieć wartość Single.
W przypadku ustawienia wartości null
wartość parametru outputColumnName
będzie używana jako źródło.
- confidence
- Double
Pewność wykrywania skoków w zakresie [0, 100].
- pvalueHistoryLength
- Int32
Rozmiar okna przewijania do obliczania wartości p.
- side
- AnomalySide
Argument określający, czy wykryć pozytywne, czy negatywne anomalie, czy oba te elementy.
Zwraca
Przykłady
using System;
using System.Collections.Generic;
using Microsoft.ML;
using Microsoft.ML.Data;
namespace Samples.Dynamic
{
public static class DetectIidSpikeBatchPrediction
{
// This example creates a time series (list of Data with the i-th element
// corresponding to the i-th time slot). The estimator is applied then to
// identify spiking points in the series.
public static void Example()
{
// Create a new ML context, for ML.NET operations. It can be used for
// exception tracking and logging, as well as the source of randomness.
var ml = new MLContext();
// Generate sample series data with a spike
const int Size = 10;
var data = new List<TimeSeriesData>(Size + 1)
{
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
// This is a spike.
new TimeSeriesData(10),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
};
// Convert data to IDataView.
var dataView = ml.Data.LoadFromEnumerable(data);
// Setup the estimator arguments
string outputColumnName = nameof(IidSpikePrediction.Prediction);
string inputColumnName = nameof(TimeSeriesData.Value);
// The transformed data.
var transformedData = ml.Transforms.DetectIidSpike(outputColumnName,
inputColumnName, 95.0d, Size / 4).Fit(dataView).Transform(dataView);
// Getting the data of the newly created column as an IEnumerable of
// IidSpikePrediction.
var predictionColumn = ml.Data.CreateEnumerable<IidSpikePrediction>(
transformedData, reuseRowObject: false);
Console.WriteLine($"{outputColumnName} column obtained " +
$"post-transformation.");
Console.WriteLine("Data\tAlert\tScore\tP-Value");
int k = 0;
foreach (var prediction in predictionColumn)
PrintPrediction(data[k++].Value, prediction);
// Prediction column obtained post-transformation.
// Data Alert Score P-Value
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 10 1 10.00 0.00 <-- alert is on, predicted spike
// 5 0 5.00 0.26
// 5 0 5.00 0.26
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
}
private static void PrintPrediction(float value, IidSpikePrediction
prediction) =>
Console.WriteLine("{0}\t{1}\t{2:0.00}\t{3:0.00}", value,
prediction.Prediction[0], prediction.Prediction[1],
prediction.Prediction[2]);
class TimeSeriesData
{
public float Value;
public TimeSeriesData(float value)
{
Value = value;
}
}
class IidSpikePrediction
{
[VectorType(3)]
public double[] Prediction { get; set; }
}
}
}
Dotyczy
DetectIidSpike(TransformsCatalog, String, String, Int32, Int32, AnomalySide)
Przestroga
This API method is deprecated, please use the overload with confidence parameter of type double.
Utwórz IidSpikeEstimatorelement , który przewiduje wzrosty liczby niezależnie rozproszonych serii czasowych (i.i.d.) na podstawie adaptacyjnych oszacowań gęstości jądra i wyników martingale.
[System.Obsolete("This API method is deprecated, please use the overload with confidence parameter of type double.")]
public static Microsoft.ML.Transforms.TimeSeries.IidSpikeEstimator DetectIidSpike (this Microsoft.ML.TransformsCatalog catalog, string outputColumnName, string inputColumnName, int confidence, int pvalueHistoryLength, Microsoft.ML.Transforms.TimeSeries.AnomalySide side = Microsoft.ML.Transforms.TimeSeries.AnomalySide.TwoSided);
public static Microsoft.ML.Transforms.TimeSeries.IidSpikeEstimator DetectIidSpike (this Microsoft.ML.TransformsCatalog catalog, string outputColumnName, string inputColumnName, int confidence, int pvalueHistoryLength, Microsoft.ML.Transforms.TimeSeries.AnomalySide side = Microsoft.ML.Transforms.TimeSeries.AnomalySide.TwoSided);
[<System.Obsolete("This API method is deprecated, please use the overload with confidence parameter of type double.")>]
static member DetectIidSpike : Microsoft.ML.TransformsCatalog * string * string * int * int * Microsoft.ML.Transforms.TimeSeries.AnomalySide -> Microsoft.ML.Transforms.TimeSeries.IidSpikeEstimator
static member DetectIidSpike : Microsoft.ML.TransformsCatalog * string * string * int * int * Microsoft.ML.Transforms.TimeSeries.AnomalySide -> Microsoft.ML.Transforms.TimeSeries.IidSpikeEstimator
<Extension()>
Public Function DetectIidSpike (catalog As TransformsCatalog, outputColumnName As String, inputColumnName As String, confidence As Integer, pvalueHistoryLength As Integer, Optional side As AnomalySide = Microsoft.ML.Transforms.TimeSeries.AnomalySide.TwoSided) As IidSpikeEstimator
Parametry
- catalog
- TransformsCatalog
Wykaz przekształcenia.
- outputColumnName
- String
Nazwa kolumny wynikającej z przekształcenia elementu inputColumnName
.
Dane kolumny są wektorem .Double Wektor zawiera 3 elementy: alert (wartość niezerowa oznacza skok), nieprzetworzone wyniki i wartość p.
- inputColumnName
- String
Nazwa kolumny do przekształcenia. Dane kolumny muszą mieć wartość Single.
W przypadku ustawienia wartości null
wartość parametru outputColumnName
będzie używana jako źródło.
- confidence
- Int32
Pewność wykrywania skoków w zakresie [0, 100].
- pvalueHistoryLength
- Int32
Rozmiar okna przewijania do obliczania wartości p.
- side
- AnomalySide
Argument określający, czy wykryć pozytywne, czy negatywne anomalie, czy oba te elementy.
Zwraca
- Atrybuty
Przykłady
using System;
using System.Collections.Generic;
using Microsoft.ML;
using Microsoft.ML.Data;
namespace Samples.Dynamic
{
public static class DetectIidSpikeBatchPrediction
{
// This example creates a time series (list of Data with the i-th element
// corresponding to the i-th time slot). The estimator is applied then to
// identify spiking points in the series.
public static void Example()
{
// Create a new ML context, for ML.NET operations. It can be used for
// exception tracking and logging, as well as the source of randomness.
var ml = new MLContext();
// Generate sample series data with a spike
const int Size = 10;
var data = new List<TimeSeriesData>(Size + 1)
{
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
// This is a spike.
new TimeSeriesData(10),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
new TimeSeriesData(5),
};
// Convert data to IDataView.
var dataView = ml.Data.LoadFromEnumerable(data);
// Setup the estimator arguments
string outputColumnName = nameof(IidSpikePrediction.Prediction);
string inputColumnName = nameof(TimeSeriesData.Value);
// The transformed data.
var transformedData = ml.Transforms.DetectIidSpike(outputColumnName,
inputColumnName, 95.0d, Size / 4).Fit(dataView).Transform(dataView);
// Getting the data of the newly created column as an IEnumerable of
// IidSpikePrediction.
var predictionColumn = ml.Data.CreateEnumerable<IidSpikePrediction>(
transformedData, reuseRowObject: false);
Console.WriteLine($"{outputColumnName} column obtained " +
$"post-transformation.");
Console.WriteLine("Data\tAlert\tScore\tP-Value");
int k = 0;
foreach (var prediction in predictionColumn)
PrintPrediction(data[k++].Value, prediction);
// Prediction column obtained post-transformation.
// Data Alert Score P-Value
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 10 1 10.00 0.00 <-- alert is on, predicted spike
// 5 0 5.00 0.26
// 5 0 5.00 0.26
// 5 0 5.00 0.50
// 5 0 5.00 0.50
// 5 0 5.00 0.50
}
private static void PrintPrediction(float value, IidSpikePrediction
prediction) =>
Console.WriteLine("{0}\t{1}\t{2:0.00}\t{3:0.00}", value,
prediction.Prediction[0], prediction.Prediction[1],
prediction.Prediction[2]);
class TimeSeriesData
{
public float Value;
public TimeSeriesData(float value)
{
Value = value;
}
}
class IidSpikePrediction
{
[VectorType(3)]
public double[] Prediction { get; set; }
}
}
}