Почему моя модель CNN обучается меньше времени на локальном процессоре, чем размещенные варианты? - PullRequest
0 голосов
/ 07 июля 2019

Я совершенно новичок в области глубокого обучения, и я следовал нескольким учебникам, в которых в основном использовались размещенные ноутбуки Jupyter (Azure и Colab Laboratory).Я нахожусь на этапе, когда я хочу начать экспериментировать с моими собственными нейронными сетями;однако, я немного смущен тем, где я должен тренировать свои модели keras.Чтобы решить, я запустил следующую модель в нескольких разных местах, и в итоге мой процессор i5 6500 занял второе место, что показалось мне невероятно запутанным.Еще более запутанным является то, что запуск Google Cloud Compute с 8 виртуальными процессорами был медленнее, чем запуск на моем процессоре.Я еще не попробовал свой GTX1060 GPU;однако, кажется разумным предположить, что он будет работать даже лучше, чем мой процессор. Почему я получаю эти результаты и где люди обычно тренируют свои модели ML?Мои результаты приведены ниже.

from keras.datasets import mnist
from keras.preprocessing.image import load_img, array_to_img
from keras.utils.np_utils import to_categorical
from keras.models import Sequential
from keras.layers import Dense

image_height, image_width = 28, 28
(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train = x_train.reshape(60000, image_height * image_width)
x_test = x_test.reshape(10000, image_height * image_width)

x_train = x_train.astype('float32')
x_test = x_test.astype('float32')

x_train /= 255.0
x_test /= 255.0

y_train = to_categorical(y_train, 10)
y_test = to_categorical(y_test, 10)

model = Sequential()
model.add(Dense(512, activation='relu', input_shape=(784,)))
model.add(Dense(512, activation='relu'))
model.add(Dense(10, activation='softmax'))

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

history = model.fit(x_train, y_train, epochs=2, validation_data=(x_test, y_test))

Я попробовал приведенный выше фрагмент в следующих местах.Ниже приведены времена для эпох.

  • Мой i5 6500 CPU: 20 с
  • Колабораторный ноутбук с процессором: 27 с
  • Колабораторный ноутбук с графическим процессором: 8 с (ожидается)
  • Колабораторный ноутбук с ТПУ: 26 с
  • Лазерный ноутбук с процессором: 60 с
  • Google Cloud Compute Jupyterlab: 4 ВЦП: 36 с

enter image description here enter image description here

  • Google Cloud Compute Jupyterlab: 8 ВЦП: 40 с

enter image description here enter image description here

К сожалению, для запуска Google Cloud Compute с графическим процессором требуется обновить бесплатную учетную запись, поэтому я не смог попробовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...