gluonts.ext.r_forecast 包#

class gluonts.ext.r_forecast.RBasePredictor(freq: str, prediction_length: int, period: Optional[int] = None, trunc_length: Optional[int] = None, save_info: bool = False, r_file_prefix: str = '')[源代码]#

基类: gluonts.model.predictor.RepresentablePredictor

RBasePredictor 是调用 R 包的轻量级封装。要使用它,你需要安装 R 和 rpy2。

请注意,需要根据要运行的封装安装特定的 R 包。请参见 RForecastPredictorRHierarchicalForecastPredictor 以了解所需的包。

参数
  • freq – 时间序列的粒度(例如 '1H')

  • prediction_length – 要预测的时间点数量。

  • period – 要使用的周期(在 R forecast 包中称为 frequency),如果未指定,则采用合理的默认值(例如,对于每小时频率 '1H',周期为 24)

  • trunc_length – 提供给模型的最大历史长度(某些模型处理非常长的时间序列时会变慢)。

  • r_file_prefix – 包含预测封装方法的 R 文件的前缀字符串。这用于避免加载可能包含相同方法不同实现的所有 R 文件,从而确保实际使用了预期的 R 方法。

predict(dataset: gluonts.dataset.Dataset, **kwargs) Iterator[gluonts.model.forecast.Forecast][源代码]#

计算提供的 数据集中时间序列的预测结果。此方法在此抽象类中未实现;请使用其子类之一。:param dataset: 包含要预测的时间序列的数据集。

返回

预测结果的迭代器,顺序与提供的数据集迭代器相同。

返回类型

Iterator[Forecast]

class gluonts.ext.r_forecast.RForecastPredictor(freq: str, prediction_length: int, method_name: str = 'ets', period: Optional[int] =None, trunc_length: Optional[int] =None, save_info: bool =False, params: Dict = {})[源代码]#

基类: gluonts.ext.r_forecast._predictor.RBasePredictor

调用 R forecast 包的封装程序。

<http://pkg.robjhyndman.com/forecast/>`_.

要使用它,你需要安装 R 和 rpy2。你还需要 R forecast 包,可以通过运行以下命令安装:

R -e ‘install.packages(c(“forecast”, “nnfor”), repos=”https://cloud.r-project.org”)’ # noqa

参数
  • freq – 时间序列的粒度(例如 '1H')

  • prediction_length – 要预测的时间点数量。

  • method_name – 要使用的 rforecast 方法之一,例如“ets”, “arima”, “tbats”, “croston”, “mlp”, “thetaf”。

  • period – 要使用的周期(在 R forecast 包中称为 frequency),如果未指定,则采用合理的默认值(例如,对于每小时频率 '1H',周期为 24)

  • trunc_length – 提供给模型的最大历史长度(某些模型处理非常长的时间序列时会变慢)。

  • params – 调用 forecast 方法时要使用的参数。对于 output_type,支持 'mean' 和 quantiles' (取决于底层的 R 方法)。

class gluonts.ext.r_forecast.RHierarchicalForecastPredictor(freq: str, prediction_length: int, is_hts: bool, target_dim: int, num_bottom_ts: int, nodes: List, method_name: str, fmethod: str, period: Optional[int] = None, trunc_length: Optional[int] = None, save_info: bool = False, nonnegative: bool = False, level: Optional[int] = None, algorithm: Optional[str] = 'cg', covariance: Optional[str] = 'shr', numcores: Optional[int] = None, params: Optional[Dict] = None)[源代码]#

基类: gluonts.ext.r_forecast._predictor.RBasePredictor

调用 R hts 包的封装程序。

要使用它,你需要安装 R 和 rpy2。你还需要 R hts 包,可以通过运行以下命令安装:

R -e ‘install.packages(c(“hts”), repos=”https://cloud.r-project.org”)’

参数
  • freq – 时间序列的粒度(例如 '1H')

  • prediction_length – 要预测的时间点数量。

  • is_hts – 时间序列是层次结构(Hierarchical)还是分组结构(Grouped)。# noqa

  • target_dim – 多元目标时间序列的维度(大小)。

  • num_bottom_ts – 层次结构中底层时间序列的数量。

  • nodes – 表示 hts 包中定义的层次结构的节点结构。要了解节点的精确结构,请参见帮助文档:层次结构(Hierarchical):https://stackoverflow.com/questions/13579292/how-to-use-hts-with-multi-level-hierarchies 分组(Grouped):https://robjhyndman.com/hyndsight/gts/

  • nonnegative – 目标是否非负?

  • method_name – 要使用的层次结构预测或协调(reconciliation)方法;必须是以下之一:“naive_bottom_up”, “middle_out_w_forecasts_proportions”, “top_down_w_average_historical_proportions”, “top_down_w_proportions_of_the_historical_averages”, “top_down_w_forecasts_proportions”, “mint”, “erm”

  • fmethod – 用于生成基本预测(即未协调的预测)的预测方法。

  • period – 要使用的周期(在 R forecast 包中称为 frequency),如果未指定,则采用合理的默认值(例如,对于每小时频率 '1H',周期为 24)

  • trunc_length – 提供给模型的最大历史长度(某些模型处理非常长的时间序列时会变慢)。

  • params – 调用 forecast 方法时要使用的参数。请注意,对于 output_type,目前仅支持 'samples'。

  • level – 用于 middle out 协调的层次结构级别(例如,level=1 表示将最高级别以下的级别用作参考来计算所有其他级别的预测)。此值仅在 middle out 方法中需要。

  • numcores – 用于 ERM 并行化的核心数量。如果未提供,将使用所有核心。