gluonts.model 包#
- 类 gluonts.model.Estimator(lead_time: int = 0, **kwargs)[source]#
基类:
object
表示可训练模型的抽象类。
通过使用训练 Dataset 调用 train 方法来训练底层模型,生成一个 Predictor 对象。
- lead_time: int#
- prediction_length: int#
- train(training_data: gluonts.dataset.Dataset, validation_data: Optional[gluonts.dataset.Dataset] = None) gluonts.model.predictor.Predictor [source]#
使用给定数据训练估计器。
- 参数
training_data – 用于训练模型的数据集。
validation_data – 在训练期间用于验证模型的数据集。
- 返回
包含训练好的模型的预测器。
- 返回类型
- 类 gluonts.model.Forecast[source]#
基类:
object
表示预测的抽象类。
- copy_aggregate(agg_fun: Callable)[source]#
返回一个新的 Forecast 对象,其中时间序列在维度轴上进行了聚合。
- 参数
agg_fun – 定义聚合操作的聚合函数(通常是均值或求和)。
- 属性 freq#
- 属性 index: pandas.core.indexes.period.PeriodIndex#
- info: Optional[Dict]#
- item_id: Optional[str]#
- 属性 mean: numpy.ndarray#
- 属性 median: numpy.ndarray#
- plot(*, intervals=(0.5, 0.9), ax=None, color=None, name=None, show_label=False)[source]#
使用
matplotlib
绘制中位数预测和预测区间。默认情况下,绘制 0.5 和 0.9 预测区间。可以通过设置 intervals 来选择其他区间。
这将绘制到当前 axes 对象(通过
plt.gca()
),或者如果提供了ax
则绘制到ax
。类似地,如果没有设置明确的color
,则颜色使用 matplotlib 的内部颜色循环。可以设置
name
作为中位数预测的label
。除非将show_label
设置为True
,否则区间不会被标记。
- prediction_length: int#
- quantile(q: Union[float, str]) numpy.ndarray [source]#
从预测分布计算分位数。
- 参数
q – 要计算的分位数。
- 返回
分位数在整个预测范围内的值。
- 返回类型
numpy.ndarray
- start_date: pandas._libs.tslibs.period.Period#
- 类 gluonts.model.IncrementallyTrainable(*args, **kwargs)[source]#
基类:
typing_extensions.Protocol
- train_from(predictor: gluonts.model.predictor.Predictor, training_data: gluonts.dataset.Dataset, validation_data: Optional[gluonts.dataset.Dataset] = None) gluonts.model.predictor.Predictor [source]#
实验性功能:此功能在未来版本中可能会更改。使用给定数据训练估计器,从先前训练好的预测器开始。
- 参数
predictor – 先前训练好的模型,用于初始化估计器训练。
training_data – 用于训练模型的数据集。
validation_data – 在训练期间用于验证模型的数据集。
- 返回
包含训练好的模型的预测器。
- 返回类型
- 类 gluonts.model.Input(shape: Tuple[int, ...], dtype: Any, required: bool = True)[source]#
基类:
object
- dtype: Any#
- required: bool = True#
- shape: Tuple[int, ...]#
- 类 gluonts.model.InputSpec(data: Dict[str, gluonts.model.inputs.Input], zeros_fn: Callable)[source]#
基类:
collections.UserDict
- data: Dict[str, gluonts.model.inputs.Input]#
- 属性 dtypes: Dict[str, Type]#
- 属性 shapes: Dict[str, Tuple[int, ...]]#
- zeros_fn: Callable#
- 类 gluonts.model.Predictor(prediction_length: int, lead_time: int = 0)[source]#
基类:
object
表示预测器对象的抽象类。:param prediction_length: 预测范围。
- 类方法 deserialize(path: pathlib.Path, **kwargs) gluonts.model.predictor.Predictor [source]#
从给定路径加载序列化的预测器。
- 参数
path – 序列化文件预测器的路径。
**kwargs – 可选的上下文/设备参数,与预测器一起使用。如果未传递任何参数,将使用可用的 GPU,否则使用 CPU。
- predict(dataset: gluonts.dataset.Dataset, **kwargs) Iterator[gluonts.model.forecast.Forecast] [source]#
计算所提供数据集中时间序列的预测。此方法未在此抽象类中实现;请使用其子类之一。:param dataset: 包含要预测的时间序列的数据集。
- 返回
预测结果的迭代器,与提供数据集迭代器的顺序相同。
- 返回类型
Iterator[Forecast]
- 类 gluonts.model.QuantileForecast(forecast_arrays: numpy.ndarray, start_date: pandas._libs.tslibs.period.Period, forecast_keys: List[str], item_id: Optional[str] = None, info: Optional[Dict] = None)[source]#
基类:
gluonts.model.forecast.Forecast
包含分位数和均值的数组(即时间序列)的 Forecast。
- 参数
forecast_arrays – 预测结果数组
start_date (pandas._libs.tslibs.period.Period) – 预测的开始日期
forecast_keys – 分位数的列表,形式如 ‘0.1’、‘0.9’ 等,可能包含 ‘mean’。每个条目对应 forecast_arrays 中的一个数组。
item_id (Optional[str]) – 被预测项目的标识符。
info (Optional[Dict]) – 预测器可能提供的额外信息,例如估计的参数、运行的迭代次数等。
- copy_dim(dim: int) gluonts.model.forecast.QuantileForecast [source]#
返回一个新的 Forecast 对象,仅包含选定的子维度。
- 参数
dim – 返回的 forecast 对象将只表示此维度。
- info: Optional[Dict]#
- item_id: Optional[str]#
- 属性 mean: numpy.ndarray#
预测均值。
- prediction_length: int#
- quantile(inference_quantile: Union[float, str]) numpy.ndarray [source]#
从预测分布计算分位数。
- 参数
q – 要计算的分位数。
- 返回
分位数在整个预测范围内的值。
- 返回类型
numpy.ndarray
- start_date: pandas._libs.tslibs.period.Period#
- 类 gluonts.model.SampleForecast(samples: numpy.ndarray, start_date: pandas._libs.tslibs.period.Period, item_id: Optional[str] = None, info: Optional[Dict] = None)[source]#
基类:
gluonts.model.forecast.Forecast
一个 Forecast 对象,其中预测分布在内部表示为样本。
- 参数
samples – 大小为 (num_samples, prediction_length)(一维情况)或 (num_samples, prediction_length, target_dim)(多元情况)的数组
start_date (pandas._libs.tslibs.period.Period) – 预测的开始日期。
item_id (Optional[str]) – 被预测项目的标识符。
info (Optional[Dict]) – 预测器可能提供的额外信息,例如估计的参数、运行的迭代次数等。
- copy_aggregate(agg_fun: Callable) gluonts.model.forecast.SampleForecast [source]#
返回一个新的 Forecast 对象,其中时间序列在维度轴上进行了聚合。
- 参数
agg_fun – 定义聚合操作的聚合函数(通常是均值或求和)。
- copy_dim(dim: int) gluonts.model.forecast.SampleForecast [source]#
返回一个新的 Forecast 对象,仅包含选定的子维度。
- 参数
dim – 返回的 forecast 对象将只表示此维度。
- info: Optional[Dict]#
- item_id: Optional[str]#
- 属性 mean: numpy.ndarray#
预测均值。
- 属性 mean_ts: pandas.core.series.Series#
预测均值,作为 pandas.Series 对象。
- 属性 num_samples#
表示预测的样本数量。
- 属性 prediction_length#
预测的时间长度。
- quantile(q: Union[float, str]) numpy.ndarray [source]#
从预测分布计算分位数。
- 参数
q – 要计算的分位数。
- 返回
分位数在整个预测范围内的值。
- 返回类型
numpy.ndarray
- start_date: pandas._libs.tslibs.period.Period#
- to_quantile_forecast(quantiles: List[str]) gluonts.model.forecast.QuantileForecast [source]#
- gluonts.model.evaluate_forecasts(forecasts: Iterable[gluonts.model.forecast.Forecast], *, test_data: gluonts.dataset.split.TestData, metrics, axis: Optional[Union[int, tuple]] = None, batch_size: int = 100, mask_invalid_label: bool = True, allow_nan_forecast: bool = False, seasonality: Optional[int] = None) pandas.core.frame.DataFrame [source]#
根据
metrics
,将forecasts
与test_data
进行比较来评估forecasts
。注意
此功能是实验性的,未来版本中可能会发生变化。
可选的
axis
参数控制指标的聚合方式: -None
(默认)在所有维度上进行聚合 -0
在数据集上进行聚合 -1
在第一个数据维度上进行聚合(一元设置中的时间) -2
在第二个数据维度上进行聚合(多元设置中的时间)以 Pandas
DataFrame
的形式返回结果。
- gluonts.model.evaluate_model(model: gluonts.model.predictor.Predictor, *, test_data: gluonts.dataset.split.TestData, metrics, axis: Optional[Union[int, tuple]] = None, batch_size: int = 100, mask_invalid_label: bool = True, allow_nan_forecast: bool = False, seasonality: Optional[int] = None) pandas.core.frame.DataFrame [source]#
根据
metrics
,将model
应用于test_data
时进行评估。注意
此功能是实验性的,未来版本中可能会发生变化。
可选的
axis
参数控制指标的聚合方式: -None
(默认)在所有维度上进行聚合 -0
在数据集上进行聚合 -1
在第一个数据维度上进行聚合(一元设置中的时间) -2
在第二个数据维度上进行聚合(多元设置中的时间)以 Pandas
DataFrame
的形式返回结果。