Not: Bu yazı, öğrendiğim bilgileri daha iyi pekiştirmek ve yanlış bir yorum yapmamak adına GPT-4o tarafından incelenmiş ve düzenlenmiştir.
Apple M1 işlemcili MacBook’larda TensorFlow kullanımı, CPU ve GPU mimarisi farklılıklarından dolayı bazen uyumluluk sorunlarına yol açabilir. Bu yazıda, TensorFlow’un Metal API ile hızlandırılmış bir versiyonunu kurup çalıştırmayı ve küçük bir model eğitimi örneği gerçekleştirmeyi adım adım açıklayacağım.
1. Miniforge ile Conda Ortamı Kurulumu
Apple Silicon için optimize edilmiş Miniforge, TensorFlow gibi kütüphanelerle uyumlu bir Conda dağıtımıdır.
Miniforge İndir ve Kur
chmod +x Miniforge3-MacOSX-arm64.sh
sh Miniforge3-MacOSX-arm64.sh
Conda'yı Etkinleştir
source ~/miniforge3/bin/activate
2. Yeni Bir TensorFlow Ortamı Oluşturma
Birden fazla proje için uyumluluğu korumak adına izole bir ortam oluşturmak önemlidir.
Ortamı Oluştur ve Etkinleştir
conda create --name tf_env python=3.9
conda activate tf_env
3. TensorFlow Bağımlılıklarını Yükleme
TensorFlow’un Metal API desteği için gerekli olan bağımlılıkları yükleyin.
Apple Metal API Bağımlılıklarını Yükleyin
conda install -c apple tensorflow-deps
4. TensorFlow ve TensorFlow-Metal Kurulumu
TensorFlow’un Metal hızlandırmasını kullanarak GPU’dan tam performans alabilirsiniz.
TensorFlow ve Metal Desteğini Yükleyin
pip install tensorflow==2.14
pip install tensorflow-metal
5. Model Kodunun Yazılması
Eğitim sırasında kullanılacak bir TensorFlow modeli oluşturun.
main.py Dosyası
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
print("TensorFlow Version:", tf.__version__)
# Basit bir model
x = np.array([-1.0, 0.0, 1.0, 2.0])
y = np.array([-2.0, 0.0, 2.0, 4.0])
model = tf.keras.Sequential([
tf.keras.layers.Dense(units=1, input_shape=[1])
])
model.compile(optimizer='sgd', loss='mean_squared_error')
model.fit(x, y, epochs=10)
print("Model eğitimi tamamlandı.")
6. Modeli Çalıştırma ve Test Etme
Modeli eğitmek ve TensorFlow’un doğru çalıştığını doğrulamak için aşağıdaki komutu kullanın:
python main.py
Başarılı Bir Çalıştırma İçin Çıkış Örneği
TensorFlow Version: 2.14.0
Epoch 1/10
1/1 [==============================] - 1s 1s/step - loss: 18.7070
...
Model eğitimi tamamlandı.
7. Karşılaşılan Sorunlar ve Çözümleri
- Protobuf Hatası: TensorFlow 2.16.2 sürümünde, Metal API ile uyumluluk sorunları görülebilir. Bu, TensorFlow sürümünü 2.14.0’a düşürerek çözüldü.
- GPU Aktivasyonu: TensorFlow’un GPU hızlandırmasını kullandığını doğrulamak için çıktıdaki
Metal device set to: Apple M1 Promesajına dikkat edin.
8. Sonuç ve Öneriler
Bu süreçte TensorFlow’u M1 işlemcili bir MacBook’ta çalıştırmayı başardık. TensorFlow-Metal sayesinde GPU hızlandırması sağlanarak model eğitimi daha hızlı gerçekleştirildi. Uyumluluk sorunlarını minimize etmek için doğru TensorFlow sürümünü seçmek kritik bir adımdır.
Özet:
Bu rehberde, TensorFlow’un Apple Silicon için optimize edilmiş bir sürümünü nasıl kuracağınızı ve temel bir modelin eğitimini nasıl gerçekleştireceğinizi gösterdim. Apple M1 Pro çipinizin gücünden tam anlamıyla faydalanmak için TensorFlow-Metal’i kullanmaya devam edebilirsiniz.
İlk Yorumu Siz Yapın