gpt4 book ai didi

python - 训练后如何扩展进入神经网络的新数据

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:07 25 4
gpt4 key购买 nike

我有一个经过训练的神经网络,效果非常好,但我事先缩放了数据[sklearn preprocessing.scale(X)]。这很好用,但是当我保存模型并想要向其中输入新数据时该怎么办?如何确保缩放比例与训练时相同?

df = pd.read_csv("Trimmed Training Data.csv", delimiter=",")

X = np.array(df.drop(['PredictThis'],1))
y = np.array(df['PredictThis'])

X = preprocessing.scale(X)


# create NN model
model = Sequential()
# 2 inputs, 10 neurons in 1 hidden layer, with tanh activation and dropout
model.add(Dropout(0.2, input_shape=(15,)))
model.add(Dense(100, init='uniform', input_shape=(15,), activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(100, init='uniform', input_shape=(100,), activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(5, init='uniform', input_shape=(100,), activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(1, init='uniform', activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='rmsprop')

# Fit the model
model.fit(X, y, nb_epoch=25, batch_size=15)

最佳答案

通常所做的是保存一个 scale 对象,正如您可能读到的 here .

以下是保存scale对象的方法:

from sklearn.externals import joblib
joblib.dump(scale, 'filename.pkl')

以下是重新加载它的方法:

scale = joblib.load('filename.pkl') 

预测新数据时 - 最好重新加载缩放器 - 相应地缩放数据,然后使用您的模型。您甚至可以创建一个新类,并保留和保存缩放器,如keras.model

关于python - 训练后如何扩展进入神经网络的新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47208048/

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