class_docstr: Learn a weight per channel
  - used to get "fake" previous scene to encode the first one.
code: def forward(
      self, latent_shape: Union[torch.Size, List[int], Tuple[int, ...]]
  ) -> Tensor:
      assert (
          latent_shape[1] == self.weight.shape[1]
      ), "channel length mismatch"
      return self.weight * self.weight.new_ones(latent_shape)
  
imports: import itertools
  import math
  from typing import Generator, List, NamedTuple, Optional, Sequence, Tuple, Union
  import torch
  import torch.nn
  import utils.memoize
  from datamodules.video_data_api import Scenes, VideoData
  from neural.entropy_model import PreviousLatent, VCTEntropyModel
  from torch import Tensor
label_desc: Use image node_id 2 for calling the PerChannelWeight obj's underlying member method code with example usage: obj.forward(latent_shape) and returns: unknown