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 包。请参见 RForecastPredictor 和 RHierarchicalForecastPredictor 以了解所需的包。
- 参数
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 并行化的核心数量。如果未提供,将使用所有核心。