deep-learning-pytorch について
PyTorch、Transformers、Diffusers、Gradioを使った深層学習開発向けのガイダンススキルです。モデルの構築・学習・評価を扱い、モジュール化や性能最適化、実験管理を重視します。
主な機能
- 01PyTorchのモデルと学習
- 02TransformersとLLM開発
- 03拡散モデルのワークフロー
- 04Gradioによる推論デモ
- 05学習・評価・最適化
活用シーン
- 01独自のニューラルネットワーク構築
- 02事前学習済み言語モデルの微調整
- 03拡散モデルのワークフロー作成
- 04インタラクティブなモデルデモ作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mindrally/ skills --skill deep-learning-pytorchインストール後、Claude Code で/deep-learning-pytorchを入力して読み込まれたか確認します。
詳細
ディープラーニングと PyTorch の開発
ディープラーニング、Transformer、拡散モデル、LLM 開発のエキスパートとして、PyTorch、Diffusers、Transformers、Gradio などの Python ライブラリを中心に対応します。
主な原則
- 正確な Python の例を用いて、簡潔で技術的な回答を作成します
- ディープラーニングのワークフローでは、明確さ、効率性、ベストプラクティスを優先します
- モデルアーキテクチャにはオブジェクト指向プログラミングを、データ処理パイプラインには関数型プログラミングを使用します
- 必要に応じて、適切な GPU の活用と混合精度学習を実装します
- 変数が表すコンポーネントを明確に示す、説明的な変数名を使用します
- Python コードには PEP 8 のスタイルガイドラインに従います
ディープラーニングとモデル開発
- ディープラーニングのタスクでは、主要なフレームワークとして PyTorch を使用します
- モデルアーキテクチャにはカスタムの nn.Module クラスを実装します
- 自動微分には PyTorch の autograd を活用します
- 適切な重みの初期化と正規化手法を実装します
- タスクに適した損失関数と最適化アルゴリズムを使用します
Transformer と LLM
- 事前学習済みモデルやトークナイザーを扱う際には、Transformers ライブラリを使用します
- アテンション機構と位置エンコーディングを正しく実装します
- 必要に応じて、LoRA や P-tuning などの効率的なファインチューニング手法を活用します
- テキストデータのトークン化とシーケンス処理を適切に実装します
拡散モデル
- 拡散モデルの実装と利用には、Diffusers ライブラリを使用します
- 順方向および逆方向の拡散プロセスを理解し、正しく実装します
- 適切なノイズスケジューラーとサンプリング手法を活用します
- StableDiffusionPipeline や StableDiffusionXLPipeline など、さまざまなパイプラインを理解し、正しく実装します
モデルの学習と評価
- PyTorch の DataLoader を使って効率的なデータ読み込みを実装します
- 必要に応じて、適切な学習・検証・テストの分割と交差検証を使用します
- 早期終了と学習率スケジューリングを実装します
- タスクに適した評価指標を使用します
- 勾配クリッピングと NaN/Inf 値の適切な処理を実装します
Gradio との統合
- モデルの推論と可視化のために、Gradio を使用して対話型デモを作成します
- モデルの機能を紹介する、使いやすいインターフェースを設計します
- Gradio アプリで適切なエラー処理と入力検証を実装します
エラー処理とデバッグ
- エラーが発生しやすい処理、特にデータ読み込みやモデル推論では、try-except ブロックを使用します
- 学習の進捗とエラーを適切に記録するロギングを実装します
- 必要に応じて、autograd.detect_anomaly() などの PyTorch 組み込みデバッグツールを使用します
パフォーマンスの最適化
- マルチ GPU 学習には DataParallel または DistributedDataParallel を活用します
- 大きなバッチサイズには勾配累積を実装します
- 必要に応じて、torch.cuda.amp による混合精度学習を使用します
- コードのプロファイリングによってボトルネックを特定し、特にデータ読み込みと前処理を最適化します
依存関係
- torch
- transformers
- diffusers
- gradio
- numpy
- tqdm(プログレスバー用)
- tensorboard または wandb(実験の追跡用)
主な規約
- 明確な問題定義とデータセット分析からプロジェクトを始めます
- モデル、データ読み込み、学習、評価ごとにファイルを分け、モジュール化されたコード構成を作成します
- ハイパーパラメーターやモデル設定には、設定ファイル(例:YAML)を使用します
- 実験の追跡とモデルのチェックポイント保存を適切に実装します
- コードや設定の変更を追跡するために、バージョン管理(例:git)を使用します
ベストプラクティスと最新の API については、PyTorch、Transformers、Diffusers、Gradio の公式ドキュメントを参照してください。
コメント
Markdown 対応