
En el aprendizaje de árboles de decisión , ID3 ( Iterative Dichotomiser 3 ) es un algoritmo voraz inventado por Ross Quinlan [ 1 ] que se utiliza para generar un árbol de decisión a partir de un conjunto de datos. ID3 es el precursor del algoritmo C4.5 . El número 3 en el nombre indica que este fue el tercer intento de Quinlan de crear un modelo basado en la división basada en la entropía, y el término "dicotomizador" es un nombre inapropiado, ya que implica una división binaria, pero el algoritmo ID3 puede dividir según atributos multivalorados.
Algoritmo
El algoritmo ID3 comienza con el conjunto original.como nodo raíz . En cada iteración del algoritmo, itera a través de cada atributo no utilizado del conjunto.y calcula la entropíao la ganancia de informaciónde ese atributo. Luego selecciona el atributo que tiene el valor de entropía más pequeño (o la mayor ganancia de información). El conjuntoA continuación, se divide o particiona según el atributo seleccionado para generar subconjuntos de los datos. (Por ejemplo, un nodo puede dividirse en nodos secundarios según los subconjuntos de la población cuyas edades sean menores de 50, entre 50 y 100, y mayores de 100). El algoritmo continúa repitiéndose en cada subconjunto, considerando únicamente los atributos que no se hayan seleccionado previamente.
La recursión en un subconjunto puede detenerse en uno de estos casos:
- cada elemento del subconjunto pertenece a la misma clase; en cuyo caso el nodo se convierte en un nodo hoja y se etiqueta con la clase de los ejemplos.
- Ya no hay más atributos para seleccionar, pero los ejemplos aún no pertenecen a la misma clase. En este caso, el nodo se convierte en un nodo hoja y se etiqueta con la clase más común de los ejemplos en el subconjunto.
- No se encontraron ejemplos en el subconjunto , lo que ocurre cuando no se halló ningún ejemplo en el conjunto padre que coincidiera con un valor específico del atributo seleccionado. Un ejemplo podría ser la ausencia de una persona mayor de 100 años en la población . En ese caso, se crea un nodo hoja y se le asigna la clase más común de los ejemplos en el conjunto del nodo padre.
A lo largo del algoritmo, el árbol de decisión se construye con cada nodo no terminal ( nodo interno ) que representa el atributo seleccionado en el que se dividieron los datos, y los nodos terminales (nodos hoja) que representan la etiqueta de clase del subconjunto final de esta rama.
Resumen
- Calcula la entropía de cada atributo .del conjunto de datos.
- Particionar ("dividir") el conjuntoen subconjuntos utilizando el atributo para el cual la entropía resultante después de la división es mínima ; o, equivalentemente, la ganancia de información es máxima .
- Crea un nodo de árbol de decisión que contenga ese atributo.
- Realizar recursión en subconjuntos utilizando los atributos restantes.
Propiedades

