class_docstr: Learning Node for Multi-target Regression tasks that always uses learning models
  for each target.
  
  Parameters
  ----------
  stats
      In regression tasks the node keeps a `utils.VectorDict` with instances of
      `stats.Var` to estimate the targets' statistics.
  depth
      The depth of the node.
  splitter
      The numeric attribute observer algorithm used to monitor target statistics
      and perform split attempts.
  leaf_models
      A dictionary composed of target identifiers and their respective predictive models.
  kwargs
      Other parameters passed to the learning node.
code: def learn_one(self, x, y, *, w=1.0, tree=None):
      super().learn_one(x, y, w=w, tree=tree)
  
      for target_id, y_ in y.items():
          try:
              model = self._leaf_models[target_id]
          except KeyError:
              if isinstance(tree.leaf_model, dict):
                  if target_id in tree.leaf_model:
                      self._leaf_models[target_id] = deepcopy(
                          tree.leaf_model[target_id]
                      )
                  else:
                      # Pick the first available model in case not all the targets' models
                      # are defined
                      self._leaf_models[target_id] = deepcopy(
                          next(iter(self._leaf_models.values()))
                      )
                  model = self._leaf_models[target_id]
              else:
                  self._leaf_models[target_id] = deepcopy(
                      tree.leaf_model
                  )
                  model = self._leaf_models[target_id]
              sign = inspect.signature(model.learn_one).parameters
              self._model_supports_weights[target_id] = (
                  "sample_weight" in sign or "w" in sign
              )
  
          # Now the proper training
          if self._model_supports_weights[target_id]:
              model.learn_one(x, y_, w)
          else:
              for _ in range(int(w)):
                  model.learn_one(x, y_)
  
imports: from __future__ import annotations
  import collections
  import functools
  import inspect
  from copy import deepcopy
  from river.stats import Var
  from river.utils import VectorDict
  from .htr_nodes import LeafMean
label_desc: Use image node_id 2 for calling the LeafModelMultiTarget obj's underlying member method code with example usage: obj.learn_one(x, y) without return types