deep-ml

Getting Started

  • Installation
    • Requirements
    • Basic Installation
    • With GPU Support
    • Development Installation
    • Optional Dependencies
      • Distributed Training
      • Experiment Tracking
      • Data Augmentation
    • Verifying Installation
  • Quick Start Guide
    • Image Classification Example
      • Step 1: Prepare Data
      • Step 2: Define Model and Task
      • Step 3: Setup Optimizer and Loss
      • Step 4: Create Trainer
      • Step 5: Train the Model
      • Step 6: Make Predictions
    • Semantic Segmentation Example
    • Using Accelerate Trainer
    • Learning Rate Scheduling
    • Experiment Tracking
    • Next Steps
  • Tutorials
    • Tutorial 1: Image Classification
      • Full Code
    • Tutorial 2: Transfer Learning
    • Tutorial 3: Semantic Segmentation
    • Tutorial 4: Multi-GPU Training
    • Tutorial 5: Hyperparameter Tuning
    • Tutorial 6: Model Deployment
      • Export to TorchScript
      • Export to ONNX
      • Simple Inference Server
    • Next Steps

User Guide

  • Trainers
    • FabricTrainer
      • Features
      • Basic Usage
      • Configuration Options
      • Training Method
      • Advanced: Multi-Node Training
    • AcceleratorTrainer
      • Features
      • Basic Usage
      • Accelerator Configuration
      • Using Accelerate CLI
    • Learner (Deprecated)
    • Choosing a Trainer
    • Common Training Patterns
      • Gradient Accumulation
      • Gradient Clipping
      • Learning Rate Scheduling
      • Resume Training
      • Checkpoint Management
  • Tasks
    • Task Overview
    • ImageClassification
      • Basic Usage
      • Parameters
      • Methods
      • Output Format
    • MultiLabelImageClassification
      • Basic Usage
      • Example Use Case
      • Output Format
    • Segmentation
      • Binary Segmentation
      • Multiclass Segmentation
      • Parameters
      • Methods
      • Output Format
    • ImageRegression
      • Basic Usage
      • Example Use Cases
      • Methods
    • NeuralNetTask
      • Basic Usage
    • Creating Custom Tasks
    • Task Comparison
    • Best Practices
  • Datasets
    • ImageDataFrameDataset
      • Basic Usage
      • Parameters
      • Multi-Target Example
    • ImageRowDataFrameDataset
      • Basic Usage
      • Parameters
    • SegmentationDataFrameDataset
      • Basic Usage
      • Parameters
      • Training vs Inference Mode
    • ImageListDataset
      • Basic Usage
      • Parameters
    • Custom Loading Functions
    • Data Augmentation
      • Using torchvision
      • Using Albumentations (for Segmentation)
    • Best Practices
    • Example: Complete Pipeline
  • Losses
    • Jaccard Loss (IoU Loss)
      • Mathematical Definition
      • Usage Example
    • RMSE Loss
      • Mathematical Definition
    • Weighted BCE With Logits Loss
      • Use Case
    • Contrastive Loss
      • Usage Example
      • Mathematical Definition
    • Angular Penalty Softmax Loss
      • Usage Example
      • Loss Type Comparison
    • Combining Losses
      • Weighted Combination
      • Multi-Task Loss
    • Loss Selection Guide
      • Classification
      • Segmentation
      • Regression
      • Metric Learning
    • Best Practices
  • Metrics
    • Classification Metrics
      • Accuracy
      • Binary Accuracy
    • Segmentation Metrics
      • IoU (Intersection over Union)
      • Dice Coefficient
      • Pixel Accuracy
    • Custom Metrics
    • Using Multiple Metrics
    • Metric Logging
    • Best Practices
    • Example: Complete Metrics Setup
  • Experiment Tracking
    • TensorBoard Logger
      • Basic Usage
      • View Results
      • Features
    • MLflow Logger
      • Installation
      • Basic Usage
      • View Results
      • Remote Tracking Server
      • Features
    • Weights & Biases Logger
      • Installation
      • Basic Usage
      • Authentication
      • Features
    • Custom Logger
    • Comparing Loggers
    • Logging Images
    • Logging Hyperparameters
      • Manual Logging
    • Logging Custom Metrics
    • Best Practices
    • Example: Complete Setup
  • Visualization
    • Visualizing Datasets
      • From DataLoader
      • From Dataset
      • From Folder
      • From DataFrame
    • Visualizing Predictions
      • Classification
      • Segmentation
      • Regression
    • Custom Plotting
      • Plot Images Grid
      • Plot with Colored Titles
      • Plot with Bounding Boxes
    • Image Transformations
      • Denormalization
      • Tensor to Image
    • Saving Visualizations
      • Save Predictions to Files
      • Save Segmentation Masks
      • Create Prediction Videos
    • Advanced Visualization
      • Attention Maps
      • Feature Maps
      • Grad-CAM
    • Best Practices

