class_docstr: A feature bagging detector is a meta estimator that fits a number of
  base detectors on various sub-samples of the dataset and use averaging
  or other combination methods to improve the predictive accuracy and
  control over-fitting.
  
  The sub-sample size is always the same as the original input sample size
  but the features are randomly sampled from half of the features to all
  features.
  
  By default, LOF is used as the base estimator. However, any estimator
  could be used as the base estimator, such as kNN and ABOD.
  
  Feature bagging first construct n subsamples by random selecting a subset
  of features, which induces the diversity of base estimators.
  
  Finally, the prediction score is generated by averaging/taking the maximum
  of all base detectors. See :cite:`lazarevic2005feature` for details.
  
  Parameters
  ----------
  base_estimator : object or None, optional (default=None)
      The base estimator to fit on random subsets of the dataset.
      If None, then the base estimator is a LOF detector.
  
  n_estimators : int, optional (default=10)
      The number of base estimators in the ensemble.
  
  contamination : float in (0., 0.5), optional (default=0.1)
      The amount of contamination of the data set,
      i.e. the proportion of outliers in the data set. Used when fitting to
      define the threshold on the decision function.
  
  max_features : int or float, optional (default=1.0)
      The number of features to draw from X to train each base estimator.
  
      - If int, then draw `max_features` features.
      - If float, then draw `max_features * X.shape[1]` features.
  
  bootstrap_features : bool, optional (default=False)
      Whether features are drawn with replacement.
  
  check_detector : bool, optional (default=True)
      If set to True, check whether the base estimator is consistent with
      pyod standard.
  
  check_estimator : bool, optional (default=False)
      If set to True, check whether the base estimator is consistent with
      sklearn standard.
  
      .. deprecated:: 0.6.9
        `check_estimator` will be removed in pyod 0.8.0.; it will be
        replaced by `check_detector`.
  
  n_jobs : optional (default=1)
      The number of jobs to run in parallel for both `fit` and
      `predict`. If -1, then the number of jobs is set to the
      number of cores.
  
  random_state : int, RandomState or None, optional (default=None)
      If int, random_state is the seed used by the random
      number generator; If RandomState instance, random_state is the random
      number generator; If None, the random number generator is the
      RandomState instance used by `np.random`.
  
  combination : str, optional (default='average')
      The method of combination:
  
      - if 'average': take the average of all detectors
      - if 'max': take the maximum scores of all detectors
  
  verbose : int, optional (default=0)
      Controls the verbosity of the building process.
  
  estimator_params : dict, optional (default=None)
      The list of attributes to use as parameters
      when instantiating a new base estimator. If none are given,
      default parameters are used.
  
  Attributes
  ----------
  decision_scores_ : numpy array of shape (n_samples,)
      The outlier scores of the training data.
      The higher, the more abnormal. Outliers tend to have higher
      scores. This value is available once the detector is
      fitted.
  
  threshold_ : float
      The threshold is based on ``contamination``. It is the
      ``n_samples * contamination`` most abnormal samples in
      ``decision_scores_``. The threshold is calculated for generating
      binary outlier labels.
  
  labels_ : int, either 0 or 1
      The binary labels of the training data. 0 stands for inliers
      and 1 for outliers/anomalies. It is generated by applying
      ``threshold_`` on ``decision_scores_``.
