Talip7/scikit-learn-issues-multilabel huggingface dataset:
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
#XGBoost Classification model
from xgboost import XGBClassifier

# instantiate the model
xgb = XGBClassifier(learning_rate=0.4,max_depth=7, method='logloss')
#fit the model
xgb.fit(X_train, y_train)

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
Did you fix this error? If yes, can you tell me how?

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
Related to the issue here: https://github.com/scikit-learn/scikit-learn/issues/30479

Should be resolved in: https://github.com/scikit-learn/scikit-learn/pull/30516

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
Since this is with XGBoost, it has been resolved in: https://github.com/dmlc/xgboost/pull/11021
So it will be available in their next release.

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
> Since this is with XGBoost, it has been resolved in: [dmlc/xgboost#11021](https://github.com/dmlc/xgboost/pull/11021) So it will be available in their next release.

thanks, do you know when this version gonna be published?

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
Hopefully in future, when adding such breaking releases, some fallback mechanics will be considered by core devs. This __sklearn_tags__ thing has totally broken xgboost python objects usage.

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
I could solved locally only fixing the version of scikit-learn to 1.5.2

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
Is there an updated date for releasing the fix?

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
This is not a bug, but a change in scikit-learn 1.6. The way the tag infrastructure works has been modernised. In particular we are trying to move towards having an official developer API. For example tags were something that was considered internal, but in reality was used by third party estimators. There was no great way of getting on the path of improvement without the changes in 1.6. So apologies for the pain, but hopefully it is worth it in the long term.

TL;DR: your estimator class has to inherit from the base estimator in scikit-learn.

You don't have to inherit from the base estimator, but in that case you need to provide a lot of infrastructure yourself. In this case the `__sklearn_tags__`. So we recommend you use the base estimator unless you are a big project that has the resources to keep your own implementation in sync.

Some more details, advice and explanation is in https://blog.scikit-learn.org/updates/dev-api/

There is also a new library that helps make it easier for third party libraries to be compatible with multiple versions of scikit-learn, sklearn-compat. It contains a helper for this case https://github.com/sklearn-compat/sklearn-compat?tab=readme-ov-file#tags-__sklearn_tags__-and-estimator-tags

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
I installed version 1.3.2 and it is working for me

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
I tried with version 1.3.2 , it is not working for me

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
version 1.3.2 doesn't work for me also

Labels: Bug
AttributeError: 'super' object has no attribute '__sklearn_tags__'

### Describe the bug

```python
AttributeError                            Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/IPython/core/formatters.py](https://localhost:8080/#) in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

4 frames
[/usr/local/lib/python3.10/dist-packages/sklearn/base.py](https://localhost:8080/#) in __sklearn_tags__(self)
    538 
    539     def __sklearn_tags__(self):
--> 540         tags = super().__sklearn_tags__()
    541         tags.estimator_type = "classifier"
    542         tags.classifier_tags = ClassifierTags()

AttributeError: 'super' object has no attribute '__sklearn_tags__'
```

### Steps/Code to Reproduce

.

### Expected Results

Working XGBClassifier model

### Actual Results

None

### Versions

```shell
1.6
```

COMMENT:
1.5.2 is ok !!

Labels: Bug
Glossary: See-also for `components_` attribute references itself

### Describe the issue linked to the documentation

At <https://scikit-learn.org/stable/glossary.html#term-components_>, the `components_` entry references itself:

> See also [components_](https://scikit-learn.org/stable/glossary.html#term-components_) which is a similar attribute for linear predictors.

Is this mean to refer to `coef_` (the next item) instead of itself (`components_`) again?

### Suggest a potential alternative/fix

_No response_

COMMENT:
I agree with you, there seems to be an error here, and I believe the `coef_` attribute is intended to be referenced.
If it suits you, I would like to work on this issue.
I have never contributed to scikit-learn and would like to accommodate myself with pull request procedures by working on a simple issue.

Labels: Documentation
Glossary: See-also for `components_` attribute references itself

### Describe the issue linked to the documentation

At <https://scikit-learn.org/stable/glossary.html#term-components_>, the `components_` entry references itself:

> See also [components_](https://scikit-learn.org/stable/glossary.html#term-components_) which is a similar attribute for linear predictors.

Is this mean to refer to `coef_` (the next item) instead of itself (`components_`) again?

### Suggest a potential alternative/fix

_No response_

COMMENT:
@ArthurDbrn feel free to go ahead an open a pull request with your fix in `doc/glossary.rst`.

Labels: Documentation
Glossary: See-also for `components_` attribute references itself

### Describe the issue linked to the documentation

At <https://scikit-learn.org/stable/glossary.html#term-components_>, the `components_` entry references itself:

> See also [components_](https://scikit-learn.org/stable/glossary.html#term-components_) which is a similar attribute for linear predictors.

Is this mean to refer to `coef_` (the next item) instead of itself (`components_`) again?

### Suggest a potential alternative/fix

_No response_

COMMENT:
If it's your first PR, you might want to have a look at:

https://scikit-learn.org/dev/developers/contributing.html

Labels: Documentation
Glossary: See-also for `components_` attribute references itself

### Describe the issue linked to the documentation

At <https://scikit-learn.org/stable/glossary.html#term-components_>, the `components_` entry references itself:

> See also [components_](https://scikit-learn.org/stable/glossary.html#term-components_) which is a similar attribute for linear predictors.

Is this mean to refer to `coef_` (the next item) instead of itself (`components_`) again?

### Suggest a potential alternative/fix

_No response_

COMMENT:
@ogrisel Thank you I'll get to work then.

Labels: Documentation
Glossary: See-also for `components_` attribute references itself

### Describe the issue linked to the documentation

At <https://scikit-learn.org/stable/glossary.html#term-components_>, the `components_` entry references itself:

> See also [components_](https://scikit-learn.org/stable/glossary.html#term-components_) which is a similar attribute for linear predictors.

Is this mean to refer to `coef_` (the next item) instead of itself (`components_`) again?

### Suggest a potential alternative/fix

_No response_

COMMENT:
/take

Labels: Documentation
OPTICS.fit leaks memory when called under VS Code's built-in debugger

### Describe the bug

Running clustering algorithm with n_jobs parameter set to more than 1 thread causes memory leak each time algorithm is run.
This simple code causes additional memory leak at each loop cycle. The issue will not occur if i replace manifold reduction algorithm with precomputed features.

### Steps/Code to Reproduce

```python
import gc
import numpy as np
from sklearn.manifold import TSNE
from sklearn.cluster import OPTICS
import psutil
process = psutil.Process()


def main():
    data = np.random.random((100, 100))
    for _i in range(1, 50):
        points = TSNE().fit_transform(data)
        prediction = OPTICS(n_jobs=2).fit_predict(points)  # n_jobs!=1
        points = None
        prediction = None
        del prediction
        del points
        gc.collect()
        print(f"{process.memory_info().rss / 1e6:.1f} MB")


main()
```

### Expected Results

Program's memory usage nearly constant between loop cycles

### Actual Results

Program's memory usage increases infinitely

### Versions

```shell
System:
    python: 3.10.6 (tags/v3.10.6:9c7b4bd, Aug  1 2022, 21:53:49) [MSC v.1932 64 bit (AMD64)]
executable: .venv\Scripts\python.exe
   machine: Windows-10-10.0.26100-SP0

Python dependencies:
      sklearn: 1.6.0
          pip: 24.3.1
   setuptools: 63.2.0
        numpy: 1.25.2
        scipy: 1.14.1
       Cython: None
       pandas: 2.2.3
   matplotlib: 3.10.0
       joblib: 1.4.2
threadpoolctl: 3.5.0

Built with OpenMP: True

threadpoolctl info:
       user_api: openmp
   internal_api: openmp
    num_threads: 16
         prefix: vcomp
       filepath: .venv\Lib\site-packages\sklearn\.libs\vcomp140.dll
        version: None

       user_api: blas
   internal_api: openblas
    num_threads: 16
         prefix: libopenblas
       filepath: .venv\Lib\site-packages\numpy\.libs\libopenblas64__v0.3.23-246-g3d31191b-gcc_10_3_0.dll
        version: 0.3.23.dev
threading_layer: pthreads
   architecture: Cooperlake

       user_api: blas
   internal_api: openblas
    num_threads: 16
         prefix: libscipy_openblas
       filepath: .venv\Lib\site-packages\scipy.libs\libscipy_openblas-5b1ec8b915dfb81d11cebc0788069d2d.dll
        version: 0.3.27.dev
threading_layer: pthreads
   architecture: Cooperlake
```

COMMENT:
I cannot reproduce when everything is installed from pypi.org using uv (still on macOS):

<details>

```
164.2 MB
163.7 MB
163.9 MB
161.3 MB
159.8 MB
156.5 MB
152.2 MB
151.7 MB
150.4 MB
149.9 MB
149.1 MB
148.4 MB
148.3 MB
148.5 MB
148.6 MB
148.6 MB
148.6 MB
148.6 MB
148.7 MB
148.7 MB
148.2 MB
147.9 MB
147.9 MB
148.5 MB
148.5 MB
148.8 MB
148.6 MB
148.6 MB
148.2 MB
148.3 MB
148.5 MB
148.5 MB
148.5 MB
148.9 MB
149.0 MB
149.0 MB
149.0 MB
149.0 MB
148.6 MB
148.6 MB
148.4 MB
148.1 MB
148.1 MB
148.5 MB
148.3 MB
148.4 MB
148.5 MB
148.5 MB
148.5 MB
```

</details>

Labels: Bug, Performance, Needs Investigation