PR #62782: Set `reshuffle_each_iteration` in `Dataset.shuffle()` directly to `True` to avoid confusion
PR #62782: Set `reshuffle_each_iteration` in `Dataset.shuffle()` directly to `True` to avoid confusion

Imported from GitHub PR https://github.com/tensorflow/tensorflow/pull/62782

## Summary

Set the default `reshuffle_each_iteration` value in `tf.data.Dataset.shuffle` method to `True` directly (previous was `None` but was interpreted to `True`) to raise awareness of possible silent data leakage, see discussion #59279.

## Details (copied and cleaned up from #59279)

The `Dataset.shuffle` method might lead to **dangerously silent** data leakage:

In the [Dataset doc](https://www.tensorflow.org/api_docs/python/tf/data/Dataset) under the `shuffle` method, it reads:

> shuffle(
>     buffer_size, seed=None, reshuffle_each_iteration=None, name=None
> )

where the `reshuffle_each_iteration=None` is **super misleading**, as it be easily misinterpreted that reshuffled is off by default (**which is not true at all**).

The `shuffle` method, which called `shuffle_op._shuffle`:
https://github.com/tensorflow/tensorflow/blob/4dacf3f368eb7965e9b5c3bbdd5193986081c3b2/tensorflow/python/data/ops/dataset_ops.py#L1472-L1473
  
which then called `_ShuffleDataset`:
  https://github.com/tensorflow/tensorflow/blob/b756c44e3f3ed52ccb4f05736569b95f4481eea0/tensorflow/python/data/ops/shuffle_op.py#L25-L32
  
which finally inititate the `_ShuffleDataset` class:
https://github.com/tensorflow/tensorflow/blob/b756c44e3f3ed52ccb4f05736569b95f4481eea0/tensorflow/python/data/ops/shuffle_op.py#L35-L50

has the following dangerous definition:
```
if reshuffle_each_iteration is None:
      reshuffle_each_iteration = True
```

As a result, the default `reshuffle_each_iteration = None` would be interpreted to `reshuffle_each_iteration = True` (which is truly unexpected by user).

## TODO list:
- [X] Set the default value of `reshuffle_each_iteration` directly to `True`
- [x] Add warning in docs about possible data leakage related to `reshuffle_each_iteration = True`
~~Issue warning when training/validation datasets are split by using the `shuffle + take/skip` pattern~~ (scheduled for a separate follow-up PR)


Copybara import of the project:

--
ec9557c050b4e627047555f3e171acd731f7fd2b by Haoyu (Daniel) <yanghaoyu97@outlook.com>:

set `reshuffle_each_iteration` directly to `True`

--
efbc98e944890968924a0d8a2867897588f635de by Haoyu (Daniel) <yanghaoyu97@outlook.com>:

add warning in docstring

--
fcf84be0cbf0810ad1443316272c0f0250591627 by Haoyu (Daniel) <yanghaoyu97@outlook.com>:

revise wording

--
134fc245a3f6c9362b04ba8dff3b84e703401549 by Haoyu (Daniel) <yanghaoyu97@outlook.com>:

change default values in API golden files

Merging this change closes #62782

FUTURE_COPYBARA_INTEGRATE_REVIEW=https://github.com/tensorflow/tensorflow/pull/62782 from DanielYang59:warn-shuffle 134fc245a3f6c9362b04ba8dff3b84e703401549
