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

spaCy

spaCyは、高速で正確なモデルを簡単に扱える「産業強度」のNLPライブラリです。spaCy v3以降では、Weights and Biasesをspacy trainと組み合わせて使用することで、spaCyモデルのトレーニングメトリクスを追跡したり、モデルとデータセットを保存・バージョン管理することができます。そして、設定に数行を追加するだけで実現できます!

はじめに:モデルのトラッキングと保存

1. wandb ライブラリをインストールしてログイン

pip install wandb
wandb login

2) spaCy設定ファイルにWandbLoggerを追加

spaCyの設定ファイルは、ロギングだけでなく、トレーニングのすべての側面を指定するために使用されます。GPU割り当て、オプティマイザーの選択、データセットのパスなどです。最小限、[training.logger]の下で、キー@loggersに値"spacy.WandbLogger.v3"と、project_nameを指定する必要があります。

備考

spaCyトレーニング設定ファイルの機能や、トレーニングをカスタマイズするために渡すことができる他のオプションについては、spaCyのドキュメントをご覧ください。

[training.logger]
@loggers = "spacy.WandbLogger.v3"
project_name = "my_spacy_project"
remove_config_values = ["paths.train", "paths.dev", "corpora.train.path", "corpora.dev.path"]
log_dataset_dir = "./corpus"
model_log_interval = 1000
名前説明
project_namestr. Weights & Biasesのプロジェクトの名前。プロジェクトがまだ存在しない場合は自動的に作成されます。
remove_config_valuesList[str] . 設定から除外する値のリスト。初期値は []です。
model_log_intervalOptional int. 初期値はNoneです。設定された場合、モデルのバージョン管理アーティファクトが有効化されます。モデルチェックポイントのロギング間隔を設定してください。初期値はNoneです。
log_dataset_dirOptional str. パスが指定されている場合、トレーニング開始時にデータセットがアーティファクトとしてアップロードされます。初期値はNoneです。
entityOptional str . 指定された場合、特定のエンティティでrunが作成されます。
run_nameOptional str . 指定された場合、指定された名前でrunが作成されます。

3) トレーニングを開始する

WandbLoggerをspaCyトレーニング設定に追加したら、通常通りspacy trainを実行できます。

python -m spacy train \
config.cfg \
--output ./output \
--paths.train ./train \
--paths.dev ./dev

トレーニングが始まると、トレーニングrunのW&Bページへのリンクが出力され、このリンクからWeights & Biases Web UIの実験トラッキングダッシュボードにアクセスできるようになります。

Was this page helpful?👍👎