You are on page 1of 3

Algoritmo ID3

Saltar a: navegacin, bsqueda El algoritmo ID3 es utilizado dentro del mbito de la inteligencia artificial. Su uso se engloba en la bsqueda de hiptesis o reglas en l, dado un conjunto de ejemplos. El conjunto de ejemplos deber estar conformado por una serie de tuplas de valores, cada uno de ellos denominados atributos, en el que uno de ellos, ( el atributo a clasificar ) es el objetivo, el cual es de tipo binario ( positivo o negativo, si o no, vlido o invlido, etc. ). De esta forma el algoritmo trata de obtener las hiptesis que clasifiquen ante nuevas instancias, si dicho ejemplo va a ser positivo o negativo. ID3 realiza esta labor mediante la construccin de un rbol de decisin. Los elementos son:

Nodos: Los cuales contendrn atributos. Arcos: Los cuales contienen valores posibles del nodo padre. Hojas: Nodos que clasifican el ejemplo como positivo o negativo.

Contenido

1 El algoritmo 2 Eleccin del mejor atributo 3 Un ejemplo 4 Vase tambin 5 Bibliografa 6 Enlaces externos

El algoritmo
Id3(Ejemplos, Atributo-objetivo, Atributos ) Si todos los ejemplos son positivos devolver un nodo positivo Si todos los ejemplos son negativos devolver un nodo negativo Si Atributos est vaco devolver el voto mayoritario del valor del atributo objetivo en Ejemplos En otro caso Sea A Atributo el MEJOR de atributos Para cada v valor del atributo hacer Sea Ejemplos(v) el subconjunto de ejemplos cuyo valor de atributo A es v Si Ejemplos(v) esta vaco devolver un nodo con el voto mayoritario del Atributo objetivo de Ejemplos

Sino Devolver Id3(Ejemplos(v), Atributo-objetivo, Atributos/{A})

Obsrvese que la construccin del rbol se hace forma recursiva, siendo las tres primeras lneas y la penltima los casos base que construyen los nodos hojas.

Eleccin del mejor atributo


La eleccin del mejor atributo se establece mediante la entropa. Eligiendo aquel que proporcione una mejor ganancia de informacin. La funcin elegida puede variar, pero en su forma ms sencilla es como esta:

Donde p es el conjunto de los ejemplos positivos, n el de los negativos y d el total de ellos. se debe establecer si el logaritmo es positivo o negativo

Un ejemplo
Ej. Cielo Temperatura Humedad Viento Jugar tenis D1 Sol Alta Alta Dbil D2 Sol Alta Alta Fuerte D3 Nubes Alta Alta Dbil + D4 Lluvia Suave Alta Dbil + D5 Lluvia Baja Normal Dbil + D6 Lluvia Baja Normal Fuerte D7 Nubes Baja Normal Fuerte + D8 Sol Suave Alta Dbil D9 Sol Baja Normal Dbil + D10 Lluvia Suave Normal Dbil + D11 Sol Suave Normal Fuerte + D12 Nubes Suave Alta Fuerte + D13 Nubes Alta Normal Dbil + D14 Lluvia Suave Alta Fuerte En ese caso el rbol finalmente obtenido seri as:
Cielo | \ / | \ Soleado / Nublado \ Lluvia / | \ / + Humedad Viento / \ | \ / \ | \ /

Alta/ / -

\ Normal \ +

Fuerte | | -

\ Dbil \ +