class_docstr: Lazily import a module, mainly to avoid pulling in large dependencies.
  
  `contrib`, and `ffmpeg` are examples of modules that are large and not always
  needed, and this allows them to only be loaded when they are used.
  
  Copied from: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/util/lazy_loader.py
code: def _load(self):
      # Import the target module and insert it into the parent's namespace
      module = importlib.import_module(self.__name__)
      self._parent_module_globals[self._local_name] = module
  
      # Update this object's dict so that if someone keeps a reference to the
      #   LazyLoader, lookups are efficient (__getattr__ is only called on lookups
      #   that fail).
      self.__dict__.update(module.__dict__)
  
      return module
  
file_path: ludwig/ludwig/utils/package_utils.py
imports: import importlib
  import types
label_desc: Use image node_id 2 for calling the LazyLoader obj's underlying member method code with example usage: obj._load() and returns: module