训练中使用归一化后的预测

2024-04-27 23:12:44 发布

您现在位置:Python中文网/ 问答频道 /正文

在我在训练中使用了任何类型的标准化之后,这会对我未来的预测产生怎样的影响

假设某只股票的收盘价在0到1之间标准化,我对模型进行了相应的训练,达到了令人满意的精度。现在,当我使用新数据进行预测时,是否也需要对新数据进行规范化?如果是这样,我适合什么?现在我没有列车或测试数据集,新数据可能高于拟合数据(使其高于1)或低于最低数据(使其低于0)

我知道标准化在训练期间很有帮助,但当我想要预测真实数据时,训练后又如何呢


Tags: 数据类型精度规范化股票测试数据列车对模型
1条回答
网友
1楼 · 发布于 2024-04-27 23:12:44

我想你指的是重新缩放数据。为此,您可以将规范化层添加到您的模型中,这样它将自动规范化输入数据,所以您不需要将其作为单独的步骤来完成。例如,使用TF,您可以执行以下操作:

import numpy as np
import tensorflow as tf
from tensorflow.keras import Model
from tensofrlow.keras.layers import Dense, Input
from tensofrlow.keras.models import Sequential
from tensorflow.keras.layers.experimental.preprocessing import Rescaling

my_shape = tuple()
my_data: np.ndarray = #some image array

def model(my_shape):
    input_data = Input(shape=my_shape)
    x = Rescaling(scale=1./255)(input_data)
    x = Dense(256, activation='relu')(x)
    x = Dense(1, activation='softmax')(x)
    return Model(input_data, x)

在这里,我们使用比例1./255来处理图像数据。现在,如果您训练这个模型(好吧,不是这个,因为它不会做太多),然后想要预测新图像,您只需将图像加载为数组,模型将负责为您重新缩放

如果您还希望进行规范化以获得特定的平均值和特定的方差,则可以将Normalization层添加到预处理步骤

相关问题 更多 >