TensorFlow etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
TensorFlow etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

7 Haziran 2025 Cumartesi

Yapay Zekâ ile Görüntü Tanıma: TensorFlow ile Adım Adım Model Eğitimi

Giriş: Görüntü Tanımanın Yükselişi

Günümüzde yapay zekâ uygulamaları hayatımızın birçok alanında yer almaktadır. Özellikle görüntü tanıma teknolojileri, sağlık, otomotiv, güvenlik ve perakende sektörlerinde büyük bir devrim yaratmaktadır. Bu yazıda, popüler bir açık kaynak yapay zekâ kütüphanesi olan TensorFlow kullanarak kendi görüntü tanıma modelinizi nasıl eğitebileceğinizi adım adım anlatacağım.

TensorFlow Nedir ve Neden Tercih Edilmeli?

TensorFlow, Google tarafından geliştirilen ve derin öğrenme projelerinde sıklıkla tercih edilen güçlü bir makine öğrenimi kütüphanesidir. Açık kaynak kodlu olması, güçlü topluluk desteği ve esnek yapısıyla hem yeni başlayanlar hem de profesyoneller için idealdir. Görüntü tanıma gibi karmaşık görevlerde yüksek doğrulukta modeller geliştirmek için TensorFlow’dan yararlanabilirsiniz.

Görüntü Tanıma Modeli Eğitimi İçin Gereksinimler

Bir görüntü tanıma modeli eğitmek için aşağıdaki araçlara ihtiyacınız olacak:

  • Python (3.7 veya üzeri)
  • TensorFlow (2.x)
  • NumPy, Matplotlib gibi yardımcı kütüphaneler
  • Etiketlenmiş bir görüntü veri seti (örn. CIFAR-10, MNIST veya kendi veri setiniz)

Yukarıdaki gereksinimleri kurduktan sonra, modelinizi eğitmeye başlayabilirsiniz.

Adım Adım Model Eğitimi

1. Veri Setinin Hazırlanması: İlk olarak, kullanacağınız veri setini TensorFlow’un tf.keras.datasets modülünü kullanarak kolayca yükleyebilirsiniz. Kendi veri setinizi kullanacaksanız, veri klasörlerinizi sınıflara göre düzenlemeniz gerekir.

2. Veri Ön İşleme: Görüntüleri normalize etmek, yeniden boyutlandırmak ve gerekirse veri artırımı (augmentation) uygulamak, modelinizin başarısını artıracaktır. TensorFlow’da bu işlemleri tf.image fonksiyonlarıyla hızlıca gerçekleştirebilirsiniz.

3. Modelin Oluşturulması: Görüntü tanıma için genellikle Convolutional Neural Network (CNN) modelleri kullanılır. TensorFlow’da tf.keras.Sequential() fonksiyonunu kullanarak katmanlarınızı sıralı biçimde ekleyebilirsiniz. Aşağıda basit bir örnek:

model = tf.keras.Sequential([
    tf.keras.layers.Conv2D(32, (3,3), activation='relu', input_shape=(32,32,3)),
    tf.keras.layers.MaxPooling2D(2,2),
    tf.keras.layers.Conv2D(64, (3,3), activation='relu'),
    tf.keras.layers.MaxPooling2D(2,2),
    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(num_classes, activation='softmax')
])

4. Modelin Derlenmesi: Modelinizi derlerken uygun bir optimizasyon algoritması (ör. Adam) ve kayıp fonksiyonu (ör. categorical_crossentropy) seçmelisiniz:

model.compile(optimizer='adam',
              loss='categorical_crossentropy',
              metrics=['accuracy'])

5. Modelin Eğitilmesi: Şimdi modelinizi eğitebilirsiniz. Epoch sayısını ve batch size’ı belirleyerek eğitim sürecini başlatmak mümkündür:

history = model.fit(train_images, train_labels, epochs=10, 
                    validation_data=(test_images, test_labels))

6. Sonuçların Değerlendirilmesi: Eğitimden sonra modelinizin doğruluk ve kayıp grafiklerini Matplotlib ile görselleştirip, modelinizi test veri setiyle değerlendirerek başarısını ölçebilirsiniz.

İleri Düzey İpuçları

