Derin Öğrenme (Deep Learning) - Keras Çekierdek Katmanı (Core Layer)

Reshape

Yayın tarihi :16-Şub-22
Bölüm kodlarını ve/veya veri setlerini indir.

Reshape Layer (Yeniden Şekillendirme Katmanı), girdileri istenilen şekle dönüştürmek için kullanılan bir yapay sinir ağı yapısıdır. 

Yeniden şekillendirilecek veri setinin boyutunun yeni şekil boyutunun çarpımıyla eşit olması gerekmektedir. Örnek olarak (12,) olan bir veri seti (5,5) olarak şekillendirilemez çünkü 5x5=25, ancak (3,4),(4,3),(6,2).. gibi çarpım sonucunun 12 olacağı değerlerle yeniden şekillendirme yapılabilir.

Kullanılabilmesi için "Reshape" kütüphanesinin içe aktarılması gerekmektedir.

from tensorflow.keras.layers import Reshape

Söz dizimi: Reshape(target_shape, **kwargs)

  • target_shape, yeniden şekillendirilmek istenilen değerleri temsil eder.

Yukarıdaki parametre haricinde eğer modelde ilk katman olarak kullanılıyorsa input_shape adlı bir argümanı da kullanır. input_shape argümanı giriş katmanının boyutunu belirtmek için kullanılan, sayısal değer alan bir yapıdır.

Örnek-1: Giriş değişken sayısı 60 olan bir veri setini yeniden şekillendirelim.

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Reshape
from tensorflow.keras.utils import plot_model
#Model oluşturulur
model=Sequential()

#Modele giriş katmanı(input_shape ile) ve Reshape katmanı eklenir
model.add(Reshape(target_shape=(12,5),input_shape=(60,)))

Modelin özetine bakılacak olunursa;

#Modelin özeti
model.summary()

Çıktı:

Model: "sequential"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 reshape (Reshape)           (None, 12, 5)             0         
                                                                 
=================================================================
Total params: 0
Trainable params: 0
Non-trainable params: 0

Katmanların görselleri incelenirse;

plot_model(model,show_shapes=True)

Çıktı:

Sonuç olarak model özet kısmında ve grafikte de görüldüğü üzere (60,) olan veri seti (12,5) olarak yeniden şekillendirilmiştir. 

Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.