BalancedBaggingClassifier returns "TypeError: Cannot clone object ''deprecated''

### Describe the bug

Example taken from: https://imbalanced-learn.org/stable/auto_examples/applications/plot_impact_imbalanced_classes.html#sphx-glr-auto-examples-applications-plot-impact-imbalanced-classes-py

gives error.

### Steps/Code to Reproduce

```
from sklearn.ensemble import HistGradientBoostingClassifier
from sklearn.experimental import enable_hist_gradient_boosting  # noqa

from imblearn.ensemble import BalancedBaggingClassifier
from sklearn.datasets import fetch_openml
import pandas as pd
from sklearn.impute import SimpleImputer
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import OneHotEncoder, StandardScaler
from sklearn.preprocessing import OrdinalEncoder
from sklearn.compose import make_column_selector as selector
from sklearn.compose import make_column_transformer
from sklearn.model_selection import cross_validate
from imblearn.datasets import make_imbalance
import sklearn
print('The scikit-learn version is {}.'.format(sklearn.__version__))

df, y = fetch_openml("adult", version=2, as_frame=True, return_X_y=True)
df = df.drop(columns=["fnlwgt", "education-num"])
classes_count = y.value_counts()
scoring = ["accuracy", "balanced_accuracy"]
  
ratio = 30
df_res, y_res = make_imbalance(
    df,
    y,
    sampling_strategy={classes_count.idxmin(): classes_count.max() // ratio},
)

index = []
scores = {"Accuracy": [], "Balanced accuracy": []}

num_pipe = SimpleImputer(strategy="mean", add_indicator=True)
cat_pipe = make_pipeline(
    SimpleImputer(strategy="constant", fill_value="missing"),
    OrdinalEncoder(handle_unknown="use_encoded_value", unknown_value=-1),
)

preprocessor_tree = make_column_transformer(
    (num_pipe, selector(dtype_include="number")),
    (cat_pipe, selector(dtype_include="category")),
    n_jobs=2,
)

bag_clf = make_pipeline(
    preprocessor_tree,
    BalancedBaggingClassifier(
        base_estimator=HistGradientBoostingClassifier(random_state=42),
        n_estimators=10,
        random_state=42,
        n_jobs=2,
    ),
)

index += ["Balanced bag of histogram gradient boosting"]
cv_result = cross_validate(bag_clf, df_res, y_res, scoring=scoring)
scores["Accuracy"].append(cv_result["test_accuracy"].mean())
scores["Balanced accuracy"].append(cv_result["test_balanced_accuracy"].mean())

df_scores = pd.DataFrame(scores, index=index)
df_scores
```

### Expected Results

Classification without error.

### Actual Results

The scikit-learn version is 1.2.0.
\site-packages\sklearn\datasets\_openml.py:932: FutureWarning: The default value of `parser` will change from `'liac-arff'` to `'auto'` in 1.4. You can set `parser='auto'` to silence this warning. Therefore, an `ImportError` will be raised from 1.4 if the dataset is dense and pandas is not installed. Note that the pandas parser may return different data types. See the Notes Section in fetch_openml's API doc for details.
  warn(
Traceback (most recent call last):

  File "\site-packages\spyder_kernels\py3compat.py", line 356, in compat_exec
    exec(code, globals, locals)

  File "\site-packages\sklearn\untitled4.py", line 56, in <module>
    cv_result = cross_validate(bag_clf, df_res, y_res, scoring=scoring)

  File "\site-packages\sklearn\model_selection\_validation.py", line 285, in cross_validate
    _warn_or_raise_about_fit_failures(results, error_score)

  File "\site-packages\sklearn\model_selection\_validation.py", line 367, in _warn_or_raise_about_fit_failures
    raise ValueError(all_fits_failed_message)

ValueError: 
All the 5 fits failed.
It is very likely that your model is misconfigured.
You can try to debug the error by setting error_score='raise'.

Below are more details about the failures:
--------------------------------------------------------------------------------
5 fits failed with the following error:
Traceback (most recent call last):
  File "\site-packages\sklearn\model_selection\_validation.py", line 686, in _fit_and_score
    estimator.fit(X_train, y_train, **fit_params)
  File "\site-packages\sklearn\pipeline.py", line 406, in fit
    self._final_estimator.fit(Xt, y, **fit_params_last_step)
  File "\site-packages\imblearn\ensemble\_bagging.py", line 279, in fit
    return self._fit(X, y, self.max_samples, sample_weight=None)
  File "\site-packages\sklearn\ensemble\_bagging.py", line 398, in _fit
    self._validate_estimator()
  File "c:\work\pythoncode\ml_examples\eeg_class\lib\site-packages\imblearn\ensemble\_bagging.py", line 243, in _validate_estimator
    base_estimator = clone(self.base_estimator)
  File "\site-packages\sklearn\base.py", line 79, in clone
    raise TypeError(
TypeError: Cannot clone object ''deprecated'' (type <class 'str'>): it does not seem to be a scikit-learn estimator as it does not implement a 'get_params' method.

### Versions

```shell
System:
    python: 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC v.1916 64 bit (AMD64)]

Python dependencies:
      sklearn: 1.2.0
          pip: 22.3.1
   setuptools: 62.3.2
        numpy: 1.23.5
        scipy: 1.5.4
       Cython: 0.29.14
       pandas: 1.4.2
   matplotlib: 3.5.2
       joblib: 1.2.0
threadpoolctl: 3.1.0

Built with OpenMP: True

threadpoolctl info:
       user_api: blas
   internal_api: openblas
         prefix: libopenblas
        version: 0.3.20
threading_layer: pthreads
   architecture: SkylakeX
    num_threads: 16

       user_api: openmp
   internal_api: openmp
         prefix: vcomp
        version: None
    num_threads: 16

       user_api: blas
   internal_api: openblas
         prefix: libopenblas
packages\scipy\.libs\libopenblas.3HBPCJB5BPQGKWVZAVEBXNNJ2Q2G3TUP.gfortran-win_amd64.dll
        version: 0.3.9
threading_layer: pthreads
   architecture: Prescott
    num_threads: 16
```

COMMENT:
Yes! It was an older version of imbalanced-learn. The new version fixes the problem. Many thanks!

Labels: Bug, Needs Triage