class_docstr: Neural network implementation.
  A neural network is a directed graph consisting of layers that perform
  calculations on data blobs. It starts with source layers and ends with 
  sink layers.
  
  :param neoml.MathEngine.MathEngine math_engine: The math engine that will perform calculations.
  :param random: The random numbers generator to be used for training and initialization.
  :type random: object, default=None 
class_docstr_tok: ["Neural","network","implementation",".","A","neural","network","is","a","directed","graph","consisting","of","layers","that","perform","calculations","on","data","blobs",".","It","starts","with","source","layers","and","ends","with","sink","layers",".",":","param","neoml.MathEngine.MathEngine","math_engine",":","The","math","engine","that","will","perform","calculations",".",":","param","random",":","The","random","numbers","generator","to","be","used","for","training","and","initialization",".",":","type","random",":","object",",","default=None"]
docstr: The math engine `neoml.MathEngine.MathEngine` used by the network.
          
docstr_tok: ["The","math","engine","`","neoml.MathEngine.MathEngine","`","used","by","the","network","."]
code: def math_engine(self):
      """The math engine `neoml.MathEngine.MathEngine` used by the network."""
      return self.get_math_engine()
  
imports: import neoml.PythonWrapper
  import neoml.Random
label_desc: Use image node_id 6 for calling the Dnn obj's underlying member method code with example usage: obj.math_engine() and returns: self