предисловие
При глубоком обучении нам обычно нужно повторно оптимизировать и обучать модель, когда мы ее обучаем.Обучение только с ЦП занимает много времени, но мы можем использовать ГП для ускорения модели обучения, что может значительно снизить стоимость нашего обучения. модель время. На следующем рисунке показано сравнение времени, затрачиваемого с использованием ускорения графического процессора и без ускорения графического процессора во время обучающей модели:
Из рисунка видно, что использование GPU-ускорения происходит намного быстрее, чем обучение модели без GPU-ускорения. Далее я научу вас, как использовать ускорение графического процессора в процессе модели обучения глубокому обучению.
Примечание. Следующие шаги и команды установки поддерживают установку только в среде Windows, и я опубликую руководства по установке других операционных систем позже.
Установите графический драйвер NVIDIA
Сначала найдите Диспетчер устройств в строке поиска, откройте его и найдите версию видеокарты нашего компьютера в адаптере дисплея.
Затем мы можем найти версию драйвера, соответствующую нашей компьютерной видеокарте, на официальном сайте NVIDIA и установить ее.
Ссылка для скачивания графического драйвера NVIDIA
Найдите соответствующую версию вашей видеокарты и загрузите драйвер видеокарты.
После поиска найдите соответствующую версию для загрузки
Установить после скачивания
Здесь мы выбираем расположение по умолчанию для установки и нажимаем «ОК». Другие последующие шаги относительно просты, просто нажмите «Далее», чтобы установить. Если у вас возникнут какие-либо проблемы, вы можете перейти по следующей ссылке, чтобы просмотреть конкретные шаги установки: [Windows ] Установите
драйвер NVIDIA
Наконец, мы открываем командную строку и вводим команду nvidia-smi для просмотра информации о драйвере видеокарты компьютера.
nvidia-smi
См. следующую информацию, чтобы убедиться, что драйвер видеокарты NVIDIA был успешно установлен.
Установите CUDA и cuDNN
Введение
И CUDA, и cuDNN — это инструменты разработки для глубокого обучения, запущенные NVIDIA.
CUDA – это сокращение от Compute Unified Device Architecture. Это универсальная платформа параллельных вычислений и модель программирования, разработанная NVIDIA, которая позволяет разработчикам использовать такие языки программирования, как C++, Fortran и Python, для запуска кода на графических процессорах NVIDIA. CUDA Toolkit — это набор инструментов для разработки, основанный на платформе CUDA, включающий библиотеки с ускорением на GPU, инструменты отладки и оптимизации, компиляторы C/C++ и библиотеки времени выполнения.
Полное название cuDNN — библиотека глубокой нейронной сети CUDA.Это высокопроизводительная библиотека глубокого обучения с ускорением на графическом процессоре, которая поддерживает различные модели нейронных сетей, включая сверточные нейронные сети и рекуррентные нейронные сети, и может быть совместима с популярными платформами глубокого обучения. такие как TensorFlow, PyTorch и Caffe2 и т. д. для интеграции. cuDNN обеспечивает высокооптимизированные реализации, включая стандартные операции, такие как свертка, объединение в пул, нормализация и активация.С помощью cuDNN можно ускорить скорость обработки задач глубокого обучения.
Проверить совместимость версий
Совместимость версий очень важна для ускорения GPU, потому что я много раз устанавливал и удалял, чтобы решить проблему совместимости версий.
Наконец, я нашел соответствующие версии GPU, CUDA, cuDNN и Python в официальных документах TensorFlow и NVIDIA.Вы можете перейти по ссылке ниже, чтобы выбрать версию:
Официальная документация TensorFlowОфициальная
документация NVIDIA
Список моделей графических процессоров, поддерживаемых каждой версией CUDA, можно найти в официальной документации NVIDIA. В левом меню страницы выберите нужную версию CUDA, а затем нажмите ссылку «Поддерживаемые операционные системы», чтобы просмотреть операционные системы, поддерживаемые версией. Щелкните ссылку «Поддерживаемые графические процессоры CUDA», чтобы просмотреть список моделей графических процессоров, поддерживаемых этой версией.
Вы также можете выбрать версии CUDA, cuDNN, Python и tensorflow-gpu для установки в соответствии с этой таблицей.
Соответствующая информация каждой версии блогера: NVIDIA GeForce GTX 1080, NVIDIA GeForce GTX 1650, Python3.9.0, CUDA 11.2.0, cuDNN 8.1.0, tensorflow-gpu 2.6.0
Установить CUDA
Ссылка для скачивания CUDA 11.2: CUDA 11.2.0
Сначала выберите соответствующую информацию о версии системы CUDA.
Наконец, нажмите, чтобы скачать
После завершения загрузки щелкните исполняемый файл для установки.
Здесь мы выбираем место для установки по умолчанию:
нажмите OK и подождите:
затем войдите в интерфейс установки CUDA:
Проверка системы --> согласиться с лицензионным соглашением --> выбрать пользовательские параметры --> установка завершена
В процессе установки важно выбрать вариант выборочной установки:
Проверьте все соответствующие конфигурации:
Наконец, установка завершена и нажмите «Закрыть»:
Других конкретных моментов, требующих внимания, нет.Если у вас возникнут другие проблемы, вы можете перейти по соответствующим ссылкам или оставить сообщение в области комментариев, и я отвечу на них один за другим.
Руководство по установке CUDA и cuDNN
Примечание: Переменные среды добавляются автоматически в процессе установки, после завершения установки необходимо перезагрузить компьютер.Путь
установки по умолчанию: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2
После перезагрузки компьютера введите команду nvcc -V в командной строке, чтобы проверить, успешно ли установлена CUDA:
Приведенная выше информация отображается, чтобы доказать, что CUDA успешно установлена.
Установить cuDNN
Перейдя по ссылке для скачивания, вы сможете найти соответствующую версию для загрузки.Перед загрузкой вам необходимо зарегистрироваться и войти в программу NVIDIA для разработчиков, а также ввести свои основные личные данные.
Ниже в качестве примера для загрузки и установки используется cuDNN 8.1.0.
После завершения загрузки разархивируйте, чтобы получить папку cuda.
Откройте эту папку, и вы увидите, что есть три папки: bin, include и lib.
Найдите предыдущий путь установки CUDA 11.2.0: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2 и откройте папку, вы можете найти три соответствующие папки
Скопируйте три папки cudnn в папку, соответствующую cuda.
Вы можете выбрать все содержимое в соответствующей папке, скопировать и вставить его в папку cuda.
Настроить переменные среды
Щелкните правой кнопкой мыши «Этот компьютер» и выберите «Свойства», затем нажмите «Дополнительные параметры системы».
Щелкните переменную среды, найдите переменную среды пути в переменной системной среды и щелкните, чтобы ввести
Добавьте следующее в переменную среды пути
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
Как правило, первые две переменные среды настраиваются автоматически при установке CUDA, и нам нужно добавить только последние две.
Различные версии cuDNN могут изменять номер версии.
Наконец, вы можете увидеть эти четыре места на пути, чтобы доказать, что конфигурация переменной среды выполнена успешно.
Убедитесь, что cuDNN успешно установлен
Откройте командную строку терминала (win+r и введите cmd),
чтобы ввести путь к файлу CUDA: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite.
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite
Выполните: deviceQuery.exe , появится следующий рендеринг:
Продолжайте выполнять: bandwidthTest.exe , и появится следующая диаграмма эффекта:
Наконец, cuDNN был успешно установлен
Проверка доступных графических процессоров TensorFlow
Установите питон3.9.0
ссылка для скачивания python3.9.0
Щелкните ссылку для загрузки и установки.После завершения установки введите в командной строке: python для просмотра текущей версии python.
Ввод: exit() для выхода из среды компиляции python.
Установите тензорный поток-gpu 2.6.0
Введите в командной строке: pip install tensorflow-gpu 2.6.0 Дождитесь завершения установки
Если у вас есть какие-либо вопросы, пожалуйста, оставьте сообщение в области комментариев
Наконец, введите в терминал: pip list , чтобы просмотреть установленный tensorflow-gpu 2.6.0.
Проверьте доступные графические процессоры
Вы можете ввести следующий код в терминал, чтобы войти в среду компиляции python или другие компиляторы для проверки доступного графического процессора.
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU')))
Пока выходной результат > 0, это доказывает, что имеется доступный графический процессор.
тестирование кода
Создайте в редакторе файл test_model.py и введите следующий код, чтобы отобразить эффект ускорения графического процессора.
import tensorflow as tf
# 列出可用的 GPU 设备
print(tf.config.list_physical_devices('GPU'))
# 设置 TensorFlow 使用 GPU 进行计算
gpu_devices = tf.config.list_physical_devices('GPU')
if gpu_devices:
for device in gpu_devices:
tf.config.experimental.set_memory_growth(device, True)
# 加载数据集
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
# 定义模型
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10)
])
# 编译模型
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)
model.compile(optimizer='adam', loss=loss_fn, metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=5)
# 评估模型
model.evaluate(x_test, y_test, verbose=2)
результат операции:
Подведем итог
Самое главное в процессе установки — совместимость версий, вы можете проверить официальную документацию. Наконец, если у вас есть какие-либо вопросы, оставьте сообщение в области комментариев, я отвечу вам и помогу решить проблему.