افزایش داده ها تکنیکی است که برای افزایش مصنوعی اندازه یک مجموعه داده با ایجاد نسخه های اصلاح شده از داده های موجود استفاده می شود. این کار با اعمال تغییر شکل های مختلف بر روی تصاویر انجام می شود، مانند چرخش های تصادفی، ترجمه ها، تلنگرها و تغییرات در روشنایی و کنتراست. هدف از افزایش داده، قرار دادن یک مدل در معرض تغییرات مختلف تصویر یکسان است که به قویتر شدن مدل و کمتر مستعد برازش بیش از حد کمک میکند. معمولاً در یادگیری عمیق استفاده میشود، جایی که مقادیر زیادی از دادههای برچسبگذاری شده برای آموزش مؤثر مدلها مورد نیاز است.
چیز پیچیده ای نیست این یک مثال ساده اش هست:
train_datagen = ImageDataGenerator(
shear_range=0.3,
zoom_range=0.35,
validation_split=0.2)
validation_datagen = ImageDataGenerator(
shear_range=0.3,
zoom_range=0.35)
validation_set = validation_datagen.flow(X_test, y_test,
batch_size=50)
training_set = train_datagen.flow(X_train, y_train,
batch_size=50)
model.fit_generator(training_set,callbacks=[tensorboard, checkpoint], shuffle=True,verbose=1,
steps_per_epoch= 500,
epochs = 1000,
validation_data = validation_set,
validation_steps= 100)
خوب هر چیزی که نیاز دارید با توجه به نسخه ای از کراس که نصب کردید می تونید استفاده کنید مواردی هم که وجود نداره به سادگی خودتون بنویسید مثالی در این پست قرار داده شده .