Sentetik Data Üretme Örneği

Python programlama dili kullanarak üretken model örneği

Örneğin, aşağıdaki kod parçası, üretken model kullanarak MNIST rakam veri setindeki rakamların yeniden şekillendirilmiş sürümlerini oluşturacaktır:

import numpy as np
import matplotlib.pyplot as plt

from tensorflow.keras.datasets import mnist
from tensorflow.keras.layers import Input, Dense, Reshape, Flatten
from tensorflow.keras.models import Model
from tensorflow.keras.optimizers import Adam

# Veri setini yükle
(x_train, _), (_, _) = mnist.load_data()

# Verileri [0, 1] aralığına ölçeklendir
x_train = x_train / 255

# Üretken model oluştur
generator_input = Input(shape=(100,))
generator_output = Dense(128, activation='relu')(generator_input)
generator_output = Dense(784, activation='sigmoid')(generator_output)
generator_output = Reshape((28, 28))(generator_output)
generator = Model(generator_input, generator_output)

# Modeli derle
generator.compile(loss='binary_crossentropy', optimizer=Adam(lr=0.0002, beta_1=0.5))

# Verileri öğren
generator.fit(np.random.randn(1000, 100), x_train[:1000], epochs=100, batch_size=32, verbose=0)

# Yeni veri örnekleri üret
new_data = generator.predict(np.random.randn(10, 100))

# Yeni veri örneklerini göster
fig, axes = plt.subplots(nrows=1, ncols=10, figsize=(20, 2))
for i in range(10):
    axes[i].imshow(new_data[i], cmap='gray')
    axes[i].axis('off')
plt.show()

Bu kod parçası, MNIST rakam veri setindeki rakamların üretken model kullanarak oluşturulmuş sürümlerini gösterecektir. Bu örnek, TensorFlow kütüphanesinde bulunan Keras API’sini kullanarak üretken modeli oluşturur ve verileri öğrenir. Daha sonra, predict() yöntemi kullanılarak yeni veri örnekleri üretilir ve matplotlib kütüphanesi kullanılarak görselleştirilir.