Bazı notebooklarda kullandığım TensorFlow-Addons Mayıs 2024'te hayatının sonuna gelecektir. Belli fonksiyonlar zamanla Keras içine entegre edilecektir. Major değişimler olduğu sürece güncellemelere devam edeceğim.
- TensorFlow Nedir? TensorFlow ve GPU
- Tensörlere Giriş
- Tensör nedir?
- Arraylerle arasındaki fark nedir?
- Tensörlerin Bilgilerine Erişmek
Shape
,rank
vesize
nedir?
- Tensör Operasyonları
- Matematiksel işlemler
- Matris çarpımı
tf.transpose()
vetf.reshape()
- Tensör veri tipini değiştirmek
- İstatistiksel işlemler
assign
veadd_assign
fonksiyonları
- Tensörleri Birleştirmek
tf.concat()
vetf.stack()
- Diğer Tensör Operasyonları
tf.eye()
,tf.reverse()
,tf.roll()
vetf.unique_with_counts()
.
- Tensörler ve Numpy
- Tensörleri NumPy arraylerine dönüştürmek
- @tf.function ve AutoGraph
- TF1.X graf objesi ve TF2.X yenilikleri
- Normal Lineer Regresyon
- Gradyan Patlaması Sorunu
- Gradient Clipping ve Adaptive Optimizer
- AdaGrad, RMSProp ve Adam Optimizerları Nedir?
- Matematiksel gösterimleriyle arasındaki ilişki
- Modele Dense Layer Eklemek
- Normal Lineer Regresyon
- Aktivasyon Fonksiyonları
- Sigmoid, Tanh, Softmax, ReLU, Leaky ReLU ve Swish aktivasyonları
- Aktivasyonları kullanarak aynı modeli yazmak
- Aktivasyonların plot edilip performansının karşılaştırılması
- Custom Layer Yazmak - Layer Subclassing
- Fashion MNIST Verisini Yükleme
- Basit CNN Modeli Yazmak
- 2 tane Conv2D Layerı ve 2 tane Dense Layer
- Flatten ve GlobalMaxPooling Arasındaki Fark
- Arka planda nasıl hesaplanıyorlar?
- Functional API ile Bir Inputu İki Farklı Şekilde Kullanmak
- Modeli plot ederek daha iyi görmek
- Confusion Matrix ve Classification Report Yazdırmak
- Kütüphaneler
- Veriyi Yükleme ve Normalize Etme
- Preprocessing Layerları
- Transfer Learning Nedir?
- Önceden Eğitilmiş Modeli Doğrudan Kullanmak
- Önceden Eğitilmiş Modelleri Özellik Çıkarıcı (Feature Extractor) Olarak Kullanmak
- Önceden Eğitilmiş Modelin Son Katmanlarını -Fine Tune- Etmek
- Başlangıç Noktası Olarak Önceden Eğitilmiş Bir Model Kullanmak
- Optimizerlar
- RAdam
- Lookahead
- LazyAdam
- Multi-Optimizer Wrapper - TensorFlow Addons
- Modelin Test Setindeki Başarısı
- TensorFlow - Keras
- TFDS:
wikipedia_toxicity_subtypes
verisetinin yüklenmesi. - TensorFlow Addons
- Plotly
- Sklearn
- Matplotlib - Seaborn
Kullanılan fonksiyonlar:
tf.strings.regex_replace
tf.strings.lower
tf.one_hot
- Cümleler için Max Uzunluk Seçilmesi
TextVectorization
Layerının Kullanılması
- RNN Yapılarının Yüzeysel Üstünden Geçilmesi
- Vektör - Dizi Modelleri (Vector-to-Sequence)
- Dizi - Vektör Modelleri (Sequence-to-Vector)
- Dizi - Dizi Modelleri (Sequence-to-Sequence)
- RNN'lerdeki Sorun ve Transformer ile Karşılaştırma
- Word Embedding
- Positional Encoding
- Transformer Neden Buna İhtiyaç Duyuyor?
- Cümle Uzunluğuna Göre Vektörler Tanımlamak
- Normalize Vektörler Kullanmak
- Attention Is All You Need --> Önerilen Çözüm
- 3D Plotlar ile Çözümün Açıklanması
- Transformer Mimarisine Giriş
- Kısaca Attention Nedir?
- Self-Attention Nedir?
- Transformerdaki MultiHeadAttention Nedir?
- Key, Value, Query Kavramları
- Adım Adım Matris İşlemleri
- Attention Filter
- Multihead ve Attention Head Açıklaması
- Transformer Encoder Kısmının
tf.keras.layers.Layer
Olarak Yazılması - Word + Positional Embeddinglerinin
tf.keras.layers.Layer
Olarak Yazılması
- Transformer Mimarisinin Eklenmesi
- 1D CNN Yapılarının Eklenmesi
- Çıktıların Birleştirilmesi
- Veri Yükleme
tf.data.Dataset.list_files()
Kullanımı
- tf.data Pipeline
- tf.data pipeline'ı oluşturup, tf.image ve tfa.image kullanarak farklı dönüşümler uygulamak.
- Modeli Oluşturmak
- Mini DenseNet ve Layer Subclassing kullanmak
- Modeli custom training loop kullanarak eğitmek
- Loss ve Accuracy
- Training loop kullanarak toplanan loss ve accuracy değerlerini plot edip görmek
- Model Performansı
- Modelin performansını görmek için confusion matrix ve classification report kullanmak
- fashion_mnist Verisetini Yükleyip Hazırlamak
- tf.one_hot()
- tf.cast()
- prefetch()
- Basit Bir CNN Yazmak
- Conv2D()
- MaxPooling2D()
- Resimlere Basit Noise Ekleyip Tahmin Almak
- Noise ve Etkilenen Softmax Çıktıları
- InceptionResNetV2'de Aynı Noise Yaklaşımını Test Etmek
- 55M Parametresi Olan InceptionResNetV2
- Noise ve InceptionResNetV2
- tf.GradientTape
- tape.watch()
- optimizer.apply_gradients()
- InceptionResNetV2'ye Adversarial Attack