class_docstr: Counterfactual Reinforcement Learning. 
class_docstr_tok: ["Counterfactual","Reinforcement","Learning","."]
docstr: Selects the backend according to the `backend` flag.
  
  Parameters
  ---------
  backend
      Deep learning backend: ``'tensorflow'`` | ``'pytorch'``. Default `tensorflow`.
  **kwargs
      Other arguments. Not used.
code: def _select_backend(self, backend: str, **kwargs):
      """
      Selects the backend according to the `backend` flag.
  
      Parameters
      ---------
      backend
          Deep learning backend: ``'tensorflow'`` | ``'pytorch'``. Default `tensorflow`.
      **kwargs
          Other arguments. Not used.
      """
      return (
          tensorflow_base_backend
          if backend == "tensorflow"
          else pytorch_base_backend
      )
  
imports: import logging
  import os
  from abc import ABC, abstractmethod
  from copy import deepcopy
  from typing import TYPE_CHECKING, Any, Callable, Dict, Optional, Tuple, Union, cast
  import numpy
  from tqdm import tqdm
  from alibi.api.defaults import DEFAULT_DATA_CFRL, DEFAULT_META_CFRL
  from alibi.api.interfaces import Explainer, Explanation, FitMixin
  from alibi.explainers.backends.cfrl_base import generate_empty_condition, get_classification_reward, get_hard_distribution, identity_function
  from alibi.utils.frameworks import Framework, has_pytorch, has_tensorflow
label_desc: Use image node_id 5 for calling the CounterfactualRL obj's underlying member method code with example usage: obj._select_backend(backend) and returns: unknown