class_docstr: This class is an abstract model of a committee-based active learning algorithm.
  Args:
      learner_list: A list of ActiveLearners forming the Committee.
      query_strategy: Query strategy function. Committee supports disagreement-based query strategies from
          :mod:`modAL.disagreement`, but uncertainty-based ones from :mod:`modAL.uncertainty` are also supported.
      on_transformed: Whether to transform samples with the pipeline defined by each learner's estimator
          when applying the query strategy.
  Attributes:
      classes_: Class labels known by the Committee.
      n_classes_: Number of classes known by the Committee.
  Examples:
      >>> from sklearn.datasets import load_iris
      >>> from sklearn.neighbors import KNeighborsClassifier
      >>> from sklearn.ensemble import RandomForestClassifier
      >>> from modAL.models import ActiveLearner, Committee
      >>>
      >>> iris = load_iris()
      >>>
      >>> # initialize ActiveLearners
      >>> learner_1 = ActiveLearner(
      ...     estimator=RandomForestClassifier(),
      ...     X_training=iris['data'][[0, 50, 100]], y_training=iris['target'][[0, 50, 100]]
      ... )
      >>> learner_2 = ActiveLearner(
      ...     estimator=KNeighborsClassifier(n_neighbors=3),
      ...     X_training=iris['data'][[1, 51, 101]], y_training=iris['target'][[1, 51, 101]]
      ... )
      >>>
      >>> # initialize the Committee
      >>> committee = Committee(
      ...     learner_list=[learner_1, learner_2]
      ... )
      >>>
      >>> # querying for labels
      >>> query_idx, query_sample = committee.query(iris['data'])
      >>>
      >>> # ...obtaining new labels from the Oracle...
      >>>
      >>> # teaching newly labelled examples
      >>> committee.teach(
      ...     X=iris['data'][query_idx].reshape(1, -1),
      ...     y=iris['target'][query_idx].reshape(1, )
      ... )
class_docstr_tok: ["This","class","is","an","abstract","model","of","a","committee-based","active","learning","algorithm",".","Args",":","learner_list",":","A","list","of","ActiveLearners","forming","the","Committee",".","query_strategy",":","Query","strategy","function",".","Committee","supports","disagreement-based","query","strategies","from",":","mod",":","`","modAL.disagreement","`",",","but","uncertainty-based","ones","from",":","mod",":","`","modAL.uncertainty","`","are","also","supported",".","on_transformed",":","Whether","to","transform","samples","with","the","pipeline","defined","by","each","learner","'s","estimator","when","applying","the","query","strategy",".","Attributes",":","classes_",":","Class","labels","known","by","the","Committee",".","n_classes_",":","Number","of","classes","known","by","the","Committee",".","Examples",":",">",">",">","from","sklearn.datasets","import","load_iris",">",">",">","from","sklearn.neighbors","import","KNeighborsClassifier",">",">",">","from","sklearn.ensemble","import","RandomForestClassifier",">",">",">","from","modAL.models","import","ActiveLearner",",","Committee",">",">",">",">",">",">","iris","=","load_iris","(",")",">",">",">",">",">",">","#","initialize","ActiveLearners",">",">",">","learner_1","=","ActiveLearner","(","...","estimator=RandomForestClassifier","(",")",",","...","X_training=iris","[","'data","'","]","[","[","0",",","50",",","100","]","]",",","y_training=iris","[","'target","'","]","[","[","0",",","50",",","100","]","]","...",")",">",">",">","learner_2","=","ActiveLearner","(","...","estimator=KNeighborsClassifier","(","n_neighbors=3",")",",","...","X_training=iris","[","'data","'","]","[","[","1",",","51",",","101","]","]",",","y_training=iris","[","'target","'","]","[","[","1",",","51",",","101","]","]","...",")",">",">",">",">",">",">","#","initialize","the","Committee",">",">",">","committee","=","Committee","(","...","learner_list=","[","learner_1",",","learner_2","]","...",")",">",">",">",">",">",">","#","querying","for","labels",">",">",">","query_idx",",","query_sample","=","committee.query","(","iris","[","'data","'","]",")",">",">",">",">",">",">","#","...","obtaining","new","labels","from","the","Oracle","...",">",">",">",">",">",">","#","teaching","newly","labelled","examples",">",">",">","committee.teach","(","...","X=iris","[","'data","'","]","[","query_idx","]",".reshape","(","1",",","-1",")",",","...","y=iris","[","'target","'","]","[","query_idx","]",".reshape","(","1",",",")","...",")"]
docstr: Adds X and y to the known training data for each learner and retrains learners with the augmented dataset.
  Args:
      X: The new samples for which the labels are supplied by the expert.
      y: Labels corresponding to the new instances in X.
      bootstrap: If True, trains each learner on a bootstrapped set. Useful when building the ensemble by bagging.
      only_new: If True, the model is retrained using only X and y, ignoring the previously provided examples.
      **fit_kwargs: Keyword arguments to be passed to the fit method of the predictor.
docstr_tok: ["Adds","X","and","y","to","the","known","training","data","for","each","learner","and","retrains","learners","with","the","augmented","dataset",".","Args",":","X",":","The","new","samples","for","which","the","labels","are","supplied","by","the","expert",".","y",":","Labels","corresponding","to","the","new","instances","in","X.","bootstrap",":","If","True",",","trains","each","learner","on","a","bootstrapped","set",".","Useful","when","building","the","ensemble","by","bagging",".","only_new",":","If","True",",","the","model","is","retrained","using","only","X","and","y",",","ignoring","the","previously","provided","examples",".","*","*","fit_kwargs",":","Keyword","arguments","to","be","passed","to","the","fit","method","of","the","predictor","."]
code: def teach(
      self,
      X: modALinput,
      y: modALinput,
      bootstrap: bool = False,
      only_new: bool = False,
      **fit_kwargs,
  ) -> None:
      """
      Adds X and y to the known training data for each learner and retrains learners with the augmented dataset.
      Args:
          X: The new samples for which the labels are supplied by the expert.
          y: Labels corresponding to the new instances in X.
          bootstrap: If True, trains each learner on a bootstrapped set. Useful when building the ensemble by bagging.
          only_new: If True, the model is retrained using only X and y, ignoring the previously provided examples.
          **fit_kwargs: Keyword arguments to be passed to the fit method of the predictor.
      """
      super().teach(
          X, y, bootstrap=bootstrap, only_new=only_new, **fit_kwargs
      )
      self._set_classes()
  
imports: from typing import Any, Callable, List, Optional, Tuple
  import numpy
  from modAL.acquisition import max_EI
  from modAL.disagreement import max_std_sampling, vote_entropy_sampling
  from modAL.models.base import BaseCommittee, BaseLearner
  from modAL.uncertainty import uncertainty_sampling
  from modAL.utils.data import data_vstack, modALinput, retrieve_rows
  from modAL.utils.validation import check_class_labels, check_class_proba
  from sklearn.base import BaseEstimator
  from sklearn.metrics import accuracy_score
  from sklearn.utils import check_X_y
label_desc: Use image node_id 5 for calling the Committee obj's underlying member method code with example usage: obj.teach(X, y, bootstrap, only_new) without return types