ID3 no garantiza una solución óptima. Puede converger hacia óptimos locales . Utiliza una estrategia voraz , seleccionando el mejor atributo local para dividir el conjunto de datos en cada iteración. La optimalidad del algoritmo puede mejorarse mediante el uso de retroceso durante la búsqueda del árbol de decisión óptimo, aunque esto podría aumentar el tiempo de ejecución.
ID3 puede sobreajustarse a los datos de entrenamiento. Para evitar el sobreajuste, se deben preferir árboles de decisión pequeños a árboles grandes. Este algoritmo suele generar árboles pequeños, pero no siempre produce el árbol de decisión más pequeño posible.
ID3 es más difícil de usar con datos continuos que con datos factorizados (los datos factorizados tienen un número discreto de valores posibles, lo que reduce los posibles puntos de ramificación). Si los valores de un atributo son continuos , existen muchos más puntos para dividir los datos según ese atributo, y buscar el mejor valor para la división puede llevar mucho tiempo.
Uso
El algoritmo ID3 se utiliza entrenándolo en un conjunto de datos.para generar un árbol de decisión que se almacena en memoria . En tiempo de ejecución , este árbol de decisión se utiliza para clasificar nuevos casos de prueba ( vectores de características ) recorriendo el árbol de decisión utilizando las características del dato para llegar a un nodo hoja.
Las métricas ID3
Entropía
Entropíaes una medida de la cantidad de incertidumbre en el conjunto (de datos)(es decir, la entropía caracteriza el conjunto (de datos)).
Dónde,
- – El conjunto de datos actual para el cual se está calculando la entropía
- Esto cambia en cada paso del algoritmo ID3, ya sea a un subconjunto del conjunto anterior en el caso de dividir por un atributo o a una partición "hermana" del padre en caso de que la recursión haya terminado previamente.
- – El conjunto de clases en
- – La proporción del número de elementos en la claseal número de elementos en el conjunto
Cuando, el conjuntoestá perfectamente clasificado (es decir, todos los elementos enson de la misma clase).
En ID3, se calcula la entropía para cada atributo restante. El atributo con la entropía más pequeña se utiliza para dividir el conjunto.En esta iteración, la entropía en la teoría de la información mide cuánta información se espera obtener al medir una variable aleatoria ; por lo tanto, también se puede usar para cuantificar hasta qué punto se desconoce la distribución de los valores de la cantidad. Una cantidad constante tiene entropía cero, ya que su distribución se conoce perfectamente . En cambio, una variable aleatoria con distribución uniforme ( discreta o continua ) maximiza la entropía. Por lo tanto, cuanto mayor sea la entropía en un nodo, menos información se conoce sobre la clasificación de los datos en esta etapa del árbol; y, por consiguiente, mayor será el potencial para mejorar la clasificación en este punto.
Por lo tanto, ID3 es una heurística voraz que realiza una búsqueda primero del mejor para encontrar valores de entropía óptimos locales . Su precisión puede mejorarse mediante el preprocesamiento de los datos.
Obtención de información
Obtención de informaciónes la medida de la diferencia de entropía de antes a después del conjuntoestá dividido por un atributo. En otras palabras, ¿cuánta incertidumbre ense redujo después de dividir el conjuntosobre el atributo.
Dónde,
- – Entropía del conjunto
- – Los subconjuntos creados al dividir el conjuntopor atributode tal manera que
- – La proporción del número de elementos enal número de elementos en el conjunto
- – Entropía del subconjunto
En ID3, se puede calcular la ganancia de información (en lugar de la entropía) para cada atributo restante. El atributo con la mayor ganancia de información se utiliza para dividir el conjunto.en esta iteración.
Véase también
Referencias
- ↑ Quinlan, JR 1986. Inducción de árboles de decisión. Mach. Learn. 1, 1 (marzo de 1986), 81–106
- ↑ Taggart, Allison J; DeSimone, Alec M; Shih, Janice S; Filloux, Madeleine E; Fairbrother, William G (2012-06-17). " Mapeo a gran escala de puntos de ramificación en transcritos de pre-ARNm humanos in vivo" . Nature Structural & Molecular Biology . 19 (7): 719– 721. doi : 10.1038/nsmb.2327 . ISSN 1545-9993 . PMC 3465671. PMID 22705790 .
Lecturas adicionales
- Mitchell, Tom Michael (1997). Aprendizaje automático . Nueva York, NY: McGraw-Hill. págs. 55-58 . ISBN 0070428077OCLC 36417892
- Grzymala-Busse, Jerzy W. (febrero de 1993). "Algoritmos seleccionados de aprendizaje automático a partir de ejemplos" (PDF) . Fundamenta Informaticae . 18 (2): 193– 207 – vía ResearchGate.
Enlaces externos
- Seminarios – http://www2.cs.uregina.ca/
- Descripción y ejemplos – http://www.cise.ufl.edu/
- Descripción y ejemplos – http://www.cis.temple.edu/
- Árboles de decisión y clasificación de partidos políticos
- Árboles de decisión
- Algoritmos de clasificación