MMEngine
2 minute read
MMEngine は OpenMMLab によって開発された、PyTorch をベースとした ディープラーニング モデルのトレーニングを行うための基盤 ライブラリです。MMEngine は OpenMMLab アルゴリズム ライブラリの次世代トレーニング アーキテクチャーを実装し、OpenMMLab 内の 30 以上のアルゴリズム ライブラリに統一された実行基盤を提供します。そのコア コンポーネントには、トレーニング エンジン、評価エンジン、およびモジュール管理が含まれます。
Weights and Biases は、専用の WandbVisBackend
を介して MMEngine に直接統合されており、以下のことが可能です。
- トレーニング および 評価 メトリクスを ログに記録する。
- 実験 の config を ログに記録および管理する。
- グラフ、画像、スカラーなどの追加レコードを ログに記録する。
はじめに
openmim
と wandb
をインストールします。
pip install -q -U openmim wandb
!pip install -q -U openmim wandb
次に、mim
を使用して mmengine
と mmcv
をインストールします。
mim install -q mmengine mmcv
!mim install -q mmengine mmcv
WandbVisBackend
を MMEngine Runner で使用する
このセクションでは、mmengine.runner.Runner
を使用して WandbVisBackend
を使用する典型的な ワークフロー を示します。
-
可視化 config から
visualizer
を定義します。from mmengine.visualization import Visualizer # 可視化 config を定義します visualization_cfg = dict( name="wandb_visualizer", vis_backends=[ dict( type='WandbVisBackend', init_kwargs=dict(project="mmengine"), ) ], save_dir="runs/wandb" ) # 可視化 config から visualizer を取得します visualizer = Visualizer.get_instance(**visualization_cfg)
[W&B run 初期化](/ja/ref/python/init/) の入力 パラメータ に、 引数 の 辞書 を `init_kwargs` に渡します。
-
visualizer
でrunner
を初期化し、runner.train()
を呼び出します。from mmengine.runner import Runner # PyTorch のトレーニング ヘルパーである mmengine Runner を構築します runner = Runner( model, work_dir='runs/gan/', train_dataloader=train_dataloader, train_cfg=train_cfg, optim_wrapper=opt_wrapper_dict, visualizer=visualizer, # visualizer を渡します ) # トレーニングを開始します runner.train()
OpenMMLab コンピュータビジョン ライブラリで
WandbVisBackend
を使用するWandbVisBackend
は、MMDetection などの OpenMMLab コンピュータビジョン ライブラリ で 実験 を追跡するためにも簡単に使用できます。# デフォルトの ランタイム config からベース config を継承します _base_ = ["../_base_/default_runtime.py"] # `WandbVisBackend` config 辞書を、 # ベース config からの `visualizer` の `vis_backends` に割り当てます _base_.visualizer.vis_backends = [ dict( type='WandbVisBackend', init_kwargs={ 'project': 'mmdet', 'entity': 'geekyrakshit' }, ), ]
[i18n] feedback_title
[i18n] feedback_question
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.
-