          if hasattr(self._args, "summary") and self._args.summary:
              print_fn = None  # Print straight to stdout
          else:
              print_fn = lambda x: logger.verbose("%s", x)  # print to logger
          self._model.summary(print_fn=print_fn)
          for layer in self._model.layers:
              if isinstance(layer, KModel):
                  layer.summary(print_fn=print_fn)
  
      def save(self):
          """ Save the model to disk.
  
          Saves the serialized model, with weights, to the folder location specified when
 
</s> remove         if not self._args.freeze:
 </s> add         if not self._args.freeze_weights: </s> remove         # Standardized config for freezing weights of other layers in model is `freeze-layers`
        to_freeze = self.config.get("freeze_layers")
        to_freeze = to_freeze if to_freeze else ["encoder"]
        for layer in self._model.layers:
            if isinstance(layer, KModel) and layer.name in to_freeze:
 </s> add         to_freeze = self.config.get("freeze_layers")  # Standardized config for freezing weights
        to_freeze = to_freeze if to_freeze else ["encoder"]  # No plugin config
        for layer in self._get_all_sub_models(self._model):
            if layer.name in to_freeze: </s> remove             dest="freeze",
 </s> add             dest="freeze_weights", </s> remove             opts=("-f", "--freeze"),
 </s> add             opts=("-f", "--freeze-weights"), </s> remove matplotlib==3.0.3
 </s> add matplotlib>3.0.3,<3.3.0
        for model in self._get_all_sub_models(self._model):
            model.summary(print_fn=print_fn)
          if hasattr(self._args, "summary") and self._args.summary:
              print_fn = None  # Print straight to stdout
          else:
              print_fn = lambda x: logger.verbose("%s", x)  # print to logger
        for model in self._get_all_sub_models(self._model):
            model.summary(print_fn=print_fn)
        for model in self._get_all_sub_models(self._model):
            model.summary(print_fn=print_fn)
        for model in self._get_all_sub_models(self._model):
            model.summary(print_fn=print_fn)
        for model in self._get_all_sub_models(self._model):
            model.summary(print_fn=print_fn)
  
      def save(self):
          """ Save the model to disk.
  
          Saves the serialized model, with weights, to the folder location specified when
keep keep keep keep replace replace replace replace keep keep keep keep keep
 Fixups
  - Documentation - Update sphinx_requirements.txt
  - plugins.train.model - Add recursive keras model scanning
  - Change "freeze" option to "freeze-weights" 
plugins/train/model/_base.py