Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么我的训练和测试的精度图如此奇怪?_Python_Tensorflow_Keras_Neural Network - Fatal编程技术网

Python 为什么我的训练和测试的精度图如此奇怪?

Python 为什么我的训练和测试的精度图如此奇怪?,python,tensorflow,keras,neural-network,Python,Tensorflow,Keras,Neural Network,我对神经网络比较陌生。我正试图看到损失和准确性之间的区别。但是,对于精度图,列车数据和试验数据不相互接触。这是正确的吗 在这方面我应该做些什么改变?在不知道数据的情况下很难说发生了什么。简而言之,您的模型似乎在学习,但这种学习并不能提高准确性。这是完全可能的。培训/测试精度不一定相互影响 你能做什么:调整你的模型,确保它以正确的方式学习。尝试模型的容量,更改批量大小,可能添加正则化。还要看看如果你为更多的时代而训练会发生什么 注意:如果数据量很小,神经网络的性能就不太好。在这种情况下,您需要求

我对神经网络比较陌生。我正试图看到损失和准确性之间的区别。但是,对于精度图,列车数据和试验数据不相互接触。这是正确的吗


在这方面我应该做些什么改变?

在不知道数据的情况下很难说发生了什么。简而言之,您的模型似乎在学习,但这种学习并不能提高准确性。这是完全可能的。培训/测试精度不一定相互影响

你能做什么:调整你的模型,确保它以正确的方式学习。尝试模型的容量,更改批量大小,可能添加正则化。还要看看如果你为更多的时代而训练会发生什么


注意:如果数据量很小,神经网络的性能就不太好。在这种情况下,您需要求助于其他方法,可能是boosting。

这里是一些一般信息

是的,你的测试百分比通常会比你的训练百分比差。当您第一次初始化网络时,您的测试和培训百分比都会非常糟糕,随着时间的推移,两者都会变得更好。经过一些时期后,您的模型将开始“过度训练”,这意味着它将根据您的训练数据的个别小细节来决定,并开始对您的测试数据做得更糟

在您给出的图中,历元与损失函数图看起来是正确的,但模型精度图看起来并不像您所认为的那样

我发现我花了大部分的神经网络时间只是试图掌握正在发生的事情。不仅仅是你


祝你今天愉快

这里的任务是什么?数据/体系结构?它是从一个.txt文件中训练转向角,听起来像回归,其中精度不是有效的指标。因此不可能获得精度?这毫无意义,因为精度是一个分类指标,不适用于回归连续值
 #model compile
 model.compile(optimizer='adam', loss="mse", metrics=['acc'])
 filepath = "Autopilot.h5"
 checkpoint = ModelCheckpoint(filepath, verbose=1, save_best_only=True)
 callbacks_list = [checkpoint]


 def main():
     features, labels = loadFromPickle()
     features, labels = shuffle(features, labels)
     train_x, test_x, train_y, test_y = train_test_split(features, labels, random_state=0,
                                                    test_size=0.3)
     train_x = train_x.reshape(train_x.shape[0], 100, 100, 1)
     test_x = test_x.reshape(test_x.shape[0], 100, 100, 1)
     model, callbacks_list = keras_model(100, 100)
     history = model.fit(train_x, train_y, validation_data=(test_x, test_y), epochs=30, 
     batch_size=32, callbacks=callbacks_list)