首页 > 解决方案 > 为什么 tflearn 预测模型的准确率不同。当在不同系统上训练相同的数据(训练数据)?

问题描述

更新

我目前正在研究Tflearn.关于 Tensorflow tflearn 模型的一个问题。我的 tflearn 模型运行良好。但我对这个模型有一些疑问。我已通过sentence data培训目的。当我通过sentence data一台计算机时,我得到了一个模型。之后,我通过same sentence data了另一台计算机,然后得到了第二个模型。我已经测试过这两个模型。所以我通过了input sentence datafor one model。然后通过了same input sentence data模型二然后我观察到了input data were sametraining 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)

标签: tensorflowmachine-learningneural-networkdeep-learningtflearn

解决方案


根据我的个人经验,在将训练数据转换为数组之前,您已经随机打乱了训练数据。尝试在您的代码中搜索 arandom.shuffle(self.training)并注释该行。


推荐阅读