trait Dataset
Dataset trait
Source: data.joule:11
trait DatasetDataset trait
Source: data.joule:11
fn len(&self) -> usize;Get dataset length
Source: data.joule:15
fn is_empty(&self) -> boolCheck if dataset is empty
Source: data.joule:18
fn get(&self, index: usize) -> Option<Self::Item>;Get item at index
Source: data.joule:23
struct MapDatasetMap dataset (lazy transformation)
Source: data.joule:27
fn new(dataset: D, transform: F) -> SelfSource: data.joule:36
fn len(&self) -> usizeSource: data.joule:47
fn get(&self, index: usize) -> Option<Self::Item>Source: data.joule:51
struct FilterDatasetFilter dataset
Source: data.joule:57
fn new(dataset: D, predicate: P) -> SelfSource: data.joule:67
fn len(&self) -> usizeSource: data.joule:85
fn get(&self, index: usize) -> Option<Self::Item>Source: data.joule:89
struct ConcatDatasetConcatenated datasets
Source: data.joule:95
fn new(datasets: Vec<D>) -> SelfSource: data.joule:101
fn len(&self) -> usizeSource: data.joule:120
fn get(&self, index: usize) -> Option<Self::Item>Source: data.joule:124
struct SubsetSubset of a dataset
Source: data.joule:146
fn new(dataset: D, indices: Vec<usize>) -> SelfSource: data.joule:152
fn random(dataset: D, size: usize) -> SelfCreate random subset
Source: data.joule:157
fn len(&self) -> usizeSource: data.joule:171
fn get(&self, index: usize) -> Option<Self::Item>Source: data.joule:175
struct TensorDatasetTensor dataset (simple tuple of tensors)
Source: data.joule:181
fn new(tensors: Vec<Tensor>) -> SelfSource: data.joule:186
fn from_xy(x: Tensor, y: Tensor) -> SelfCreate from features and labels
Source: data.joule:199
fn len(&self) -> usizeSource: data.joule:207
fn get(&self, index: usize) -> Option<Self::Item>Source: data.joule:211
trait CollateBatch collate function trait
Source: data.joule:230
fn collate(&self, batch: Vec<T>) -> Self::Output;Source: data.joule:233
struct DefaultCollate;Default collate for tensor tuples
Source: data.joule:237
fn collate(&self, batch: Vec<Vec<Tensor>>) -> Vec<Tensor>Source: data.joule:242
trait SamplerSampler trait
Source: data.joule:258
fn iter(&self) -> Self::Iter;Source: data.joule:261
fn len(&self) -> usize;Source: data.joule:262
struct SequentialSamplerSequential sampler
Source: data.joule:266
fn new(size: usize) -> SelfSource: data.joule:271
fn iter(&self) -> Self::IterSource: data.joule:279
fn len(&self) -> usizeSource: data.joule:283
struct RandomSamplerRandom sampler
Source: data.joule:289
fn new(size: usize, replacement: bool, num_samples: Option<usize>) -> SelfSource: data.joule:294
fn iter(&self) -> Self::IterSource: data.joule:315
fn len(&self) -> usizeSource: data.joule:319
struct BatchSamplerBatch sampler
Source: data.joule:325
fn new(sampler: S, batch_size: usize, drop_last: bool) -> SelfSource: data.joule:332
struct DataLoaderConfigData loader configuration
Source: data.joule:342
fn default() -> SelfSource: data.joule:352
struct DataLoaderData loader for iterating over datasets
Source: data.joule:365
fn new(dataset: D, collate: C, config: DataLoaderConfig) -> SelfCreate new data loader
Source: data.joule:378
fn len(&self) -> usizeGet number of batches
Source: data.joule:389
fn shuffle(&mut self)Shuffle indices (call at start of each epoch)
Source: data.joule:401
fn iter(&self) -> DataLoaderIter<D, C>Source: data.joule:410
struct DataLoaderIterData loader iterator
Source: data.joule:416
fn new(loader: &'a DataLoader<D, C>) -> SelfSource: data.joule:422
fn next(&mut self) -> Option<Self::Item>Source: data.joule:433
trait TransformTransform trait
Source: data.joule:461
fn transform(&self, input: T) -> Self::Output;Source: data.joule:464
struct ComposeCompose multiple transforms
Source: data.joule:468
fn new(transforms: Vec<Box<dyn Transform<T, Output = T>>>) -> SelfSource: data.joule:473
fn transform(&self, mut input: T) -> TSource: data.joule:481
struct NormalizeNormalize transform
Source: data.joule:490
fn new(mean: Vec<f64>, std: Vec<f64>) -> SelfSource: data.joule:496
fn imagenet() -> SelfImageNet normalization
Source: data.joule:501
fn transform(&self, input: Tensor) -> TensorSource: data.joule:513
struct RandomHorizontalFlipRandom horizontal flip
Source: data.joule:522
fn new(p: f64) -> SelfSource: data.joule:527
fn transform(&self, input: Tensor) -> TensorSource: data.joule:536
struct RandomVerticalFlipRandom vertical flip
Source: data.joule:548
fn new(p: f64) -> SelfSource: data.joule:553
fn transform(&self, input: Tensor) -> TensorSource: data.joule:562
struct RandomCropRandom crop
Source: data.joule:574
fn new(size: (usize, usize), padding: usize) -> SelfSource: data.joule:580
fn transform(&self, input: Tensor) -> TensorSource: data.joule:589
struct CenterCropCenter crop
Source: data.joule:610
fn new(size: (usize, usize)) -> SelfSource: data.joule:615
fn transform(&self, input: Tensor) -> TensorSource: data.joule:624
struct ResizeResize
Source: data.joule:637
fn new(size: (usize, usize), mode: &str) -> SelfSource: data.joule:643
fn transform(&self, input: Tensor) -> TensorSource: data.joule:655
struct ColorJitterColor jitter
Source: data.joule:661
fn new(brightness: f64, contrast: f64, saturation: f64, hue: f64) -> SelfSource: data.joule:669
fn transform(&self, input: Tensor) -> TensorSource: data.joule:683
struct RandomRotationRandom rotation
Source: data.joule:720
fn new(degrees: f64) -> SelfSource: data.joule:725
fn with_range(min_degrees: f64, max_degrees: f64) -> SelfSource: data.joule:731
fn transform(&self, input: Tensor) -> TensorSource: data.joule:742
struct ToTensor;To tensor (from numpy-like array)
Source: data.joule:751
fn transform(&self, input: Vec<f64>) -> TensorSource: data.joule:756
struct RandomErasingRandom erasing (cutout)
Source: data.joule:762
fn new(p: f64, scale: (f64, f64), ratio: (f64, f64), value: f64) -> SelfSource: data.joule:770
fn transform(&self, input: Tensor) -> TensorSource: data.joule:779
fn random_split<D: Dataset>(Split dataset into train/val/test
Source: data.joule:817
fn train_test_split<D: Dataset + Clone>(Create train/test split
Source: data.joule:848
fn kfold<D: Dataset + Clone>(Create k-fold cross validation splits
Source: data.joule:861