title: Keras: is there an easy way to mutate (shuffle) data in/out of the training set between epochs?
body: <p>Without arguing the pros and cons of whether to actually do this, I'm curious if anyone has created or knows of a simple way to mutate the training data between epochs during the fitting of a model using keras.</p>
  <p>Example: I have 100 vectors and output features that I'm using to train a model. I randomly pick 80 of them for the training set, setting the other 20 aside for validation, and then run:</p>
  <pre><code>model.fit(train_vectors,train_features,validation_data=(test_vectors,test_features)) 
  </code></pre>
  <p>Keras fitting allows one to shuffle the order of the training data with <code>shuffle=True</code> but this just randomly changes the order of the training data. It might be fun to randomly pick just 40 vectors from the training set, run an epoch, then randomly pick another 40 vectors, run another epoch, etc.</p>