Python 基于Keras和tensorflow的预测模型
因此,我使用Keras创建了一个预测模型,其准确率约为60%-65% 因此,我们传递的数据是Python 基于Keras和tensorflow的预测模型,python,tensorflow,neural-network,deep-learning,keras,Python,Tensorflow,Neural Network,Deep Learning,Keras,因此,我使用Keras创建了一个预测模型,其准确率约为60%-65% 因此,我们传递的数据是xtst,xtrn,ytst,ytrn到train\u test\u split,test\u split=.3等等,以便对受监控的数据进行训练和测试。现在在所有这些之后,我有了一组新的数据,比如说xnew 如何使用此数据预测此新数据的y值 我应该在哪里输入此xnew数据,以便它为我提供y 模型: model = Sequential() model.add(Dense(10,input_shape=(
xtst
,xtrn
,ytst
,ytrn
到train\u test\u split
,test\u split=.3
等等,以便对受监控的数据进行训练和测试。现在在所有这些之后,我有了一组新的数据,比如说xnew
如何使用此数据预测此新数据的y
值
我应该在哪里输入此xnew
数据,以便它为我提供y
模型:
model = Sequential()
model.add(Dense(10,input_shape=(4,),activation = 'relu')
model.add(Dense(32,activation = 'relu'))
model.add(Dense(101,activation = 'softmax'))
from keras import optimizers
model.compile(Adam(lr=.01),loss='sparse_categorical_crossentropy',metrics=['accuracy'])
model.fit(x_train,y_train,batch_size=20,epochs=40,shuffle=True,verbose=2)
pred = model.predict(x_test,batch_size = 10,verbose = 2)
for i in pred:
print(i)
训练模型后,您可以使用
model.save(您的模型名称.h5)
保存模型。然后您可以使用model=load\u model(您的\u model\u name.h5)
再次加载它。从那里你可以使用model.predict(xnew)
或者model.predict_classes(xnew)
,如果你做了一个分类器的话。我建议您也看看。对于带有softmax
输出层的多类别分类器模型,您可以使用这些向量来训练模型
x => [....] #some vector
y => [0,0,0,1,0,0,0,...]
其中,y
是表示每个类别概率的向量
要预测给定的一些
x
比如y=model.predict(x)
你会得到这样的概率向量[0.1,0.05,0.5,…]
你只需要找到概率最大的索引,你可以使用category=numpy.argmax(y)
基本上你应该使用y=model.predict(x)
如果您提供您的代码,也许我们可以为您提供更具体的解决方案,建议您也看看keras docs@shahaf,这就是我选择的模型我看到模型是分类的,对吗?这意味着你可以从101个不同的类别中进行选择,对吗?你能提供一行x,y输入吗?我训练模型的第一个数据的输入形状是400x700,我给出的新数据是否也有相同的输入形状?如果是这样的话,我们怎样才能确保事情总是这样。我不知道你到底是什么意思。。。但是,如果输入层中的数据形状为400x700,则需要400个节点;如果输入层中的数据形状为300x800,则需要300个节点组成输入层;如果输入层中的数据形状为400x700,则y尺寸对应于输出层