我目前正在研究Tflearn.
我对Tensorflow tflearn模型有一个问题。我的tflearn模型工作正常。但我对这个模型有一些疑问。我已通过sentence data
进行培训。当我在一台计算机上通过sentence data
时,我有一个模型。之后我在另一台计算机上通过了same sentence data
,然后得到了第二个模型。我测试了这两个型号。所以我已经通过了input sentence data
一个模型。然后通过模型二的same input sentence data
然后我观察到input data were same
和training data were same
,但这两个模型的输出相似度为70-80%。 20-30%因随机性而异。如何在模型中删除此随机性?我们正在使用DNN。
train_x = list(self.training[:, 0])
train_y = list(self.training[:, 1])
tf.reset_default_graph()
net = tflearn.input_data(shape=[None, len(train_x[0])])
net = tflearn.fully_connected(net, 8)
net = tflearn.fully_connected(net, 8)
net = tflearn.fully_connected(net, len(train_y[0]), activation='softmax')
net = tflearn.regression(net,optimizer='sgd',shuffle_batches=False,
learning_rate=0.1,loss='categorical_crossentropy')
model = tflearn.DNN(net, tensorboard_dir='tflearn_logs')
model.fit(train_x, train_y, n_epoch=500, batch_size=8, show_metric=True)
答案 0 :(得分:-2)
根据我的亲身经历,在将训练数据转换为数组之前,您已经对其进行了随机混洗。尝试在代码中搜索random.shuffle(self.training)
,然后注释该行。