API Reference

  • deepml
    • deepml package
      • Subpackages
        • deepml.geospatial package
        • deepml.metrics package
        • deepml.model_arch package
      • Submodules
      • deepml.accelerator_trainer module
        • AcceleratorTrainer
      • deepml.base module
        • BaseLearner
      • deepml.constants module
      • deepml.datasets module
        • ImageRowDataFrameDataset
        • ImageDataFrameDataset
        • ImageListDataset
        • SegmentationDataFrameDataset
      • deepml.fabric_trainer module
        • FabricTrainer
      • deepml.losses module
        • JaccardLoss
        • RMSELoss
        • WeightedBCEWithLogitsLoss
        • ContrastiveLoss
        • AngularPenaltySMLoss
      • deepml.lr_scheduler_utils module
        • setup_one_cycle_lr_scheduler_with_warmup()
      • deepml.tasks module
        • Task
        • NeuralNetTask
        • Segmentation
        • ImageRegression
        • ImageClassification
        • MultiLabelImageClassification
      • deepml.tracking module
        • MLExperimentLogger
        • TensorboardLogger
        • MLFlowLogger
        • WandbLogger
      • deepml.trainer module
        • Learner
      • deepml.transforms module
        • AlbumentationTorchTranforms
        • ImageInverseTransform
        • ImageNetInverseTransform
        • DivideBy255
        • MulticlassSegmentationTargetTransform
      • deepml.utils module
        • create_text_image()
        • transform_target()
        • transform_input()
        • get_random_samples_batch_from_loader()
        • get_random_samples_batch_from_dataset()
        • blend()
      • deepml.visualize module
        • plot_images()
        • plot_images_with_title()
        • plot_images_with_bboxes()
        • show_images_from_loader()
        • show_images_from_dataset()
        • show_images_from_folder()
        • show_images_from_dataframe()
      • Module contents
  • deepml package
    • Subpackages
      • deepml.geospatial package
        • Submodules
        • deepml.geospatial.utils module
        • Module contents
      • deepml.metrics package
        • Submodules
        • deepml.metrics.classification module
        • deepml.metrics.commons module
        • deepml.metrics.segmentation module
        • Module contents
      • deepml.model_arch package
        • Submodules
        • deepml.model_arch.dlinknet module
        • deepml.model_arch.refine_net module
        • deepml.model_arch.unet module
        • Module contents
    • Submodules
    • deepml.accelerator_trainer module
      • AcceleratorTrainer
        • AcceleratorTrainer.__init__()
        • AcceleratorTrainer.fit()
        • AcceleratorTrainer.fit_temp()
    • deepml.base module
      • BaseLearner
        • BaseLearner.__init__()
        • BaseLearner.set_optimizer()
        • BaseLearner.set_criterion()
        • BaseLearner.set_lr_scheduler_policy()
        • BaseLearner.load_optimizer_state()
        • BaseLearner.load_lr_schedular_state()
        • BaseLearner.create_state_dict()
        • BaseLearner.save()
        • BaseLearner.init_metrics()
        • BaseLearner.update_metrics()
        • BaseLearner.update_metrics_with_simple_moving_average()
        • BaseLearner.write_metrics_to_logger()
        • BaseLearner.write_lr()
        • BaseLearner.log_metrics()
        • BaseLearner.fit()
        • BaseLearner.predict()
    • deepml.constants module
    • deepml.datasets module
      • ImageRowDataFrameDataset
        • ImageRowDataFrameDataset.dataframe
        • ImageRowDataFrameDataset.target_column
        • ImageRowDataFrameDataset.samples
        • ImageRowDataFrameDataset.image_size
        • ImageRowDataFrameDataset.transform
        • ImageRowDataFrameDataset.__init__()
        • ImageRowDataFrameDataset.__getitem__()
        • ImageRowDataFrameDataset.__len__()
      • ImageDataFrameDataset
        • ImageDataFrameDataset.dataframe
        • ImageDataFrameDataset.image_file_name_column
        • ImageDataFrameDataset.target_columns
        • ImageDataFrameDataset.image_dir
        • ImageDataFrameDataset.transforms
        • ImageDataFrameDataset.samples
        • ImageDataFrameDataset.target_transform
        • ImageDataFrameDataset.open_file_func
        • ImageDataFrameDataset.__init__()
        • ImageDataFrameDataset.__len__()
        • ImageDataFrameDataset.__getitem__()
      • ImageListDataset
        • ImageListDataset.image_dir
        • ImageListDataset.images
        • ImageListDataset.transforms
        • ImageListDataset.open_file_func
        • ImageListDataset.__init__()
        • ImageListDataset.__len__()
        • ImageListDataset.__getitem__()
      • SegmentationDataFrameDataset
        • SegmentationDataFrameDataset.dataframe
        • SegmentationDataFrameDataset.image_dir
        • SegmentationDataFrameDataset.mask_dir
        • SegmentationDataFrameDataset.image_col
        • SegmentationDataFrameDataset.mask_col
        • SegmentationDataFrameDataset.albu_torch_transforms
        • SegmentationDataFrameDataset.target_transform
        • SegmentationDataFrameDataset.samples
        • SegmentationDataFrameDataset.train
        • SegmentationDataFrameDataset.open_file_func
        • SegmentationDataFrameDataset.__init__()
        • SegmentationDataFrameDataset.__len__()
        • SegmentationDataFrameDataset.__getitem__()
    • deepml.fabric_trainer module
      • FabricTrainer
        • FabricTrainer.__init__()
        • FabricTrainer.fit()
        • FabricTrainer.predict()
        • FabricTrainer.predict_class()
        • FabricTrainer.show_predictions()
    • deepml.losses module
      • JaccardLoss
        • JaccardLoss.activation
        • JaccardLoss.__init__()
        • JaccardLoss.forward()
      • RMSELoss
        • RMSELoss.mse
        • RMSELoss.eps
        • RMSELoss.__init__()
        • RMSELoss.forward()
      • WeightedBCEWithLogitsLoss
        • WeightedBCEWithLogitsLoss.w_p
        • WeightedBCEWithLogitsLoss.w_n
        • WeightedBCEWithLogitsLoss.__init__()
        • WeightedBCEWithLogitsLoss.forward()
      • ContrastiveLoss
        • ContrastiveLoss.margin
        • ContrastiveLoss.distance_func
        • ContrastiveLoss.label_transform
        • ContrastiveLoss.__init__()
        • ContrastiveLoss.forward()
      • AngularPenaltySMLoss
        • AngularPenaltySMLoss.s
        • AngularPenaltySMLoss.m
        • AngularPenaltySMLoss.loss_type
        • AngularPenaltySMLoss.in_features
        • AngularPenaltySMLoss.out_features
        • AngularPenaltySMLoss.fc
        • AngularPenaltySMLoss.eps
        • AngularPenaltySMLoss.__init__()
        • AngularPenaltySMLoss.forward()
    • deepml.lr_scheduler_utils module
      • setup_one_cycle_lr_scheduler_with_warmup()
    • deepml.tasks module
      • Task
        • Task.__init__()
        • Task.model
        • Task.model_dir
        • Task.device
        • Task.model_file_name
        • Task.move_input_to_device()
        • Task.transform_input()
        • Task.transform_target()
        • Task.transform_output()
        • Task.predict_batch()
        • Task.train_step()
        • Task.eval_step()
        • Task.predict()
        • Task.predict_class()
        • Task.show_predictions()
        • Task.write_prediction_to_logger()
        • Task.evaluate()
      • NeuralNetTask
        • NeuralNetTask.__init__()
        • NeuralNetTask.predict_batch()
        • NeuralNetTask.train_step()
        • NeuralNetTask.eval_step()
        • NeuralNetTask.predict()
        • NeuralNetTask.predict_class()
        • NeuralNetTask.show_predictions()
        • NeuralNetTask.transform_target()
        • NeuralNetTask.transform_output()
        • NeuralNetTask.write_prediction_to_logger()
        • NeuralNetTask.evaluate()
      • Segmentation
        • Segmentation.mode
        • Segmentation.num_classes
        • Segmentation.threshold
        • Segmentation.class_index_to_color
        • Segmentation.palette
        • Segmentation.__init__()
        • Segmentation.predict_batch()
        • Segmentation.save_prediction()
        • Segmentation.predict_class()
        • Segmentation.show_predictions()
        • Segmentation.transform_target()
        • Segmentation.transform_output()
        • Segmentation.decode_segmentation_mask()
        • Segmentation.log_prediction()
        • Segmentation.write_prediction_to_logger()
      • ImageRegression
        • ImageRegression.__init__()
        • ImageRegression.show_predictions()
        • ImageRegression.transform_target()
        • ImageRegression.transform_output()
        • ImageRegression.write_prediction_to_logger()
        • ImageRegression.predict_class()
      • ImageClassification
        • ImageClassification._classes
        • ImageClassification.__init__()
        • ImageClassification.predict_class()
        • ImageClassification.transform_target()
        • ImageClassification.transform_output()
        • ImageClassification.show_predictions()
        • ImageClassification.write_prediction_to_logger()
      • MultiLabelImageClassification
        • MultiLabelImageClassification._classes
        • MultiLabelImageClassification.__init__()
        • MultiLabelImageClassification.predict_class()
        • MultiLabelImageClassification.transform_target()
        • MultiLabelImageClassification.transform_output()
    • deepml.tracking module
      • MLExperimentLogger
        • MLExperimentLogger.__init__()
        • MLExperimentLogger.log_params()
        • MLExperimentLogger.log_metric()
        • MLExperimentLogger.log_artifact()
        • MLExperimentLogger.log_model()
        • MLExperimentLogger.log_image()
      • TensorboardLogger
        • TensorboardLogger.writer
        • TensorboardLogger.__init__()
        • TensorboardLogger.log_params()
        • TensorboardLogger.log_metric()
        • TensorboardLogger.log_artifact()
        • TensorboardLogger.log_model()
        • TensorboardLogger.log_image()
      • MLFlowLogger
        • MLFlowLogger.mlflow
        • MLFlowLogger.log_model_weights
        • MLFlowLogger.__init__()
        • MLFlowLogger.log_params()
        • MLFlowLogger.log_metric()
        • MLFlowLogger.log_artifact()
        • MLFlowLogger.log_model()
        • MLFlowLogger.log_image()
      • WandbLogger
        • WandbLogger.wandb
        • WandbLogger.delete_intermediate_artifacts_versions
        • WandbLogger.__init__()
        • WandbLogger.log_params()
        • WandbLogger.log_metric()
        • WandbLogger.log_artifact()
        • WandbLogger.log_model()
        • WandbLogger.log_image()
    • deepml.trainer module
      • Learner
        • Learner.epochs_completed
        • Learner.best_val_loss
        • Learner.history
        • Learner.logger
        • Learner.__init__()
        • Learner.set_optimizer()
        • Learner.set_criterion()
        • Learner.set_lr_scheduler()
        • Learner.save()
        • Learner.validate()
        • Learner.set_predictor()
        • Learner.fit()
        • Learner.predict()
        • Learner.predict_class()
        • Learner.extract_features()
        • Learner.show_predictions()
    • deepml.transforms module
      • AlbumentationTorchTranforms
        • AlbumentationTorchTranforms.__init__()
      • ImageInverseTransform
        • ImageInverseTransform.__init__()
      • ImageNetInverseTransform
        • ImageNetInverseTransform.__init__()
      • DivideBy255
      • MulticlassSegmentationTargetTransform
        • MulticlassSegmentationTargetTransform.__init__()
    • deepml.utils module
      • create_text_image()
      • transform_target()
      • transform_input()
      • get_random_samples_batch_from_loader()
      • get_random_samples_batch_from_dataset()
      • blend()
    • deepml.visualize module
      • plot_images()
      • plot_images_with_title()
      • plot_images_with_bboxes()
      • show_images_from_loader()
      • show_images_from_dataset()
      • show_images_from_folder()
      • show_images_from_dataframe()
    • Module contents

