int]*]) -- the size of the window
  * **stride** (*Union**[**int**, **Tuple**[**int**, **int**]**]*)
    -- the stride of the window. Default value is "kernel_size"

  * **ceil_mode** (*bool*) -- when True, will use *ceil* instead
    of *floor* to compute the output shape

Shape:
      * Input: (N, C, H_{in}, W_{in})
  * Output: (N, C, H_{out}, W_{out}), where

       H_{out} = \left\lfloor\frac{H_{in} -
       \text{kernel\_size}[0]}{\text{stride}[0]} + 1\right\rfloor

       W_{out} = \left\lfloor\frac{W_{in} -
       \text{kernel\_size}[1]}{\text{stride}[1]} + 1\right\rfloor

Examples:
  >>> # power-2 pool of square window of size=3, stride=2
  >>> m = nn.LPPool2d(2, 3, stride=2)
  >>> # pool of non-square window of power 1.2
  >>> m = nn.LPPool2d(1.2, (3, 2), stride=(2, 1))
  >>> input = torch.randn(20, 16, 50, 32)
  >>> output = m(input)
