From 73d4b11aa2a9c7f7184e598b3c42770b1571756b Mon Sep 17 00:00:00 2001 From: Guillaume Lagrange Date: Thu, 22 Aug 2024 11:52:56 -0400 Subject: [PATCH] Add a dataset/dataloader/batcher usage section (#2161) * Add a dataset/dataloader/batcher usage section * Fix typos --- burn-book/book.toml | 3 + burn-book/src/building-blocks/dataset.md | 271 +++++++++++++++++++++- burn-book/src/building-blocks/dataset.png | Bin 0 -> 101316 bytes 3 files changed, 271 insertions(+), 3 deletions(-) create mode 100755 burn-book/src/building-blocks/dataset.png diff --git a/burn-book/book.toml b/burn-book/book.toml index c3819d882..7e712a02c 100644 --- a/burn-book/book.toml +++ b/burn-book/book.toml @@ -11,3 +11,6 @@ language = "en" multilingual = false src = "src" title = "The Burn Book 🔥" + +[output.html] +mathjax-support = true diff --git a/burn-book/src/building-blocks/dataset.md b/burn-book/src/building-blocks/dataset.md index e7f2a6cda..70ba3bf27 100644 --- a/burn-book/src/building-blocks/dataset.md +++ b/burn-book/src/building-blocks/dataset.md @@ -1,8 +1,13 @@ # Dataset -In most deep learning training performed on datasets (with perhaps the exception of reinforcement -learning), it is essential to provide a convenient and performant API. The dataset trait is quite -similar to the dataset abstract class in PyTorch: +At its core, a dataset is a collection of data typically related to a specific analysis or +processing task. The data modality can vary depending on the task, but most datasets primarily +consist of images, texts, audio or videos. + +This data source represents an integral part of machine learning to successfully train a model. Thus, +it is essential to provide a convenient and performant API to handle your data. Since this process +varies wildly from one problem to another, it is defined as a trait that should be implemented on +your type. The dataset trait is quite similar to the dataset abstract class in PyTorch: ```rust, ignore pub trait Dataset: Send + Sync { @@ -133,3 +138,263 @@ multiple times over the dataset and only checkpoint when done. You can consider dataset as the number of iterations before performing checkpointing and running the validation. There is nothing stopping you from returning different items even when called with the same `index` multiple times. + +## How Is The Dataset Used? + +During training, the dataset is used to access the data samples and, for most use cases in +supervised learning, their corresponding ground-truth labels. Remember that the `Dataset` trait +implementation is responsible to retrieve the data from its source, usually some sort of data +storage. At this point, the dataset could be naively iterated over to provide the model a single +sample to process at a time, but this is not very efficient. + +Instead, we collect multiple samples that the model can process as a _batch_ to fully leverage +modern hardware (e.g., GPUs - which have impressing parallel processing capabilities). Since each +data sample in the dataset can be collected independently, the data loading is typically done in +parallel to further speed things up. In this case, we parallelize the data loading using a +multi-threaded `BatchDataLoader` to obtain a sequence of items from the `Dataset` implementation. +Finally, the sequence of items is combined into a batched tensor that can be used as input to a +model with the `Batcher` trait implementation. Other tensor operations can be performed during this +step to prepare the batch data, as is done [in the basic workflow guide](../basic-workflow/data.md). +The process is illustrated in the figure below for the MNIST dataset. + +Burn Data Loading Pipeline + +Although we have conveniently implemented the +[`MnistDataset`](https://github.com/tracel-ai/burn/blob/main/crates/burn-dataset/src/vision/mnist.rs) +used in the guide, we'll go over its implementation to demonstrate how the `Dataset` and `Batcher` +traits are used. + +The [MNIST dataset](http://yann.lecun.com/exdb/mnist/) of handwritten digits has a training set of +60,000 examples and a test set of 10,000 examples. A single item in the dataset is represented by a +\\(28 \times 28\\) pixels black-and-white image (stored as raw bytes) with its corresponding label +(a digit between \\(0\\) and \\(9\\)). This is defined by the `MnistItemRaw` struct. + +```rust, ignore +# #[derive(Deserialize, Debug, Clone)] +struct MnistItemRaw { + pub image_bytes: Vec, + pub label: u8, +} +``` + +With single-channel images of such low resolution, the entire training and test sets can be loaded +in memory at once. Therefore, we leverage the already existing `InMemDataset` to retrieve the raw +images and labels data. At this point, the image data is still just a bunch of bytes, but we want to +retrieve the _structured_ image data in its intended form. For that, we can define a `MapperDataset` +that transforms the raw image bytes to a 2D array image (which we convert to float while we're at +it). + +```rust, ignore +const WIDTH: usize = 28; +const HEIGHT: usize = 28; + +# /// MNIST item. +# #[derive(Deserialize, Serialize, Debug, Clone)] +pub struct MnistItem { + /// Image as a 2D array of floats. + pub image: [[f32; WIDTH]; HEIGHT], + + /// Label of the image. + pub label: u8, +} + +struct BytesToImage; + +impl Mapper for BytesToImage { + /// Convert a raw MNIST item (image bytes) to a MNIST item (2D array image). + fn map(&self, item: &MnistItemRaw) -> MnistItem { + // Ensure the image dimensions are correct. + debug_assert_eq!(item.image_bytes.len(), WIDTH * HEIGHT); + + // Convert the image to a 2D array of floats. + let mut image_array = [[0f32; WIDTH]; HEIGHT]; + for (i, pixel) in item.image_bytes.iter().enumerate() { + let x = i % WIDTH; + let y = i / HEIGHT; + image_array[y][x] = *pixel as f32; + } + + MnistItem { + image: image_array, + label: item.label, + } + } +} + +type MappedDataset = MapperDataset, BytesToImage, MnistItemRaw>; + +# /// The MNIST dataset consists of 70,000 28x28 black-and-white images in 10 classes (one for each digits), with 7,000 +# /// images per class. There are 60,000 training images and 10,000 test images. +# /// +# /// The data is downloaded from the web from the [CVDF mirror](https://github.com/cvdfoundation/mnist). +pub struct MnistDataset { + dataset: MappedDataset, +} +``` + +To construct the `MnistDataset`, the data source must be parsed into the expected `MappedDataset` +type. Since both the train and test sets use the same file format, we can separate the functionality +to load the `train()` and `test()` dataset. + +```rust, ignore + +impl MnistDataset { + /// Creates a new train dataset. + pub fn train() -> Self { + Self::new("train") + } + + /// Creates a new test dataset. + pub fn test() -> Self { + Self::new("test") + } + + fn new(split: &str) -> Self { + // Download dataset + let root = MnistDataset::download(split); + + // Parse data as vector of images bytes and vector of labels + let images: Vec> = MnistDataset::read_images(&root, split); + let labels: Vec = MnistDataset::read_labels(&root, split); + + // Collect as vector of MnistItemRaw + let items: Vec<_> = images + .into_iter() + .zip(labels) + .map(|(image_bytes, label)| MnistItemRaw { image_bytes, label }) + .collect(); + + // Create the MapperDataset for InMemDataset to transform + // items (MnistItemRaw -> MnistItem) + let dataset = InMemDataset::new(items); + let dataset = MapperDataset::new(dataset, BytesToImage); + + Self { dataset } + } + +# /// Download the MNIST dataset files from the web. +# /// Panics if the download cannot be completed or the content of the file cannot be written to disk. +# fn download(split: &str) -> PathBuf { +# // Dataset files are stored un the burn-dataset cache directory +# let cache_dir = dirs::home_dir() +# .expect("Could not get home directory") +# .join(".cache") +# .join("burn-dataset"); +# let split_dir = cache_dir.join("mnist").join(split); +# +# if !split_dir.exists() { +# create_dir_all(&split_dir).expect("Failed to create base directory"); +# } +# +# // Download split files +# match split { +# "train" => { +# MnistDataset::download_file(TRAIN_IMAGES, &split_dir); +# MnistDataset::download_file(TRAIN_LABELS, &split_dir); +# } +# "test" => { +# MnistDataset::download_file(TEST_IMAGES, &split_dir); +# MnistDataset::download_file(TEST_LABELS, &split_dir); +# } +# _ => panic!("Invalid split specified {}", split), +# }; +# +# split_dir +# } +# +# /// Download a file from the MNIST dataset URL to the destination directory. +# /// File download progress is reported with the help of a [progress bar](indicatif). +# fn download_file>(name: &str, dest_dir: &P) -> PathBuf { +# // Output file name +# let file_name = dest_dir.as_ref().join(name); +# +# if !file_name.exists() { +# // Download gzip file +# let bytes = download_file_as_bytes(&format!("{URL}{name}.gz"), name); +# +# // Create file to write the downloaded content to +# let mut output_file = File::create(&file_name).unwrap(); +# +# // Decode gzip file content and write to disk +# let mut gz_buffer = GzDecoder::new(&bytes[..]); +# std::io::copy(&mut gz_buffer, &mut output_file).unwrap(); +# } +# +# file_name +# } +# +# /// Read images at the provided path for the specified split. +# /// Each image is a vector of bytes. +# fn read_images>(root: &P, split: &str) -> Vec> { +# let file_name = if split == "train" { +# TRAIN_IMAGES +# } else { +# TEST_IMAGES +# }; +# let file_name = root.as_ref().join(file_name); +# +# // Read number of images from 16-byte header metadata +# let mut f = File::open(file_name).unwrap(); +# let mut buf = [0u8; 4]; +# let _ = f.seek(SeekFrom::Start(4)).unwrap(); +# f.read_exact(&mut buf) +# .expect("Should be able to read image file header"); +# let size = u32::from_be_bytes(buf); +# +# let mut buf_images: Vec = vec![0u8; WIDTH * HEIGHT * (size as usize)]; +# let _ = f.seek(SeekFrom::Start(16)).unwrap(); +# f.read_exact(&mut buf_images) +# .expect("Should be able to read image file header"); +# +# buf_images +# .chunks(WIDTH * HEIGHT) +# .map(|chunk| chunk.to_vec()) +# .collect() +# } +# +# /// Read labels at the provided path for the specified split. +# fn read_labels>(root: &P, split: &str) -> Vec { +# let file_name = if split == "train" { +# TRAIN_LABELS +# } else { +# TEST_LABELS +# }; +# let file_name = root.as_ref().join(file_name); +# +# // Read number of labels from 8-byte header metadata +# let mut f = File::open(file_name).unwrap(); +# let mut buf = [0u8; 4]; +# let _ = f.seek(SeekFrom::Start(4)).unwrap(); +# f.read_exact(&mut buf) +# .expect("Should be able to read label file header"); +# let size = u32::from_be_bytes(buf); +# +# let mut buf_labels: Vec = vec![0u8; size as usize]; +# let _ = f.seek(SeekFrom::Start(8)).unwrap(); +# f.read_exact(&mut buf_labels) +# .expect("Should be able to read labels from file"); +# +# buf_labels +# } +} +``` + +Since the `MnistDataset` simply wraps a `MapperDataset` instance with `InMemDataset`, we can easily +implement the `Dataset` trait. + +```rust, ignore +impl Dataset for MnistDataset { + fn get(&self, index: usize) -> Option { + self.dataset.get(index) + } + + fn len(&self) -> usize { + self.dataset.len() + } +} +``` + +The only thing missing now is the `Batcher`, which we already went over +[in the basic workflow guide](../basic-workflow/data.md). The `Batcher` takes a list of `MnistItem` +retrieved by the dataloader as input and returns a batch of images as a 3D tensor along with their +targets. diff --git a/burn-book/src/building-blocks/dataset.png b/burn-book/src/building-blocks/dataset.png new file mode 100755 index 0000000000000000000000000000000000000000..a66adb86da1dc81bbd4f3f89608515aba9afd288 GIT binary patch literal 101316 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 literal 0 HcmV?d00001