"DL Hafta 3.
pdf"
1. Genel Özet:
Bu PDF, der n öğrenmeye g r ş n tel ğ nded r. TensorFlow ve Keras kütüphaneler n n
temeller n , Google Colab kullanımını ve s n r ağları le sınıflandırma (b nary ve
mult class) ve regresyon problemler n n nasıl çözüleceğ n adım adım anlatmaktadır.
IMDB f lm yorumları, Reuters haberler ve Boston konut f yatları ver setler üzer nde
uygulamalı örnekler çer r.
2. Temel Kavramlar ve Modeller:
TensorFlow & Keras: TensorFlow'un düşük sev yel b r tensor şleme platformu,
Keras'ın se üst sev ye b r der n öğrenme API's olduğu vurgulanır.
Colab (Colaboratory): Bulut tabanlı, ücrets z GPU/TPU er ş m sağlayan Jupyter
notebook ortamı.
İlk S n r Ağı
Modeller : Sequent al model, Dense katmanları, relu ve s gmo d akt vasyon
fonks yonları.
İk l Sınıflandırma (B nary Class f cat on): IMDB yorumlarını poz t f/negat f
olarak sınıflandırma. Kayıp fonks yonu olarak b nary_crossentropy, opt m zer
olarak rmsprop kullanılır.
Çok Sınıflı Sınıflandırma (Mult class Class f cat on): Reuters haberler n 46
konu başlığına ayırma. Kayıp fonks yonu categor cal_crossentropy, çıkış
katmanında softmax akt vasyonu kullanılır.
Regresyon (Regress on): Boston konut f yatlarını tahm n etme. Kayıp
fonks yonu mse (mean squared error), metr k olarak mae (mean absolute error)
kullanılır. Ver ler n ölçeklend r lmes (normal zasyon) ve K-fold cross-val dat on
tekn ğ önemle anlatılır.
Aşırı Öğrenme (Overf tt ng): Model n eğ t m ver ler ne çok y , yen ver lere kötü
performans göstermes . Doğrulama (val dat on) set kullanımı ve erken durdurma
(early stopp ng) le nasıl tesp t ed leb leceğ göster l r.
3. Kr t k Kod Parçacıkları:
# IMDB verilerini yükleme ve multi-hot encoding ile vektörleştirme
from [Link] import imdb
(train_data, train_labels), (test_data, test_labels) =
imdb.load_data(num_words=10000)
import numpy as np
def vectorize_sequences(sequences, dimension=10000):
results = [Link]((len(sequences), dimension))
for i, sequence in enumerate(sequences):
for j in sequence:
results[i, j] = 1.
return results
x_train = vectorize_sequences(train_data)
4. Öneml Örnekler ve Senaryolar:
IMDB Örneğ : Model 4. epoch'dan sonra aşırı öğrenmeye başlar. 4 epoch le
yen den eğ t len model, test set nde %88 doğruluk elde eder.
Reuters Örneğ : 46 sınıflı problemde, ara katmanların boyutunun (64 b r m)
yeterl olmaması durumunda "b lg darboğazı" ( nformat on bottleneck)
oluşab leceğ ve doğruluğun %71'e düşeb leceğ göster l r.
Boston Konut F yatları Örneğ : Ver noktası az olduğu ç n bas t b r val dasyon
set yer ne K-fold cross-val dat on'un neden gerekl olduğu açıklanır. 130 epoch
sonrası test hatası (MAE) yaklaşık 2.46 (yan $2,460) olarak bulunur.
"DL Hafta [Link]"
1. Genel Özet:
Bu PDF, mak ne öğrenmes n n temel taşı olan genelleşt rme kavramına odaklanır. Aşırı
öğrenme (overf tt ng) ve eks k öğrenme (underf tt ng)' n ne olduğu, modeller n nasıl
değerlend r leceğ (hold-out, K-fold val dat on), b r model y leşt rme ve genelleşt rmey
artırma yöntemler n detaylandırır.
2. Temel Kavramlar ve Modeller:
Genelleşt rme, Underf tt ng, Overf tt ng: Model n eğ t m ver ler dışındak ,
görmed ğ ver lerde de y performans göstermes hedeflen r. Underf tt ng model n
yeters z, overf tt ng se aşırı karmaşık olduğu durumlarda ortaya çıkar.
Model Değerlend rme Yöntemler :
o Hold-out Val dat on: Ver y sab t oranlarla eğ t m, doğrulama ve test
olarak ayırma.
o K-fold Cross-Val dat on: Ver y K parçaya bölüp, sırayla b r parçayı
doğrulama, d ğerler n eğ t m ç n kullanma. Özell kle küçük ver setler ç n
öneml d r.
Model Gel şt rme Adımları:
1. Basel ne (Temel Ç zg ) Bel rleme: Rastgele b r sınıflandırıcı veya bas t b r
kuralın performansını geçmek lk hedeft r.
2. Model Kapas tes n Artırmak: Önce overf t edecek kadar büyük b r model
kurulur (daha fazla katman/b r m).
3. Genelleşt rmey İy leşt rmek (Regular zat on): Overf tt ng' engellemek
ç n çeş tl tekn kler uygulanır.
Düzenl leşt rme (Regular zat on) Tekn kler :
o Model Boyutunu Küçültme: Parametre sayısını azaltmak.
o Ağırlık Düzenl leşt rmes (We ght Regular zat on): L1 (Lasso)
veya L2 (R dge) cezası ekleyerek ağırlık değerler n n büyümes n
engelleme. Keras'ta kernel_regular zer argümanı le kullanılır.
o Dropout: Eğ t m sırasında rastgele seç len nöronların geç c olarak devre
dışı bırakılması. Dropout katmanı le uygulanır.
o Erken Durdurma (Early Stopp ng): Doğrulama kaybı y leşmey
durdurduğunda eğ t m kesmek.
4. Kr t k Kod Parçacıkları:
# L2 Ağırlık Düzenlileştirmesi
from [Link] import regularizers
model = [Link]([
[Link](16, kernel_regularizer=regularizers.l2(0.002),
activation="relu"),
[Link](16, kernel_regularizer=regularizers.l2(0.002),
activation="relu"),
[Link](1, activation="sigmoid")
])
# Dropout Katmanı Ekleme
model = [Link]([
[Link](16, activation="relu"),
[Link](0.5), # %50 dropout oranı
[Link](16, activation="relu"),
[Link](0.5),
[Link](1, activation="sigmoid")
])
"DL Hafta [Link]"
1. Genel Özet:
Bu PDF, Keras le model oluşturmanın farklı yollarını (Sequent al, Funct onal API, Model
Subclass ng) ve eğ t m sürec n kontrol etmek ç n kullanılan "callback"ler detaylı
şek lde anlatır. Ayrıca mak ne öğrenmes n n evrensel ş akışına (ver hazırlama, basel ne
bel rleme, model büyütme, düzenl leşt rme) değ n r.
2. Temel Kavramlar ve Modeller:
Model Oluşturma API'ler :
o Sequent al API: Katmanların sıralı l stes . Bas t modeller ç n uygundur.
o Funct onal API: Çoklu g r ş/çıkış, dallanma, paylaşılan katmanlar g b
karmaşık, graf benzer m mar ler oluşturmak ç n kullanılır. [Link] le
başlar.
o Model Subclass ng: Tam esnekl k sağlar, [Link] sınıfından türet l r.
Ancak hata yapma r sk daha yüksekt r.
Callbacks (Ger Çağırımlar): Eğ t m sırasında model n bel rl noktalarında
çağrılan nesnelerd r. f t() metoduna l ste olarak ver l r.
o ModelCheckpo nt: En y model kaydeder.
o EarlyStopp ng: Val dasyon metr ğ y leşmey durdurduğunda eğ t m
durdurur.
o ReduceLROnPlateau: Öğrenme oranını d nam k olarak azaltır.
3. Kr t k Kod Parçacıkları:
# Functional API ile çoklu giriş/çıkışlı model
title = [Link](shape=(vocabulary_size,), name="title")
text_body = [Link](shape=(vocabulary_size,), name="text_body")
tags = [Link](shape=(num_tags,), name="tags")
features = [Link]()([title, text_body, tags])
features = [Link](64, activation="relu")(features)
priority = [Link](1, activation="sigmoid",
name="priority")(features)
department = [Link](num_departments, activation="softmax",
name="department")(features)
model = [Link](inputs=[title, text_body, tags], outputs=[priority,
department])
# Callback'lerin kullanımı (EarlyStopping ve ModelCheckpoint)
callbacks_list = [
[Link](
monitor="val_accuracy",
patience=2, # 2 epoch boyunca iyileşme olmazsa dur
),
[Link](
filepath="checkpoint_path.keras",
monitor="val_loss",
save_best_only=True, # Sadece en iyi modeli kaydet
)
]
[Link](..., callbacks=callbacks_list, validation_data=...)
4. Öneml Örnekler ve Senaryolar:
B let Sınıflandırıcı Örneğ : Funct onal API kullanılarak başlık, met n gövdes ve
et ketlerden oluşan çoklu g r ş alan; öncel k skoru ve departman tahm n yapan
çoklu çıkışlı b r model göster l r.
Callback Senaryosu: EarlyStopp ng ve ModelCheckpo nt b rl kte kullanılarak,
val dasyon doğruluğu y leşmey durdurduğunda eğ t m n otomat k kes lmes ve
en y model n kayded lmes sağlanır.
"DL Hafta [Link]"
1. Genel Özet:
Bu PDF, b lg sayarlı görü ç n evr ş ml s n r ağlarını (Convolut onal Neural Networks -
CNN/ConvNets) konu alır. Bas t b r ConvNet le MNIST üzer nde %99.1 doğruluk elde
ed lmes , "Ked ler vs Köpekler" sınıflandırması ç n sıfırdan b r model n nasıl oluşturulup
eğ t leceğ , ver artırma (data augmentat on), önceden eğ t lm ş model kullanımı (VGG16
le özell k çıkarımı ve nce ayar) detaylıca şlen r.
2. Temel Kavramlar ve Modeller:
Evr ş m (Convolut on) ve MaxPool ng: Yerel desenler öğrenme, öteleme
değ şmezl ğ , uzamsal h yerarş .
Temel ConvNet M mar s : Conv2D -> MaxPool ng2D -> Flatten -
> Dense katmanlarından oluşan yığın.
Ked ler vs Köpekler Sınıflandırması: Küçük ver set (2000 eğ t m görsel )
üzer nde sıfırdan eğ t m. Hızlıca aşırı öğrenme gözlen r.
Ver Artırma (Data Augmentat on): Aşırı öğrenmey azaltmak
ç n RandomFl p, RandomRotat on, RandomZoom katmanlarının kullanımı.
Önceden Eğ t lm ş Modeller (VGG16):
o Özell k Çıkarımı (Feature Extract on): ConvNet tabanının çıktıları
alınarak üzer ne yen b r sınıflandırıcı eğ t lmes . İk yöntem vardır: 1) Hızlı
özell k çıkarımı (ver artırma yok), 2) Ver artırmalı özell k çıkarımı (ConvNet
tabanı dondurularak).
o İnce Ayar (F ne-tun ng): Dondurulmuş ConvNet tabanının son b rkaç
katmanının çözülerek (unfreeze) model n yen ver yle b rl kte tekrar
eğ t lmes . Düşük öğrenme oranı (1e-5) kullanılır.
3. Kr t k Kod Parçacıkları:
# Basit bir ConvNet örneği (MNIST)
from tensorflow import keras
from [Link] import layers
inputs = [Link](shape=(28, 28, 1))
x = layers.Conv2D(filters=32, kernel_size=3, activation="relu")(inputs)
x = layers.MaxPooling2D(pool_size=2)(x)
x = layers.Conv2D(filters=64, kernel_size=3, activation="relu")(x)
x = layers.MaxPooling2D(pool_size=2)(x)
x = layers.Conv2D(filters=128, kernel_size=3, activation="relu")(x)
x = [Link]()(x)
outputs = [Link](10, activation="softmax")(x)
model = [Link](inputs=inputs, outputs=outputs)
# Veri artırma katmanlarının tanımlanması
data_augmentation = [Link]([
[Link]("horizontal"),
[Link](0.1),
[Link](0.2),
])
# Önceden eğitilmiş VGG16 tabanının dondurulması ve yeni model
oluşturma
conv_base = [Link].vgg16.VGG16(weights="imagenet",
include_top=False)
conv_base.trainable = False # Tüm katmanları dondur
inputs = [Link](shape=(180, 180, 3))
x = data_augmentation(inputs)
x = [Link].vgg16.preprocess_input(x)
x = conv_base(x)
x = [Link]()(x)
x = [Link](256)(x)
x = [Link](0.5)(x)
outputs = [Link](1, activation="sigmoid")(x)
model = [Link](inputs, outputs)
# İnce ayar için son birkaç katmanın çözülmesi
conv_base.trainable = True
for layer in conv_base.layers[:-4]: # Son 4 katman hariç hepsini
dondur
[Link] = False
[Link](loss="binary_crossentropy",
optimizer=[Link](learning_rate=1e-5), #
Düşük LR
metrics=["accuracy"])
4. Öneml Örnekler ve Senaryolar:
Sıfırdan Eğ t m: İlk model 30 epoch'da aşırı öğren r ve test doğruluğu %69.5't r.
Ver Artırmalı Eğ t m: Aşırı öğrenme gec k r, test doğruluğu %83.5'e çıkar.
Özell k Çıkarımı (Ver Artırmasız): VGG16 özell kler üzer ne eğ t len sınıflandırıcı
hızla %97 doğruluğa ulaşır ama y ne de aşırı öğrenme eğ l m göster r.
İnce Ayar (F ne-tun ng): VGG16'nın son 3 evr ş m bloğu çözülüp eğ t ld ğ nde,
test doğruluğu %98.5'e yüksel r.
"DL Hafta [Link]"
1. Genel Özet:
Bu PDF, b lg sayarlı görüde ler konuları kapsar: görüntü bölütleme (semant c
segmentat on), modern ConvNet m mar desenler (artık bağlantılar, batch
normal zat on, ayrılab l r evr ş mler) ve ConvNet'ler n öğrend kler n yorumlama
tekn kler (ara katman akt vasyonlarını, f ltreler ve sınıf akt vasyon har talarını
görselleşt rme).
2. Temel Kavramlar ve Modeller:
Görüntü Bölütleme (Semant c Segmentat on): Her p ksel n b r sınıfa atandığı
görev. Oxford-IIIT Pets ver set kullanılır. Model,
önce Conv2D katmanlarıyla str des=2 kullanarak örnek seyreltme
(downsampl ng), sonra Conv2DTranspose katmanlarıyla örnek sıklaştırma
(upsampl ng) yapar. Kayıp fonks yonu sparse_categor cal_crossentropy'd r.
Modern M mar Desenler:
o Artık Bağlantılar (Res dual Connect ons): Gradyan kaybını önler, çok
der n ağların eğ t lmes n sağlar. add([x, res dual]) şekl nde uygulanır.
o Batch Normal zat on: Grad ent yayılımına yardımcı olur, eğ t m hızlandırır
ve stab l ze eder. Akt vasyondan sonra kullanılması öner l r (Conv2D -
> BatchNorm -> Act vat on).
o Ayrılab l r Evr ş m (Depthw se Separable
Convolut on): SeparableConv2D. Daha az parametre ve hesaplama
gerekt r r, küçük ver setler nde etk l d r.
Model Yorumlanab l rl ğ :
o Ara Katman Akt vasyonlarının Görselleşt r lmes : Her katmandak
f ltreler n neye tepk verd ğ n göster r.
o F ltre Görselleşt rmes : Bel rl b r f ltrey maks mum derecede akt ve eden
görüntüyü "gradyan çıkışı" le oluşturma.
o Sınıf Akt vasyon Har taları (Grad-CAM): Model n b r sınıf ç n karar
ver rken görüntünün hang bölgeler ne odaklandığını gösteren ısı har tası
oluşturma.
3. Kr t k Kod Parçacıkları:
# F# Artık bağlantılı bir blok
def residual_block(x, filters, pooling=False):
residual = x
x = layers.Conv2D(filters, 3, activation="relu", padding="same")(x)
x = layers.Conv2D(filters, 3, activation="relu", padding="same")(x)
if pooling:
x = layers.MaxPooling2D(2, padding="same")(x)
residual = layers.Conv2D(filters, 1, strides=2)(residual) #
Projection
elif filters != [Link][-1]:
residual = layers.Conv2D(filters, 1)(residual) # Projection
x = [Link]([x, residual])
return x
# Batch Normalization'un doğru kullanımı
x = layers.Conv2D(32, 3, use_bias=False)(inputs) # Bias'a gerek yok
x = [Link]()(x)
x = [Link]("relu")(x) # Aktivasyon EN SON
# Xception benzeri mini model oluşturma (Artık bağlantı, BN, SepConv)
inputs = [Link](shape=(180, 180, 3))
x = data_augmentation(inputs)
x = [Link](1./255)(x)
x = layers.Conv2D(32, 5, use_bias=False)(x)
for size in [32, 64, 128, 256, 512]:
residual = x
x = [Link]()(x)
x = [Link]("relu")(x)
x = layers.SeparableConv2D(size, 3, padding="same",
use_bias=False)(x)
# ... (Bir katman daha)
x = layers.MaxPooling2D(3, strides=2, padding="same")(x)
residual = layers.Conv2D(size, 1, strides=2, padding="same",
use_bias=False)(residual)
x = [Link]([x, residual])
4. Öneml Örnekler ve Senaryolar:
Oxford Pets Bölütleme: (200,200,3) g r ş , kodlayıcı (Conv2D+str des) ve kod
çözücü (Conv2DTranspose) le şlenerek (200,200,3) çıktı (mask) üret l r.
M mar Desenler n Etk s : Ked ler/Köpekler sınıflandırmasında, artık bağlantı,
batch norm ve ayrılab l r evr ş m kullanan "m n -Xcept on" model , test
doğruluğunu %83.5'ten %90.8'e çıkarır.
Grad-CAM Örneğ : B r f l resm üzer nde, model n "Afr ka f l " kararını ver rken en
çok f l n kulaklarına ve hortumuna odaklandığı ısı har tası le göster l r.
DL Hafta [Link]
1. Zaman Ser s Türler / T meser es Types
Tahm n / Forecast ng: En yaygın görev (most common task) - ör. hava durumu,
elektr k tüket m (e.g., weather, electr c ty consumpt on)
Sınıflandırma / Class f cat on: Zaman ser s ne kategor k et ket atama (ass gn ng
categor cal labels to t meser es) - ör. bot/ nsan ayrımı (e.g., bot/human
d st nct on)
Olay Tesp t / Event Detect on: Sürekl ver akışında bel rl olayları tanıma
( dent fy ng spec f c events n cont nuous data stream) - ör. "Ok Google" algılama
(e.g., "Ok Google" detect on)
Anomal Tesp t / Anomaly Detect on: Olağandışı durumları tesp t etme
(detect ng unusual s tuat ons) - genell kle gözet ms z öğrenme (usually
unsuperv sed learn ng)
2. Ver Set : Jena Hava Durumu / Dataset: Jena Weather
Kaynak / Source: Max Planck Enst tüsü, Jena, Almanya (Max Planck Inst tute,
Jena, Germany)
Per yot / Per od: 2009-2016 (420,551 ölçüm / measurements)
Frekans / Frequency: 10 dak kada b r (every 10 m nutes)
Özell kler / Features: 14 farklı meteoroloj k parametre (14 d erent
meteorolog cal parameters) - sıcaklık (temperature), basınç (pressure), nem
(hum d ty) vb.
Hedef / Target: 24 saat sonrak sıcaklığı tahm n etme (pred ct ng temperature 24
hours ahead)
3. Ver Hazırlama / Data Preparat on
Bölümlend rme / Spl tt ng: %50 eğ t m (tra n ng), %25 doğrulama (val dat on),
%25 test (test) - zaman sırası korunarak (preserv ng t me order)
Normal zasyon / Normal zat on: Her özell k bağımsız olarak normal ze ed ld
(each feature normal zed ndependently)
Örnek Oluşturma / Sample
Generat on: t meser es_dataset_from_array() kullanılarak 5 günlük (120 saat)
sekanslar oluşturuldu (5-day/120-hour sequences created)
Parametreler / Parameters:
o sampl ng_rate = 6 (saatte b r örnek / one sample per hour)
o sequence_length = 120 (5 gün = 120 saat / 5 days = 120 hours)
o delay = sampl ng_rate * (sequence_length + 24 - 1) (24 saat sonrası hedef /
target 24 hours later)
4. Model Performans Karşılaştırması / Model Performance Compar son
5. Tekn k Detaylar / Techn cal Deta ls
RNN Temeller / RNN Fundamentals
Bellekl Ağlar / Networks w th Memory: Öncek g rd lerden b lg taşıyab l r (Can
carry nformat on from prev ous nputs)
S mpleRNN: Temel RNN yapısı, ancak grad ent kaybolma sorunu var (Bas c RNN
structure, but has van sh ng grad ent problem)
LSTM (Uzun Kısa-Sürel Bellek / Long Short-Term Memory): Taşıma yolu (carry
track) le uzun vadel bağımlılıkları öğreneb l r (Can learn long-term dependenc es
w th carry track)
GRU (Geç tl Tekrarlı B r m / Gated Recurrent Un t): LSTM'n n bas tleşt r lm ş
vers yonu (S mpl f ed vers on of LSTM)
Gel şm ş Tekn kler / Advanced Techn ques
Tekrarlayan Dropout / Recurrent Dropout: Her zaman adımında aynı dropout
maskes kullanılır (Same dropout mask used at every t mestep) - Yar n Gal, 2016
Katmanlı RNN'ler / Stacked RNNs: return_sequences=True le ara katman
çıktıları b r sonrak katmana aktarılır (Intermed ate layer outputs passed to next
layer w th return_sequences=True)
Ç ft Yönlü RNN / B d rect onal RNN: Kronoloj k ve ters kronoloj k şleme yapan
k RNN'n n b rleş m (Comb nat on of two RNNs process ng n chronolog cal and
reverse-chronolog cal order)
6. Kr t k İçgörüler / Cr t cal Ins ghts
Zaman Sırası Öneml / T me Order s Important: Hava tahm n nde yakın
geçm ş, uzak geçm şten daha öneml (In weather forecast ng, recent past s more
mportant than d stant past)
Çev r Değ şmezl ğ / Translat on Invar ance: Hava ver s sabah/akşam farklı
özell klere sah p olduğundan tam olarak geçerl değ l (Not fully val d for weather
data as morn ng/even ng have d erent character st cs)
Dropout Stratej s / Dropout Strategy: RNN'lerde dropout'un zaman boyunca
tutarlı uygulanması gerek yor (Dropout must be appl ed cons stently over t me n
RNNs)
Ver Sınırlaması / Data L m tat on: Tek b r lokasyondan hava tahm n yapmanın
doğal sınırları var (Natural l m tat ons to weather forecast ng from a s ngle
locat on)
Kod/Ver Örnekler / Code/Data Examples
Ver Yükleme ve İnceleme / Data Load ng and Inspect on
import os
import numpy as np
fname = [Link]("jena_climate_2009_2016.csv")
with open(fname) as f:
data = [Link]()
lines = [Link]("\n")
header = lines[0].split(",")
lines = lines[1:]
print(header)
print(len(lines)) # 420,551
#Veri Normalizasyonu / Data Normalization
mean = raw_data[:num_train_samples].mean(axis=0)
raw_data -= mean
std = raw_data[:num_train_samples].std(axis=0)
raw_data /= std
#Zaman Serisi Veri Seti Oluşturma / Timeseries Dataset Creation
from tensorflow import keras
train_dataset = [Link].timeseries_dataset_from_array(
raw_data[:-delay],
targets=temperature[delay:],
sampling_rate=sampling_rate,
sequence_length=sequence_length,
shuffle=True,
batch_size=256,
start_index=0,
end_index=num_train_samples)
#LSTM Modeli / LSTM Model
from [Link] import layers
inputs = [Link](shape=(sequence_length, raw_data.shape[-1]))
x = [Link](16)(inputs)
outputs = [Link](1)(x)
model = [Link](inputs, outputs)
[Link](optimizer="rmsprop", loss="mse", metrics=["mae"])
#Dropout'lu LSTM / LSTM with Dropout
inputs = [Link](shape=(sequence_length, raw_data.shape[-1]))
x = [Link](32, recurrent_dropout=0.25)(inputs)
x = [Link](0.5)(x)
outputs = [Link](1)(x)
model = [Link](inputs, outputs)
DL Hafta [Link]
2. Met n Ön İşleme / Text Preprocess ng
Standartlaştırma / Standard zat on: Küçük harfe çev rme, noktalama
şaretler n kaldırma
Token zat on (kel me ayırma) / Token zat on: Kel me sev yes , n-gram, karakter
sev yes
Kel me ndeksleme / Vocabulary ndex ng: Her benzers z kel meye b r tamsayı
atama
TextVector zat on katmanı / TextVector zat on layer: Keras'ta hızlı ve ver ml
vektörleşt rme
3. Kel me Tems l Yöntemler / Word Representat on Methods
Kel me Çantası (Bag-of-Words) Modeller
Un gram (tekl kel me) / Un gram (s ngle word): Sıra b lg s yok
B gram ( k l kel me grupları) / B gram (two-word groups): Yerel sıra b lg s
korunur
TF-IDF kodlaması / TF-IDF encod ng: Kel me frekanslarını normal ze eder, nad r
kel meler vurgular
Sıralı Modeller (Sequence Models)
RNN'ler / RNNs: Zamansal bağımlılıkları yakalar
LSTM ve GRU / LSTM and GRU: Uzun vadel bağımlılıklar ç n
Transformer / Transformer: Self-attent on mekan zması, paralel şleme
4. Kel me Gömmeler / Word Embedd ngs
One-hot kodlama / One-hot encod ng: Seyrek, yüksek boyutlu, kel meler arası
l şk yok
Öğren lm ş gömmeler / Learned embedd ngs: Yoğun, düşük boyutlu, anlamsal
l şk ler yakalar
Önceden eğ t lm ş gömmeler / Pretra ned embedd ngs: GloVe, Word2Vec -
büyük met n küll yatları üzer nde eğ t lm ş
5. Transformer M mar s / Transformer Arch tecture
Self-attent on (kend ne d kkat) / Self-attent on: Her kel mey d ğer tüm
kel melerle l şk lend r r
Çok kafalı d kkat / Mult -head attent on: Farklı tems l alt uzaylarını öğren r
Poz syonel kodlama / Pos t onal encod ng: Sıra b lg s n enjekte eder
Transformer kodlayıcı / Transformer encoder: Metn zeng n tems llere
dönüştürür
6. Met n Sınıflandırma Deneyler / Text Class f cat on Exper ments
7. Hang Model Ne Zaman Kullanılmalı? / When to Use Wh ch Model?
Kural / Rule: (Eğ t m örnek sayısı) / (Ortalama kel me sayısı) oranına bak
< 1500 se: Kel me çantası b gram model (daha hızlı, daha y )
> 1500 se: Sıralı model (Transformer, RNN)
IMDB ç n: 20000/233 ≈ 86 → b gram model terc h ed lmel (deneylerle
doğrulandı)
8. Mak ne Çev r s / Mach ne Translat on
Ver set / Dataset: İng l zce-İspanyolca çev r ç ftler
RNN tabanlı model / RNN-based model: Kodlayıcı (encoder) + kodçözücü
(decoder) GRU
Transformer tabanlı model / Transformer-based model: Transformer kodlayıcı
+ Transformer kodçözücü
Sonuç / Result: Transformer model %67 doğrulukla GRU model nden (%64)
daha y
Kod/Ver Örnekler / Code/Data Examples
Met n Ver Set Oluşturma / Creat ng Text Dataset
from tensorflow import keras
from [Link] import layers
# TextVectorization katmanı
text_vectorization = TextVectorization(
max_tokens=20000,
output_mode="int",
output_sequence_length=600,
)
# Veri setinden kelime dağarcığını öğrenme
text_only_train_ds = train_ds.map(lambda x, y: x)
text_vectorization.adapt(text_only_train_ds)
Kel me Çantası Model / Bag-of-Words Model
# Bigram + TF-IDF modeli
text_vectorization = TextVectorization(
ngrams=2,
max_tokens=20000,
output_mode="tf_idf",
)
Transformer Kodlayıcı / Transformer Encoder
class TransformerEncoder([Link]):
def __init__(self, embed_dim, dense_dim, num_heads, **kwargs):
super().__init__(**kwargs)
self.embed_dim = embed_dim
self.dense_dim = dense_dim
self.num_heads = num_heads
[Link] = [Link](
num_heads=num_heads, key_dim=embed_dim)
self.dense_proj = [Link]([
[Link](dense_dim, activation="relu"),
[Link](embed_dim),
])
self.layernorm_1 = [Link]()
self.layernorm_2 = [Link]()
Poz syonel Gömme / Pos t onal Embedd ng
class PositionalEmbedding([Link]):
def __init__(self, sequence_length, input_dim, output_dim,
**kwargs):
super().__init__(**kwargs)
self.token_embeddings = [Link](
input_dim=input_dim, output_dim=output_dim)
self.position_embeddings = [Link](
input_dim=sequence_length, output_dim=output_dim)
self.sequence_length = sequence_length
self.input_dim = input_dim
self.output_dim = output_dim
DL Hafta [Link]
1. Met n Üret m / Text Generat on
D l modeller / Language models: B r d z dek sonrak kel mey tahm n etmey
öğren r
Örnekleme stratej ler / Sampl ng strateg es:
o Açgözlü örnekleme / Greedy sampl ng: Her zaman en olası kel mey
seçer (sıkıcı ve tekrarlayıcı)
o Stokast k örnekleme / Stochast c sampl ng: Olasılık dağılımından
örnekler (daha lg nç)
Sıcaklık parametres / Temperature parameter:
o Düşük sıcaklık / Low temperature: Daha öngörüleb l r, daha az rastgele
o Yüksek sıcaklık / H gh temperature: Daha şaşırtıcı, daha yaratıcı, bazen
anlamsız
2. D l Model Eğ t m / Language Model Tra n ng
Sıradan-sıraya modelleme / Sequence-to-sequence model ng: N kel me
ver ld ğ nde, N+1. kel mey tahm n et
Nedensel maskeleme / Causal mask ng: Model sadece geçm ş kel melere
bakab l r
Transformer tabanlı d l model / Transformer-based language model:
Transformer kodçözücü kullanarak
3. Met n Üret m İç n Prat k Uygulama / Pract cal Implementat on for Text
Generat on
Ver set : IMDB f lm ncelemeler
Model: TransformerDecoder + Pos t onalEmbedd ng
Örnekleme: Farklı sıcaklıklarda (0.2, 0.5, 0.7, 1.0, 1.5)
Sonuçlar:
o Sıcaklık=0.2: Tekrarlayıcı, sıkıcı met n
o Sıcaklık=0.7: Dengel , lg nç met n
o Sıcaklık=1.5: Çok rastgele, bazen anlamsız
4. D ğer Üretken Tekn kler / Other Generat ve Techn ques
DeepDream: Görsel halüs nasyonlar, özell kler abartma
S n rsel tarz transfer / Neural style transfer: B r görüntünün çer ğ n başka b r
görüntünün st l yle b rleşt rme
Varyasyonel otokodlayıcılar (VAE'ler) / Var at onal autoencoders (VAEs):
Sürekl latent uzayda görüntü üretme
Üret c çek şmel ağlar (GAN'lar) / Generat ve adversar al networks (GANs):
Gerçekç görüntüler üreten k ağın çek şmes
5. En İy Uygulamalar / Best Pract ces
H perparametre ayarlama / Hyperparameter tun ng
Model toplulukları / Model ensembl ng: B rden fazla model b rleşt rme
Karışık hassas yet eğ t m / M xed-prec s on tra n ng: Bellek kullanımını ve hızı
opt m ze etme
Çoklu GPU/TPU eğ t m / Mult -GPU/TPU tra n ng: Büyük modeller hızlandırma
Kod/Ver Örnekler / Code/Data Examples
Sıcaklığa Göre Olasılık Dağılımını Yen den Ağırlıklandırma / Rewe ght ng Probab l ty
D str but on by Temperature
import numpy as np
def reweight_distribution(original_distribution, temperature=0.5):
distribution = [Link](original_distribution) / temperature
distribution = [Link](distribution)
return distribution / [Link](distribution)
Met n Üret m Ger Çağrısı / Text Generat on Callback
class TextGenerator([Link]):
def __init__(self, prompt, generate_length, model_input_length,
temperatures=(1.,), print_freq=1):
[Link] = prompt
self.generate_length = generate_length
self.model_input_length = model_input_length
[Link] = temperatures
self.print_freq = print_freq
def on_epoch_end(self, epoch, logs=None):
if (epoch + 1) % self.print_freq != 0:
return
for temperature in [Link]:
print("== Generating with temperature", temperature)
sentence = [Link]
for i in range(self.generate_length):
tokenized_sentence = text_vectorization([sentence])
predictions = [Link](tokenized_sentence)
next_token = sample_next(predictions[0, i, :])
sampled_token = tokens_index[next_token]
sentence += " " + sampled_token
print(sentence)
SORULAR
Chapter 4-8: T me Ser es & Fundamentals
1. Wh ch of the follow ng s NOT a typ cal t me ser es task?
A) Forecast ng
B) Class f cat on
C) Event detect on
D) Anomaly detect on
E) Image segmentat on
Answer: E
2. In the Jena weather dataset, what was the sampl ng rate of the or g nal
measurements?
A) Every m nute
B) Every 5 m nutes
C) Every 10 m nutes
D) Every hour
E) Every day
Answer: C
3. What s the pr mary l m tat on of dense networks for t me ser es forecast ng?
A) They are too slow
B) They lose temporal order nformat on
C) They cannot handle numer cal data
D) They requ re too much memory
E) They only work w th mages
Answer: B
4. Wh ch model ach eved the best performance on the Jena temperature
forecast ng task?
A) Dense network
B) 1D convolut onal network
C) LSTM w th dropout
D) S mpleRNN
E) B d rect onal GRU
Answer: C
5. What s the ma n purpose of recurrent dropout n RNNs?
A) To ncrease model capac ty
B) To speed up tra n ng
C) To prevent overf tt ng
D) To reduce memory usage
E) To handle var able-length sequences
Answer: C
6. Why d d b d rect onal RNNs perform poorly on the temperature forecast ng task?
A) They are too computat onally expens ve
B) Recent past matters more than d stant past
C) They cannot handle numer cal data
D) They requ re too much tra n ng data
E) They don't work w th weather data
Answer: B
7. What s the van sh ng grad ent problem n RNNs?
A) Grad ents become too large
B) Grad ents become too small over many t mesteps
C) Grad ents d sappear completely
D) Grad ents change d rect on randomly
E) Grad ents accumulate no se
Answer: B
8. How does LSTM address the van sh ng grad ent problem?
A) By us ng shorter sequences
B) By normal z ng grad ents
C) Through a carry track mechan sm
D) By us ng larger we ght matr ces
E) By sk pp ng some t mesteps
Answer: C
9. What was the val dat on MAE of the common-sense basel ne n the Jena dataset?
A) 1.44°C
B) 1.92°C
C) 2.44°C
D) 3.14°C
E) 4.22°C
Answer: C
10. When stack ng RNN layers n Keras, what parameter must be set for
ntermed ate layers?
A) return_state=True
B) unroll=True
C) go_backwards=True
D) return_sequences=True
E) reset_after=True
Answer: D
Chapter 9-10: Natural Language Process ng
11. Wh ch NLP task nvolves pred ct ng the next word n a sentence?
A) Text class f cat on
B) Sent ment analys s
C) Language model ng
D) Mach ne translat on
E) Named ent ty recogn t on
Answer: C
12. What does the TextVector zat on layer n Keras do?
A) Translates text between languages
B) Converts text to numer cal tensors
C) Summar zes long documents
D) Extracts named ent t es
E) Performs sent ment analys s
Answer: B
13. In bag-of-words models, what nformat on s d scarded?
A) Word frequency
B) Vocabulary s ze
C) Word order
D) Word mean ng
E) Document length
Answer: C
14. What does TF-IDF stand for?
A) Text Frequency - Inverse Document Frequency
B) Term Frequency - Inverse Document Frequency
C) Token Frequency - Inverse Data Frequency
D) Term Frequency - Integrated Document Features
E) Text Features - Inverse Document Features
Answer: B
15. Wh ch word embedd ng method creates vectors that are mostly zeros?
A) Word2Vec
B) GloVe
C) One-hot encod ng
D) FastText
E) BERT embedd ngs
Answer: C
16. What s the key nnovat on of the Transformer arch tecture?
A) Recurrent connect ons
B) Convolut onal f lters
C) Self-attent on mechan sm
D) Random project ons
E) H ghway networks
Answer: C
17. Why does Transformer need pos t onal encod ng?
A) To handle d erent languages
B) Because self-attent on s order-agnost c
C) To reduce model s ze
D) To ncrease tra n ng speed
E) To handle out-of-vocabulary words
Answer: B
18. Accord ng to the heur st c n the book, when should you use a bag-of-b grams
model over a sequence model?
A) Always
B) Never
C) When dataset s very large
D) When (samples/avg_words) < 1500
E) When deal ng w th long documents
Answer: D
19. What s the purpose of mask ng n sequence models?
A) To h de sens t ve nformat on
B) To ncrease model capac ty
C) To gnore padd ng tokens
D) To speed up nference
E) To reduce memory usage
Answer: C
20. Wh ch layer normal zes each sequence ndependently n Transformers?
A) BatchNormal zat on
B) LayerNormal zat on
C) GroupNormal zat on
D) InstanceNormal zat on
E) We ghtNormal zat on
Answer: B
Chapter 10: Generat ve Deep Learn ng
21. What s greedy sampl ng n text generat on?
A) Sampl ng from a un form d str but on
B) Always choos ng the most l kely next word
C) Randomly select ng any word
D) Us ng temperature scal ng
E) Sk pp ng unl kely words
Answer: B
22. What does the temperature parameter control n text generat on?
A) Model tra n ng speed
B) Vocabulary s ze
C) Randomness of generated text
D) Memory usage
E) Batch s ze
Answer: C
23. W th temperature=0.2 n text generat on, what k nd of text would you expect?
A) H ghly creat ve and surpr s ng
B) Repet t ve and pred ctable
C) Completely random
D) Grammat cally ncorrect
E) Very short outputs
Answer: B
24. What s the ma n d erence between VAE and GAN?
A) VAEs are for text, GANs for mages
B) VAEs are faster to tra n
C) VAEs learn a latent space, GANs use adversar al tra n ng
D) GANs can only generate small mages
E) VAEs don't use neural networks
Answer: C
25. What does DeepDream pr mar ly enhance n mages?
A) Resolut on
B) Color balance
C) Patterns and features learned by the network
D) Compress on rat o
E) F le s ze
Answer: C
26. In neural style transfer, what s be ng transferred?
A) The content mage's colors
B) The style mage's texture and patterns
C) The content mage's subjects
D) The style mage's compos t on
E) Both mages' metadata
Answer: B
27. What s causal mask ng n sequence-to-sequence models?
A) Mask ng padd ng tokens
B) Prevent ng the model from see ng future tokens
C) H d ng nput sequences
D) Remov ng stop words
E) Encrypt ng sens t ve data
Answer: B
28. Wh ch model arch tecture dom nated mach ne translat on before Transformers?
A) CNNs
B) RNNs/LSTMs
C) Autoencoders
D) Dec s on trees
E) Markov models
Answer: B
29. What s m xed-prec s on tra n ng?
A) Tra n ng w th mult ple languages
B) Us ng both 16-b t and 32-b t float ng po nt numbers
C) Comb n ng d erent model arch tectures
D) Tra n ng on mult ple tasks s multaneously
E) Us ng both CPU and GPU
Answer: B
30. What s model ensembl ng?
A) Tra n ng one model mult ple t mes
B) Comb n ng pred ct ons from mult ple models
C) Us ng mult ple loss funct ons
D) Tra n ng w th d erent opt m zers
E) Comb n ng d erent datasets
Answer: B