from fastai.gen_doc.nbdoc import * from fastai.basics import * show_doc(DataBunch) show_doc(DataBunch.create) jekyll_warn("You can pass regular pytorch Dataset here, but they'll require more attributes than the basic ones to work with the library. See below for more details.") show_doc(DataBunch.show_batch) show_doc(DataBunch.dl) show_doc(DataBunch.one_batch) show_doc(DataBunch.one_item) show_doc(DataBunch.sanity_check) show_doc(DataBunch.save) show_doc(load_data) jekyll_important("The arguments you passed when you created your first `DataBunch` aren't saved, so you should pass them here if you don't want the default.") jekyll_note("Data cannot be serialized on Windows and then loaded on Linux or vice versa because `Path` object doesn't support this. We will find a workaround for that in v2.") show_doc(DataBunch.export) show_doc(DataBunch.load_empty, full_name='load_empty') show_doc(DataBunch.add_test) show_doc(DataBunch.add_tfm) class ArrayDataset(Dataset): "Sample numpy array dataset" def __init__(self, x, y): self.x, self.y = x, y self.c = 2 # binary label def __len__(self): return len(self.x) def __getitem__(self, i): return self.x[i], self.y[i] train_x = np.random.rand(10, 3, 3) # 10 images (3x3) train_y = np.random.rand(10, 1).round() # binary label valid_x = np.random.rand(10, 3, 3) valid_y = np.random.rand(10, 1).round() train_ds, valid_ds = ArrayDataset(train_x, train_y), ArrayDataset(valid_x, valid_y) data = DataBunch.create(train_ds, valid_ds, bs=2, num_workers=1) data.one_batch() show_doc(DeviceDataLoader) show_doc(DeviceDataLoader.create) show_doc(DeviceDataLoader.add_tfm) show_doc(DeviceDataLoader.remove_tfm) show_doc(DeviceDataLoader.new) show_doc(DeviceDataLoader.proc_batch) show_doc(DatasetType, doc_string=False) show_doc(DeviceDataLoader.collate_fn)