メインコンテンツまでスキップ

MMEngine

MMEngineはOpenMMLabによって開発された、PyTorchをベースとしたディープラーニングモデルのトレーニング用基盤ライブラリです。MMEngineはOpenMMLabのアルゴリズムライブラリ向けに次世代のトレーニングアーキテクチャーを実装しており、OpenMMLab内の30以上のアルゴリズムライブラリに対して統一された実行基盤を提供します。その核心コンポーネントには、トレーニングエンジン、評価エンジン、モジュール管理が含まれます。

Weights and Biasesは、専用のWandbVisBackendを通じてMMEngineに直接インテグレーションされています。このバックエンドを使用して以下を行うことができます。

  • トレーニングおよび評価メトリクスのログ。
  • 実験設定のログと管理。
  • グラフ、画像、スカラーなどの追加レコードのログ。

はじめに

まず、openmimwandbをインストールする必要があります。その後、openmimを使用してmmenginemmcvをインストールできます。

pip install -q -U openmim wandb
mim install -q mmengine mmcv

WandbVisBackendを使用したMMEngine Runnerの利用

このセクションでは、mmengine.runner.Runnerを使用してWandbVisBackendを利用する典型的なワークフローを示します。

まず、可視化設定からvisualizerを定義します。

from mmengine.visualization import Visualizer

# 可視化設定を定義
visualization_cfg = dict(
name="wandb_visualizer",
vis_backends=[
dict(
type='WandbVisBackend',
init_kwargs=dict(project="mmengine"),
)
],
save_dir="runs/wandb"
)

# 可視化設定からvisualizerを取得
visualizer = Visualizer.get_instance(**visualization_cfg)

:::情報 init_kwargsにはW&B run initializationの入力パラメータの引数辞書を渡します。 :::

次に、visualizerrunnerを初期化し、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()
`WandbVisBackend`を使用してトラッキングされたあなたの実験の一例
WandbVisBackendを使用してトラッキングされたあなたの実験の一例。

OpenMMLabコンピュータビジョンライブラリでWandbVisBackendを使用

WandbVisBackendは、MMDetectionなどのOpenMMLabコンピュータビジョンライブラリを使用して実験をトラッキングするのにも簡単に使用できます。

# デフォルトのランタイム設定からベース設定を継承
_base_ = ["../_base_/default_runtime.py"]

# ベース設定の`visualizer`の`vis_backends`に
# `WandbVisBackend`設定辞書を割り当てる
_base_.visualizer.vis_backends = [
dict(
type='WandbVisBackend',
init_kwargs={
'project': 'mmdet',
'entity': 'geekyrakshit'
},
),
]
Was this page helpful?👍👎