class_docstr: Naive Regression Trainer
  
  Args:
      solver (:obj:`~nnabla.solver.Solver`): Solver object.
      tinput (:obj:`~nnabla.Variable`): Input variable for input feature in training.
      tlabel (:obj:`~nnabla.Variable`): Label variable for lable in training.
      tpred (:obj:`~nnabla.Variable`): Root variable for prediction in the training graph.
      tdata (:obj:`nnabla.utils.data_iterator.DataIterator`): DataIterator for training.
      vinput (:obj:`~nnabla.Variable`): Input variable for input feature in evaluation.
      vlabel (:obj:`~nnabla.Variable`): Label variable for label in evaluation.
      vpred (:obj:`~nnabla.Variable`): Root variable for prediction in the evaluation graph.
      vdata (:obj:`~nnabla.utils.data_iterator.DataIterator`): DataIterator for evaluation.
      monitor_path (:obj:`str`): Monitor path.
      model_save_path (:obj:`str`): Model save path.
      max_epoch (:obj:`int`): Max epoch to train.
      iter_per_epoch (:obj:`int`, optional): Iterations per one epoch. If not set, this value are determined by `tdata.size // tdata.batch_size`.
      val_iter (:obj:`int`, optional): Iterations for evaluation. If not set, this value are determined by `vdata.size // vdata.batch_size`.
  
  
  Example:
  
      .. code-block:: python
  
          import nnabla as nn
          import nnabla.functions as F
          import nnabla.parametric_functions as PF
          import nnabla.solvers as S
  
          import numpy as np
  
          from nnabla.experimental.trainers import NaiveRegressionTrainer
  
          # Batch, channel, height, width
          b, c, h, w = 32, 1, 128, 128
  
          # Train Input
          tinput = nn.Variable([b, c, h, w])
          tlabel = nn.Variable([b, c, h, w])
  
          # Train Model and Loss
          tpred = <training model>
  
          # Test Input
          vinput = nn.Variable([b, c, h, w])
          vlabel = nn.Variable([b, c, h, w])
  
          # Test Model
          vpred = <evaluation model>
  
          # Solver
          solver = S.Adam()
          solver.set_parameters(nn.get_parameters())
  
          # DataIterator
          tdata = <training_data_iterator>
          vdata = <validation_data_iterator>
  
          # Trainer
          trainer = NaiveRegressionTrainer(solver, 
                                           tinput, tlabel, tpred, tdata, 
                                           vinput, vlabel, vpred, vdata, 
                                           <monitor_path>, 
                                           <model_save_path>, 
                                           max_epoch=<max_epoch>)
          trainer.train()
class_docstr_tok: ["Naive","Regression","Trainer","Args",":","solver","(",":","obj",":","`","~nnabla.solver.Solver","`",")",":","Solver","object",".","tinput","(",":","obj",":","`","~nnabla.Variable","`",")",":","Input","variable","for","input","feature","in","training",".","tlabel","(",":","obj",":","`","~nnabla.Variable","`",")",":","Label","variable","for","lable","in","training",".","tpred","(",":","obj",":","`","~nnabla.Variable","`",")",":","Root","variable","for","prediction","in","the","training","graph",".","tdata","(",":","obj",":","`","nnabla.utils.data_iterator.DataIterator","`",")",":","DataIterator","for","training",".","vinput","(",":","obj",":","`","~nnabla.Variable","`",")",":","Input","variable","for","input","feature","in","evaluation",".","vlabel","(",":","obj",":","`","~nnabla.Variable","`",")",":","Label","variable","for","label","in","evaluation",".","vpred","(",":","obj",":","`","~nnabla.Variable","`",")",":","Root","variable","for","prediction","in","the","evaluation","graph",".","vdata","(",":","obj",":","`","~nnabla.utils.data_iterator.DataIterator","`",")",":","DataIterator","for","evaluation",".","monitor_path","(",":","obj",":","`","str","`",")",":","Monitor","path",".","model_save_path","(",":","obj",":","`","str","`",")",":","Model","save","path",".","max_epoch","(",":","obj",":","`","int","`",")",":","Max","epoch","to","train",".","iter_per_epoch","(",":","obj",":","`","int","`",",","optional",")",":","Iterations","per","one","epoch",".","If","not","set",",","this","value","are","determined","by","`","tdata.size","\/\/","tdata.batch_size","`",".","val_iter","(",":","obj",":","`","int","`",",","optional",")",":","Iterations","for","evaluation",".","If","not","set",",","this","value","are","determined","by","`","vdata.size","\/\/","vdata.batch_size","`",".","Example",":","..","code-block",":",":","python","import","nnabla","as","nn","import","nnabla.functions","as","F","import","nnabla.parametric_functions","as","PF","import","nnabla.solvers","as","S","import","numpy","as","np","from","nnabla.experimental.trainers","import","NaiveRegressionTrainer","#","Batch",",","channel",",","height",",","width","b",",","c",",","h",",","w","=","32",",","1",",","128",",","128","#","Train","Input","tinput","=","nn.Variable","(","[","b",",","c",",","h",",","w","]",")","tlabel","=","nn.Variable","(","[","b",",","c",",","h",",","w","]",")","#","Train","Model","and","Loss","tpred","=","<","training","model",">","#","Test","Input","vinput","=","nn.Variable","(","[","b",",","c",",","h",",","w","]",")","vlabel","=","nn.Variable","(","[","b",",","c",",","h",",","w","]",")","#","Test","Model","vpred","=","<","evaluation","model",">","#","Solver","solver","=","S.Adam","(",")","solver.set_parameters","(","nn.get_parameters","(",")",")","#","DataIterator","tdata","=","<","training_data_iterator",">","vdata","=","<","validation_data_iterator",">","#","Trainer","trainer","=","NaiveRegressionTrainer","(","solver",",","tinput",",","tlabel",",","tpred",",","tdata",",","vinput",",","vlabel",",","vpred",",","vdata",",","<","monitor_path",">",",","<","model_save_path",">",",","max_epoch=","<","max_epoch",">",")","trainer.train","(",")"]
code: def train(self):
      self.trainer.train()
  
file_path: nnabla/python/src/nnabla/experimental/trainers/trainer.py
imports: import os
  import nnabla
  import nnabla.functions
  from nnabla.experimental.trainers import Evaluator
  from nnabla.experimental.trainers import Updater
  from nnabla.monitor import Monitor, MonitorSeries, MonitorTimeElapsed
  from six.moves import range
label_desc: Use image node_id 2 for calling the NaiveRegressionTrainer obj's underlying member method code with example usage: obj.train() without return types