code: def _extract_embedding(self, model):
      try:
          embedding_layer = model.extract_embedding()
      except ValueError as e:
          logger.error(
              f"Extracting embedding layer from model received this error: {e}."
              f" Some models do not support this feature."
          )
          embedding_layer = None
      if embedding_layer is not None:
          for i, col in enumerate(self.cols):
              self._mapping[col] = {}
              embedding = embedding_layer[i]
              self._mapping[col][self.NAN_CATEGORY] = (
                  embedding.weight[0, :].detach().cpu().numpy().ravel()
              )
              for key in self._categorical_encoder._mapping[col].index:
                  self._mapping[col][key] = (
                      embedding.weight[
                          self._categorical_encoder._mapping[col].loc[
                              key
                          ],
                          :,
                      ]
                      .detach()
                      .cpu()
                      .numpy()
                      .ravel()
                  )
      else:
          raise ValueError("Passed model doesn't support this feature.")
  
imports: from pandas import DataFrame, Series, unique
  import numpy
  from rich.progress import track
  from sklearn.base import BaseEstimator, TransformerMixin
  from pytorch_tabular.utils import get_logger
label_desc: Use image node_id 2 for calling the CategoricalEmbeddingTransformer obj's underlying member method code with example usage: obj._extract_embedding(model) without return types