Python 基于Keras和tensorflow的预测模型

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=(

因此,我使用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=(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尺寸对应于输出层