votes up 6

algorithm %s is not supported

Package:
Exception Class:
ValueError

Raise code

""" 
        Returns
        -------
        self : object
            Fitted estimator.
        """
        # Check that algorithm is supported
        if self.algorithm not in ('SAMME', 'SAMME.R'):
            raise ValueError("algorithm %s is not supported" % self.algorithm)

        # Fit
        return super().fit(X, y, sample_weight)

    def _validate_estimator(self):
        """Check the estimator and set the base_estimator_ attribute."""
        super()._validate_estimator(
😲 Agile task management is now easier than calling a taxi. #Tracklify
🙏 Scream for help to Ukraine
Today, 2nd July 2022, Russia continues bombing and firing Ukraine. Don't trust Russia, they are bombing us and brazenly lying in same time they are not doing this 😠, civilians and children are dying too! We are screaming and asking exactly you to help us, we want to survive, our families, children, older ones.
Please spread the information, and ask your governemnt to stop Russia by any means. We promise to work extrahard after survival to make the world safer place for all.

Ways to fix

votes up 1 votes down

Summary:

This exception can be thrown when calling fit on an instance of AdaBoostClassifier. When creating the instance of adaBoostClassifier, you have the option to set the value of the algorithm as an optional parameter. the value of this parameter can only be one of 2 values: 'SAMME' or 'SAMME.R'. If it's set to anything else, it will throw an exception.

Code to Reproduce the Error (Wrong):

from sklearn.ensemble._weight_boosting import AdaBoostClassifier

abc = AdaBoostClassifier(algorithm='alg')
X = np.array([[1, 2], [3, 4]])
y = np.array([1, 2])
abc.fit(X, y)

Error Message:

ValueError                                Traceback (most recent call last)
<ipython-input-50-a1eb30b3bbb9> in <module>()
      4 X = np.array([[1, 2], [3, 4]])
      5 y = np.array([1, 2])
----> 6 abc.fit(X, y)

/usr/local/lib/python3.7/dist-packages/sklearn/ensemble/_weight_boosting.py in fit(self, X, y, sample_weight)
    433         # Check that algorithm is supported
    434         if self.algorithm not in ('SAMME', 'SAMME.R'):
--> 435             raise ValueError("algorithm %s is not supported" % self.algorithm)
    436 
    437         # Fit

ValueError: algorithm alg is not supported

Working Version (Right):

from sklearn.ensemble._weight_boosting import AdaBoostClassifier

abc = AdaBoostClassifier(algorithm='SAMME')
X = np.array([[1, 2], [3, 4]])
y = np.array([1, 2])
abc.fit(X, y)

Successful Output:

AdaBoostClassifier(algorithm='SAMME', base_estimator=None, learning_rate=1.0,
                   n_estimators=50, random_state=None)
Jul 16, 2021 codingcomedyig answer

Add a possible fix

Please authorize to post fix