Daha iyi sonuçlar almak için transfer öğrenme yöntemlerinden yararlanabilirsiniz. Örneğin, ImageNet gibi büyük veri setlerinde önceden eğitilmiş modelleri (MobileNet, ResNet gibi) kendi veri setinize uyarlayarak daha kısa sürede ve daha yüksek doğrulukta sonuçlar elde edebilirsiniz. Ayrıca, modelinizi optimize etmek için veri artırımı, dropout ve batch normalization gibi teknikleri de uygulayabilirsiniz.

Sonuç ve Değerlendirme

Görüntü tanıma teknolojileri, günümüzün en heyecan verici yapay zekâ uygulamalarından biridir. TensorFlow sayesinde, kendi modelinizi kolayca geliştirip eğitebilir ve çeşitli alanlarda kullanabilirsiniz. Gelişen teknolojiyle birlikte, bu alanda yeni teknikleri takip etmek ve kendinizi sürekli geliştirmek büyük önem taşımaktadır.

3.

13 Mayıs 2025 Salı

Yapay Zeka ile Görüntü İşleme: TensorFlow ve Keras ile Başlangıç Rehberi

Günümüzde yapay zeka teknolojileri, her alanda karşımıza çıkmaya başladı. Özellikle görüntü işleme, yapay zeka uygulamalarının en popüler alanlarından biri haline geldi. Bu yazıda, TensorFlow ve Keras kullanarak basit bir görüntü işleme uygulaması nasıl yapılır, adım adım göstereceğim.

TensorFlow ve Keras Nedir?

TensorFlow, Google tarafından geliştirilen açık kaynaklı bir makine öğrenmesi kütüphanesidir. Keras ise TensorFlow üzerinde çalışan, derin öğrenme modelleri geliştirmeyi kolaylaştıran yüksek seviyeli bir API'dir. Keras, modelleri hızlı bir şekilde prototipleme yapmanıza olanak tanır.

Adım Adım Basit Bir Görüntü Sınıflandırma Uygulaması

Görüntü sınıflandırma, bir görüntüdeki nesneleri tanımlama ve sınıflandırma işlemidir. TensorFlow ve Keras ile bu tür bir uygulama geliştirmek için aşağıdaki adımları izleyebilirsiniz:

1. Gerekli Kütüphaneleri Yükleyin:

İlk olarak, pip install tensorflow keras komutu ile TensorFlow ve Keras kütüphanelerini yükleyin.

2. Veri Setini Hazırlayın:

Görüntü sınıflandırma modellerini eğitmek için büyük miktarda veriye ihtiyacınız vardır. CIFAR-10 gibi popüler veri setlerini kullanabilirsiniz. Bu veri seti, 10 farklı kategoride 60.000 renkli resim içerir.

3. Modelinizi Oluşturun:

Keras, model oluşturmayı basitleştiren bir yapı sunar. Aşağıdaki kod parçacığında basit bir evrişimli sinir ağı (CNN) modeli gösterilmektedir:

from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense

model = Sequential([
    Conv2D(32, (3,3), activation='relu', input_shape=(32,32,3)),
    MaxPooling2D(2,2),
    Conv2D(64, (3,3), activation='relu'),
    MaxPooling2D(2,2),
    Flatten(),
    Dense(64, activation='relu'),
    Dense(10, activation='softmax')
])

4. Modelinizi Eğitin:

Modelinizi eğitmek için, model.compile ve model.fit metodlarını kullanarak modelinizi derleyin ve eğitin. Bu süreç, seçtiğiniz parametrelere göre birkaç dakika sürebilir.

5. Modelinizi Değerlendirin ve Test Edin:

Modelin eğitimi tamamlandıktan sonra, model.evaluate metodu ile test verileri üzerinde modelinizin performansını değerlendirin. Yüksek doğruluk oranı, modelinizin iyi çalıştığını gösterir.

Sonuç

TensorFlow ve Keras, görüntü işleme gibi karmaşık yapay zeka uygulamalarını kolayca geliştirmenizi sağlar. Bu rehberde anlattığım basit adımlar, kendi görüntü sınıflandırma modelinizi oluşturmanız için iyi bir başlangıç noktası olacaktır. Teknolojinin bu heyecan verici alanında daha fazla bilgi edinmek ve deneyim kazanmak için çalışmaya devam edin.