2017-10-20 68 views
0

我试图通过向我的原始数据添加噪声和随机突变来减少过拟合。Keras:如何改变每个时代的数据

我有变异的训练数据

x, y = generate_data() 

我想每个时期叫它和培训的新的数据我的模型的功能。希望是减少过度配合。

history = model.fit(x, y, epochs=100, batch_size=64) 

什么是最好的方式来改变每个新纪元的数据?

回答

1

只是一个猜测。尝试:

for _ in range(num_epochs): 
    x, y = generate_data() 
    history = model.fit(x, y, epochs=1, batch_size=64) 
0

model.fit有一个洗牌的说法,默认值为True。所以它在每个时代洗牌。

def fit(self, x, y, batch_size=32, epochs=10, verbose=1, callbacks=None, 
      validation_split=0., validation_data=None, shuffle=True, 
      class_weight=None, sample_weight=None, initial_epoch=0, **kwargs) 
+0

这只会随机化数据的顺序。我想每次改变数据 – Karolis

+0

只要你保持你的平衡,对于范围(num_epochs): x,y = generate_data() history = model.fit(x,y,epochs = 1 ,batch_size = 64)'可以工作,但我相信你的请求会导致你的模型的学习过程延迟。它甚至可能不会收敛。 – TheWho

相关问题