【问题标题】:my tensorflow model gets stuck before the first epoch我的张量流模型在第一个纪元之前卡住了
【发布时间】:2020-06-22 12:52:00
【问题描述】:

操作系统:Windows 10 TensorFlow:2.0.0 Keras:2.2.4

我正在尝试为 MNIST 数据集训练 CNN。我使用 python-mnist 模块加载数据集。 当我尝试运行代码时,它会在纪元开始之前卡住。 我的代码:

from mnist import MNIST
import tensorflow as tf
from tensorflow import keras
mndata=MNIST('data')
train_images,train_labels=mndata.load_training()
test_images,test_labels=mndata.load_testing()


model= keras.Sequential([
    keras.layers.Input(shape=784),
    keras.layers.Dense(256,activation='relu'),
    keras.layers.Dense(64,activation='relu'),
    keras.layers.Dense(10,activation='softmax')
    ])

model.compile(optimizer='adam',loss='sparse_categorical_crossentropy', metrics=['accuracy'])

model.fit(train_images,train_labels, validation_split = 0.2,epochs=50)





test_loss, test_accuracy= model.evaluate(test_images, test_labels)

print('Accuracy=', test_accuracy)


model.save('NetworkModel.h5')

我的输出:

2020-03-10 08:10:18.061068: I tensorflow/core/platform/cpu_feature_guard.cc:145] This TensorFlow binary is optimized with Intel(R) MKL-DNN to use the following CPU instructions in performance critical operations:  AVX AVX2
To enable them in non-MKL-DNN operations, rebuild TensorFlow with the appropriate compiler flags.
2020-03-10 08:10:18.069858: I tensorflow/core/common_runtime/process_util.cc:115] Creating new thread pool with default inter op setting: 4. Tune using inter_op_parallelism_threads for best performance. 

我是不是忘记了什么?

【问题讨论】:

    标签: python tensorflow keras deep-learning mnist


    【解决方案1】:

    请参考工作代码为 MNIST 数据集训练 CNN

    (操作系统:windows 10,TensorFlow:2.0.0 和 Keras:2.2.4)

    try:
      # %tensorflow_version only exists in Colab.
      %tensorflow_version 2.x
    except Exception:
      pass
    
    import tensorflow as tf 
    print("Tensorflow Version:", tf.__version__)
    from __future__ import absolute_import, division, print_function, unicode_literals
    from tensorflow.keras import datasets, layers, models
    import matplotlib.pyplot as plt
    import numpy as np
    # TensorFlow and tf.keras
    import tensorflow as tf
    from tensorflow import keras
    #### Import the Fashion MNIST dataset
    fashion_mnist = keras.datasets.fashion_mnist
    (train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data()
    class_names = ['T-shirt/top', 'Trouser', 'Pullover', 'Dress', 'Coat',
                   'Sandal', 'Shirt', 'Sneaker', 'Bag', 'Ankle boot']
    
    train_images1 = train_images[:,:,:,np.newaxis]
    test_images1 = test_images[:,:,:,np.newaxis]
    ##Scale these values to a range of 0 to 1 before feeding them to the neural network model
    ### Normalize pixel values to be between 0 and 1
    train_images = train_images / 255.0
    test_images = test_images / 255.0
    ##Create the convolutional base
    model = models.Sequential()
    model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28,28,1)))
    model.add(layers.MaxPooling2D((2, 2)))
    model.add(layers.Conv2D(64, (3, 3), activation='relu'))
    model.add(layers.MaxPooling2D((2, 2)))
    model.add(layers.Conv2D(64, (3, 3), activation='relu'))
    model.summary()
    model.add(layers.Flatten())
    model.add(layers.Dense(64, activation='relu'))
    model.add(layers.Dense(10))
    model.summary()
    model.compile(optimizer='adam',
                  loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
                  metrics=['accuracy'])
    ###Train the model
    ##Feed the model
    history = model.fit(train_images1, train_labels, epochs=10, 
                        validation_data=(test_images1, test_labels))
    ###Evaluate the model
    plt.plot(history.history['accuracy'], label='train_accuracy')
    plt.plot(history.history['val_accuracy'], label = 'val_accuracy')
    plt.xlabel('Epoch')
    plt.ylabel('Accuracy')
    plt.ylim([0.5, 1])
    plt.legend(loc='lower right')
    
    test_loss, test_acc = model.evaluate(test_images1,  test_labels, verbose=2)
    

    【讨论】:

    • @mohammad farhady-如果我已经回答了您的问题,请您接受并投票赞成答案。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2016-12-06
    • 2020-08-03
    • 1970-01-01
    相关资源
    最近更新 更多