Вы можете создать свой собственный классификатор дерева решений, используя Sklearn API. Пожалуйста, прочтите эту документацию , следуя типам классов предикторов. Как объяснено в этом разделе , вы можете построить оценщик, следуя шаблону:
import numpy as np
from sklearn.base import BaseEstimator, ClassifierMixin
from sklearn.utils.validation import check_X_y, check_array, check_is_fitted
from sklearn.utils.multiclass import unique_labels
from sklearn.metrics import euclidean_distances
class TemplateClassifier(BaseEstimator, ClassifierMixin):
def __init__(self, demo_param='demo'):
self.demo_param = demo_param
def fit(self, X, y):
# Two paths. Just return the object, or implement here your decision rules
return self
def predict(self, X):
# Check is fit had been called
check_is_fitted(self)
# Input validation
X = check_array(X)
# Change this to your decision tree "rules"
closest = np.argmin(euclidean_distances(X, self.X_), axis=1)
return self.y_[closest]