code: def from_model(cls, model):
      linr = SSHELinearRegression(
          epochs=model["meta"]["epochs"],
          batch_size=model["meta"]["batch_size"],
          learning_rate=model["meta"]["learning_rate"],
          init_param=model["meta"]["init_param"],
          reveal_every_epoch=model["meta"]["reveal_every_epoch"],
          reveal_loss_freq=model["meta"]["reveal_loss_freq"],
          tol=model["meta"]["tol"],
          early_stop=model["meta"]["early_stop"],
      )
      estimator = SSHELREstimator(
          epochs=model["meta"]["epochs"],
          batch_size=model["meta"]["batch_size"],
          init_param=model["meta"]["init_param"],
          reveal_every_epoch=model["meta"]["reveal_every_epoch"],
          reveal_loss_freq=model["meta"]["reveal_loss_freq"],
          tol=model["meta"]["tol"],
          early_stop=model["meta"]["early_stop"],
      )
      estimator.restore(model["data"]["estimator"])
      linr.estimator = estimator
  
      return linr
  
imports: import logging
  import torch
  from fate.arch import Context, dataframe
  from fate.arch.dataframe import DataFrame
  from fate.arch.protocol.mpc.nn.sshe.linr_layer import SSHELinearRegressionLayer, SSHELinearRegressionLossLayer, SSHEOptimizerSGD
  from fate.ml.abc.module import Module, HeteroModule
  from fate.ml.utils import predict_tools
  from fate.ml.utils._convergence import converge_func_factory
  from fate.ml.utils._model_param import get_initialize_func
  from fate.ml.utils._model_param import serialize_param, deserialize_param
label_desc: Use image node_id 6 for calling the SSHELinearRegression obj's underlying member method code with example usage: obj.from_model(cls, model) and returns: linr