class_docstr_tok: ["A","feature","bagging","detector","is","a","meta","estimator","that","fits","a","number","of","base","detectors","on","various","sub-samples","of","the","dataset","and","use","averaging","or","other","combination","methods","to","improve","the","predictive","accuracy","and","control","over-fitting",".","The","sub-sample","size","is","always","the","same","as","the","original","input","sample","size","but","the","features","are","randomly","sampled","from","half","of","the","features","to","all","features",".","By","default",",","LOF","is","used","as","the","base","estimator",".","However",",","any","estimator","could","be","used","as","the","base","estimator",",","such","as","kNN","and","ABOD",".","Feature","bagging","first","construct","n","subsamples","by","random","selecting","a","subset","of","features",",","which","induces","the","diversity","of","base","estimators",".","Finally",",","the","prediction","score","is","generated","by","averaging\/taking","the","maximum","of","all","base","detectors",".","See",":","cite",":","`","lazarevic2005feature","`","for","details",".","Parameters","--","--","--","--","--","base_estimator",":","object","or","None",",","optional","(","default=None",")","The","base","estimator","to","fit","on","random","subsets","of","the","dataset",".","If","None",",","then","the","base","estimator","is","a","LOF","detector",".","n_estimators",":","int",",","optional","(","default=10",")","The","number","of","base","estimators","in","the","ensemble",".","contamination",":","float","in","(","0.",",","0.5",")",",","optional","(","default=0.1",")","The","amount","of","contamination","of","the","data","set",",","i.e",".","the","proportion","of","outliers","in","the","data","set",".","Used","when","fitting","to","define","the","threshold","on","the","decision","function",".","max_features",":","int","or","float",",","optional","(","default=1.0",")","The","number","of","features","to","draw","from","X","to","train","each","base","estimator",".","-","If","int",",","then","draw","`","max_features","`","features",".","-","If","float",",","then","draw","`","max_features","*","X.shape","[","1","]","`","features",".","bootstrap_features",":","bool",",","optional","(","default=False",")","Whether","features","are","drawn","with","replacement",".","check_detector",":","bool",",","optional","(","default=True",")","If","set","to","True",",","check","whether","the","base","estimator","is","consistent","with","pyod","standard",".","check_estimator",":","bool",",","optional","(","default=False",")","If","set","to","True",",","check","whether","the","base","estimator","is","consistent","with","sklearn","standard",".","..","deprecated",":",":","0.6.9","`","check_estimator","`","will","be","removed","in","pyod","0.8.0.",";","it","will","be","replaced","by","`","check_detector","`",".","n_jobs",":","optional","(","default=1",")","The","number","of","jobs","to","run","in","parallel","for","both","`","fit","`","and","`","predict","`",".","If","-1",",","then","the","number","of","jobs","is","set","to","the","number","of","cores",".","random_state",":","int",",","RandomState","or","None",",","optional","(","default=None",")","If","int",",","random_state","is","the","seed","used","by","the","random","number","generator",";","If","RandomState","instance",",","random_state","is","the","random","number","generator",";","If","None",",","the","random","number","generator","is","the","RandomState","instance","used","by","`","np.random","`",".","combination",":","str",",","optional","(","default='average","'",")","The","method","of","combination",":","-","if","'average","'",":","take","the","average","of","all","detectors","-","if","'max","'",":","take","the","maximum","scores","of","all","detectors","verbose",":","int",",","optional","(","default=0",")","Controls","the","verbosity","of","the","building","process",".","estimator_params",":","dict",",","optional","(","default=None",")","The","list","of","attributes","to","use","as","parameters","when","instantiating","a","new","base","estimator",".","If","none","are","given",",","default","parameters","are","used",".","Attributes","--","--","--","--","--","decision_scores_",":","numpy","array","of","shape","(","n_samples",",",")","The","outlier","scores","of","the","training","data",".","The","higher",",","the","more","abnormal",".","Outliers","tend","to","have","higher","scores",".","This","value","is","available","once","the","detector","is","fitted",".","threshold_",":","float","The","threshold","is","based","on","``","contamination","``",".","It","is","the","``","n_samples","*","contamination","``","most","abnormal","samples","in","``","decision_scores_","``",".","The","threshold","is","calculated","for","generating","binary","outlier","labels",".","labels_",":","int",",","either","0","or","1","The","binary","labels","of","the","training","data",".","0","stands","for","inliers","and","1","for","outliers\/anomalies",".","It","is","generated","by","applying","``","threshold_","``","on","``","decision_scores_","``","."]
docstr: Make and configure a copy of the `base_estimator_` attribute.
  
  sklearn/base.py
  
  Warning: This method should be used to properly instantiate new
  sub-estimators.
docstr_tok: ["Make","and","configure","a","copy","of","the","`","base_estimator_","`","attribute",".","sklearn\/base.py","Warning",":","This","method","should","be","used","to","properly","instantiate","new","sub-estimators","."]
code: def _make_estimator(self, append=True, random_state=None):
      """Make and configure a copy of the `base_estimator_` attribute.
  
      sklearn/base.py
  
      Warning: This method should be used to properly instantiate new
      sub-estimators.
      """
  
      # TODO: add a check for estimator_param
      estimator = clone(self.base_estimator_)
      estimator.set_params(**self.estimator_params)
  
      if random_state is not None:
          _set_random_states(estimator, random_state)
  
      if append:
          self.estimators_.append(estimator)
  
      return estimator
  
imports: from __future__ import division
  from __future__ import print_function
  import numbers
  import numpy
  from sklearn.base import clone
  from sklearn.utils import check_array
  from sklearn.utils import check_random_state
  from sklearn.utils.validation import check_is_fitted
  from .base import BaseDetector
  from .combination import average, maximization
  from .lof import LOF
  from ..utils.utility import check_detector
  from ..utils.utility import check_parameter
  from ..utils.utility import generate_bagging_indices
label_desc: Use image node_id 7 for calling the FeatureBagging obj's underlying member method code with example usage: obj._make_estimator(append, random_state) and returns: estimator