Skip to main content
MMEngine d’OpenMMLab est une bibliothèque de base pour entraîner des modèles de deep learning basés sur PyTorch. MMEngine met en œuvre une architecture d’entraînement de nouvelle génération pour la bibliothèque d’algorithmes d’OpenMMLab, en fournissant une base d’exécution unifiée pour plus de 30 bibliothèques d’algorithmes au sein d’OpenMMLab. Ses composants principaux incluent le moteur d’entraînement, le moteur d’évaluation et la gestion des modules. W&B est directement intégré à MMEngine via un WandbVisBackend dédié, qui peut être utilisé pour
  • journaliser les métriques d’entraînement et d’évaluation.
  • journaliser et gérer les configurations d’expérience.
  • journaliser des enregistrements supplémentaires, tels que des graphes, des images, des scalaires, etc.

Prise en main

Installez openmim et wandb.
pip install -q -U openmim wandb
Installez ensuite mmengine et mmcv avec mim.
mim install -q mmengine mmcv

Utiliser WandbVisBackend avec le Runner MMEngine

Cette section montre un flux de travail type avec WandbVisBackend en utilisant mmengine.runner.Runner.
  1. Définissez un visualizer à partir d’une configuration de visualisation.
    from mmengine.visualization import Visualizer
    
    # définir la configuration de visualisation
    visualization_cfg = dict(
        name="wandb_visualizer",
        vis_backends=[
            dict(
                type='WandbVisBackend',
                init_kwargs=dict(project="mmengine"),
            )
        ],
        save_dir="runs/wandb"
    )
    
    # obtenir le visualizer à partir de la configuration de visualisation
    visualizer = Visualizer.get_instance(**visualization_cfg)
    
    Passez à init_kwargs un dictionnaire d’arguments correspondant aux paramètres d’entrée de l’initialisation d’un run W&B.
  2. Initialisez un runner avec le visualizer, puis appelez runner.train().
    from mmengine.runner import Runner
    
    # construire le Runner mmengine, un utilitaire d'entraînement pour PyTorch
    runner = Runner(
        model,
        work_dir='runs/gan/',
        train_dataloader=train_dataloader,
        train_cfg=train_cfg,
        optim_wrapper=opt_wrapper_dict,
        visualizer=visualizer, # passer le visualizer
    )
    
    # démarrer l'entraînement
    runner.train()
    

Utilisez WandbVisBackend avec les bibliothèques OpenMMLab de vision par ordinateur

WandbVisBackend s’utilise aussi facilement pour suivre les expériences avec des bibliothèques OpenMMLab de vision par ordinateur, comme MMDetection.
# hériter des configurations de base des configurations d'exécution par défaut
_base_ = ["../_base_/default_runtime.py"]

# Assigner le dict de configuration `WandbVisBackend` aux
# `vis_backends` du `visualizer` depuis les configurations de base
_base_.visualizer.vis_backends = [
    dict(
        type='WandbVisBackend',
        init_kwargs={
            'project': 'mmdet',
            'entity': 'geekyrakshit'
        },
    ),
]