このファイルは、このリポジトリでコードを作業する際にClaude Code (claude.ai/code) にガイダンスを提供します。
uv sync# コードの品質チェック
uv run ruff check .
# コードフォーマット
uv run ruff format .
# 型チェック
uv run mypy .# JVSコーパスの前処理
uv run cmd/preprocess.py --config-name preprocess_jvs
# LibriTTSの前処理
uv run cmd/preprocess.py --config-name preprocess_libritts_r
# FLEURSの前処理
uv run cmd/preprocess.py --config-name preprocess_fleurs_r# Parallel Adapter学習
uv run cmd/train_adapter.py --config-name adapter_layer_6_mhubert_147
# 学習再開(特定のチェックポイントから)
uv run cmd/train_adapter.py checkpoint.resume_from="exp/adapter_layer_6_mhubert_147/checkpoint_199k.pt" --config-name adapter_layer_6_mhubert_147
# Lightning SSL-Vocoder事前学習
uv run cmd/pre_train_vocoder.py --config-name hifigan_pretrain_layer_6_mhubert_147# バッチ推論
uv run cmd/inference_dir.py --config-name infer_dir
# 評価用劣化音声生成
uv run cmd/degrade.py --clean_dir <clean_dir> --noise_dir <noise_dir> --out_dir <out_dir>
# 評価実行
uv run cmd/evaluate.py --clean_dir <clean_dir> --degraded_dir <degraded_dir> --restored_dir <restored_dir> --outfile <output_csv>src/miipher_2/: メインのPythonモジュールcmd/: CLI エントリーポイントconfigs/: Hydra設定ファイル (YAML)exp/: 学習チェックポイント出力先
- HuBERTの特定層に挿入される軽量なフィードフォワードネットワーク
- LayerNorm + Linear + GELU + Linear の構成
- Xavier初期化を0.01スケールで適用
- 事前学習済みmHuBERT-147モデルを使用
- 指定した層(デフォルト6層)の特徴量を抽出
- Parallel Adapterが特定層に挿入される
- HiFi-GANベースの音声合成モデル
- PyTorch Lightningでの実装
- SSL特徴量からメルスペクトログラムを生成
- 大規模データセットの効率的な読み込み
- WebDataset形式での並列処理
- 動的なバッチ生成とシャッフル
src/miipher_2/train/adapter.py: Adapter学習ロジックsrc/miipher_2/utils/infer.py: 推論実行ロジック- Wandb統合による学習監視
- Hydra設定を使用してハイパーパラメータを管理
- 主要設定:
configs/adapter_layer_6_mhubert_147.yaml - チェックポイント機能による学習再開サポート
- 音声データをWebDataset形式で前処理
- HuBERTで特徴抽出(Parallel Adapter適用)
- 抽出した特徴量でFeature Cleanerを学習
- Lightning SSL-Vocoderで音声合成
- 複数の評価指標で性能測定