Ultralytics トレーニングを最適化する仕組みを発見しましょう。早期停止、チェックポイント保存、カスタムロギングの実装方法を学び、AIワークフローを強化しましょう。
ソフトウェア工学と人工知能(AI)の領域において 人工知能(AI)コールバックとは、他のコードの引数として渡される実行可能コードであり、 その後、指定されたタイミングでその引数を実行(呼び戻し)することが期待される。特に フレームワークにおいて、コールバックは開発者が動作をカスタマイズするための不可欠なツールであり、 フレームワークにおいて、 コールバックは開発者がモデルの動作をカスタマイズするための必須ツールである。 モデルトレーニング ループの動作をカスタマイズする上で不可欠なツールです。これらは自動化されたトリガーとして機能し、 トレーニングプロセスの様々な段階(例えばエポックの開始や終了時など)で特定のアクションを実行します。 、トレーニングバッチ、またはトレーニングセッション全体の終了時など、トレーニングプロセスの様々な段階で特定のアクションを実行する自動トリガー、トレーニングバッチ、またはトレーニングセッション全体の終了時など、トレーニングプロセスの様々な段階で特定のアクションを実行する自動トリガーとして機能します。
複雑な ニューラルネットワークの の学習には数時間から 数日かかることもある。コールバックなしでは、学習プロセスは基本的に完了するまで実行される「ブラックボックス」であり、 多くの場合手動での監視が必要となる。コールバックは可観測性と制御を導入し、システムが リアルタイムのパフォーマンス指標に基づいて自己調整することを可能にする。
PyTorchのような高レベルライブラリを使用する場合 PyTorch や TensorFlowを使用する場合、コールバックは最適化アルゴリズムにロジックを注入する方法を提供します。 最適化アルゴリズムにロジックを注入する方法を提供します。例えば、モデルが良好に学習している場合、コールバックは現在の状態を保存するかもしれません。学習が停止した場合、コールバックはリソースを節約するためにプロセスを停止するかもしれません。これにより、機械学習(ML)は 機械学習(ML) ワークフロー をより効率的かつ堅牢にします。
コールバックは汎用性が高く、モデル監視中の様々なタスクに使用できます。 モデル監視 および 最適化の過程で多様なタスクに使用できます。
Ultralytics は堅牢なコールバックシステムをサポートしており、ユーザーはモデルトレーニング中のイベントにフックできます。 YOLO26などのモデルトレーニング中のイベントにフックできます。これは特に、 Ultralytics 上でワークフローを管理し、カスタムロギングや制御ロジックを必要とするユーザーにとって特に有用です。
以下は、トレーニングのエポック終了時にメッセージを出力するカスタムコールバックを定義・登録する簡潔な例です。 Python :
from ultralytics import YOLO
# Define a custom callback function
def on_train_epoch_end(trainer):
"""Callback function to execute at the end of each training epoch."""
print(f"Epoch {trainer.epoch + 1} complete. Current Fitness: {trainer.fitness}")
# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")
# Register the custom callback to the model
model.add_callback("on_train_epoch_end", on_train_epoch_end)
# Train the model with the callback active
model.train(data="coco8.yaml", epochs=3)
関連はしているものの、コールバックとフックを区別することは有用である フック区別することが有用である。PyTorchフレームワークでは、フックは一般的に特定のテンソルに紐づく低レベルな関数である。 tensor 操作やニューラルネットワークの レイヤーに紐付けられ、フォワードパスやバックワードパス中に勾配や出力を検査・変更するものです。一方、コールバックは 通常、トレーニングループに紐付けられたより高レベルの抽象化です。 トレーニングループ イベント(開始、終了、バッチ処理)に紐づく高レベルな抽象化である。
トレーニングワークフローの最適化手法に関する理解を深めたい方に向けて、 ハイパーパラメータ調整 は 論理的な次のステップです。さらに、基盤となる コンピュータビジョン(CV) タスク(例: 物体検出など) を理解することも重要です。 物体検出 や インスタンスセグメンテーション コールバックを介した精密なトレーニング制御が必要な理由について 背景情報を提供します。これらのプロセスを企業レベルで管理するには、 Ultralytics Platform Ultralytics は、これらのコールバック駆動型動作の多くを自動化する統合ソリューションを提供します。