Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

想请教一个问题 #7

Open
loveciel opened this issue Oct 12, 2023 · 12 comments
Open

想请教一个问题 #7

loveciel opened this issue Oct 12, 2023 · 12 comments

Comments

@loveciel
Copy link

我将自己的数据输进去,我希望得到的真实值和预测值是实际的数值而不是归一化后的数值,要怎么做呢
I input my own data into it, and I want to get the real and predicted values as actual values and not normalized values, how do I do that?

@plumprc
Copy link
Owner

plumprc commented Oct 13, 2023

我将自己的数据输进去,我希望得到的真实值和预测值是实际的数值而不是归一化后的数值,要怎么做呢 I input my own data into it, and I want to get the real and predicted values as actual values and not normalized values, how do I do that?

您好,可以参考目录下 ./data_provider/data_loader.py 的预处理部分,简单来说就是把数据集划分以后根据训练集的均值和方差对整体数据集进行归一化,您可以直接用 inverse_transform 返回真实值

@loveciel
Copy link
Author

我将自己的数据输进去,我希望得到的真实值和预测值是实际的数值而不是归一化后的数值,要怎么做呢 I input my own data into it, and I want to get the real and predicted values as actual values and not normalized values, how do I do that?

您好,可以参考目录下 ./data_provider/data_loader.py 的预处理部分,简单来说就是把数据集划分以后根据训练集的均值和方差对整体数据集进行归一化,您可以直接用 inverse_transform 返回真实值

你是说我直接class Dataset_Pred(Dataset):
def init(self, root_path, flag='pred', size=None,
features='M', data_path='AET.csv',
target='T', scale=True, inverse=True, timeenc=0, freq='t', cols=None):
这里将inverse的False改成True就可以么

@plumprc
Copy link
Owner

plumprc commented Oct 18, 2023

我将自己的数据输进去,我希望得到的真实值和预测值是实际的数值而不是归一化后的数值,要怎么做呢 I input my own data into it, and I want to get the real and predicted values as actual values and not normalized values, how do I do that?

您好,可以参考目录下 ./data_provider/data_loader.py 的预处理部分,简单来说就是把数据集划分以后根据训练集的均值和方差对整体数据集进行归一化,您可以直接用 inverse_transform 返回真实值

你是说我直接class Dataset_Pred(Dataset): def init(self, root_path, flag='pred', size=None, features='M', data_path='AET.csv', target='T', scale=True, inverse=True, timeenc=0, freq='t', cols=None): 这里将inverse的False改成True就可以么

是的

@SmallCatShark
Copy link

为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下

@loveciel
Copy link
Author

为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下
我也没有解决这个问题

@SmallCatShark
Copy link

SmallCatShark commented Nov 14, 2023 via email

@loveciel
Copy link
Author

难顶

------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年11月14日(星期二) 下午5:31 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [plumprc/MTS-Mixers] 想请教一个问题 (Issue #7) 为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下 我也没有解决这个问题 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

同学你也是搞时序方向的么

@SmallCatShark
Copy link

SmallCatShark commented Nov 14, 2023 via email

@loveciel
Copy link
Author

哈哈哈,我是电气类的,也顶不住了,可以互相交流一下

是,商品类的,顶不住

------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年11月14日(星期二) 下午5:43 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [plumprc/MTS-Mixers] 想请教一个问题 (Issue #7) 难顶 … ------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年11月14日(星期二) 下午5:31 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [plumprc/MTS-Mixers] 想请教一个问题 (Issue #7) 为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下 我也没有解决这个问题 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 同学你也是搞时序方向的么 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.>

@plumprc
Copy link
Owner

plumprc commented Nov 14, 2023

为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下

Dataset_Pred 这个类是专门设计出来让你在留出集上评估用的,你看一下代码就知道,inverse 要和 scale 配套使用,其实不用这么麻烦,因为你跑自己的数据集应该是用 Dataset_Custom 加载数据集的,你可以这样把归一化的结果还原,举个例子:

data_set = Dataset_Custom(args)
pred = model(inputs)
pred_origin = data_set.inverse_transform(pred)

或者更简单,直接用划分数据集后训练集的均值和方差还原

train_set = dataset[:len(dataset) * 0.7] # 在 Dataset_Custom 里是 7:2:1
mean, std = train_set.mean(), train_set.std()
pred = model(inputs)
pred_origin = (pred * std) + mean

@SmallCatShark
Copy link

为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下

Dataset_Pred 这个类是专门设计出来让你在留出集上评估用的,你看一下代码就知道,inverse 要和 scale 配套使用,其实不用这么麻烦,因为你跑自己的数据集应该是用 Dataset_Custom 加载数据集的,你可以这样把归一化的结果还原,举个例子:

data_set = Dataset_Custom(args)
pred = model(inputs)
pred_origin = data_set.inverse_transform(pred)

或者更简单,直接用划分数据集后训练集的均值和方差还原

train_set = dataset[:len(dataset) * 0.7] # 在 Dataset_Custom 里是 7:2:1
mean, std = train_set.mean(), train_set.std()
pred = model(inputs)
pred_origin = (pred * std) + mean

好的,我再看一下,谢谢

@loveciel
Copy link
Author

为什么我将Dataset_Pred()中的inverse改为了True,real_prediction.npy文件依然是归一化的结果?请教一下

Dataset_Pred 这个类是专门设计出来让你在留出集上评估用的,你看一下代码就知道,inverse 要和 scale 配套使用,其实不用这么麻烦,因为你跑自己的数据集应该是用 Dataset_Custom 加载数据集的,你可以这样把归一化的结果还原,举个例子:

data_set = Dataset_Custom(args)
pred = model(inputs)
pred_origin = data_set.inverse_transform(pred)

或者更简单,直接用划分数据集后训练集的均值和方差还原

train_set = dataset[:len(dataset) * 0.7] # 在 Dataset_Custom 里是 7:2:1
mean, std = train_set.mean(), train_set.std()
pred = model(inputs)
pred_origin = (pred * std) + mean

好的,我再看一下,谢谢

请问你弄好了吗

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants