Algoritmo ID3
Algoritmo ID3
Algoritmo ID3
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.
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.
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
Algoritmo ID3
Un ejemplo
Ej. D1 D2 D3 D4 D5 D6 D7 D8 D9 Cielo Temperatura Humedad Viento Jugar tenis Sol Sol Alta Alta Alta Alta Alta Alta Normal Normal Normal Alta Normal Normal Normal Alta Normal Alta Dbil Fuerte Dbil Dbil Dbil Fuerte Fuerte Dbil Dbil Dbil Fuerte Fuerte Dbil Fuerte + + + + + + + + + -
Nubes Alta Lluvia Suave Lluvia Baja Lluvia Baja Nubes Baja Sol Sol Suave Baja
En ese caso el rbol finalmente obtenido seri as: Cielo | \ / | \ Soleado / Nublado \ Lluvia / | \ / + Humedad Viento / \ | \ / \ | \ Alta/ \ Normal Fuerte | \ Dbil / \ | \ + + /
Bibliografa
Mitchell, T.M. Machine Learning (McGraw-Hill, 1997)
Enlaces externos
Seminarios - http://www2.cs.uregina.ca/ [1] Descripcin y ejemplos - http://www.cise.ufl.edu/ [2] Descripcin y ejemplos - http://www.cis.temple.edu/ [3] Machine learning decisin trees [4] ID3 and C4.5 [3] Implementacin del algoritmo ID3 en lenguaje Ruby [5] Decision wood [6]
Algoritmo ID3
Referencias
[1] [2] [3] [4] [5] [6] http:/ / www2. cs. uregina. ca/ ~hamilton/ courses/ 831/ notes/ ml/ dtrees/ 4_dtrees1. html http:/ / www. cise. ufl. edu/ ~ddd/ cap6635/ Fall-97/ Short-papers/ 2. htm http:/ / www. cis. temple. edu/ ~ingargio/ cis587/ readings/ id3-c45. html http:/ / www2. westminster. ac. uk/ clemenr/ courses/ ML/ lecture2. html http:/ / web. archive. org/ web/ http:/ / ai4r. rubyforge. org/ machineLearning. html http:/ / lem. eui. upm. es/ dcsw/ dcsw. html
Licencia
Creative Commons Attribution-Share Alike 3.0 Unported //creativecommons.org/licenses/by-sa/3.0/