CART : Classification and Regression Tree
Bu algoritmaların temelinde splitler bulunur.

Yukarıda verilen şekilde veri seti dörde ayrılmış. Normalde bu split sayısı ve hangi kısımdan ayrılacağına python decision tree algoritmanın içinde kullanılan information entropy ile karar verilir. Decision tree mantığını anlamak için aşağıdaki öğrenimiş bir ağaç göreseline bakabiliriz. Kalp krizi geçiren kişilerin çeşitli özellikleri ele alınarak veriler üzerinden öğrenilmesi durumunda hayali olarak elde edilecek sonuçlar :

Tree.fit() dediğimiz zaman python yukarıdaki dallanmış ağaç görüntüsünü oluşturmuş oluyor.
Python ile decision tree nasıl yapılır?
Elimizde bir futbol maçındaki tirübin konumu ve fiyatının bilgilerin, içeren bir veri setimiz var.

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv("/MACHINE_LEARNING/DecisionTreeRegressionDataset.csv",sep = ";",header = None)
x = df.iloc[:,0].values.reshape(-1,1)
y = df.iloc[:,1].values.reshape(-1,1)
from sklearn.tree import DecisionTreeRegressor
tree_reg = DecisionTreeRegressor() # random sate = 0
tree_reg.fit(x,y)
#elimizdeki veri setini 0.01'lik parçalara ayıralım.
x_ = np.arange(min(x),max(x),0.01).reshape(-1,1)
y_head = tree_reg.predict(x_)
plt.scatter(x,y,color="red")
plt.plot(x_,y_head,color = "green")
plt.xlabel("tribun level")
plt.ylabel("ucret")
plt.show()
output :

Şekilde görüldüğü gibi belli aralıklarda yani split’lerde y değerleri sabit kalmaktadır.