algo_Trees.pdf

2
ARBOLES DE DECISION -ALGORITMO- NOMBRE: Genera_arbol_de_decision. DESCRIPCIÓN: Genera un árbol de decisión a partir de las tuplas de entrenamiento de un conjunto de datos. Utiliza un método para crear un nodo se invoca recursivamente mientras no se tengan solo nodos hoja en el árbol. Entradas para el método: Conjunto de tuplas con valor para su atributo de clase. Lista de atributos regulares. Método para la selección de atributo: procedimiento para determinar el atributo que se utilizará para crear las particiones que mejor clasifiquen las tuplas. Condiciones de terminación. MÉTODO: Crear un nodo. Si todas las tuplas en el nodo son de la misma clase: entonces el nodo es una hoja del árbol, etiquetar el nodo con la clase, termina el método. Si la lista de atributos está vacía: entonces el nodo es una hoja del árbol, etiquetar el nodo con la clase mayoritaria, termina el método. Utilizar el método de selección de atributo para hacer una ramificación. Etiquetar el nodo con el atributo. Eliminar el atributo de la lista de atributos. Si hay condición de paro: entonces el nodo es una hoja del árbol, etiquetar el nodo con la clase mayoritaria, termina el método. Para cada categoría del atributo: encontrar las tuplas que satisfacen la categoría, invocar recursivamente el método con las tuplas y el resto de los atributos, para crear un nuevo nodo.

Transcript of algo_Trees.pdf

Page 1: algo_Trees.pdf

ARBOLES DE DECISION

-ALGORITMO-

NOMBRE: Genera_arbol_de_decision. DESCRIPCIÓN: Genera un árbol de decisión a partir de las tuplas de entrenamiento de un conjunto de datos. Utiliza un método para crear un nodo se invoca recursivamente mientras no se tengan solo nodos hoja en el árbol. Entradas para el método: Conjunto de tuplas con valor para su atributo de clase. Lista de atributos regulares. Método para la selección de atributo: procedimiento para determinar el atributo que se utilizará para crear las particiones que mejor clasifiquen las tuplas. Condiciones de terminación. MÉTODO: Crear un nodo.

Si todas las tuplas en el nodo son de la misma clase: entonces el nodo es una hoja del árbol, etiquetar el nodo con la clase, termina el método. Si la lista de atributos está vacía: entonces el nodo es una hoja del árbol, etiquetar el nodo con la clase mayoritaria, termina el método. Utilizar el método de selección de atributo para hacer una ramificación. Etiquetar el nodo con el atributo. Eliminar el atributo de la lista de atributos. Si hay condición de paro: entonces el nodo es una hoja del árbol, etiquetar el nodo con la clase mayoritaria, termina el método. Para cada categoría del atributo: encontrar las tuplas que satisfacen la categoría, invocar recursivamente el método con las tuplas y el resto de los atributos, para crear un nuevo nodo.

Page 2: algo_Trees.pdf

PSEUDOCÓDIGO: n: nodo.

D: Conjunto de tuplas con su clase.

T: Total del tuplas

i: Total de clases en el nodo.

mi: clases en el nodo.

A: Lista de atributos.

atributo Ai Metodo_seleccion_atributo(A);

nodo n Crear_nodo(D, A, Condiciones_de_paro)

{

If (todas las tuplas en D son de la misma clase mi)

{

n es una hoja;

etiqueta de n es mi;

retorna n;

}

if(A == 0) //Lista de atributos vacía.

{

n es una hoja;

etiqueta de n es la clase mayoritaria;

retorna n;

}

Ai = Metodo_seleccion_atributo(A)

A = A – Ai;

if(Condiciones de paro)

{

n es una hoja;

etiqueta de n es la clase mayoritaria;

retorna n;

}

else

{

for(para todas las j, j=categorías del atributo Ai)

{

Dj=tuplas que pertenecen a j.

Crear_nodo(Dj, A, Condiciones de paro)

}

}

}