Keras Nedir? Kurulumu ve Kullanımı Hakkında Detaylı Rehber

 


1. Keras Nedir?

Keras, derin öğrenme modellerini hızlı ve kolay bir şekilde oluşturmak için kullanılan üst düzey bir sinir ağları kütüphanesidir. Python ile yazılmıştır ve TensorFlow, Theano ve Microsoft Cognitive Toolkit (CNTK) gibi alt seviye derin öğrenme çerçeveleri üzerinde çalışır. Keras, kullanıcı dostu arayüzü sayesinde hızlı prototipleme yapmayı mümkün kılar ve makine öğrenimi (ML) ile yapay zeka (AI) projelerinde yaygın olarak kullanılır.

Keras’ın Öne Çıkan Özellikleri

  • Kullanıcı Dostu API: Basit ve anlaşılır bir arayüz sunar.

  • Modüler Yapı: Katmanlar, optimizasyon algoritmaları ve kayıp fonksiyonları kolayca birleştirilebilir.

  • TensorFlow Entegrasyonu: TensorFlow 2.0 ile tam uyumludur (tf.keras olarak dahili olarak gelir).

  • Çoklu Backend Desteği: TensorFlow, Theano ve CNTK ile çalışabilir.

  • GPU ve TPU Desteği: Büyük ölçekli modelleri hızlandırmak için kullanılabilir.


2. Keras Kurulumu

Keras’ı kullanabilmek için öncelikle Python ve gerekli bağımlılıkların yüklü olması gerekir. İşte adım adım kurulum rehberi:

Adım 1: Python’un Yüklenmesi

Keras, Python 3.6 ve üzeri sürümlerle uyumludur. Eğer Python yüklü değilse:

  • Python resmi sitesinden en son sürümü indirin.

  • Kurulum sırasında “Add Python to PATH” seçeneğini işaretleyin.

Adım 2: pip ile Keras ve TensorFlow Yükleme

Keras genellikle TensorFlow backend’i ile kullanılır. Kurulum için terminalde şu komutu çalıştırın:

bash
Copy
pip install tensorflow keras

(TensorFlow, Keras’ı içinde barındırır, bu yüzden ayrıca keras kurmak gerekmez, ancak eski sürümler için gerekebilir.)

Adım 3: Kurulumun Doğrulanması

Python’da aşağıdaki kodu çalıştırarak kurulumu test edebilirsiniz:

python
Copy
import tensorflow as tf
from tensorflow import keras
print("TensorFlow version:", tf.__version__)
print("Keras version:", keras.__version__)

Eğer herhangi bir hata almazsanız, kurulum başarılıdır.


3. Keras ile İlk Sinir Ağı Modeli Oluşturma

Keras’ın temel kullanımını anlamak için basit bir Yapay Sinir Ağı (YSA) modeli oluşturalım. Örnek olarak MNIST el yazısı rakam tanıma veri setini kullanacağız.

Adım 1: Gerekli Kütüphaneleri Yükleme

python
Copy
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers

Adım 2: Veri Setini Yükleme ve Ön İşleme

python
Copy
# MNIST veri setini yükle
(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()

# Veriyi normalize et (0-255 arası değerleri 0-1 arasına ölçekle)
x_train = x_train.astype("float32") / 255.0
x_test = x_test.astype("float32") / 255.0

Adım 3: Model Mimarisi Oluşturma

python
Copy
model = keras.Sequential([
    layers.Flatten(input_shape=(28, 28)),  # Giriş katmanı (28x28 piksel)
    layers.Dense(128, activation='relu'),  # 128 nöronlu gizli katman
    layers.Dense(10, activation='softmax') # Çıkış katmanı (10 sınıf)
])

Adım 4: Modeli Derleme

python
Copy
model.compile(
    optimizer='adam',
    loss='sparse_categorical_crossentropy',
    metrics=['accuracy']
)

Adım 5: Modeli Eğitme

python
Copy
history = model.fit(
    x_train, y_train,
    epochs=5,
    batch_size=32,
    validation_data=(x_test, y_test)
)

Adım 6: Modeli Değerlendirme

python
Copy
test_loss, test_acc = model.evaluate(x_test, y_test)
print(f"Test Doğruluğu: {test_acc}")

4. Keras ile Yaygın Kullanım Senaryoları

1. Evrişimli Sinir Ağları (CNN) ile Görüntü Sınıflandırma

python
Copy
model = keras.Sequential([
    layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
    layers.MaxPooling2D((2, 2)),
    layers.Flatten(),
    layers.Dense(10, activation='softmax')
])

2. Tekrarlayan Sinir Ağları (RNN) ile Zaman Serisi Tahmini

python
Copy
model = keras.Sequential([
    layers.LSTM(64, input_shape=(10, 1)),  # 10 zaman adımlı veri
    layers.Dense(1)
])

3. Transfer Öğrenme ile Model Geliştirme (VGG16 Kullanımı)

python
Copy
base_model = keras.applications.VGG16(weights='imagenet', include_top=False)
model = keras.Sequential([
    base_model,
    layers.GlobalAveragePooling2D(),
    layers.Dense(1, activation='sigmoid')
])

5. Keras Kullanırken Karşılaşılabilecek Sorunlar ve Çözümleri

Sorun Çözüm
GPU kullanmıyor tf.config.list_physical_devices('GPU') ile GPU’yu kontrol edin.
Model eğitimi çok yavaş Batch boyutunu artırın veya daha basit bir model kullanın.
Overfitting (Aşırı Öğrenme) Dropout katmanları ekleyin veya veri artırma (data augmentation) yapın.
CUDA hatası CUDA ve cuDNN sürümlerinin TensorFlow ile uyumlu olduğundan emin olun.

6. Sonuç

Keras, derin öğrenme modellerini hızlı ve kolay bir şekilde oluşturmak için mükemmel bir kütüphanedir. TensorFlow ile entegre çalışması, kullanıcı dostu API’si ve geniş dokümantasyonu sayesinde yapay zeka ve makine öğrenimi projelerinde sıklıkla tercih edilir. Bu rehberde Keras’ın kurulumu, temel kullanımı ve yaygın senaryoları ele alınmıştır.

Eğer Keras ile ilgili daha fazla bilgi edinmek isterseniz, resmi dokümantasyonu inceleyebilirsiniz:
🔗 Keras Resmi Dokümantasyon

#Keras #DerinÖğrenme #YapayZeka #TensorFlow #Python #MachineLearning

Review Keras Nedir? Kurulumu ve Kullanımı Hakkında Detaylı Rehber.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir