class_docstr: Combine representation by concatenation followed by an aggregation along the same axis.
docstr: Initialize the combination.
  
  :param aggregation:
      the aggregation, or a hint thereof, cf. :data:`class_resolver.contrib.torch.aggregation_resolver`
  :param dim:
      the concatenation and reduction dimension.
docstr_tok: ["Initialize","the","combination",".",":","param","aggregation",":","the","aggregation",",","or","a","hint","thereof",",","cf",".",":","data",":","`","class_resolver.contrib.torch.aggregation_resolver","`",":","param","dim",":","the","concatenation","and","reduction","dimension","."]
code: def __init__(
      self,
      aggregation: Hint[
          Callable[[torch.FloatTensor], torch.FloatTensor]
      ] = None,
      dim: int = -1,
  ) -> None:
      """
      Initialize the combination.
  
      :param aggregation:
          the aggregation, or a hint thereof, cf. :data:`class_resolver.contrib.torch.aggregation_resolver`
      :param dim:
          the concatenation and reduction dimension.
      """
      super().__init__(dim=dim)
      self.dim = dim
      self.aggregation = aggregation_resolver.make(aggregation)
  
imports: import logging
  from abc import ABC, abstractmethod
  from typing import Any, Callable, Iterable, Mapping, Optional, Sequence, Tuple
  import torch
  from class_resolver import ClassResolver, Hint, HintOrType, OptionalKwargs
  from class_resolver.contrib.torch import activation_resolver, aggregation_resolver
  from torch import nn
  from ..utils import ExtraReprMixin, combine_complex, split_complex
label_desc: Use image node_id 1 to create a new ConcatAggregationCombination object from inherited base classes: ConcatCombination with example: obj = ConcatAggregationCombination(aggregation, dim)