MCPcopy Index your code
hub / github.com/tensorpack/tensorpack / FakeData

Class FakeData

tensorpack/dataflow/raw.py:14–53  ·  view source on GitHub ↗

Generate fake data of given shapes

Source from the content-addressed store, hash-verified

12
13
14class FakeData(RNGDataFlow):
15 """ Generate fake data of given shapes"""
16
17 def __init__(self, shapes, size=1000, random=True, dtype='float32', domain=(0, 1)):
18 """
19 Args:
20 shapes (list): a list of lists/tuples. Shapes of each component.
21 size (int): size of this DataFlow.
22 random (bool): whether to randomly generate data every iteration.
23 Note that merely generating the data could sometimes be time-consuming!
24 dtype (str or list): data type as string, or a list of data types.
25 domain (tuple or list): (min, max) tuple, or a list of such tuples
26 """
27 super(FakeData, self).__init__()
28 self.shapes = shapes
29 self._size = int(size)
30 self.random = random
31 self.dtype = [dtype] * len(shapes) if isinstance(dtype, six.string_types) else dtype
32 self.domain = [domain] * len(shapes) if isinstance(domain, tuple) else domain
33 assert len(self.dtype) == len(self.shapes)
34 assert len(self.domain) == len(self.domain)
35
36 def __len__(self):
37 return self._size
38
39 def __iter__(self):
40 if self.random:
41 for _ in range(self._size):
42 val = []
43 for k in range(len(self.shapes)):
44 v = self.rng.rand(*self.shapes[k]) * (self.domain[k][1] - self.domain[k][0]) + self.domain[k][0]
45 val.append(v.astype(self.dtype[k]))
46 yield val
47 else:
48 val = []
49 for k in range(len(self.shapes)):
50 v = self.rng.rand(*self.shapes[k]) * (self.domain[k][1] - self.domain[k][0]) + self.domain[k][0]
51 val.append(v.astype(self.dtype[k]))
52 for _ in range(self._size):
53 yield copy.copy(val)
54
55
56class DataFromQueue(DataFlow):

Callers 5

get_configFunction · 0.90
remote.pyFile · 0.85
serialize.pyFile · 0.85
get_dataFunction · 0.85
get_dataFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected