code: def load_dict_by_names(
      layers_conn, layers_data, ignore_missing=False
  ):
      """ "
      Load parameters in to layer using layer names as the reference.
  
      Raises
      ------
      ParameterLoaderError
          In case if it's impossible to load parameters from data
  
      Returns
      -------
      bool
          Returns `True` in case if data was loaded successfully
          and `False` when parameters wasn't loaded
      """
      layers_data = {l["name"]: l for l in layers_data}
      layers_conn = {l.name: l for l in layers_conn}
  
      if (
          not ignore_missing
          and layers_data.keys() != layers_conn.keys()
      ):
          raise ParameterLoaderError(
              "Cannot match layers by name. \n"
              "  Layer names in network: {}\n"
              "  Layer names in stored data: {}"
              "".format(layers_conn.keys(), layers_data.keys())
          )
  
      elif ignore_missing and all(
          l not in layers_data for l in layers_conn
      ):
          raise ParameterLoaderError(
              "Non of the layers can be matched by name"
          )
  
      for layer_name, layer in layers_conn.items():
          if layer_name in layers_data:
              load_layer_parameter(layer, layers_data[layer_name])
  
imports: import json
  from time import gmtime, strftime
  import six
  import h5py
  import numpy
  import tensorflow
  from six.moves import cPickle
  import neupy
  from neupy.core.docs import shared_docs
  from neupy.layers.graph import LayerGraph
  from neupy.algorithms.base import BaseNetwork
  from neupy.utils import asfloat, tf_utils
label_desc: Use image node_id 3 for calling a global function with example usage: load_dict_by_names(layers_conn, layers_data, ignore_missing) without return types