NeuralForecast 推理 - 从csv文件里读取数据进行推理

2024-05-31 19:52

本文主要是介绍NeuralForecast 推理 - 从csv文件里读取数据进行推理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

NeuralForecast 推理 - 从csv文件里读取数据进行推理

flyfish

from ray import tunefrom neuralforecast.core import NeuralForecast
from neuralforecast.auto import AutoMLP
from neuralforecast.models import NBEATS, NHITS
import torch
import torch.nn as nn
import os
import pickle
import warnings
from copy import deepcopy
from itertools import chain
from typing import Any, Dict, List, Optional, Unionimport fsspec
import numpy as np
import pandas as pdfrom neuralforecast.tsdataset import TimeSeriesDatasetfrom neuralforecast.models import (GRU,LSTM,RNN,TCN,DeepAR,DilatedRNN,MLP,NHITS,NBEATS,NBEATSx,DLinear,NLinear,TFT,VanillaTransformer,Informer,Autoformer,FEDformer,StemGNN,PatchTST,TimesNet,TimeLLM,TSMixer,
)
MODEL_FILENAME_DICT = {"autoformer": Autoformer,"autoautoformer": Autoformer,"deepar": DeepAR,"autodeepar": DeepAR,"dlinear": DLinear,"autodlinear": DLinear,"nlinear": NLinear,"autonlinear": NLinear,"dilatedrnn": DilatedRNN,"autodilatedrnn": DilatedRNN,"fedformer": FEDformer,"autofedformer": FEDformer,"gru": GRU,"autogru": GRU,"informer": Informer,"autoinformer": Informer,"lstm": LSTM,"autolstm": LSTM,"mlp": MLP,"automlp": MLP,"nbeats": NBEATS,"autonbeats": NBEATS,"nbeatsx": NBEATSx,"autonbeatsx": NBEATSx,"nhits": NHITS,"autonhits": NHITS,"patchtst": PatchTST,"autopatchtst": PatchTST,"rnn": RNN,"autornn": RNN,"stemgnn": StemGNN,"autostemgnn": StemGNN,"tcn": TCN,"autotcn": TCN,"tft": TFT,"autotft": TFT,"timesnet": TimesNet,"autotimesnet": TimesNet,"vanillatransformer": VanillaTransformer,"autovanillatransformer": VanillaTransformer,"timellm": TimeLLM,"tsmixer": TSMixer,"autotsmixer": TSMixer,
}
#model_path1 = "checkpoints\\test_run\\automlp_0.ckpt"
model_path = "checkpoints\\test_run"dataset_path = "checkpoints\\test_run\\dataset.pkl"def load(path, verbose=False, **kwargs):# Standarize path without '/'if path[-1] == "/":path = path[:-1]fs, _, paths = fsspec.get_fs_token_paths(path)files = [f.split("/")[-1] for f in fs.ls(path) if fs.isfile(f)]# Load modelsmodels_ckpt = [f for f in files if f.endswith(".ckpt")]if len(models_ckpt) == 0:raise Exception("No model found in directory.")if verbose:print(10 * "-" + " Loading models " + 10 * "-")models = []try:with fsspec.open(f"{path}/alias_to_model.pkl", "rb") as f:alias_to_model = pickle.load(f)except FileNotFoundError:alias_to_model = {}for model in models_ckpt:model_name = model.split("_")[0]model_class_name = alias_to_model.get(model_name, model_name)models.append(MODEL_FILENAME_DICT[model_class_name].load_from_checkpoint(f"{path}/{model}", **kwargs))if verbose:print(f"Model {model_name} loaded.")return modelsmodels = load(model_path,verbose=True)
print(models[0])
model = models[0]
model.eval()
print(model)df = pd.read_csv('./test.csv')
df['unique_id'] =1
df=df.rename(columns= {'OT':'y'})
df['ds'] = pd.to_datetime(df['ds'] )tsd=TimeSeriesDataset.from_df(df)
print("tsd:",tsd)print(tsd[0])old_test_size = model.get_test_size()
print("old_test_size:",old_test_size)
model_fcsts = model.predict(tsd[0])
print(model_fcsts)

这篇关于NeuralForecast 推理 - 从csv文件里读取数据进行推理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1018889

相关文章

如何使用Lombok进行spring 注入

《如何使用Lombok进行spring注入》本文介绍如何用Lombok简化Spring注入,推荐优先使用setter注入,通过注解自动生成getter/setter及构造器,减少冗余代码,提升开发效... Lombok为了开发环境简化代码,好处不用多说。spring 注入方式为2种,构造器注入和setter

MySQL进行数据库审计的详细步骤和示例代码

《MySQL进行数据库审计的详细步骤和示例代码》数据库审计通过触发器、内置功能及第三方工具记录和监控数据库活动,确保安全、完整与合规,Java代码实现自动化日志记录,整合分析系统提升监控效率,本文给大... 目录一、数据库审计的基本概念二、使用触发器进行数据库审计1. 创建审计表2. 创建触发器三、Java

MySQL深分页进行性能优化的常见方法

《MySQL深分页进行性能优化的常见方法》在Web应用中,分页查询是数据库操作中的常见需求,然而,在面对大型数据集时,深分页(deeppagination)却成为了性能优化的一个挑战,在本文中,我们将... 目录引言:深分页,真的只是“翻页慢”那么简单吗?一、背景介绍二、深分页的性能问题三、业务场景分析四、

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

使用Python进行GRPC和Dubbo协议的高级测试

《使用Python进行GRPC和Dubbo协议的高级测试》GRPC(GoogleRemoteProcedureCall)是一种高性能、开源的远程过程调用(RPC)框架,Dubbo是一种高性能的分布式服... 目录01 GRPC测试安装gRPC编写.proto文件实现服务02 Dubbo测试1. 安装Dubb

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.