code: def get_feature_type_map(feature_arraycol_map, types_of_features):
      """Returns OrderedDict of feature-name -> feature_type string (options: 'vector', 'embed')."""
      if feature_arraycol_map is None:
          raise ValueError(
              "Must first call get_feature_arraycol_map() to set feature_arraycol_map before calling get_feature_type_map()"
          )
      vector_features = (
          types_of_features["continuous"]
          + types_of_features["skewed"]
          + types_of_features["onehot"]
          + types_of_features["bool"]
      )
      feature_type_map = OrderedDict()
      for feature_name in feature_arraycol_map:
          if feature_name in vector_features:
              feature_type_map[feature_name] = "vector"
          elif feature_name in types_of_features["embed"]:
              feature_type_map[feature_name] = "embed"
          else:
              feature_type_map[feature_name] = "vector"
      return feature_type_map
  
file_path: autogluon/tabular/src/autogluon/tabular/models/tabular_nn/utils/data_preprocessor.py
imports: from collections import OrderedDict
  from sklearn.compose import ColumnTransformer
  from sklearn.impute import SimpleImputer
  from sklearn.pipeline import Pipeline
  from sklearn.preprocessing import FunctionTransformer, QuantileTransformer, StandardScaler
  from .categorical_encoders import OneHotMergeRaresHandleUnknownEncoder, OrdinalMergeRaresHandleUnknownEncoder
label_desc: Use image node_id 4 for calling a global function with example usage: get_feature_type_map(feature_arraycol_map, types_of_features) and returns: feature_type_map