TypeError:无法提取-Google Colab

时间:2019-04-16 17:05:11

标签: python google-colaboratory

我正在训练我的第一个神经网络,并想将层中节点上每次迭代的准确性写入文件。当只有一次迭代时,文件下载就没有问题,但是当我增加迭代次数时,我正在写入的文本文件似乎给我带来了问题。谁能给我解释一下,为什么会出现这个错误,谢谢?

我已经解决了这个问题,方法是将一个精度值与节点数量一起手动写入文件,然后下载每个文件进行迭代。如果我尝试将所有迭代的准确性都写入单个文件,则会收到以下错误:

 MessageError      Traceback (most recent call last)
 <ipython-input-31-4e05d4e1f010> in <module>()
       54     print('Test accuracy:', test_acc)
      55   f.close()
 ---> 56 files.download('example.txt')

 MessageError: TypeError: Failed to fetch

代码如下:

  #Creating a file to store the accuracy values to
  with open('example.txt', 'w') as f:

    for n in range(1,3):
      model = keras.Sequential([
          keras.layers.Flatten(input_shape=(28, 28)),
          keras.layers.Dense(64*n, activation=tf.nn.relu),
          keras.layers.Dense(10, activation=tf.nn.softmax)
      ])
      model.compile(optimizer='adam',
                    loss='sparse_categorical_crossentropy',
                    metrics=['accuracy'])

      model.fit(train_images, train_labels, epochs=5)
      test_loss, test_acc = model.evaluate(test_images, test_labels)

      f.write(str(test_acc))
      f.write(",")
      f.write(str(n))
      f.write("\n")    
      print('Test accuracy:', test_acc)
    f.close()
files.download('accuracy.txt')

我希望能够运行一次神经网络,将其设置为指定层的不同节点,最后下载一个文件,其中包含所有精度数字。

1 个答案:

答案 0 :(得分:0)

可以这么说,我找到了解决方案。 Google Colab中的每个会话持续12个小时,打开的Google Colab的每个实例都开始倒计时12个小时。

解决方案:如果我只是关闭当前正在使用的标签,然后等待大约10分钟,然后再次打开Goog​​le Colab,然后从头开始再次运行神经网络,则它可以100%运行。因此,如果遇到上述错误,请关闭选项卡并重新打开并运行:)

这个问题可能还有另一个原因,但是现在对我有用。