class_docstr: The Wide and Deep model used for recommendation.
  
  # Arguments
  class_num: The number of classes. Positive int.
  column_info: An instance of ColumnFeatureInfo.
  model_type: String. 'wide', 'deep' and 'wide_n_deep' are supported. Default is 'wide_n_deep'.
  hidden_layers: Units of hidden layers for the deep model.
                 Tuple of positive int. Default is (40, 20, 10).
class_docstr_tok: ["The","Wide","and","Deep","model","used","for","recommendation",".","#","Arguments","class_num",":","The","number","of","classes",".","Positive","int",".","column_info",":","An","instance","of","ColumnFeatureInfo",".","model_type",":","String",".","'wide","'",",","'deep","'","and","'wide_n_deep","'","are","supported",".","Default","is","'wide_n_deep","'",".","hidden_layers",":","Units","of","hidden","layers","for","the","deep","model",".","Tuple","of","positive","int",".","Default","is","(","40",",","20",",","10",")","."]
code: def __init__(
      self,
      class_num,
      column_info,
      model_type="wide_n_deep",
      hidden_layers=[40, 20, 10],
      bigdl_type="float",
  ):
      assert len(column_info.wide_base_cols) == len(
          column_info.wide_base_dims
      ), "size of wide_base_columns should match"
      assert len(column_info.wide_cross_cols) == len(
          column_info.wide_cross_dims
      ), "size of wide_cross_columns should match"
      assert len(column_info.indicator_cols) == len(
          column_info.indicator_dims
      ), "size of wide_indicator_columns should match"
      assert (
          len(column_info.embed_cols)
          == len(column_info.embed_in_dims)
          == len(column_info.embed_out_dims)
      ), "size of wide_indicator_columns should match"
  
      self.class_num = int(class_num)
      self.wide_base_dims = column_info.wide_base_dims
      self.wide_cross_dims = column_info.wide_cross_dims
      self.indicator_dims = column_info.indicator_dims
      self.embed_in_dims = column_info.embed_in_dims
      self.embed_out_dims = column_info.embed_out_dims
      self.continuous_cols = column_info.continuous_cols
      self.model_type = model_type
      self.hidden_layers = [int(unit) for unit in hidden_layers]
      self.bigdl_type = bigdl_type
      self.model = self.build_model()
      super(WideAndDeep, self).__init__(
          None,
          self.bigdl_type,
          self.model_type,
          self.class_num,
          self.hidden_layers,
          self.wide_base_dims,
          self.wide_cross_dims,
          self.indicator_dims,
          self.embed_in_dims,
          self.embed_out_dims,
          self.continuous_cols,
          self.model,
      )
  
file_path: analytics-zoo/pyzoo/zoo/models/recommendation/wide_and_deep.py
imports: import sys
  from zoo.models.common import *
  from zoo.models.recommendation import Recommender
  from zoo.common.utils import callZooFunc
  from zoo.pipeline.api.keras.layers import *
label_desc: Use image node_id 1 to create a new WideAndDeep object from inherited base classes: Recommender with example: obj = WideAndDeep(class_num, column_info, model_type, hidden_layers, bigdl_type)