Additional Resources

  • Examples
    • Image Classification
      • CIFAR-10 with ResNet
      • Transfer Learning
    • Semantic Segmentation
      • Binary Segmentation
      • Multiclass Segmentation
    • Image Regression
      • Age/Depth Estimation
    • Distributed Training
      • FabricTrainer Example
      • AcceleratorTrainer Example
      • Multi-GPU Training
    • Experiment Tracking
      • MLflow Integration
      • Weights & Biases
    • Custom Metrics
      • Implementing Custom Metrics
    • Project Structure
      • Recommended Structure
      • Example train.py
      • Run Training
    • More Examples
    • Community Examples
  • Frequently Asked Questions
    • General Questions
      • What is deep-ml?
      • Why use deep-ml instead of pure PyTorch?
      • How does deep-ml compare to PyTorch Lightning?
    • Installation & Setup
      • What Python version is required?
      • Do I need CUDA for deep-ml?
      • Can I use deep-ml with Apple Silicon (M1/M2)?
    • Training
      • How do I resume training from a checkpoint?
      • How do I use mixed precision training?
      • How do I implement gradient accumulation?
      • My training is slow. How can I speed it up?
      • How do I handle class imbalance?
    • Distributed Training
      • How do I train on multiple GPUs?
      • Can I train across multiple machines?
      • What’s the difference between DP and DDP?
    • Data & Datasets
      • How do I use custom datasets?
      • How do I handle large datasets?
      • How do I apply data augmentation?
    • Models
      • Can I use any PyTorch model?
      • How do I use a pre-trained model?
      • How do I freeze layers?
    • Errors & Debugging
      • CUDA out of memory error
      • Validation loss is NaN
      • Model not learning (loss not decreasing)
    • Performance
      • How many epochs should I train?
      • What learning rate should I use?
    • Compatibility
      • What PyTorch version is required?
      • Does deep-ml work with torch.compile?
      • Can I use deep-ml with other libraries?
    • Getting Help
      • Where can I get help?
      • How do I report a bug?
      • How do I request a feature?
    • Contributing
  • Changelog
    • Version 0.3.0 (Upcoming)
    • Version 0.2.0
    • Version 0.1.0
  • Migration Guide
    • Migrating from Learner to FabricTrainer
      • Old Code
      • New Code
      • Key Differences
    • Breaking Changes
      • Version 0.3.0
      • Version 0.2.0
    • Future Plans
      • Version 0.4.0 (Planned)
      • Version 0.5.0 (Planned)
  • Contributing
    • Getting Started
      • Fork and Clone
      • Setup Development Environment
    • Code Style
      • Format Code
      • Docstrings
    • Testing
      • Run Tests
      • Write Tests
      • Test Coverage
    • Pull Request Process
      • 1. Create Feature Branch
      • 2. Make Changes
      • 3. Commit Changes
      • 4. Push and Create PR
      • PR Checklist
    • Areas to Contribute
      • Bug Fixes
      • New Features
      • Documentation
      • Tests
      • Examples
    • Code Review
      • What We Look For
      • Review Process
    • Release Process
      • Versioning
      • Release Checklist
    • Community Guidelines
      • Code of Conduct
      • Communication
    • Recognition
deep-ml
  • Search


© Copyright 2026, Sagar Rathod.

Built with Sphinx using a theme provided by Read the Docs.