Args: ds (DataFlow): input DataFlow. buffer_size (int): size of the buffer. num_reuse (int): duplicate each datapoints several times into the buffer to improve speed, but duplication may hurt your model. shuffle_interval (int):
(self, ds, buffer_size, num_reuse=1, shuffle_interval=None)
| 623 | """ |
| 624 | |
| 625 | def __init__(self, ds, buffer_size, num_reuse=1, shuffle_interval=None): |
| 626 | """ |
| 627 | Args: |
| 628 | ds (DataFlow): input DataFlow. |
| 629 | buffer_size (int): size of the buffer. |
| 630 | num_reuse (int): duplicate each datapoints several times into the buffer to improve |
| 631 | speed, but duplication may hurt your model. |
| 632 | shuffle_interval (int): shuffle the buffer after this many |
| 633 | datapoints were produced from the given dataflow. Frequent shuffle on large buffer |
| 634 | may affect speed, but infrequent shuffle may not provide enough randomness. |
| 635 | Defaults to buffer_size / 3 |
| 636 | """ |
| 637 | ProxyDataFlow.__init__(self, ds) |
| 638 | self.q = deque(maxlen=buffer_size) |
| 639 | if shuffle_interval is None: |
| 640 | shuffle_interval = int(buffer_size // 3) |
| 641 | self.shuffle_interval = shuffle_interval |
| 642 | self.num_reuse = num_reuse |
| 643 | self._inf_ds = RepeatedData(ds, -1) |
| 644 | |
| 645 | def reset_state(self): |
| 646 | self._guard = DataFlowReentrantGuard() |
nothing calls this directly
no test coverage detected