Crate axonml_data

Crate axonml_data 

Source
Expand description

axonml-data - Data Loading Utilities

Provides data loading infrastructure for training neural networks:

  • Dataset trait for defining data sources
  • DataLoader for batched iteration with parallel loading
  • Samplers for controlling data access patterns
  • Transforms for data augmentation

§Example

use axonml_data::prelude::*;

// Define a simple dataset
struct MyDataset {
    data: Vec<(Tensor<f32>, Tensor<f32>)>,
}

impl Dataset for MyDataset {
    type Item = (Tensor<f32>, Tensor<f32>);

    fn len(&self) -> usize {
        self.data.len()
    }

    fn get(&self, index: usize) -> Option<Self::Item> {
        self.data.get(index).cloned()
    }
}

// Create a DataLoader
let loader = DataLoader::new(dataset, 32)
    .shuffle(true)
    .num_workers(4);

for batch in loader.iter() {
    // Process batch
}

@version 0.1.0 @author AutomataNexus Development Team

Re-exports§

pub use collate::Collate;
pub use collate::DefaultCollate;
pub use collate::StackCollate;
pub use dataloader::Batch;
pub use dataloader::DataLoader;
pub use dataloader::DataLoaderIter;
pub use dataset::ConcatDataset;
pub use dataset::Dataset;
pub use dataset::InMemoryDataset;
pub use dataset::MapDataset;
pub use dataset::SubsetDataset;
pub use dataset::TensorDataset;
pub use sampler::BatchSampler;
pub use sampler::RandomSampler;
pub use sampler::Sampler;
pub use sampler::SequentialSampler;
pub use sampler::SubsetRandomSampler;
pub use sampler::WeightedRandomSampler;
pub use transforms::Compose;
pub use transforms::Normalize;
pub use transforms::RandomNoise;
pub use transforms::ToTensor;
pub use transforms::Transform;

Modules§

collate
Collate - Batch Assembly Functions
dataloader
DataLoader - Batched Data Iteration
dataset
Dataset Trait - Core Data Abstraction
prelude
Common imports for data loading.
sampler
Samplers - Data Access Patterns
transforms
Transforms - Data Augmentation and Preprocessing