reduce_window#
- ivy.reduce_window(operand, init_value, computation, window_dimensions, /, *, window_strides=1, padding='VALID', base_dilation=1, window_dilation=1)[source]#
Apply a reduction function to all elements in each window of an array.
- Parameters:
operand (
Union[Array,NativeArray]) – An array representing the base area on which the window is going to slide over.init_value (
Union[int,float]) – The starting value for the reduction.computation (
Callable) – The reduction function to apply to elements in each window.window_dimensions (
Union[int,Sequence[int]]) – A sequence containing the window dimensions.window_strides (
Union[int,Sequence[int]], default:1) – A sequence containing the window strides.padding (
Union[str,int,Sequence[Tuple[int,int]]], default:'VALID') – Either the string ‘SAME’ (padding with zeros evenly), the string ‘VALID’ (no padding), or a sequence of n (low, high) integer pairs that give the padding to apply before and after each spatial dimension.base_dilation (
Union[int,Sequence[int]], default:1) – A sequence containing the base dilation values.window_dilation (
Union[int,Sequence[int]], default:1) – A sequence containing the window dilation values.
- Return type:
- Returns:
ret – The result of the pooling-like operation.
Examples
>>> x = ivy.array([[1, 2, 3, 4], >>> [5, 6, 7, 8], >>> [9, 10, 11, 12]]) >>> ivy.reduce_window(x, 0, ivy.add, (2, 2)) ivy.array([[14, 18, 22], [30, 34, 38]])
- Array.reduce_window(self, init_value, computation, window_dimensions, /, *, window_strides=1, padding='VALID', base_dilation=1, window_dilation=1)[source]#
Apply a reduction function to all elements in each window of an array.
- Parameters:
self (
Array) – An array representing the base area on which the window is going to slide over.init_value (
Union[int,float]) – The starting value for the reduction.computation (
Callable) – The reduction function to apply to elements in each window.window_dimensions (
Union[int,Sequence[int]]) – A sequence containing the window dimensions.window_strides (
Union[int,Sequence[int]], default:1) – A sequence containing the window strides.padding (
Union[str,int,Sequence[Tuple[int,int]]], default:'VALID') – Either the string ‘SAME’ (padding with zeros evenly), the string ‘VALID’ (no padding), or a sequence of n (low, high) integer pairs that give the padding to apply before and after each spatial dimension.base_dilation (
Union[int,Sequence[int]], default:1) – A sequence containing the base dilation values.window_dilation (
Union[int,Sequence[int]], default:1) – A sequence containing the window dilation values.
- Return type:
Array- Returns:
ret – The result of the pooling-like operation.
Examples
>>> x = ivy.array([[1, 2, 3, 4], >>> [5, 6, 7, 8], >>> [9, 10, 11, 12]]) >>> x.reduce_window(0, ivy.sum, (2, 2)) ivy.array([[32.]])
- Container.reduce_window(self, init_value, computation, window_dimensions, /, *, window_strides=1, padding='VALID', base_dilation=1, window_dilation=1, key_chains=None, to_apply=True, prune_unapplied=False, map_sequences=False)[source]#
ivy.Container instance method variant of ivy.reduce_window. This method simply wraps the function, and so the docstring for ivy.reduce_window also applies to this method with minimal changes.
- Parameters:
self (
Container) – A container representing the base areas on which the window is going to slide over.init_value (
Union[int,float,Container]) – The starting value for the reduction.computation (
Union[Callable,Container]) – The reduction function to apply to elements in each window.window_dimensions (
Union[int,Sequence[int],Container]) – A sequence containing the window dimensions.window_strides (
Union[int,Sequence[int],Container], default:1) – A sequence containing the window strides.padding (
Union[str,int,Sequence[Tuple[int,int]],Container], default:'VALID') – Either the string ‘SAME’ (padding with zeros evenly), the string ‘VALID’ (no padding), or a sequence of n (low, high) integer pairs that give the padding to apply before and after each spatial dimension.base_dilation (
Union[int,Sequence[int],Container], default:1) – A sequence containing the base dilation values.window_dilation (
Union[int,Sequence[int],Container], default:1) – A sequence containing the window dilation values.
- Return type:
Container- Returns:
ret – The result of the pooling-like operation.
Examples
>>> x = ivy.Container( ... a=ivy.array([[1, 2, 3, 4], ... [5, 6, 7, 8], ... [9, 10, 11, 12]]), ... b=ivy.array([[13, 14, 15, 16], ... [17, 18, 19, 20], ... [21, 22, 23, 24]]) ... ) >>> x.reduce_window(0, ivy.sum, (2, 2)) { a: ivy.array([[21 25 29] [33 37 41] [45 49 53]]), b: ivy.array([[63 67 71] [75 79 83] [87 91 95]]) }