Skip to main content

Crate oxigdal_ml_foundation

Crate oxigdal_ml_foundation 

Source
Expand description

§OxiGDAL ML Foundation

Deep learning training infrastructure and model architectures for geospatial machine learning.

This crate provides:

  • Training infrastructure (loops, optimizers, schedulers, losses)
  • Transfer learning and fine-tuning capabilities
  • Model architectures (UNet, ResNet, custom layers)
  • Data augmentation pipelines for geospatial imagery
  • Evaluation metrics and monitoring

§Features

  • std (default): Standard library support
  • pytorch: PyTorch backend for training (requires libtorch)
  • onnx: ONNX export support for trained models
  • cuda: GPU acceleration (requires CUDA)

§Architecture

The crate is organized into several modules:

  • training: Training loops, optimizers, schedulers, and losses
  • transfer: Transfer learning and fine-tuning
  • models: Neural network architectures
  • augmentation: Data augmentation pipelines
  • data: Data pipeline with dataset loaders and batching
  • metrics: Evaluation metrics

§COOLJAPAN Compliance

  • Pure Rust implementation (PyTorch bindings are feature-gated)
  • No unwrap() calls in production code
  • All files under 2000 lines
  • Uses workspace dependencies
  • Uses SciRS2-Core for numerical operations (Pure Rust Policy)

§Example

use oxigdal_ml_foundation::{
    training::TrainingConfig,
    training::training_loop::Trainer,
    models::unet::UNet,
    metrics::Metrics,
};

// Create a UNet model for segmentation (in_channels=3, num_classes=10, depth=4)
let model = UNet::new(3, 10, 4)?;

// Configure training
let config = TrainingConfig {
    learning_rate: 0.001,
    batch_size: 16,
    num_epochs: 100,
    ..Default::default()
};

// Train the model (requires PyTorch feature)
// let trainer = Trainer::new(model, config)?;
// let trained_model = trainer.train(train_data, val_data)?;

Re-exports§

pub use error::Error;
pub use error::Result;

Modules§

augmentation
Data augmentation pipelines for geospatial imagery.
data
Data pipeline for geospatial machine learning.
error
Error types for ML foundation operations.
metrics
Evaluation metrics for machine learning models.
models
Neural network model architectures.
training
Training infrastructure for deep learning models.
transfer
Transfer learning and fine-tuning capabilities.

Constants§

NAME
Library name
VERSION
Library version

Functions§

has_gpu_support
Checks if GPU support is available
has_onnx_export
Checks if ONNX export is available
has_pytorch_backend
Checks if PyTorch backend is available