epsの関するエラー
- RuntimeError: cuDNN does not allow an eps value less than 1e-5.
cudnn.hで「CUDNN_BN_MIN_EPSILON」の定義を見る。
#define CUDNN_BN_MIN_EPSILON 1e-5 // Minimum epsilon allowed to be used in the Batch Normalization formula
epsの値を変更
batch_normalization.pyを編集する。
chainer/batch_normalization.py at master · chainer/chainer · GitHub
# Note: cuDNN v5 requires that eps be greater than 1e-5. Otherwise, an # error will occur. # See CUDNN_BN_MIN_EPSILON value in cudnn.h to verify minimum allowable # value. self.eps = eps if cuda.cudnn_enabled and use_cudnn: if eps < 1e-5: msg = 'cuDNN does not allow an eps value less than 1e-5.' self.eps = 1e-4 #raise RuntimeError(msg)
「1e-4」に変更してみた。この対処法が良いのかはわからないw