gpt4 book ai didi

machine-learning - 有没有像「scaler.inverse_transform()」这样的方法来获取部分缩放器参数来对答案进行反规范化?

转载 作者:行者123 更新时间:2023-11-30 09:59:47 25 4
gpt4 key购买 nike

我正在尝试标准化我的数据(形状为(23687,7)),然后将原始数据集的平均值和标准差保存到“normalized_pa​​ram.pkl”>

将标准化数据拟合到我的 LSTM 模型后,我将得到一个答案数组(形状为 (23687, 1))

现在我要做的是:

test_sc_path = os.path.join('normalized_standard', 'normalized_param.pkl')
test_scaler = load(test_sc_path)
test_denorm_value = test_scaler.inverse_transform(test_normalized_data)

ValueError: non-broadcastable output operand with shape (23687,1) doesn't match the broadcast shape (23687,7)

<小时/>

我认为这是因为 test_scaler 对象内部有 7 个暗淡参数,所以如果我只想对 1 个暗淡数据进行去标准化,我应该使用test_scaler.mean_[-1]「test_scaler.scale_[-1]来获取我想要计算的最后一个参数。

但是,我认为这很复杂,有没有像 scaler.inverse_transform() 一样的 sklearn 方法我可以轻松地使用来解决这个问题?

谢谢

最佳答案

是的,有一个方法。请参阅文档 here .

from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()

scaler.fit(data) # Basically fits the data, store means & standard deviations.
scaler.transform(data) # Standardize (Normalize) the data with the scaler parameters
scaler.fit_transform(data) # Fits & Transform
scaler.inverse_transform(data) # Apply inverse transformation for the input data.

关于machine-learning - 有没有像「scaler.inverse_transform()」这样的方法来获取部分缩放器参数来对答案进行反规范化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59485293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com