สำหรับผู้ที่มีการ์ดกราฟิกรุ่นเก่า การทดสอบอัลกอริธึมการเรียนรู้ของเครื่องในเครื่องคอมพิวเตอร์ของคุณอาจดูเหมือนเป็นเรื่องยาก มีตัวเลือกต่างๆ อยู่เสมอ เช่น อินสแตนซ์ AWS P3 GPU แต่การทดสอบโมเดลของคุณตั้งแต่แรกบนคอมพิวเตอร์ของคุณเองจะมีประโยชน์มาก ไม่ว่าการฝึกอบรมกับการ์ดกราฟิกรุ่นเก่าจะช้าแค่ไหนก็ตาม

สำหรับผู้ที่มี กราฟิกการ์ดรุ่นเก่าที่ไม่รองรับ CUDA Compute 3.5 อาจดูยุ่งยากในการตั้งค่า TensorFlow ด้วยการเร่งความเร็วของ GPU ฉันได้รวบรวมคู่มือนี้เพื่อช่วยเหลือผู้คนในการเริ่มต้นใช้งาน
โปรดทราบว่าการดำเนินการนี้จะรองรับเฉพาะกราฟิกการ์ดที่มี CUDA Compute Capability 3.0 เท่านั้น และจะไม่ต่ำกว่านั้นอีก

สำหรับผู้เริ่มต้น นี่คือข้อมูลจำเพาะที่ฉันใช้งานอยู่:
* Windows 10 64-bit
* NVIDIA GeForce 770
* Intel i5–4570 CPU (รองรับคำสั่ง AVX2)
* การตั้งค่าเริ่มต้นของอนาคอนด้า

เมื่อเสร็จแล้ว คุณจะมีการตั้งค่า TensorFlow 1.8 ที่เปิดใช้งาน GPU

ในการเริ่มต้น คุณจะต้องสร้างบัญชีบนเว็บไซต์ NVIDIA Developers จากนั้นไปที่ไฟล์เก็บถาวรการดาวน์โหลด CUDA สำหรับ CUDA 7.1 ที่นี่คุณจะต้องดาวน์โหลดตัวติดตั้งพื้นฐาน ( CUDA 9.1.85 ) และแพตช์ทั้ง 3 ตัว

หลังจากดาวน์โหลดสิ่งเหล่านี้แล้ว ให้ติดตั้งทั้งหมดทีละตัวแล้วรีสตาร์ทคอมพิวเตอร์
ดาวน์โหลด cuDNN 7.1.3 ถัดไปจาก การดาวน์โหลด Google Drive นี้ NVIDIA ไม่มีบริการดาวน์โหลดสำหรับ 7.1.3 บน Windows และไบนารีที่สร้างไว้ล่วงหน้าเหล่านี้ทำงานได้อย่างสมบูรณ์แบบ หลังจากการติดตั้ง ให้วางแต่ละไฟล์จากไฟล์เก็บถาวรลงในโฟลเดอร์ที่เกี่ยวข้องในไดเร็กทอรีการติดตั้ง CUDA ของคุณ

ตัวอย่างเช่น CUDA ของฉันถูกติดตั้งไปที่ C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1
จากนั้นคุณจะต้องคัดลอก bin/cudnn64_7.dll strong> จากไฟล์เก็บถาวรไปยังโฟลเดอร์ bin/ ของคุณ

ทำซ้ำขั้นตอนเดียวกันนี้สำหรับ include/cudnn.h และ lib/x64/cudnn.lib

ตอนนี้ คุณจะต้องดาวน์โหลด tensorflow wheel ที่สร้างไว้ล่วงหน้าซึ่งรองรับ Compute GPU 3.0 คุณสามารถค้นหาสิ่งเหล่านี้ได้ใน GitHub repo จากตารางใน ReadMe เราจะเห็นว่าเนื่องจากเราใช้ CUDA 9.1.85.3 และ cuDNN 7.1.3 เราจึงต้องนำทางไปยังไดเร็กทอรี 1.8.0\py36\GPU\ใน repo .

ขึ้นอยู่กับว่า CPU ของคุณรองรับคำสั่ง AVX2 หรือไม่ คุณควรดาวน์โหลดไฟล์ .whl ในไดเรกทอรี 1.8.0/py36/GPU/cuda91cudnn71avx2 หรือไดเรกทอรี 1.8.0/py36/GPU/cuda91cudnn71sse . โดยทั่วไป CPU สมัยใหม่จะรองรับ AVX2 ทั้งหมด

หลังจากดาวน์โหลดไฟล์ .whl ที่เกี่ยวข้องแล้ว เราจะต้องแทนที่แพ็คเกจ tensorflow ในการติดตั้ง Anaconda ด้วยแพ็คเกจที่เราดาวน์โหลดมา เปิดพรอมต์อนาคอนดาแล้วพิมพ์

pip install --ignore-installed --upgrade tensorflow_gpu-1.8.0-cp36-cp36m-win_amd64.whl

เนื่องจากวงล้อหลามนี้กำหนดเป้าหมายไปที่ html5lib เวอร์ชันเก่า การอัปเกรดเทนเซอร์โฟลว์แบบบังคับนี้จะทำให้ pip เสียหาย หากต้องการแก้ไขปัญหานี้ ให้ป้อนคำสั่งต่อไปนี้:

conda update -f html5lib

นี่จะทำให้ pip ของคุณทำงานได้ตามปกติ

คุณพร้อมแล้ว!
หากคุณทำทุกอย่างถูกต้อง คุณควรมีการตั้งค่า Tensorflow ที่เปิดใช้งาน GPU เพื่อใช้กราฟิกการ์ด Compute 3.0

หากต้องการทดสอบว่าการตั้งค่าของคุณทำงานอย่างถูกต้องหรือไม่ ให้สร้างไฟล์ python ด้วยโค้ดต่อไปนี้และเรียกใช้จากสภาพแวดล้อม conda ของคุณ:

import tensorflow as tf
with tf.device('/gpu:0'):
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print(sess.run(c))

โปรดทราบว่าในครั้งแรกที่คุณเรียกใช้เซสชัน TensorFlow ในการตั้งค่าใหม่ จะต้องสร้างโค้ดบางส่วนขึ้นมาใหม่เพื่อกำหนดเป้าหมายการติดตั้งไดรเวอร์เฉพาะของคุณ สิ่งนี้จะเกิดขึ้นครั้งแรกหลังจากตั้งค่า tensorflow-gpu เท่านั้น

และคุณทำเสร็จแล้ว!