fit_generator()在Spyder中不起作用

时间:2019-01-17 12:20:00

标签: python keras neural-network kernel spyder

我试图在Spyder上使用fit_generator()来训练神经网络(我想训练该神经网络来整理出数字图像),但我始终遇到相同的问题。当我调用该函数时,我得到的第一个结果就是这个:

enter image description here

然后:

enter image description here

基本上,我不知道会发生什么。我将附加代码段。

X_train, X_val, y_train, y_val = train_test_split(X_train, y_train, test_size=0.10, random_state=42)

batches     = gen.flow(X_train, y_train, batch_size=64) # batches.n = 37800
val_batches = gen.flow(X_val, y_val, batch_size=64) # val_batches.n = 4200


history=model.fit_generator(generator=batches, steps_per_epoch=batches.n, 
                              epochs=3,  validation_data=val_batches,
                              validation_steps=val_batches.n)

有人可以帮我吗?

先谢谢了。

1 个答案:

答案 0 :(得分:2)

我遇到了完全相同的问题,花了几天时间在网上搜索解决方案/重新安装了几次/差点将笔记本电脑扔掉/放弃并再次收集希望/最终找到了解决方案。特别感谢GitHub post

这是我所做工作的分步解决方案。我将MacBook和Anaconda用于python / Spyder:

  • 安装了Anaconda(c1.9.6),并通过它在(基本)环境中安装了Python [编辑:这是我安装的Anaconda版本2018.12。导航器Anaconda Navigator > About Anaconda Navigator声明其Anaconda Navigator 1.9.6]
  • 通过Anaconda Navigator创建了一个新的(学习)环境
  • 再次使用导航器,我在新的(deeplearning)环境中安装了Keras,Tensorflow,Theano,Numpy,Pandas,Matplotlib,Scikit-learn,Spyder-kernels(并自动安装了各种相关软件包)
  • 使用终端,在我的(基本)环境中,我将Python从3.7降级到3.6.8(conda install python=3.6),因此它可以与Keras一起使用 [编辑:此步骤可能是多余的,不需要执行]
  • 使用终端,进入我的(学习)环境并安装了nomkl(conda install nomkl)(它要求将某些我认为可以的软件包降级)
  • 仍然在终端的(deeplearning)环境中,我键入python -c "import sys; print(sys.executable)"来获取路径+复制路径名
  • 在我的(基本)环境中打开Spyder并导航到Preferences > Python Interpreter > Use the following interpreter,在其中输入我的路径
  • 再次在(基本)环境中重新启动Spyder并开始编码。 [编辑:您可能不需要重新启动Spyder。而是打开一个新的控制台标签]。

一切都像美女一样。我终于可以继续学习这个令人兴奋的领域了!

仅供参考...您得到的第一个错误图像并不是真正的错误,它实际上是一个警告,表示速度不会尽可能快。第二张图片是令人烦恼的错误,它花了我几天的时间来研究解决方案!