У меня есть временной ряд с библиотекой ML. NET (месяцы продаж с ее стоимостью), и я делаю прогноз на следующие 12 месяцев. Я работал с методами регрессии без проблем, но не могу найти способ получить R ^ 2 (RSquared) при использовании временных рядов.
Код прогноза кажется правильным:
MLContext mlContext = new MLContext();
var dataList = new List<ModelInput>();
dataList = BData.GetData(ImpID, connStr, DatoID); //Data from other class
IDataView dataView = mlContext.Data.LoadFromEnumerable(dataList);
var forecastingPipeline = mlContext.Forecasting.ForecastBySsa(
outputColumnName: "Score",
inputColumnName: "Value",
windowSize: 12,
seriesLength: dataList.Count,
trainSize: dataList.Count,
horizon: 12,
confidenceLevel: 0.95f,
confidenceLowerBoundColumn: "Lower",
confidenceUpperBoundColumn: "Upper");
SsaForecastingTransformer forecaster = forecastingPipeline.Fit(dataView);
var forecastingEngine = forecaster.CreateTimeSeriesEngine<ModelInput, ModelOutput>(mlContext);
var forecasts = forecastingEngine.Predict();
foreach (var forecast in forecasts.Score)
{
Console.WriteLine(forecast);
}
Как я могу получить показатели из этого прогноза?