Keras ve TensorFlow’a Hızlı Bir Başlangıç

Keras, Python dilinde tasarlanmış bir derin öğrenme kütüphanesidir. Bir derin öğrenme projesinde çalıştıysanız veya bu alana aşinalığınız var ise mutlaka Keras ile karşılaşmışsınız demektir. İçerisinde derin öğrenme modellerinin oluşturulmasına imkan verecek ve verilerimizi eğitmemiz için ortam sağlayacak birçok seçenek mevcuttur.

Keras başlangıçta araştırmacıların daha hızlı denemeler yapabilmeleri için geliştirilmiştir.

Keras, gerçekten de veri eğitimi ve ön işlenmesi için olabildiğince hızlı çalışmaktadır. Keras’ı daha yakından tanımak isterseniz bu link üzerinden kendi dokümantasyonlarına erişim sağlayabilirsiniz.

Keras’ın Öne Çıkan Avantajları

🔹Hem CPU hem GPU üzerinde işlemlerinizi gerçekleştirebilmenizi sağlar.

🔹Evrişimli ve yinelemeli ağlar için  önceden tanımlı modüller barındırmaktadır.

 

Keras, makine öğrenimi platformu Theano ve TensorFlow üzerinde çalışan Python’da yazılmış bir derin öğrenme API’sidir.

🔹 Keras, Python 2.7′ den itibaren tüm versiyonları desteklemektedir.

Keras, Tensorflow, Theano ve CNTK

Keras, yüksek seviyeli derin öğrenme modellerini gerçekleştirebilecek yapıları sunan kütüphanedir. Birçok kez projelerimizde kullandığımız backend enginleri bu yazıda tanımlayacağız. Sanırım Türkçe olarak bu kavramı arka uç motor olarak tanımlıyorlar ancak ben kavramı türkçeleştirmeyeceğim. Arka planda çalışan bu motorlardan aşağıda Tensorflow’un kullanımına yer vermekteyiz.

Keras Upload

Activation Function

🔹 Kullanmak istediğimiz kütüphaneleri aşağıdaki görseldeki gibi seçerek uygulayabiliriz. Kullanmakta olduğumuz 3 adet backend uygulaması bulunmaktadır. Bunlar TensorFlow, Theano ve Microsoft Cognitive Toolkit (CNTK) backend uygulamalarıdır.

Uploading Library

Aşağıda gördüğünüz platformlar derin öğrenmede çokça karşılaştığımız platformlardır. Dipnot olarak TensorFlow kullanırken GPU tabanlı çalışmanızı öneririm. Performans açısından GPU kullanımı ile daha hızlı ve performanslı sonuçlar elde ettiğinizi göreceksiniz.

Özetle demek istediğim, Keras bu 3 kütüphane ile uyumlu olarak çalışmaktadır. Üstelik kodda herhangi bir değişiklik yapmadan bu üç kütüphane ile backend engine değiştirerek çalışmaktadır.

Gelin sizlerle birlikte Keras ile birlikte kullanabileceğimiz TensorFlow’ a daha yakından değinelim.

TensorFlow

➡️ Çalışacağınız proje için Python ve Pip kurulu olup olmadığını versiyon kontrolü ile sağlayalım.

Version Control

➡️ Aktif olarak çalıştığım Mask RCNN projem için çalışmalara devam ediyorum. Sizler de herhangi bir proje oluşturabilir veya benim gibi segmentasyon projesi oluşturabilirsiniz. Eğer aynı projede devam etmek istiyorsanız bağlantıya tıklayarak gerekli olan kütüphanelerin listesine erişebilirsiniz.

Collecting Requirements

Dilerseniz bu kütüphaneleri teker teker de yükleyebilirsiniz. Fakat ben hızlı olması açısından requirements.txt dosyası olarak yüklemekteyim.

➡️ Amacımızdan şaşmadan, Keras ve TensorFlow’a geri dönüş yapalım. Mask RCNN projem için başka bir yazıda daha buluşabiliriz. Şimdi TensorFlow’ a hızlıca bir giriş yapalım. Hem projemize import edelim hem de kullandığımız versiyonu yazdıralım.

TensorFlow

Çıktı olarak gördüğünüz üzere TensorFlow’ un 2.3.1 versiyonunu kullanmaktayım. Söylediğim gibi bunu CPU veya GPU tabanlı kullanabilirsiniz.

Output Version

➡️ Veride ön işleme yaparken ise aşağıdaki gibi tensorflow.keras tpreprocessing modülünü dahil ederek işlemlerimize devam edebiliyoruz. Şuan aktif olarak metot çalıştırmadığım için pasif görünüyor ancak kullanacağımız metotu yazdığımızda otomatik olarak rengi aktifleşecektir.Tensorflow Preprocessing

➡️ Örnek olarak TensorfFlow ile ön işlemeyi aşağıdaki gibi gerçekleştirebiliyoruz. Veri setimizi eğitim ve test olarak ayırıyoruz ve validation_split değişkeni ile %20’sinin test verisine ayrıldığını biliyoruz.

Bu şekilde sizlerle birlikte Keras’ a ve TensorFlow’a hızlı bir başlangıç yapmış bulunmaktayız. Bir sonraki yazımda görüşmek dileğiyle. Esen kalın ✨

REFERANSLAR

  1. https://keras.io/about/.
  2. Wikipedia, The free encyclopedia, https://en.wikipedia.org/wiki/Keras.
  3. https://keras.rstudio.com/articles/backend.html.
  4. François Chollet, Python ile Derin Öğrenme, Buzdağı Yayıncılık.
  5. https://www.tensorflow.org.
  6. https://www.tensorflow.org/tutorials/keras/text_classification.

Leave a Reply