code: def call(self, features):
      # Concatenate embeddings
      embeddings = []
      for feature_name in self._all_features:
          embedding_fn = self._embeddings[feature_name]
          embeddings.append(embedding_fn(features[feature_name]))
  
      x = tf.concat(embeddings, axis=1)
  
      # Build Cross Network
      if self._cross_layer is not None:
          x = self._cross_layer(x)
  
      # Build Deep Network
      for deep_layer in self._deep_layers:
          x = deep_layer(x)
  
      return self._logit_layer(x)
  
file_path: BigDL/python/orca/example/learn/tf2/dcn/dcn_parquet.py
imports: import sys
  from optparse import OptionParser
  import math
  import tensorflow
  import tensorflow_recommenders
  from bigdl.dllib.utils.log4Error import invalidInputError
  from bigdl.orca import init_orca_context
  from bigdl.orca.learn.tf2.estimator import Estimator
  from bigdl.orca.data.tf.data import Dataset
  from bigdl.friesian.feature import FeatureTable
label_desc: Use image node_id 2 for calling the DCN obj's underlying member method code with example usage: obj.call(features) and returns: self