Usando sklearn, ¿cómo encuentro la profundidad de un árbol de decisión?

Estoy entrenando un árbol de decisión con sklearn. Cuando uso:

dt_clf = tree.DecisionTreeClassifier() 

el parámetro max_depth defecto es None . De acuerdo con la documentación, si max_depth es None , entonces los nodos se expanden hasta que todas las hojas estén puras o hasta que todas las hojas contengan menos muestras de min_samples_split .

Después de ajustar mi modelo, ¿cómo puedo saber qué es max_depth realmente? La función get_params() no ayuda. Después de ajustar, get_params() todavía dice None .

¿Cómo puedo obtener el número real para max_depth ?

Docs: https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html

Acceda a max_depth para el objeto Tree subyacente:

 from sklearn import tree X = [[0, 0], [1, 1]] Y = [0, 1] clf = tree.DecisionTreeClassifier() clf = clf.fit(X, Y) print(clf.tree_.max_depth) >>> 1 

Puede obtener atributos más accesibles del objeto del árbol subyacente utilizando:

 help(clf.tree_) 

Estos incluyen max_depth , node_count y otros parámetros de nivel inferior.