Derin öğrenme, yapay zekanın en göz alıcı alanlarından biri ve bu alanda başarılı projeler geliştirebilmek için güçlü araçlara ihtiyaç duyuluyor. Bu yazımızda, derin öğrenme araçları arasında en çok kullanılan kütüphanelerden TensorFlow ve PyTorch‘a giriş yapacak, GPU kullanımı ve CUDA‘nın nasıl devreye girdiğini anlatacağız. Ayrıca, model eğitimi öncesinde oldukça kritik bir süreç olan veri yükleme ve ön işleme adımlarını da detaylandıracağız.
TensorFlow
TensorFlow, Google tarafından geliştirilen açık kaynaklı bir derin öğrenme kütüphanesidir. Özellikle büyük veri kümeleri üzerinde çalışan derin öğrenme modelleri oluşturmak ve eğitmek için oldukça güçlüdür. Python ile birlikte kullanılmakta olup, arka planda C++ gibi düşük seviyeli dillerle yüksek performans sağlar.
TensorFlow ile Basit Bir Model Örneği
PyTorch
PyTorch, Facebook tarafından geliştirilen ve dinamik grafiklerle çalışan bir derin öğrenme framework’üdür. Akademik dünyada oldukça popülerdir çünkü kodlaması daha esnek ve Python’a daha yakındır.
PyTorch Örneği
Bu örneğimiz ise PyTorch kütüphanesini kullanarak basit bir doğrusal regresyon modeli oluşturur. Model, SimpleModel adında bir sınıf olarak tanımlanır ve tek bir doğrusal katmandan oluşur; bu katman 10 girdi alır ve tek bir sayısal çıktı üretir. forward metodu, veriyi bu doğrusal katmandan geçirerek modelin tahminini yapar. Son olarak, SimpleModel sınıfından bir örnek oluşturularak model somutlaştırılır.
1 2 3 4 5 6 7 8 9 10 11 12 | import torch import torch.nn as nn class SimpleModel(nn.Module): def __init__(self): super(SimpleModel, self).__init__() self.linear = nn.Linear(10, 1) def forward(self, x): return self.linear(x) model = SimpleModel() |
Keras
Keras, TensorFlow’un üzerine inşa edilmiş, kullanıcı dostu ve modüler bir derin öğrenme kütüphanesidir. Özellikle yeni başlayanlar için harika bir tercih olan Keras, model geliştirme sürecini basitleştirir. Karmaşık matematiksel ifadeler yerine sade bir Python sözdizimiyle çalışır.
Aslında Keras bir süre bağımsız bir kütüphane olarak başladı ama daha sonra TensorFlow 2.x sürümleriyle birlikte TensorFlow’un resmi yüksek seviyeli API’si haline geldi. Yani artık doğrudan tensorflow.keras
olarak kullanılıyor.
Keras Örneği
1 2 3 4 5 6 7 8 9 10 11 12 13 | from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense # Model oluştur model = Sequential() model.add(Dense(64, activation='relu', input_shape=(10,))) model.add(Dense(1, activation='sigmoid')) # Modeli derle model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) # Eğit model.fit(X_train, y_train, epochs=10, batch_size=32) |