Descripción detallada de los parámetros del clasificador del árbol de decisión
Criterios: una medida de la calidad de la división de nodos. Por defecto se utiliza 'Gini', que es el coeficiente de Gini, que es la medida utilizada en el algoritmo CART. ¿Este parámetro también se puede configurar en? "Entropía" significa ganancia de información y es una medida utilizada en el algoritmo C4.5.
Splitter: La estrategia para la división de nodos, utilizando "mejor" de forma predeterminada. "'Mejor'" se refiere a seleccionar el atributo de partición óptimo para dividir los nodos de acuerdo con los criterios de selección. Generalmente se usa cuando los datos de la muestra de entrenamiento no son grandes, porque seleccionar el atributo de partición óptimo requiere calcular los resultados de la partición bajo cada atributo candidato. ;Este parámetro también se puede configurar en "aleatorio", lo que indica el atributo de división aleatoria óptimo. Generalmente se usa en situaciones donde la cantidad de datos de entrenamiento es grande, lo que puede reducir la cantidad de cálculo. Sin embargo, aún no está claro cómo implementar la división aleatoria óptima, por lo que es necesario verificar el código fuente de esta parte.
Max_ Depth: establece la profundidad máxima del árbol de decisión, el valor predeterminado es ninguno. Ninguno indica que la profundidad máxima del árbol de decisión no está restringida hasta que las muestras en cada nodo hoja pertenezcan a la misma clase o sean menores que el número de muestras en los nodos hoja especificados por el parámetro min_samples_leaf. También puede especificar un valor entero y establecer la profundidad máxima del árbol. Cuando los datos de muestra son grandes, puede configurar este parámetro para finalizar el crecimiento del árbol antes de tiempo para mejorar el problema de sobreajuste, pero esto generalmente no se recomienda. Es más eficaz mejorar el problema del sobreajuste mediante la poda.
Min_samples_split: al dividir nodos internos, se requiere el número mínimo de muestras en el nodo. El valor predeterminado es 2.
Min_samples_leaf: establece el número mínimo de muestras en el nodo hoja, el valor predeterminado es 1. Al intentar dividir un nodo, el nodo se dividirá solo si el número de muestras en sus ramas izquierda y derecha no es menor que el valor especificado por este parámetro. En otras palabras, cuando el número de muestras en un nodo hoja es menor que el valor especificado por este parámetro, el nodo hoja y sus nodos hermanos se eliminarán. Cuando los datos de muestra son grandes, puede considerar aumentar este valor para finalizar el crecimiento del árbol temprano.
Min_weight_fraction_leaf: al introducir el peso de la muestra, establezca el valor mínimo de la suma de los pesos de la muestra en cada nodo de hoja. Una vez que la suma de los pesos de muestra en un nodo hoja es menor que el valor especificado por este parámetro, el nodo hoja se restará junto con sus nodos hermanos, es decir, su nodo padre no se dividirá. El valor predeterminado de este parámetro es 0, lo que significa que no se considera el peso. Si faltan muchos valores en la muestra, o la desviación de distribución de la categoría de muestra es grande, se introducirán pesos de muestra, por lo que este parámetro debe configurarse con cuidado.
Max_features: establece el número máximo de atributos que se pueden buscar al dividir nodos y encontrar atributos de división óptimos. El valor predeterminado es ninguno. Supongamos que el número de atributos incluidos en el conjunto de entrenamiento es n. Ninguno significa buscar todos los n atributos candidatos; "Auto" significa buscar como máximo atributos sqrt(n) significa buscar como máximo atributos sqrt(n); buscar como máximo atributos log2(n); el usuario también puede especificar un número entero k, lo que significa que se buscan hasta k atributos. Cabe señalar que aunque se establece el parámetro max_features, la búsqueda del atributo de partición óptimo no se detendrá hasta que se encuentre al menos un atributo de partición válido (es decir, después de particionar el atributo, se obtiene la métrica especificada por criterio mejorada).
¿Estado_aleatorio? :Cuando el divisor de parámetros está configurado en "aleatorio", puede configurar el número de semilla aleatorio a través de este parámetro. El valor predeterminado es Ninguno, lo que significa el número de semilla aleatorio generado por np.random.
Max_leaf_nodes: Establece el número máximo de nodos hoja del árbol de decisión. Este parámetro, junto con parámetros como max_profundidad, limita la complejidad del árbol de decisión. El valor predeterminado es Ninguno, lo que significa que no hay límite.
¿Mínimas _impurezas_reducidas? : Cuando se va a dividir un nodo interno, el nodo se dividirá solo si el valor de reducción de impurezas (que puede describirse mediante la métrica especificada por el parámetro de criterio) no es menor que el valor especificado por este parámetro. El valor predeterminado es 0. Al establecer este parámetro, el crecimiento de los árboles puede detenerse antes de tiempo.
min_impurity_split:? Cuando se va a dividir un nodo interno, el nodo solo se dividirá si la impureza en el nodo no es menor que el valor especificado por este parámetro. El valor predeterminado es 1e-7. El valor de este parámetro se cancelará después de la versión 0.25 y se reemplazará por min_importance_decrease.
Class_weight: establece el peso de cada clase en los datos de muestra, donde el peso se establece para los datos de toda la clase. El valor predeterminado es Ninguno, es decir, no se aplica ningún peso. El usuario puede especificar el peso de cada categoría utilizando datos de palabras típicas o datos de listas de diccionarios. Suponiendo que hay 4 categorías en la muestra, ¿en qué se pueden basar? [{0: 1, 1: 1}, {0: 1, 1: 5}, {0: 1, 1: 1}, {0: 1, 1: 1}] ¿Este formulario de entrada combina cuatro categorías Los pesos? ¿Están configurados en 1, 5, 1 y 1 respectivamente? [{1: 1}, {2: 5}, {3: 1}, {4: 1}]. Este parámetro también se puede configurar en "equilibrado", momento en el que el sistema calculará automáticamente cada categoría en función del peso de los datos de muestra de entrada. La fórmula de cálculo es: n_muestras? /?(n_classes?*?Np.bincount(y)), donde n_samples representa el número total de muestras de entrada, n_classes representa el número total de categorías en las muestras de entrada y np.bincount(y) representa el cálculo del número de muestras pertenecientes a cada categoría. Se puede ver que cuantas más muestras pertenezcan a una categoría, menor será el peso de la categoría. Si el usuario especifica el peso de cada muestra individualmente y establece el parámetro class_weight, el sistema multiplicará el peso de la muestra individualmente por el peso de la categoría de muestra especificada por class_weight como peso final de la muestra.
Ordenación previa: configure la búsqueda para ordenar previamente los datos de entrenamiento para mejorar los atributos de partición óptimos de los nodos; el valor predeterminado es Falso. Cuando el conjunto de entrenamiento es grande, la clasificación previa ralentizará la construcción del árbol de decisión y no se recomienda. Sin embargo, cuando el conjunto de entrenamiento es pequeño o la profundidad del árbol es limitada, la clasificación previa puede mejorar la velocidad de construcción del árbol.