title: What does train_data.cache().shuffle(BUFFER_SIZE).batch(BATCH_SIZE).repeat() do?
body: <p>I am following the timeseries/LSTM tutorial for Tensorflow and struggle to understand what this line does as it is not really explained:</p>
  
  <pre><code>train_data.cache().shuffle(BUFFER_SIZE).batch(BATCH_SIZE).repeat()
  </code></pre>
  
  <p>I tried to look up what the different modules do but I fail to understand the complete command and its effect on the dataset.
  Here is the entire tutorial:
  <a href="https://www.tensorflow.org/tutorials/structured_data/time_series#single_step_model" rel="nofollow noreferrer">Click</a></p>