      def __init__(self, arguments):
          logger.debug("Initializing %s: (args: %s", self.__class__.__name__, arguments)
          self._args = arguments
          self._images = self._get_images()
          self._timelapse = self._set_timelapse()
          self._gui_preview_trigger = os.path.join(os.path.realpath(os.path.dirname(sys.argv[0])),
                                                   "lib", "gui", ".cache", ".preview_trigger")
          self._stop = False
          self._save_now = False
 
</s> remove         self.trainer_name = self._args.trainer
 </s> add  </s> remove         model = PluginLoader.get_model(self.trainer_name)(
 </s> add         model = PluginLoader.get_model(self._args.trainer)( </s> remove             if not self._is_predict:
 </s> add             if not is_summary and not self._is_predict:
        if self._args.summary:
            # If just outputting summary we don't need to initialize everything
            return

      def __init__(self, arguments):
          logger.debug("Initializing %s: (args: %s", self.__class__.__name__, arguments)
          self._args = arguments
        if self._args.summary:
            # If just outputting summary we don't need to initialize everything
            return

          self._images = self._get_images()
          self._timelapse = self._set_timelapse()
          self._gui_preview_trigger = os.path.join(os.path.realpath(os.path.dirname(sys.argv[0])),
                                                   "lib", "gui", ".cache", ".preview_trigger")
          self._stop = False
          self._save_now = False
keep keep add keep keep keep keep keep keep
 train - Add option to output model summary and exit 
scripts/train.py