Examining the sklearn.base, more specifically BaseEstimator, and the different mixins, it is obvious that some of the mixins are dependent on the the ability to call .fit or .predict.
For example, if we'd look at the RegressorMixin we'd see it relies on the .predict method.
My question is why is there no implementation of an interface / abstract class that enforces the implementation of these methods?
I'd expect to have something like BaseRegressor that has .predict() as an abstract method and BaseClassifier to have .predict_proba() and .predict() - or something similar