Source: vis/input_modifiers.py#L0


InputModifier

input modifierを定義するための抽象クラスです。 Optimizer.minimizeでinput modifierを使用すると最適化処理中、最適化される入力値に対して、更新前後(pre, post)に変更を加えることができます。

modifier.pre(seed_input)
# gradient descent update to img
modifier.post(seed_input)

InputModifier.post

post(self, inp)

勾配降下更新後の入力への変更を実装してください。 もし後処理をしない場合、単にこの実装を無視して下さい(i.e., 実装しない)。 デフォルトで引数inpをそのまま返します。

引数:

  • inp: N次元のnumpy array。形状は、channels_firstの場合は(samples, channels, image_dims...)channels_lastの場合は(samples, image_dims..., channels)

戻り値:

編集された入力


InputModifier.pre

pre(self, inp)

勾配降下更新前の入力への変更を実装してください。 もし後処理をしない場合、単にこの実装を無視して下さい(i.e., 実装しない)。 デフォルトで引数inpをそのまま返します。

引数:

  • inp: N次元のnumpy array。形状は、channels_firstの場合は(samples, channels, image_dims...)channels_lastの場合は(samples, image_dims..., channels)

戻り値:

編集された入力


Jitter


Jitter.__init__

__init__(self, jitter=0.05)

入力値の更新前に、ランダムJitterを導入するためのinput modifier実装です。 Jitterは鮮明なActivationMaximization画像を生成することがわかっています。

引数:

  • jitter: 適用されるjitter量をあらわすスカラ値、またはシーケンス。 スカラ値の場合, 同じjitterが画像の全ての次元に適用されます。シーケンスの場合、jitterは画像の次元ごとの値を含むべきです。

[0., 1.]の間の値は画像の寸法に対する比率として解釈されます。(デフォルト値:0.05)


Jitter.post

post(self, inp)

Jitter.pre

pre(self, img)