class_docstr: The layer that calculates the ReLU activation function
  for each element of the single input:
  
  - :math:`f(x) = 0`    if :math:`x \le 0`
  - :math:`f(x) = x`    if :math:`x > 0`
  
  You also can set the cutoff upper threshold:
  
  - :math:`f(x) = 0`            if :math:`x \le 0`
  - :math:`f(x) = x`            if :math:`0 < x < threshold`
  - :math:`f(x) = threshold`    if :math:`threshold \le x`
  
  :param input_layer: The input layer and the number of its output. If no number
      is specified, the first output will be connected.
  :type input_layer: object, tuple(object, int)
  :param threshold: The upper cutoff threshold. 0 resets the threshold.   
  :type threshold: float, default=0
  :param name: The layer name.
  :type name: str, default=None
  
  .. rubric:: Layer inputs:
  
  (1) a data blob of any size
  
  .. rubric:: Layer outputs:
  
  (1) a data blob of the same size as the input,
      with activation function values on each of the input elements
class_docstr_tok: ["The","layer","that","calculates","the","ReLU","activation","function","for","each","element","of","the","single","input",":","-",":","math",":","`","f","(","x",")","=","0","`","if",":","math",":","`","x","\\le","0","`","-",":","math",":","`","f","(","x",")","=","x","`","if",":","math",":","`","x",">","0","`","You","also","can","set","the","cutoff","upper","threshold",":","-",":","math",":","`","f","(","x",")","=","0","`","if",":","math",":","`","x","\\le","0","`","-",":","math",":","`","f","(","x",")","=","x","`","if",":","math",":","`","0","<","x","<","threshold","`","-",":","math",":","`","f","(","x",")","=","threshold","`","if",":","math",":","`","threshold","\\le","x","`",":","param","input_layer",":","The","input","layer","and","the","number","of","its","output",".","If","no","number","is","specified",",","the","first","output","will","be","connected",".",":","type","input_layer",":","object",",","tuple","(","object",",","int",")",":","param","threshold",":","The","upper","cutoff","threshold",".","0","resets","the","threshold",".",":","type","threshold",":","float",",","default=0",":","param","name",":","The","layer","name",".",":","type","name",":","str",",","default=None","..","rubric",":",":","Layer","inputs",":","(","1",")","a","data","blob","of","any","size","..","rubric",":",":","Layer","outputs",":","(","1",")","a","data","blob","of","the","same","size","as","the","input",",","with","activation","function","values","on","each","of","the","input","elements"]
docstr: Gets the upper cutoff threshold.
          
docstr_tok: ["Gets","the","upper","cutoff","threshold","."]
code: def threshold(self):
      """Gets the upper cutoff threshold."""
      return self._internal.get_threshold()
  
imports: import neoml.PythonWrapper
  from .Dnn import Layer
  from neoml.Utils import check_input_layers
  import typing
label_desc: Use image node_id 2 for calling the ReLU obj's underlying member method code with example usage: obj.threshold() and returns: self