Variables:
      * weight (torch.Tensor) -- the learnable weights of the
        module of shape (\text{out_features}, \text{in1_features},
        \text{in2_features}). The values are initialized from
        \mathcal{U}(-\sqrt{k}, \sqrt{k}), where k =
        \frac{1}{\text{in1_features}}
  * **bias** -- the learnable bias of the module of shape
    (\text{out\_features}). If "bias" is "True", the values are
    initialized from \mathcal{U}(-\sqrt{k}, \sqrt{k}), where k =
    \frac{1}{\text{in1\_features}}

Examples:
  >>> m = nn.Bilinear(20, 30, 40)
  >>> input1 = torch.randn(128, 20)
  >>> input2 = torch.randn(128, 30)
  >>> output = m(input1, input2)
  >>> print(output.size())
  torch.Size([128, 40])
