Machine learning 为什么神经网络的精确度保持不变?

Machine learning 为什么神经网络的精确度保持不变?,machine-learning,tensorflow,neural-network,deep-learning,Machine Learning,Tensorflow,Neural Network,Deep Learning,我已经将纪元从10个增加到15个,但这对准确性没有影响。两次的准确率均为49.3%,损失为1.0% 你知道为什么会这样吗?我不熟悉TensorFlow和深度学习 以下是培训方法: def训练神经网络(x): 预测=神经网络模型(x) 成本=tf.reduce\u平均值(tf.nn.softmax\u交叉\u熵\u与logits(logits=prediction,labels=y)) 优化器=tf.train.AdamOptimizer(学习率=0.001)。最小化(成本) 使用tf.Sessi

我已经将纪元从10个增加到15个,但这对准确性没有影响。两次的准确率均为49.3%,损失为1.0%

你知道为什么会这样吗?我不熟悉TensorFlow和深度学习

以下是培训方法:

def训练神经网络(x):
预测=神经网络模型(x)
成本=tf.reduce\u平均值(tf.nn.softmax\u交叉\u熵\u与logits(logits=prediction,labels=y))
优化器=tf.train.AdamOptimizer(学习率=0.001)。最小化(成本)
使用tf.Session()作为sess:
sess.run(tf.global\u variables\u initializer())
尝试:
epoch=int(打开(tf_log,'r').read().split('\n')[-2])+1
打印('起始:',历元)
除:
历元=1
#这将使用日志文件跟踪各个时代
当历元=批量大小时:
_,c=sess.run([optimizer,cost],feed_dict={x:np.array(batch_x),
y:np.array(batch_y)})
历元损失+=c
批次_x=[]
批次y=[]
批次运行+=1
打印('批次运行:',批次运行,'/',总批次,'.'历元:',历元,'.'批次损失:',c,)
saver.save(sess,“./model.ckpt”)
打印('Epoch',Epoch,'completed out',n_Epoch,'loss:',Epoch_loss)
打开(tf_log,'a')作为f:
f、 写入(str(历元)+'\n')
历元+=1
训练神经网络(x)

除了“时代”之外,还有很多参数可以提高神经网络的效率

作为第一次尝试,您可能希望尝试以下方法:

  • 不同批量
  • 神经网络的不同架构(即,增加#层)
  • 不同的特征转换(即,可能尝试词干分析而不是柠檬化)
你可以做的还有很多,我鼓励你看看这个


祝你好运!:)

您将什么作为培训数据传递给您的网络,能否向我们展示您的输入和标签的示例?另外,您能给我们展示一下每个培训批次包含哪些内容的简化图片吗?你的字典有多大?您在培训多少数据?最好将Keras与tensorflow后端一起使用,而不是使用纯tensorflow