class chainer.training.StandardUpdater(iterator, optimizer, converter=<function concat_examples>, device=None, loss_func=None)[source]

Updaterの標準実装。

 

これは Updaterの標準実装です。1つ以上の訓練データ・セットと1つ以上のOptimizerを受け入れます。デフォルトの更新ルーチンは1つの訓練データ・セットと1つのOptimizerがあると想定しています。ユーザはこの更新ルーチンをこのクラスを継承することでオーバーライド可能です。また update_core() メソッドでオーバーライドすることも可能です。各バッチはデフォルトで、concat_examples() によって入力配列に変換されます。これは converter 引数を設定することで手動で行うことも可能です。

 

Parameters:
  • iterator – 訓練データセットのためのデータセット・イテレータ。文字列をイテレータにマップしている辞書とすることも可能。これが、単にイテレータだった場合、イテレータは'main'という名称で登録されている。
  • optimizer – 更新パラメータのOptimizer. Optimizerへ文字列をマップする辞書とすることも可能。このパラメータが単にOptimizerである場合、このOptimizerは 'main'という名称で登録される。
  • converter –入力配列を構築する変換関数。 各バッチはmain iteratorによって抽出され、 device オプションがこの関数に渡される。concat_examples() がデフォルトで用いられる。
  • device – 訓練データが送られるデバイス。負の値は、ホストメモリ (CPU)を示している。
  • loss_func – 損失関数。main optimizerのターゲットリンクがデフォルトで用いられる。
Variables:
  • converter – 変換関数
  • loss_func –損失関数. この値が Noneの場合、代わりにmain optimizerのターゲットリンクが用いられる。
  • device – 訓練データが送られるデバイス。
  • iteration –現在の 更新が完了数。

 

Methods

connect_trainer(trainer)[source]

Updaterを、このUpdaterを呼び出すTrainerに接続する。

 

このメソッドの一般的な使用方法は、TrainerのReporterへの付加的なリンクを登録することです。このメソッドは Trainerの初期化の最後に呼びだされます。 デフォルト実装では何も行いません。

 

Parameters: trainer (Trainer) – Updaterが登録されたTrainer オブジェクト

 

finalize()[source]

 Updater オブジェクトをファイナライズする。

 

このメソッドは、このUpdaterが保持している各Iteratorのfinalize メソッドを呼び出します。訓練ループの最後に呼び出されます。

 

get_all_optimizers()[source]

このUpdaterの全てのOptimizerの辞書を取得する。

 

Returns: Optimizersに名前をマップしている辞書。
Return type: dict

 

get_iterator(name)[source]

与えられた名称の Dataset iterator を取得する。

 

Parameters: name (str) – DatasetのIteratorの名称
Returns: Parameterで指定された名称に相応するDataset iterator.
Return type: Iterator

 

get_optimizer(name)[source]

与えられた名称のOptimizer を

 

Parameters: name (str) – Optimizerの名称
Returns: Parameterで指定された名称に相応するOptimizer
Return type: Optimizer
serialize(serializer)[source]

オブジェクトのカレント・ステートをシリアル化する。

update()[source]

ターゲットモデルのパラメータを更新する。

 

このメソッドは訓練タスクのための更新式を実装します。訓練タスクにはデータのロード、順方向/逆方向の計算、実際のパラメータの更新処理を含みます。

このメソッドは訓練ループの各反復処理につき1回呼ばれます。 

update_core()[source]

Attributes

epoch
epoch_detail
is_new_epoch
previous_epoch_detail