class_docstr: Applies a linear transformation to incoming data using the weights and
  bias of another :class:`~torch.nn.Module` instance.
class_docstr_tok: ["Applies","a","linear","transformation","to","incoming","data","using","the","weights","and","bias","of","another",":","class",":","`","~torch.nn.Module","`","instance","."]
docstr: :param weight:
      The shared weights.
  :param bias:
      The shared bias.
docstr_tok: [":","param","weight",":","The","shared","weights",".",":","param","bias",":","The","shared","bias","."]
code: def __init__(
      self, weight: Parameter, bias: Optional[Parameter]
  ) -> None:
      """
      :param weight:
          The shared weights.
      :param bias:
          The shared bias.
      """
      super().__init__(weight.size(1), weight.size(0))
  
      self.weight = weight
      self.bias = bias
  
imports: from __future__ import annotations
  import math
  from abc import ABC, abstractmethod
  from typing import Callable, Optional, final
  import torch
  import torch.nn
  from torch import Tensor
  from torch.nn import Module
  from torch.nn.functional import linear
  from torch.nn.parameter import Parameter
  from fairseq2.typing import DataType, Device, finaloverride
label_desc: Use image node_id 1 to create a new TiedProjection object from inherited base classes: Projection with example: obj = TiedProjection(weight, bias)