業務内容や学習データ量に応じたハイパーパラメータの参考値をご提案します。Amazon Bedrockではモデルやタスクによって最適値が異なりますが、下記は一般的なベンチマークです。
自然言語処理 (NLP) タスク
(例:テキスト分類、感情分析、NER)
データ規模 | Epochs | Learning Rate | Early Stopping Patience |
---|---|---|---|
小規模 (1,000~10,000件) | 10~20 | 1e-4 ~ 3e-4 | 3~5 epoch |
中規模 (10,000~100,000件) | 15~30 | 5e-5 ~ 2e-4 | 5~8 epoch |
大規模 (100,000件~) | 20~40 | 1e-5 ~ 1e-4 | 8~12 epoch |
特徴
- 学習率は低めに設定(言語モデルの微調整は急激な更新を避ける)
- Early Stoppingは過学習防止が必須(特に小規模データ)
画像認識 (CV) タスク
(例:画像分類、物体検出)
データ規模 | Epochs | Learning Rate | Early Stopping Patience |
---|---|---|---|
小規模 (1,000~10,000枚) | 20~50 | 1e-3 ~ 1e-2 | 5~10 epoch |
中規模 (10,000~50,000枚) | 30~100 | 1e-4 ~ 1e-3 | 10~15 epoch |
大規模 (50,000枚~) | 50~200+ | 1e-5 ~ 5e-4 | 15~20 epoch |
特徴
- Epoch数が多め(画像データは局所的特徴の学習に時間が必要)
- 学習率はNLPより高めでOK(初期層は凍結することが多いため)
- データ拡張と組み合わせると効果的
レコメンデーションシステム
(例:協調フィルタリング、CTR予測)
データ規模 | Epochs | Learning Rate | Early Stopping Patience |
---|---|---|---|
小規模 | 10~30 | 1e-3 ~ 5e-3 | 5~8 epoch |
中規模 | 20~50 | 1e-4 ~ 1e-3 | 8~12 epoch |
大規模 | 30~100 | 1e-5 ~ 5e-4 | 10~15 epoch |
特徴
- スパースデータが多いため学習率は低めから開始
- Implicit FeedbackデータはEarly Stoppingを厳重に
時系列予測タスク
(例:需要予測、売上予測)
データ規模 | Epochs | Learning Rate | Early Stopping Patience |
---|---|---|---|
小規模 (1年分未満) | 50~150 | 1e-4 ~ 1e-3 | 10~20 epoch |
中規模 (1~3年分) | 100~300 | 1e-5 ~ 5e-4 | 20~30 epoch |
大規模 (3年分~) | 200~500+ | 1e-6 ~ 1e-4 | 30~50 epoch |
特徴
- Epoch数が最も多い(長期依存関係の学習に時間を要する)
- 学習率は非常に低く設定
- Patienceは大きめ(改善が段階的に発生するため)
調整のベストプラクティス
- 初期設定
- 学習率:
1e-4
(NLP/CV) または1e-3
(レコメンド) - Epochs: 中規模データの値を基準
- Early Stopping:
patience=10
から開始
- 学習率:
- 学習率スケジューリング
# Bedrock推奨スケジュール例
{
"type": "linear_decay",
"start_lr": 1e-4,
"end_lr": 1e-6,
"total_steps": total_training_steps
}
- Early Stopping設定例
{
"monitor": "validation_loss",
"patience": 15,
"min_delta": 0.001,
"restore_best_weights": true
}
- データ量に応じた調整指針
- データ量が2倍 → Learning Rateを√2倍増加
- データ量が10倍 → Epochsを20~30%削減
注意事項
- モデル依存性: Titan Text/Imageなど基盤モデルにより最適値が異なります
- タスク固有性: 同じ業務領域でもタスク(例:NER vs 要約)で設定が変化
- 検証頻度: 大規模データでは
validation_freq
を増加(例:1 epoch毎→2 epoch毎) - ベンチマーク: 必ず小規模データ(10%)でハイパラ探索を実施
- Bedrockの制約: 選択したインスタンスタイプ(例:ml.g5.xlarge)で利用可能な最大Epoch数を確認
実際のプロジェクトでは、自動ハイパラ最適化(Hyperparameter Optimization – HPO) を利用し、Bayesian Optimizationによる探索を推奨します。Bedrockの管理コンソールから簡単に設定可能です。
これらの値は出発点としてご活用いただき、実際のデータ分布やビジネス要件に合わせて調整してください。
コメント