def test_average_pool_invalid( device, x_shape, ksize, stride, pad, pad_mode, float_dtype): with pytest.raises(chainerx.DimensionError): chainerx.average_pool( **_create_average_pool_args( chainerx, device, x_shape, ksize, stride, pad, pad_mode, float_dtype))
def test_average_pool_invalid( device, x_shape, ksize, stride, pad, pad_mode, float_dtype): x = numpy.random.uniform(-1, 1, x_shape).astype(float_dtype) x = chainerx.array(x) pad_mode_kwargs = _get_pad_mode_kwargs(pad_mode, True) with pytest.raises(chainerx.DimensionError): chainerx.average_pool( x, ksize=ksize, stride=stride, pad=pad, **pad_mode_kwargs)
def test_average_pool_invalid(device, x_shape, ksize, stride, pad, pad_mode, float_dtype): x = numpy.random.uniform(-1, 1, x_shape).astype(float_dtype) x = chainerx.array(x) pad_mode_kwargs = _get_pad_mode_kwargs(pad_mode, True) with pytest.raises(chainerx.DimensionError): chainerx.average_pool(x, ksize=ksize, stride=stride, pad=pad, **pad_mode_kwargs)
def forward_chainerx(self, inputs): x, = inputs pad_mode_kwargs = _get_pad_mode_kwargs(self.pad_mode, True) y = chainerx.average_pool( x, ksize=self.ksize, stride=self.stride, pad=self.pad, **pad_mode_kwargs) return y,
def forward_chainerx(self, inputs): x, = inputs pad_mode_kwargs = _get_pad_mode_kwargs(self.pad_mode, True) y = chainerx.average_pool(x, ksize=self.ksize, stride=self.stride, pad=self.pad, **pad_mode_kwargs) return y,
def __call__(self, x): h = self.bn1(self.conv1(x)) h = chx.max_pool(chx.maximum(0, h), 3, stride=2) h = self.res2(h) h = self.res3(h) h = self.res4(h) h = self.res5(h) h = chx.average_pool(h, 7, stride=1) h = self.fc(h) return h
def __call__(self, x): h = self.bn1(self.conv1(x)) h = chx.max_pool(chx.maximum(0, h), 3, stride=2) h = self.res2(h) h = self.res3(h) h = self.res4(h) h = self.res5(h) h = chx.average_pool(h, 7, stride=1) h = self.fc(h) return h
def test_average_pool( device, x_shape, ksize, stride, pad, pad_mode, float_dtype): if device.backend.name == 'cuda' and len(ksize) != 2 and len(ksize) != 3: # cuDNN supports only 2 and 3 spatial dimensions. return chainerx.testing.ignore() def create_args(xp): return _create_average_pool_args( xp, device, x_shape, ksize, stride, pad, pad_mode, float_dtype) chainerx.testing.assert_allclose( chainerx.average_pool(**create_args(chainerx)), chainer.functions.average_pooling_nd(**create_args(numpy)).data)
def test_average_pool(device, x_shape, ksize, stride, pad, pad_mode, float_dtype): if device.backend.name == 'cuda' and len(ksize) != 2 and len(ksize) != 3: # cuDNN supports only 2 and 3 spatial dimensions. return chainerx.testing.ignore() def create_args(xp): return _create_average_pool_args(xp, device, x_shape, ksize, stride, pad, pad_mode, float_dtype) chainerx.testing.assert_allclose( chainerx.average_pool(**create_args(chainerx)), chainer.functions.average_pooling_nd(**create_args(numpy)).data)
def forward_chainerx(self, inputs): x, = inputs if x.device.backend.name == 'cuda' and self.ndim not in (2, 3): return chainer.Fallback if self.pad_value == 0: pad_mode = 'zero' elif self.pad_value is None: pad_mode = 'ignore' else: assert False return chainerx.average_pool( x, self.ksize, self.stride, self.pad, pad_mode),
def forward_chainerx(self, inputs): x, = inputs if x.device.backend.name == 'cuda' and self.ndim not in (2, 3): return chainer.Fallback if self.pad_value == 0: pad_mode = 'zero' elif self.pad_value is None: pad_mode = 'ignore' else: assert False return chainerx.average_pool(x, self.ksize, self.stride, self.pad, pad_mode),
def test_average_pool_invalid(device, x_shape, ksize, stride, pad, pad_mode, float_dtype): with pytest.raises(chainerx.DimensionError): chainerx.average_pool( **_create_average_pool_args(chainerx, device, x_shape, ksize, stride, pad, pad_mode, float_dtype))