paddlets.models.dl.paddlepaddle.nhits
NHiTS模型实现基于文章 N-HiTS: Neural Hierarchical Interpolation for Time Series Forecasting<https://arxiv.org/abs/2201.12886>.
- class NHiTSModel(in_chunk_len: int, out_chunk_len: int, num_stacks: int = 3, num_blocks: int = 3, num_layers: int = 2, layer_widths: ~typing.Union[int, ~typing.List[int]] = 512, pooling_kernel_sizes: ~typing.Optional[~typing.Tuple[~typing.Tuple[int]]] = None, n_freq_downsample: ~typing.Optional[~typing.Tuple[~typing.Tuple[int]]] = None, batch_norm: bool = False, dropout: float = 0.1, activation: str = 'ReLU', MaxPool1d: bool = True, skip_chunk_len: int = 0, sampling_stride: int = 1, loss_fn: ~typing.Callable[[...], ~paddle.Tensor] = <function mse_loss>, optimizer_fn: ~typing.Callable[[...], ~paddle.optimizer.optimizer.Optimizer] = <class 'paddle.optimizer.adam.Adam'>, optimizer_params: ~typing.Dict[str, ~typing.Any] = {'learning_rate': 0.0001}, eval_metrics: ~typing.List[str] = [], callbacks: ~typing.List[~paddlets.models.dl.paddlepaddle.callbacks.callbacks.Callback] = [], batch_size: int = 256, max_epochs: int = 10, verbose: int = 1, patience: int = 4, seed: int = 0)[源代码]
基类:
PaddleBaseModelImplNHiTS模型实现
- 参数
in_chunk_len (int) – 模型输入的时间序列长度。
out_chunk_len (int) – 模型输出的序列长度。
num_stacks – Stack数量。
num_blocks – 构成每个stack的block数量。
num_layers – 每个block中分叉结构前的全连接层数量。
layer_widths – 每个block中全连接层的神经元数量,如果传入list,则list长度必须等于num_stacks,且list中每个元素对应于当前层的神经元数量。如果传入整数,则每个stack中的block中具有相同的神经元数量。
pooling_kernel_size (Tuple[Tuple[int]], option) – 初始池化层的内核大小。
n_freq_downsample (Tuple[Tuple[int]], option) – 为每个堆栈中的每个块指定插值前的下采样因子。
batch_norm (bool) – 是否做批量标准化。
dropout (float) – 神经元节点的随机丢弃概率。
activation (str) – 编码器/解码器中间层的激活函数。
MaxPool1d (bool) – 是否使用MaxPool1d池化,等于False则使用AvgPool1d。
skip_chunk_len (int, Optional) – 可选变量,输入序列与输出序列之间跳过的序列长度,既不作为特征也不作为预测目标使用,默认值为0。
sampling_stride (int, optional) – 相邻两个样本的采样间隔。
loss_fn (Callable, Optional) – 损失函数。
optimizer_fn (Callable, Optional) – 优化器算法。
optimizer_params (Dict, Optional) – 优化器参数。
eval_metrics (List[str], Optional) – 模型评估指标。
callbacks (List[Callback], Optional) – 自定义的callback函数。
batch_size (int, Optional) – 每个batch中的样本数量。
max_epochs (int, Optional) – 训练过程中最大迭代轮数。
verbose (int, Optional) – 模型日志模式。
patience (int, Optional) – 训练过程中学习率降低所需的效果不再提升的轮数。
seed (int, Optional) – 全局随机种子。