class_docstr: The layer that finds maximum over the whole three-dimensional image,
  allowing for multiple largest elements to be found.
  If you set the number of largest elements to 1, it will function
  exactly as MaxPooling3d with the filter size equal to the input image size.
  
  :param input_layers: The input layer and the number of its output. If no number
      is specified, the first output will be connected.
  :type input_layers: object, tuple(object, int)
  :param max_count: The number of largest elements to be found. Note that these 
      do not have to be equal to each other; the top max_count elements
      will be returned.    
  :type max_count: int, > 0
  :param name: The layer name.
  :type name: str, default=None
  
  .. rubric:: Layer inputs:
  
  (1) the set of images, of dimensions:
  
      - **BatchLength** * **BatchWidth** * **ListSize** - the number of images in the set
      - **Height** - the images' height
      - **Width** - the images' width
      - **Depth** - the images' depth
      - **Channels** - the number of channels the image format uses
      
  .. rubric:: Layer outputs:
  
  (1) the maximum values found.
      The dimensions:
  
      - **BatchLength**, **BatchWidth**, **ListSize**, **Channels** are equal to the input dimensions
      - **Height**, **Depth** are 1
      - **Width** is max_count
  
  (2) (optional): the indices of the values found in the input blob.
      The dimensions are the same.
class_docstr_tok: ["The","layer","that","finds","maximum","over","the","whole","three-dimensional","image",",","allowing","for","multiple","largest","elements","to","be","found",".","If","you","set","the","number","of","largest","elements","to","1",",","it","will","function","exactly","as","MaxPooling3d","with","the","filter","size","equal","to","the","input","image","size",".",":","param","input_layers",":","The","input","layer","and","the","number","of","its","output",".","If","no","number","is","specified",",","the","first","output","will","be","connected",".",":","type","input_layers",":","object",",","tuple","(","object",",","int",")",":","param","max_count",":","The","number","of","largest","elements","to","be","found",".","Note","that","these","do","not","have","to","be","equal","to","each","other",";","the","top","max_count","elements","will","be","returned",".",":","type","max_count",":","int",",",">","0",":","param","name",":","The","layer","name",".",":","type","name",":","str",",","default=None","..","rubric",":",":","Layer","inputs",":","(","1",")","the","set","of","images",",","of","dimensions",":","-","*","*","BatchLength","*","*","*","*","*","BatchWidth","*","*","*","*","*","ListSize","*","*","-","the","number","of","images","in","the","set","-","*","*","Height","*","*","-","the","images","'","height","-","*","*","Width","*","*","-","the","images","'","width","-","*","*","Depth","*","*","-","the","images","'","depth","-","*","*","Channels","*","*","-","the","number","of","channels","the","image","format","uses","..","rubric",":",":","Layer","outputs",":","(","1",")","the","maximum","values","found",".","The","dimensions",":","-","*","*","BatchLength","*","*",",","*","*","BatchWidth","*","*",",","*","*","ListSize","*","*",",","*","*","Channels","*","*","are","equal","to","the","input","dimensions","-","*","*","Height","*","*",",","*","*","Depth","*","*","are","1","-","*","*","Width","*","*","is","max_count","(","2",")","(","optional",")",":","the","indices","of","the","values","found","in","the","input","blob",".","The","dimensions","are","the","same","."]
code: def __init__(self, input_layers, max_count, name=None):
      if type(input_layers) is PythonWrapper.GlobalMaxPooling:
          super().__init__(input_layers)
          return
  
      layers, outputs = check_input_layers(input_layers, 1)
  
      if int(max_count) < 1:
          raise ValueError("The `max_count` must be > 0.")
  
      internal = PythonWrapper.GlobalMaxPooling(
          str(name), layers[0], outputs[0], max_count
      )
      super().__init__(internal)
  
imports: import neoml.PythonWrapper
  from .Dnn import Layer
  from neoml.Utils import check_input_layers
label_desc: Use image node_id 1 to create a new GlobalMaxPooling object from inherited base classes: Layer with example: obj = GlobalMaxPooling(input_layers, max_count, name)