TensorFlow Kurulumu¶
Bu makalede
TensorFlow, Google tarafından geliştirilen açık kaynaklı bir derin öğrenme ve sinir ağı eğitimi platformudur. TensorFlow ile, Python'daki kullanıcı dostu API'yi kullanarak karmaşık sinir ağları oluşturabilir, eğitebilir ve kullanabilirsiniz.
Bu platform, doğrusal regresyon ve lojistik regresyon gibi geleneksel makine öğrenme algoritmalarının yanı sıra daha ileri düzey mimarileri, yani konvolüsyonel sinir ağları (Convolutional Neural Networks, CNN) ve tekrarlayan sinir ağları (Recurrent Neural Networks, RNN)'ni de destekler.
Linux Üzerinde TensorFlow Kurulumu¶
Bu talimat, Ubuntu 22.04 için geçerlidir ve Python sürümleri: Python 3.10 ile doğrulanmıştır.
Not
GPU hızlandırması kullanmayı planlıyorsanız, bu talimata uygun olarak NVIDIA sürücülerini ve CUDA'yu yükleyin.
-
Python'i Yükleyin:
Ubuntu 22.04'de bu sürüm varsayılan olarak yüklüdür, daha yeni bir sürüm yüklemeyi önermiyoruz.
-
TensorRT için sistem kütüphanelerini Yükleyin:
-
Python için sanal bir ortam oluşturun:
-
Sanal Ortamı Etkinleştirin:
Başarılı etkinleştirmeden sonra, terminaldeki promt sanal ortamanın adını parantez içinde gösterecektir:
Not
İsterseniz istediğiniz kadar çok sayıda sanal ortam oluşturabilir ve farklı kütüphaneleri (bazen çakışmalara neden olabileceği için aynı anda) yükleyebilirsiniz.
-
TensorRT bağlayıcılarını Yükleyin:
Kurulumu doğrulamak için konsolda Python'u çalıştırabilir ve aşağıdaki betiği çalıştırabiliriz:
Başarılı bir kurulum sonrası çıktı şu şekilde olacaktır:
(tensorflow) user@49069:~/gpu$ python Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import tensorrt >>> print(tensorrt.__version__) 10.0.0b6 >>> assert tensorrt.Builder(tensorrt.Logger()) >>> import tensorrt_lean as trt >>> print(trt.__version__) 10.0.0b6 >>> assert trt.Runtime(trt.Logger()) >>> import tensorrt_dispatch as trt >>> print(trt.__version__) 10.0.0b6 >>> assert trt.Runtime(trt.Logger()) >>>
-
TensorRT sürümünü 8.6.1 olarak Yükleyin.
-
GPU desteği ile TensorFlow kütüphanesini Yükleyin:
-
Sanal ortamdan Çıkın:
-
TensorFlow çalıştırmak için bir betik oluşturun:
echo '#!/bin/bash' > tensorflow.sh echo 'source venv/bin/activate' >> tensorflow.sh echo 'export CUDNN_PATH=$(dirname $(python -c "import nvidia.cudnn;print(nvidia.cudnn.__file__)"))' >> tensorflow.sh echo 'export LD_LIBRARY_PATH=$CUDNN_PATH/lib:/usr/local/cuda/lib64' >> tensorflow.sh echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/TensorRT-8.6.1.6/lib' >> tensorflow.sh chmod +x tensorflow.sh
TensorFlow Çalıştırma¶
Sanal ortamda belirtilen kütüphane değişkenleriyle birlikte TensorFlow'u çalıştırmak için şu komutu kullanın:
TensorFlow Kurulumunun Doğrulanması¶
Kütüphanenin işlevselliğini ve GPU desteğini doğrulamak için aşağıdaki Python programını konsolda çalıştırabilirsiniz:
import tensorflow as tf
print(tf.reduce_sum(tf.random.normal([1000, 1000])))
print(tf.config.list_physical_devices('GPU'))
Başarılı bir kurulum sonrası GPU kullanımınızı gösteren benzer bir çıktı alacaksınız.
(venv) user1@49069:~$ python
Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
nt(tf.config.list_physical_devices('GPU'))
2024-04-22 23:39:54.472502: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
>>> print(tf.reduce_sum(tf.random.normal([1000, 1000])))
2024-04-22 23:39:55.810888: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1928] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 22282 MB memory: -> device: 0, name: NVIDIA GeForce RTX 4090, pci bus id: 0000:07:00.0, compute capability: 8.9
tf.Tensor(332.5041, shape=(), dtype=float32)
>>> print(tf.config.list_physical_devices('GPU'))
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
>>>
Ayrıca, 2c_nn_mnist_customtrain.py
isimli bir sinir ağı eğitme test Python betiği için bu GitHub deposundan indirip çalıştırabilirsiniz.
Betik yürütümünün sonunda şu benzer çıktıyı almalısınız:
(venv) user1@49069:~$ python ./2c_nn_mnist_customtrain.py
2024-04-23 10:35:25.832754: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2024-04-23 10:35:28.404381: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1928] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 22282 MB memory: -> device: 0, name: NVIDIA GeForce RTX 4090, pci bus id: 0000:07:00.0, compute capability: 8.9
WARNING: All log messages before absl::InitializeLog() is called are written to STDERR
I0000 00:00:1713861338.172126 21279 service.cc:145] XLA service 0x7f36a3bd2ec0 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices:
I0000 00:00:1713861338.172187 21279 service.cc:153] StreamExecutor device (0): NVIDIA GeForce RTX 4090, Compute Capability 8.9
2024-04-23 10:35:38.180648: I tensorflow/compiler/mlir/tensorflow/utils/dump_mlir_util.cc:268] disabling MLIR crash reproducer, set env var `MLIR_CRASH_REPRODUCER_DIRECTORY` to enable.
2024-04-23 10:35:38.207205: I external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:465] Loaded cuDNN version 8902
I0000 00:00:1713861338.355523 21279 device_compiler.h:188] Compiled cluster using XLA! This line is logged at most once for the lifetime of the process.
1874/1875 |||||||||||||||||||||||||||||||| acc: 0.9022 time: 14.9 test-acc: 0.932 (error: 6.75%)
1874/1875 |||||||||||||||||||||||||||||||| acc: 0.9474 time: 4.74 test-acc: 0.953 (error: 4.71%)
1874/1875 |||||||||||||||||||||||||||||||| acc: 0.9628 time: 4.83 test-acc: 0.963 (error: 3.67%)
1874/1875 |||||||||||||||||||||||||||||||| acc: 0.9734 time: 4.86 test-acc: 0.968 (error: 3.25%)
1874/1875 |||||||||||||||||||||||||||||||| acc: 0.9798 time: 4.9 test-acc: 0.97 (error: 3.04%)
Bu sayfanın bazı içerikleri ya da yazıları AI tarafından oluşturulmuş veya çevrilmiş olabilir.