Professional Documents
Culture Documents
Ahora que hemos visto cmo las entradas y salidas pueden ser representadas, es hora de mirar
los algoritmos de aprendizaje ellos mismos. Este captulo explica las ideas bsicas detrs de
las tcnicas que se utilizan en la minera de datos prctica. No profundizaremos en los
problemas ms complicados: versiones avanzadas de los algoritmos, optimizaciones
posibles, complicaciones que surgen en la prctica. Estos temas se remiten al captulo 6, en
el que se abordan las implementaciones reales de esquemas de aprendizaje de mquinas,
como los incluidos en los conjuntos de herramientas de minera de datos y utilizados para
aplicaciones del mundo real. Es importante entender estos problemas ms avanzados para
que sepa qu es lo que realmente sucede cuando se analiza un conjunto de datos en particular.
En este captulo examinamos las ideas bsicas. Una de las lecciones ms instructivas es que
las ideas simples a menudo funcionan muy bien, y recomendamos encarecidamente la
adopcin de una metodologa "simple" al analizar conjuntos de datos prcticos. Hay muchos
tipos diferentes de estructura simple que los conjuntos de datos pueden exhibir. En un
conjunto de datos, puede haber un solo atributo que hace todo el trabajo y los dems son
irrelevantes o redundantes. En otro conjunto de datos, los atributos pueden contribuir
independientemente e igualmente al resultado nal. Un tercero podra tener una estructura
lgica simple, que incluya slo unos pocos atributos, que pueden ser capturados por un rbol
de decisin. En un cuarto, puede haber unas cuantas reglas independientes que gobiernan la
asignacin de instancias a diferentes clases. Un fth podra exhibir dependencias entre
diferentes subconjuntos de atributos. Un sexto puede implicar una dependencia lineal entre
los atributos numricos, donde lo que importa es una suma ponderada de valores de atributos
con pesos apropiados. En un sptimo, las clasificaciones apropiadas para regiones
particulares del espacio de la instancia podran ser gobernadas por las distancias entre las
instancias mismas. Y en un octavo, puede ser que no se proporcionan valores de clase: El
aprendizaje no est supervisado.
En la gran variedad de posibles conjuntos de datos existen muchos tipos diferentes de
estructuras que pueden ocurrir, y una herramienta de minera de datos -no importa cun
capaz- que est buscando una clase de estructura puede perder por completo regularidades
de otro tipo, independientemente de cmo rudimentarias pueden ser. El resultado es una
estructura de clasificacin barroca y opaca de una clase en lugar de una estructura simple,
elegante, inmediatamente comprensible de otra.
Cada uno de los ocho ejemplos de diferentes tipos de conjuntos de datos que acaba de esbozar
conduce a un esquema de aprendizaje de mquina diferente que es muy adecuado para
descubrir el concepto subyacente. Las secciones de este captulo miran a cada una de estas
estructuras a su vez. Una seccin final presenta maneras simples de tratar con problemas
multi-instancia, donde cada ejemplo comprende varias instancias diferentes.
Esta es una manera fcil de encontrar reglas de clasificacin muy sencillas de un conjunto de
instancias. Se denomina 1R para 1 regla, genera un rbol de decisin de un nivel expresado
en forma de un conjunto de reglas que prueban un atributo en particular. 1R es un mtodo
simple, barato que a menudo viene con bastante buenas reglas para caracterizar la estructura
en los datos. Resulta que las reglas simples con frecuencia alcanzan una precisin
sorprendentemente alta. Quizs esto se debe a que la estructura que subyace en muchos
conjuntos de datos del mundo real es bastante rudimentaria, y slo un atributo es suficiente
para determinar la clase de una instancia con bastante precisin. En cualquier caso, siempre
es un buen plan para probar las cosas ms simples primero.
La idea es la siguiente: Hacemos reglas que prueban un solo atributo y una rama de acuerdo.
Cada rama corresponde a un valor diferente del atributo. Es obvio cul es la mejor
clasificacin para dar a cada rama: Use la clase que ocurre con ms frecuencia en los datos
de entrenamiento. Entonces la tasa de error de las reglas puede ser fcilmente determinada.
Basta con contar los errores que se producen en los datos de entrenamiento, es decir, el
nmero de instancias que no tienen la clase de mayora.
Cada atributo genera un conjunto diferente de reglas, una regla para cada valor del atributo.
Evale la tasa de error para el conjunto de reglas de cada atributo y elija el mejor. Es as de
simple! La figura 4.1 muestra el algoritmo en forma de pseudocdigo.
Para ver el mtodo 1R en el trabajo, considere los datos meteorolgicos de la Tabla 1.2 en la
pgina 10 (lo encontraremos muchas veces de nuevo cuando mire cmo funcionan los
algoritmos de aprendizaje). Para clasificar en la columna nal, play, 1R considera cuatro
conjuntos de reglas, una para cada atributo. Estas reglas se muestran en la Tabla 4.1. Un
asterisco indica que se ha hecho una eleccin aleatoria entre dos resultados igualmente
probables. El nmero de errores se da para cada regla, junto con el nmero total de errores
para el conjunto de reglas como un todo. 1R elige el atributo que produce reglas con el menor
nmero de
rainy yes
Hemos observado desde el principio que el juego para los datos meteorolgicos no est
especificado. Curiosamente, al parecer se juega cuando est nublado o lluvioso, pero no
cuando hace sol. Tal vez sea una persecucin interior.
Aunque un esquema de aprendizaje muy rudimentario, 1R acepta tanto los valores perdidos
como los atributos numricos. Se trata de estos de manera simple pero eficaz. La falta se trata
como otro valor de atributo, por ejemplo, si los datos meteorolgicos contenan valores
faltantes para el atributo outlook, un conjunto de reglas formado en outlook especificara
cuatro posibles valores de clase, uno para cada uno de soleado, nublado y lluvioso, y un
cuarto por falta.
Podemos convertir los atributos numricos en valores nominales usando un mtodo de
discretizacin simple. Primero, ordene los ejemplos de entrenamiento segn los valores del
atributo numrico. Esto produce una secuencia de valores de clase. Por ejemplo, ordenar la
versin numrica de los datos meteorolgicos (Tabla 1.3, pgina 11) de acuerdo con los
valores de temperatura produce la secuencia
64 65 68 69 70 71 72 72 75 75 80 81 83 85
La eleccin de puntos de interrupcin a mitad de camino entre los ejemplos de cada lado los
coloca en 64.5, 66.5, 70.5, 72, 77.5, 80.5 y 84. Sin embargo, las dos instancias con valor 72
causan un problema porque tienen el mismo valor de temperatura, pero caen en diferentes
clases La x ms simple es mover el punto de interrupcin en 72 un ejemplo, a 73.5,
produciendo una particin mixta en la que no es la clase mayoritaria.
Para 1R, es probable que ocurra el over tting siempre que un atributo tenga un gran nmero
de valores posibles. Por consiguiente, al discretizar un atributo numrico, se impone un lmite
mnimo al nmero de ejemplos de la clase mayoritaria en cada particin. Supongamos que el
mnimo se fija en 3. Esto elimina todas, excepto dos de las particiones precedentes. En su
lugar, el proceso de particin comienza
asegurando que hay tres ocurrencias de s, la clase mayoritaria, en la primera particin. Sin
embargo, como el siguiente ejemplo es tambin s, no perderemos nada al incluirlo en la
primera particin tambin. Esto conduce a una nueva
donde cada particin contiene al menos tres instancias de la clase mayoritaria, excepto la
ltima, que normalmente tendr menos. Los lmites de particin siempre se encuentran entre
ejemplos de clases diferentes.
Siempre que las particiones adyacentes tengan la misma clase mayoritaria, como las dos
primeras particiones anteriores, pueden fusionarse sin afectar el significado de los conjuntos
de reglas. As, la discretizacin nal es
> 77.5 no
La segunda regla implicaba una eleccin arbitraria; como sucede, no fue elegido. Si se
hubiera elegido s, no habra necesidad de ningn punto de interrupcin en absoluto, y como
ilustra este ejemplo, podra ser mejor usar las categoras adyacentes para ayudar a romper los
vnculos. De hecho, esta regla genera errores en el conjunto de entrenamiento y por lo tanto
es menos efectiva que la anterior para Outlook. Sin embargo, el mismo procedimiento
conduce a esta regla para la humedad:
Esto genera slo tres errores en el conjunto de entrenamiento y es la mejor regla 1 para los
datos de la Tabla 1.3.
Por ltimo, si un atributo numrico tiene valores faltantes, se crea una categora adicional
para ellos y el procedimiento de discretizacin se aplica slo a las instancias para las que se
define el valor del atributo.
Discusin
En un documento seminal titulado "Las reglas de clasificacin muy sencillas funcionan bien
en los conjuntos de datos ms utilizados" (Holte, 1993), un estudio completo del desempeo
del procedimiento 1R fue reportado en 16 conjuntos de datos usados con frecuencia por los
investigadores de aprendizaje automtico para evaluar sus algoritmos. La validacin cruzada,
una tcnica de evaluacin que explicaremos en el captulo 5, se utiliz para asegurar que los
resultados fueran los mismos que se obtendran en conjuntos de pruebas independientes.
Despus de alguna experimentacin, el nmero mnimo de ejemplos en cada particin de un
atributo numrico se estableci en seis, no tres como se utiliza en nuestra ilustracin.
El mtodo 1R utiliza un solo atributo como base para sus decisiones y elige el que funciona
mejor. Otra tcnica simple consiste en utilizar todos los atributos y permitirles realizar
contribuciones a la decisin que son igualmente importantes e independientes entre s, dada
la clase. Esto es poco realista, por supuesto: Lo que hace interesantes los conjuntos de datos
de la vida real es que los atributos no son ciertamente iguales o independientes. Pero conduce
a un esquema simple que, de nuevo, funciona sorprendentemente bien en la prctica.
Una de las cosas realmente agradables de Nave Bayes es que los valores perdidos no son
ningn problema en absoluto. Por ejemplo, si el valor de la perspectiva faltaba en el ejemplo
de la Tabla 4.3, el clculo simplemente omitira este atributo, produciendo
Likelihood of no 1 5 4 5 3 5 5 14 0.0343
Estos dos nmeros son individualmente mucho ms altos de lo que eran antes porque falta
una de las fracciones. Pero eso no es un problema porque falta una fraccin en ambos casos,
y estas probabilidades estn sujetas a un proceso de normalizacin adicional. Esto produce
probabilidades de s y no de 41% y 59%, respectivamente.
Los valores numricos se manejan generalmente asumiendo que tienen una distribucin de
probabilidad "normal" o "gaussiana". La Tabla 4.4 da un resumen de los datos
meteorolgicos con caractersticas numricas de la Tabla 1.3. Para los atributos nominales,
calculamos los conteos como antes, mientras que para los numricos simplemente
enumeramos los valores que ocurren. Entonces, en lugar de normalizar las cuentas en
probabilidades como lo hacemos con los atributos nominales, calculamos la media y la
desviacin estndar para cada clase y cada atributo numrico. El valor medio de la
temperatura sobre los casos de s es 73, y su desviacin estndar es 6.2. La media es
simplemente el promedio de los valores, es decir, la suma dividida por el nmero de valores.
La desviacin estndar es la raz cuadrada de la varianza de la muestra, que calculamos de la
siguiente manera: Sustraer la media de cada valor, cuadrar el resultado, sumarlos juntos y
luego dividir por uno menos que el nmero de valores. Despus de haber encontrado esta
"muestra de varianza", tomar su raz cuadrada para producir la desviacin estndar. Esta es
la forma estndar de calcular la media y la desviacin estndar de un conjunto de nmeros.
(El "uno menos que" tiene que ver con el nmero de grados de libertad en la muestra, una
nocin estadstica que no queremos entrar aqu).
Nave Bayes para la clasificacin de documentos
Sin embargo, esto no tiene en cuenta el nmero de ocurrencias de cada palabra, que es
informacin potencialmente til al determinar la categora de un documento. En cambio, un
documento puede ser visto como una bolsa de palabras -un conjunto que contiene todas las
palabras del documento, con mltiples apariciones de una palabra que aparece varias veces
(tcnicamente, un conjunto incluye a cada uno de sus miembros una sola vez, mientras que
un bolsa puede tener elementos repetidos). Las frecuencias de palabras se pueden acomodar
aplicando una forma modificada de Nave Bayes llamada multinominal Nave Bayes.
Discusin
Nave Bayes ofrece un enfoque sencillo, con semntica clara, para representar, usar y
aprender el conocimiento probabilstico. Puede lograr resultados impresionantes. La gente a
menudo sostiene que Nave Bayes rivaliza, y de hecho supera, con clasificadores ms
sofisticados en muchos conjuntos de datos. La moral es, siempre probar las cosas simples
primero. Una y otra vez las personas han conseguido, despus de una prolongada lucha,
obtener buenos resultados utilizando esquemas de aprendizaje sofisticados, slo para
descubrir ms tarde que mtodos simples como el 1R y el Nave Bayes hacen lo mismo o
mejor.
Hay muchos conjuntos de datos para los que Nave Bayes no le va bien, sin embargo, y es
fcil ver por qu. Debido a que los atributos se tratan como si fueran independientes, dada la
clase, la adicin de redundantes distorsiona el proceso de aprendizaje. Como ejemplo
extremo, si tuviera que incluir un nuevo atributo con los mismos valores que la temperatura
de los datos meteorolgicos, se multiplicara el efecto del atributo de temperatura: todas sus
probabilidades seran cuadradas, lo que le dara mucha ms influencia en la decisin. Si
tuvieras que aadir 10 atributos de este tipo, las decisiones se tomaran efectivamente slo
con la temperatura. Las dependencias entre atributos inevitablemente reducen el poder de
Nave Bayes para discernir lo que est pasando. Sin embargo, pueden ser mejorados usando
un subconjunto de los atributos en el procedimiento de decisin, haciendo una cuidadosa
seleccin de cules utilizar. El Captulo 7 muestra cmo.
RBOLES DE DECISIN
Lo nico que queda es cmo determinar qu atributo dividir, dado un conjunto de ejemplos
con diferentes clases. Considere (de nuevo! ) Los datos meteorolgicos. Hay cuatro
posibilidades para cada divisin, y en el nivel superior producen los rboles en la Figura 4.2.
info([2, 3], [4, 0], [3, 2]) (5 14) 0.971 (4 14) 0 (5 14) 0.971 0.693 bits
Este promedio representa la cantidad de informacin que esperamos que sea necesaria para
especificar la clase de una nueva instancia, dada la estructura de rbol de la Figura 4.2 (a).
Antes de que se crearan cualquiera de las estructuras de rbol nacientes en la Figura 4.2, los
ejemplos de entrenamiento en la raz comprendan nueve nodos yes y ve no, que
correspondan a una
Por lo tanto, el rbol de la Figura 4.2 (a) es responsable de una ganancia de informacin de
gain(outlook) info([9, 5]) info([2, 3], [4, 0], [3, 2]) 0.940 0.693 0.247 bits
que puede interpretarse como el valor informativo de crear una rama en el atributo outlook.
Por lo tanto, seleccionamos outlook como el atributo splitting en la raz del rbol. Espero que
esto coincida con su intuicin como el mejor para seleccionar. Es la nica opcin para la cual
un nodo hija es completamente puro, y esto le da una ventaja considerable sobre los otros
atributos. La humedad es la siguiente mejor opcin porque produce un nodo hija mayor que
es casi completamente puro.
Luego continuamos recursivamente. La figura 4.3 muestra las posibilidades de una rama
adicional en el nodo alcanzado cuando la perspectiva es soleada. Claramente, una nueva
Clculo de informacin
Ahora es el momento de explicar cmo calcular la medida de informacin que se utiliza como
base para evaluar diferentes divisiones. Describimos la idea bsica en esta seccin, luego en
la siguiente examinamos una correccin que generalmente se hace para contrarrestar un sesgo
hacia la seleccin de divisiones en atributos con un gran nmero de valores posibles.
Adems, la medida debera ser aplicable a situaciones de multiclass, no slo a las de dos
clases.
info([2, 3, 4])
puede hacerse en dos etapas. Primero decidir si es el primer caso o uno de los otros dos casos:
info([2, 7])
info([3, 4])
En algunos casos no ser necesario tomar la segunda decisin, es decir, cuando la decisin
resulte ser la primera. Tomando esto en cuenta lleva a la ecuacin
Por supuesto, no hay nada especial en estos nmeros particulares, y una relacin similar debe
mantenerse independientemente de los valores reales. Por lo tanto, podramos agregar un
criterio adicional a la lista anterior:
La razn de los signos menos es que los logaritmos de las fracciones p1, p2, ..., pn son
negativos, por lo que la entropa es realmente positiva. Por lo general, los logaritmos se
expresan en la base 2, y luego la entropa est en unidades llamadas bits, slo el tipo habitual
de bits utilizados con las computadoras.
Los argumentos p1, p2, ... de la frmula de la entropa se expresan como fracciones que se
suman a 1, por lo que, por ejemplo,
Cuando algunos atributos tienen un gran nmero de valores posibles, dando lugar a una rama
mltiple con muchos nodos secundarios, surge un problema con el clculo de ganancia de
informacin. El problema se aprecia mejor en el caso extremo cuando un atributo tiene un
valor diferente para cada instancia del conjunto de datos -como, por ejemplo, un atributo de
cdigo de identificacin.
La Tabla 4.6 da los datos meteorolgicos con este atributo adicional. La ramificacin en el
cdigo ID produce el tocn de rbol en la Figura 4.5. La informacin necesaria para
especificar la clase dada el valor de este atributo es
info([0,1])info([0,1])info([1,0])...info([1,0])info([0,1])
El efecto general es que la medida de ganancia de informacin tiende a preferir atributos con
un gran nmero de valores posibles. Para compensar esto, una modi cacin de la medida
denominada relacin de ganancia es ampliamente utilizada. La relacin de ganancia se
obtiene teniendo en cuenta el nmero y el tamao de nodos secundarios en los que un atributo
divide el conjunto de datos, sin tener en cuenta ninguna informacin sobre la clase.
Como hemos visto, los algoritmos de rboles de decisin se basan en un enfoque de divisin
y conquista del problema de clasificacin. Trabajan de arriba abajo, buscando en cada etapa
un atributo para dividir en lo que mejor separa las clases, y luego procesar recursivamente
los subproblemas que resultan de la divisin. Esta estrategia genera un rbol de decisin que,
si es necesario, puede convertirse en un conjunto de reglas de clasificacin, aunque si se
quiere producir reglas efectivas, la conversin no es trivial.
Un enfoque alternativo es tomar cada clase a su vez y buscar una forma de cubrir todas las
instancias en ella, al mismo tiempo excluyendo los casos que no estn en la clase. Esto se
denomina enfoque de cobertura porque en cada etapa identifica una regla que "cubre" algunas
de las instancias. Por su propia naturaleza, este enfoque de cobertura conduce a un conjunto
de reglas ms que a un rbol de decisiones.
If x > 1.2thenclass = a
Sin embargo, la regla abarca muchos b as como a, por lo que una nueva prueba se aade a
ella por dividiendo adems el espacio horizontalmente como se muestra en el tercer
diagrama:
Esto da una regla que cubre todos excepto uno de los a. Probablemente sea apropiado dejarlo
en eso, pero si se considerara necesario cubrir la nal a, otra regla sera necesaria, tal vez
Ifvx 1.2thenclass = b
De nuevo, una a est errneamente cubierta por estas reglas. Si fuera necesario excluirlo,
habra que aadir ms pruebas a la segunda regla, y se necesitaran reglas adicionales para
cubrir las b que excluyen estas nuevas pruebas.
Un algoritmo de divisin y conquista de arriba hacia abajo opera sobre los mismos datos de
una manera que es, por lo menos sper cialmente, muy similar a un algoritmo de cobertura.
Podra primero dividir el conjunto de datos utilizando el atributo x, y probablemente
terminara dividindolo en el mismo lugar, x = 1.2. Sin embargo, mientras que el algoritmo
de cobertura se ocupa slo de cubrir una sola clase, la divisin tomara en cuenta ambas clases
porque los algoritmos de divisin y conquista crean una nica descripcin de concepto que
se aplica a todas las clases. La segunda divisin tambin podra estar en el mismo lugar, y =
2.6, lo que conduce al rbol de decisin en la Figura 4.6 (b). Este rbol corresponde
exactamente al conjunto de reglas, y en este caso no hay diferencia de efecto entre los
algoritmos de cobertura y de divisin y conquista.
Pero en muchas situaciones hay una diferencia entre reglas y rboles en trminos de
perspicuidad de la representacin. Por ejemplo, cuando describimos el problema de subrbol
replicado en la Seccin 3.4, observamos que las reglas pueden ser simtricas, mientras que
los rboles deben seleccionar un atributo para dividir en primer lugar, y esto puede dar lugar
a rboles que son mucho ms mayor que un conjunto equivalente de reglas. Otra diferencia
es que en el caso multiclase, una divisin de rboles de decisin toma en cuenta todas las
clases al intentar maximizar la pureza de la divisin, mientras que el mtodo generador de
reglas se concentra en una clase a la vez, sin tener en cuenta lo que sucede con las otras
clases.
Los algoritmos de cobertura funcionan aadiendo pruebas a la regla que est en construccin,
siempre tratando de crear una regla con la mxima precisin. Por el contrario, los algoritmos
de divisin y conquista funcionan agregando pruebas al rbol que est en construccin,
siempre tratando de maximizar la separacin entre las clases. Cada uno de estos implica nding
un atributo para dividir en. Pero el criterio para el mejor atributo es diferente en cada caso.
Mientras que los algoritmos de divisin y conquista como ID3 eligen un atributo para
maximizar la ganancia de informacin, el algoritmo de cobertura que describiremos elige un
par de atributo-valor para maximizar la probabilidad de la clasificacin deseada.
La figura 4.7 da una imagen de la situacin, mostrando el espacio que contiene todas las
instancias, una regla parcialmente construida y la misma regla despus de que se haya
agregado un nuevo trmino. El nuevo trmino restringe la cobertura de la regla: La idea es
incluir tantas instancias de la clase deseada como sea posible y excluir tantas instancias de
otras clases como sea posible. Supongamos que la nueva regla cubrir un total de t instancias,
de las cuales p son ejemplos positivos de la clase y t - p estn en otras clases, es decir, son
errores cometidos por la regla. A continuacin, elija el nuevo trmino para maximizar la
relacin p / t.
Considere las reglas producidas para una clase particular, es decir, el algoritmo de la Figura
4.8 con el bucle externo eliminado. Parece claro de la manera en que se producen estas reglas
que se pretende que sean interpretadas en orden, es decir, como una lista de decisiones,
probando las reglas a su vez hasta que uno se aplique y luego usando eso. Esto se debe a que
las instancias cubiertas por una nueva regla se eliminan del conjunto de instancias tan pronto
como se completa la regla (en la ltima lnea del cdigo de la Figura 4.8): As, las reglas
posteriores estn diseadas para instancias que no estn cubiertas por la regla. Sin embargo,
aunque parece que se supone que debemos verificar las reglas a su vez, no tenemos que
hacerlo. Tenga en cuenta que cualquier regla subsiguiente generada para esta clase tendr el
mismo efecto: todos predicen la misma clase. Esto significa que no importa en qu orden se
ejecuten: Se encontrar una regla que cubre esta instancia, en cuyo caso se predice la clase
en cuestin, o no se encuentra dicha regla, en cuyo caso la clase no se predice.
Ahora regresa al algoritmo general. Cada clase se considera a su vez, y se generan reglas que
distinguen las instancias de esa clase de las otras. Ningn ordenamiento est implcito entre
las reglas de una clase y las de otra. En consecuencia, las reglas que se producen se pueden
ejecutar en cualquier orden.
Como se describe en la Seccin 3.4, las reglas independientes de orden parecen proporcionar
ms modularidad actuando como nuggets independientes de "conocimiento", pero sufren la
desventaja de que no est claro qu hacer cuando se aplican reglas de con fi nicin. Con las
reglas generadas de esta manera, un ejemplo de prueba puede recibir mltiples
clasificaciones, es decir, puede satisfacer reglas que se aplican a diferentes clases. Otros
ejemplos de prueba no pueden recibir ninguna clase de clasificacin. Una estrategia simple
para forzar una decisin en casos ambiguos es elegir, a partir de las clasificaciones predichas,
la que tiene ms ejemplos de entrenamiento o, si no se predice una clasificacin, elegir la
categora con la mayora de los ejemplos de entrenamiento en general. Estas diferencias no
ocurren con las listas de decisiones porque estn destinadas a ser interpretadas en orden y la
ejecucin se detiene tan pronto como se aplica una regla: La adicin de una regla
predeterminada al final asegura que cualquier instancia de prueba reciba una clasificacin.
Es posible generar buenas listas de decisiones para el caso multi-clase usando un mtodo
ligeramente diferente, como veremos en la Seccin 6.2.
Mtodos, como PRISM, pueden ser descritos como algoritmos de separar y conquistar:
Identifica una regla que cubre muchas instancias de la clase (y excluye las que no estn en la
clase), separa las instancias cubiertas porque ya estn ocupadas por la regla, y continuar con
el proceso sobre los que quedan. Esto contrasta con el enfoque de dividir y conquistar rboles
de decisin. El paso "separado" da lugar a un mtodo eficiente porque el conjunto de
instancias se contrae continuamente a medida que avanza la operacin.
Las reglas de asociacin son como las reglas de clasificacin. Podras ordenarlos de la misma
manera, ejecutando un procedimiento de induccin de reglas de divisin y conquista para
cada expresin posible que pudiera ocurrir en el lado derecho de la regla. Sin embargo, no
slo cualquier atributo puede ocurrir en el lado derecho con cualquier valor posible, pero una
sola regla de asociacin a menudo predice el valor de ms de un atributo. Para obtener tales
reglas, tendra que ejecutar el procedimiento de induccin de reglas una vez para cada posible
combinacin de atributos, con todas las posibles combinaciones de valores, en el lado
derecho. Esto dara lugar a un nmero enorme de normas de asociacin, que tendran que ser
reducidas en funcin de su cobertura (el nmero de casos que predicen correctamente) y su
exactitud (el mismo nmero expresado como una proporcin del nmero de instancias a las
que se aplica la regla). Este enfoque es completamente imposible. (Tenga en cuenta que,
como mencionamos en la Seccin 3.4, lo que llamamos cobertura a menudo se denomina
apoyo y lo que llamamos exactitud a menudo se denomina con dencia).
En su lugar, aprovechamos el hecho de que slo nos interesan las reglas de asociacin con
una alta cobertura. Ignoramos por el momento la distincin entre los lados izquierdo y
derecho de una regla y buscamos combinaciones de pares de atributos-valores que tengan
una cobertura mnima preespecificada. Estos son llamados conjuntos de elementos: Un par
atributo-valor es un elemento. La terminologa se deriva de anlisis de cesta de mercado, en
el que los artculos son artculos en su carrito de la compra y el gerente de supermercado est
buscando asociaciones entre estas compras.
Conjuntos de artculos
La primera columna de la Tabla 4.10 muestra los elementos individuales de los datos
meteorolgicos de la Tabla 1.2 (pgina 10), con el nmero de veces que cada elemento
aparece en el conjunto de datos dado a la derecha. Estos son los conjuntos de un solo
elemento. El siguiente paso es generar los conjuntos de dos elementos haciendo pares de los
conjuntos de un solo elemento. Por supuesto, no tiene sentido generar un conjunto que
contenga dos valores diferentes del mismo atributo (como outlook = sunny y outlook =
overcast) porque eso no puede ocurrir en ninguna instancia real.
Supongamos que buscamos reglas de asociacin con cobertura mnima 2; por lo tanto,
descartamos cualquier conjunto de elementos que cubran menos de dos instancias. Esto deja
47 conjuntos de dos elementos, algunos de los cuales se muestran en la segunda columna
junto con el nmero de veces que aparecen. El siguiente paso es generar los conjuntos de tres
elementos, de los cuales 39 tienen una cobertura de 2 o mayor. Existen seis conjuntos de
cuatro elementos y no hay conjuntos de ve-items. Para estos datos, un conjunto de ve-item
con cobertura 2 o mayor slo podra corresponder a una instancia repetida. Las primeras filas
de la tabla, por ejemplo, muestran que hay ve das en que la perspectiva es soleada, dos de
los cuales tienen temperatura = caliente, y, de hecho, en ambos das humedad = alta y juego
= no tan bien.
Reglas de asociacin
En breve explicaremos cmo generar estos conjuntos de elementos de forma eficiente. Pero
primero dejemos la historia. Una vez que se han generado todos los conjuntos de elementos
con la cobertura requerida, el siguiente paso es convertir cada uno en una regla o un conjunto
de reglas con al menos la exactitud mnima especificada. Algunos conjuntos de elementos
producirn ms de una regla; otros no producirn ninguno. Por ejemplo, hay un conjunto de
tres elementos con una cobertura de 4 (fila 38 de la Tabla 4.10):
Los gures a la derecha en esta lista muestran el nmero de casos para los cuales las tres
condiciones son verdaderas, es decir, la cobertura, dividida por el nmero de casos para los
cuales las condiciones en el antecedente son verdaderas. Interpretadas como una fraccin,
representan la proporcin de casos en los que la regla es correcta, es decir, su exactitud.
Suponiendo que la precisin especificada mnima es 100%, slo la primera de estas reglas lo
har en el conjunto de reglas nal. Los denominadores de las fracciones se obtienen fcilmente
examinando la expresin antecedente en la Tabla 4.10 (aunque algunas no se muestran en la
tabla). La regla nal anterior no tiene condiciones en el antecedente, y su denominador es el
nmero total de instancias en el conjunto de datos.
La primera etapa procede generando todos los conjuntos de un solo artculo con la cobertura
mnima dada (la primera columna de la Tabla 4.10) y luego usando esto para generar los
conjuntos de dos tems (segunda columna), conjuntos de tres tems (tercera columna) y
pronto. Cada operacin implica un paso a travs del conjunto de datos para contar los
elementos de cada conjunto y despus del paso los conjuntos de elementos supervivientes se
almacenan en una tabla hash-una estructura de datos estndar que permite que los elementos
almacenados en ella se encuentren muy rpidamente. A partir de los conjuntos de un solo
artculo, se generan conjuntos de dos artculos, y luego se hace un pase a travs del conjunto
de datos, contando la cobertura de cada conjunto de dos elementos; al final los conjuntos de
candidatos con menos de cobertura mnima se eliminan de la tabla. Los conjuntos de dos
elementos candidatos son simplemente todos los conjuntos de un solo elemento tomados en
parejas, porque un conjunto de dos elementos no puede tener la cobertura mnima a menos
que ambos conjuntos constitutivos de uno solo tengan la cobertura mnima. Esto se aplica en
general: Un conjunto de tres elementos slo puede tener la cobertura mnima si los tres de
sus subconjuntos de dos elementos tienen una cobertura mnima tambin, y de manera similar
para los conjuntos de cuatro elementos.
La segunda etapa del procedimiento toma cada conjunto de elementos y genera reglas de l,
comprobando que tienen la precisin mnima especificada. Si slo se buscaran reglas con
una sola prueba en el lado derecho, sera simplemente una cuestin de considerar cada
condicin a su vez como el consecuente de la regla, suprimindola del conjunto de elementos
y dividiendo la cobertura de todo el conjunto de elementos por la cobertura del subconjunto
resultante-obtenida a partir de la tabla hash- para obtener la exactitud de la regla
correspondiente. Dado que tambin nos interesan las reglas de asociacin con mltiples
consecuente, parece que tenemos que evaluar el efecto de colocar cada subconjunto del
conjunto de elementos en el lado derecho, dejando el resto del conjunto como el antecedente.
Este mtodo de fuerza bruta ser excesivamente intensivo de clculo a menos que los
conjuntos de elementos sean pequeos, porque el nmero de subconjuntos posibles crece
exponencialmente con el tamao del conjunto de elementos. Sin embargo, hay una mejor
manera. Hemos observado al describir las reglas de asociacin en la Seccin 3.4 que si la
regla del doble consecuente
se mantiene con una cobertura mnima y exactitud, entonces ambas reglas de una sola
consecuencia formadas a partir del mismo conjunto de elementos tambin deben tener:
Por el contrario, si una u otra de las reglas de consecuencia nica no se cumple, no tiene
sentido considerar la doble consecuente. Esto da una forma de construir desde reglas de una
sola consecuencia a las de doble consecuencia consecuente, de reglas de doble consecuencia
a las de triple consecuente, y as sucesivamente. Por supuesto, cada regla candidata debe ser
comprobada en contra de la tabla hash para ver si realmente tiene ms de la exactitud mnima
especificada. Pero esto generalmente implica controlar muchas menos reglas que el mtodo
de fuerza bruta. Es interesante que esta forma de construir reglas candidatas (n + 1) -
convenientes a partir de las reales n-consecuentes es realmente lo mismo que la construccin
de candidatos (n + 1) -item conjuntos de conjuntos de n-item real, descrito anteriormente.
Discusin
A menudo se buscan reglas de asociacin para conjuntos de datos muy grandes, y los
algoritmos eficientes son altamente valorados. El mtodo que hemos descrito hace que uno
pase a travs del conjunto de datos para cada tamao diferente del conjunto de elementos. A
veces el conjunto de datos es demasiado grande para leer en la memoria principal y debe
mantenerse en disco; entonces puede valer la pena reducir el nmero de pases mediante la
comprobacin de conjuntos de artculos de dos tamaos consecutivos al mismo tiempo. Por
ejemplo, una vez que se han generado conjuntos con dos elementos, todos los conjuntos de
tres elementos podran generarse a partir de ellos antes de pasar por el conjunto de instancias
para contar el nmero real de elementos en los conjuntos. Se considerarn ms conjuntos de
tres elementos de lo necesario, pero se reducira el nmero de pasadas a travs de todo el
conjunto de datos.
El formato de entrada tabular que usamos a lo largo de este libro, y en particular el formato
ARFF estndar basado en l, es muy ineficiente para muchos problemas de reglas de
asociacin. Las reglas de asociacin se usan a menudo en situaciones en las que los atributos
son binarios, presentes o ausentes, y la mayora de los valores de atributo asociados a una
instancia dada estn ausentes. Este es un caso para la escasa representacin de datos descrita
en la Seccin 2.4; se aplica el mismo algoritmo para las reglas de asociacin.
MODELOS LINEALES
Los mtodos que hemos estado buscando para rboles de decisin y reglas funcionan ms
naturalmente con atributos nominales. Pueden extenderse a atributos numricos, ya sea
mediante la incorporacin de pruebas de valor numrico directamente en el rbol de decisin
o en el esquema de induccin de reglas, o mediante la prediscretizacin de atributos
numricos en nombres nominales. Veremos cmo en los captulos 6 y 7, respectivamente.
Sin embargo, hay mtodos que funcionan ms naturalmente con atributos numricos, a saber,
los modelos lineales introducidos en la Seccin 3.2; los examinamos con ms detalle aqu.
Pueden formar componentes de mtodos de aprendizaje ms complejos, que investigaremos
ms adelante.
Cuando el resultado, o clase, es numrico, y todos los atributos son numricos, la regresin
lineal es una tcnica natural a considerar. Este es un mtodo bsico en las estadsticas. La
idea es expresar la clase como una combinacin lineal de los atributos, con pesos
predeterminados:
xw0 w1a1 w2a2 ...wkak
La regresin lineal puede usarse fcilmente para la clasificacin en dominios con atributos
numricos. De hecho, podemos utilizar cualquier tcnica de regresin, ya sea lineal o no
lineal, para la clasificacin. El truco consiste en realizar una regresin para cada clase,
estableciendo la salida igual a 1 para las instancias de entrenamiento que pertenecen a la clase
y 0 a las que no. El resultado es una expresin lineal para la clase. Luego, dado un ejemplo
de prueba de clase desconocida, calcule el valor de cada expresin lineal y elija el que sea
ms grande. Este esquema se denomina a veces regresin lineal multirrespuesta.
Una forma de ver la regresin lineal multirespuesta es imaginar que se aproxima a una
funcin numrica de pertenencia para cada clase. La funcin de pertenencia es 1 para
instancias que pertenecen a esa clase y 0 para otras instancias. Dada una nueva instancia,
calculamos su membresa para cada clase y seleccionamos la ms grande.
Una tcnica estadstica relacionada llamada regresin logstica no sufre de estos problemas.
En lugar de aproximar los valores 0 y 1 directamente, arriesgando valores de probabilidad
ilegtimos cuando el objetivo es superado, la regresin logstica construye un modelo lineal
basado en una variable objetivo transformada.
La figura 4.10 (a) da la regla de aprendizaje del perceptron para encontrar un hiperplano de
separacin. El algoritmo itera hasta que se ha encontrado una solucin perfecta, pero slo
funcionar correctamente si existe un hiperplano de separacin, es decir, si los datos son
linealmente separables. Cada iteracin pasa por todas las instancias de entrenamiento. Si se
encuentra una instancia de clasificacin errnea, se cambian los parmetros del hiperplano
para que la instancia de clasificacin errnea se acerque ms al hiperplano o incluso a travs
del hiperplano en el lado correcto. Si la instancia pertenece a la primera clase, esto se hace
agregando sus valores de atributo al vector de peso; de lo contrario, se sustraen de ella.
Para ver por qu esto funciona, considere la situacin despus de que se haya agregado una
instancia a perteneciente a la primera clase:
a0 a0 a1 a1 a2 a2 ak ak
Estas correcciones son incrementales y pueden interferir con las actualizaciones anteriores.
Sin embargo, se puede demostrar que el algoritmo converge en un nmero neto de iteraciones
si los datos son linealmente separables. Por supuesto, si los datos no son linealmente
separables, el algoritmo no terminar, por lo que se debe imponer un lmite superior al
nmero de iteraciones cuando este mtodo se aplica en la prctica.
Cuando se presenta una instancia al perceptron, sus valores de atributo sirven para "activar"
la capa de entrada. Se multiplican por los pesos y se resumen en el nodo de salida. Si la suma
ponderada es mayor que 0, la seal de salida es 1, representando la primera clase; de lo
contrario, es -1, representando el segundo.
La estructura de los dos algoritmos es muy similar. Al igual que el perceptron, Winnow slo
actualiza el vector de peso cuando se encuentra una instancia de clasificacin errnea, es un
error.
Los dos mtodos difieren en cmo los pesos se ponen al da. La regla de perceptron emplea
un mecanismo aditivo que altera el vector de peso aadiendo (o restando) el vector de atributo
de la instancia. Winnow emplea actualizaciones multiplicativas y altera los pesos
individualmente multiplicndolos por un parmetro especfico del usuario (o su inverso).
Los valores de atributo ai son 0 o 1 porque estamos trabajando con datos binarios. Los pesos
no cambian si el valor del atributo es 0, porque entonces no participan en la decisin. De lo
contrario, el multiplicador es si ese atributo ayuda a tomar una decisin correcta y 1 / si
no lo hace.
Otra diferencia es que el umbral en la funcin lineal es tambin un parmetro especfico del
usuario. Llamamos a este umbral y clasificamos una instancia como perteneciente a la clase
1 si y slo si
w0a0 w1a1 w2a2 ...wkak
El multiplicador necesita ser mayor que 1, y los wi se ajustan a una constante al principio.
El algoritmo que hemos descrito no permite pesos negativos que, dependiendo del dominio,
pueden ser un inconveniente. Sin embargo, hay una versin, llamada Balanced Winnow, que
permite. Esta versin mantiene dos vectores de peso, uno para cada clase. Una instancia se
clasi fi ca como perteneciente a la clase 1 si
por lo tanto, se llama un aprendiz de atributo-ef cient. Esto significa que puede ser un buen
algoritmo candidato si un conjunto de datos tiene muchas caractersticas (binarias) y la
mayora de ellas son irrelevantes. Tanto Winnow como el algoritmo perceptron pueden ser
utilizados en un entorno online en el que las nuevas instancias llegan de forma continua, ya
que pueden actualizar incrementalmente sus hiptesis a medida que llegan nuevas instancias.
Funcin Distancia
Aunque hay otras opciones posibles, la mayora de los estudiantes basados en la instancia
utilizan la distancia euclidiana. La distancia entre una instancia con valores de atributo a1(1),
a2(1), ... , ak(1)
(donde k es el nmero de atributos) y uno con valores a1(2), a2(2), ... , ak(2)
se define como
Los diferentes atributos se miden a menudo en diferentes escalas, por lo que si la frmula de
distancia euclidiana se utiliza directamente, el efecto de algunos atributos podra ser
completamente empequeecido por otros que tenan escalas de medicin ms grandes. Por
lo tanto, es usual normalizar todos los valores de los atributos para que se encuentren entre 0
y 1 calculando
donde vi es el valor real del atributo i, y el mximo y el mnimo se toman sobre todas las
instancias del conjunto de entrenamiento.
Estas frmulas asumen implcitamente atributos numricos. Aqu la diferencia entre dos
valores es slo la diferencia numrica entre ellos, y es esta diferencia que es cuadrada y se
agrega para producir la funcin de distancia. Para los atributos nominales que toman valores
simblicos en lugar de numricos, la diferencia entre dos valores que no son los mismos se
toma a menudo como 1, mientras que si los valores son iguales la diferencia es 0. No se
requiere escala en este caso porque slo se utilizan los valores 0 y 1.
Una poltica comn para manejar valores perdidos es la siguiente. Para los atributos
nominales, supongamos que una caracterstica que falta es mxima diferente de cualquier
otro valor de caracterstica. Por lo tanto, si uno o ambos valores faltan, o si los valores son
diferentes, la diferencia entre ellos se toma como 1; la diferencia es 0 slo si no faltan y
ambas son iguales. Para los atributos numricos, la diferencia entre dos valores faltantes
tambin se toma como 1. Sin embargo, si slo falta un valor, la diferencia se toma a menudo
como el tamao (normalizado) del otro valor o 1 menos ese tamao, lo que sea mayor . Esto
significa que si faltan valores, la diferencia es tan grande como posiblemente puede ser.
La Figura 4.12 (a) da un pequeo ejemplo con k = 2, y la Figura 4.12 (b) muestra las cuatro
instancias de entrenamiento que representa, junto con los hiperplanos que constituyen el
rbol. Tenga en cuenta que estos hiperplanos no son lmites de decisin: Las decisiones se
toman sobre la base de vecinos ms cercanos como se explica ms adelante. La primera
divisin es horizontal (h), a travs del punto (7,4) -esta es la raz del rbol. La rama izquierda
no se divide ms: contiene el punto nico (2,2), que es una hoja del rbol. La rama derecha
se divide verticalmente (v) en el punto (6,7). Su hijo derecho est vaco, y su hijo izquierdo
contiene el punto (3,8). Como ilustra este ejemplo, cada regin contiene slo un punto, o tal
vez ningn punto. Las ramas hermanas del rbol -por ejemplo, las dos hijas de la raz en la
figura 4.12 (a )- no se desarrollan necesariamente a la misma profundidad. Cada punto del
conjunto de entrenamiento corresponde a un solo nodo, y hasta la mitad son nodos de hoja.
Cmo se construye un rbol kD desde un conjunto de datos? Puede actualizarse
eficientemente a medida que se agregan nuevos ejemplos de formacin? Y cmo se aceleran
los clculos del vecino ms cercano? Abordamos la ltima pregunta primero.
Para localizar el vecino ms cercano de un punto de destino determinado, siga el rbol desde
su raz para localizar la regin que contiene el objetivo. La figura 4.13 muestra un espacio
como el de la figura 4.12 (b), pero con unos pocos ejemplos ms y un lmite extra. El objetivo,
que no es una de las instancias del rbol, est marcado por una estrella. El nodo de la hoja de
la regin que contiene el blanco est coloreado en negro. Esto no es necesariamente el vecino
ms cercano del objetivo, como ilustra este ejemplo, pero es una buena primera
aproximacin. En particular, cualquier vecino ms cercano debe estar ms cerca-dentro del
crculo discontinuo de la figura 4.13. Para determinar si existe, compruebe primero si es
posible que un vecino ms cercano se encuentre dentro del hermano del nodo. El hermano
del nodo negro est sombreado en la figura 4.13, y el crculo no lo cruza, por lo que el
hermano no puede contener un
Vecino. A continuacin, volver al nodo padre y comprobar su hermano, que aqu cubre todo
por encima de la lnea horizontal. En este caso debe ser explorado porque el rea que cubre
intersecta con el mejor crculo hasta ahora. Para explorarlo, y sus hijas (las dos tas del punto
original); comprobar si se cruzan el crculo (el izquierdo no, pero el derecho hace); y
desciende para ver si contiene un punto ms cercano (lo hace).
En un caso tpico, este algoritmo es mucho ms rpido que el examen de todos los puntos y
nd el vecino ms cercano. El trabajo relacionado con la aproximacin del vecino ms
cercano, el punto negro de la figura 4.13, depende de la profundidad del rbol, dada por el
logaritmo del nmero de nodos, log2n si el rbol est bien equilibrado. La cantidad de trabajo
que implica el retroceso para comprobar si este es realmente el vecino ms cercano depende
un poco del rbol y de cun buena es la aproximacin inicial. Pero para un rbol bien
construido con nodos que son cuadrados en lugar de rectngulos flacos largos, tambin puede
demostrarse que es logartmico en el nmero de nodos (si el nmero de atributos en el
conjunto de datos no es demasiado grande).
Cmo construyes un buen rbol para un conjunto de ejemplos de entrenamiento? El
problema se reduce a seleccionar la primera instancia de entrenamiento para dividir en y la
direccin de la divisin. Una vez que usted puede hacer eso, aplique el mismo mtodo
recursivamente a cada nio de la divisin inicial para construir el rbol entero.
Para obtener una buena direccin para la divisin, calcule individualmente la varianza de los
puntos de datos a lo largo de cada eje, seleccione el eje con mayor varianza y cree un
hiperplano de divisin perpendicular a l. Para encontrar un buen lugar para el hiperplano,
localice el valor mediano a lo largo de ese eje y seleccione el punto correspondiente. Esto
hace que la divisin sea perpendicular a la direccin de mayor extensin, con la mitad de los
puntos situados a ambos lados. Esto produce un rbol bien equilibrado. Para evitar regiones
flacas largas es mejor que las divisiones sucesivas estn a lo largo de diferentes ejes, lo cual
es probable porque la dimensin de mayor varianza se elige en cada etapa. Sin embargo, si
la distribucin de puntos es muy sesgada, la eleccin del valor mediano puede generar varias
divisiones sucesivas en la misma direccin, produciendo hiperrectangles largos y flacos. Una
mejor estrategia es calcular la media en lugar de la mediana y utilizar el punto ms cercano
a eso. El rbol no estar perfectamente equilibrado, pero sus regiones tienden a ser cuadradas
porque hay una mayor probabilidad de que se escojan diferentes direcciones para las
divisiones sucesivas.
Una ventaja del aprendizaje basado en instancias sobre la mayora de los mtodos de
aprendizaje de otras mquinas es que se pueden agregar nuevos ejemplos al conjunto de
entrenamiento en cualquier momento. Para conservar esta ventaja al usar un rbol kD,
necesitamos poder actualizarlo de forma incremental con nuevos puntos de datos. Para ello,
determine qu nodo hoja contiene el nuevo punto y nd su hiperrectangle. Si est vaco,
simplemente coloque el nuevo punto all. De lo contrario, divida el hiperrectngulo a lo largo
de su dimensin ms larga para conservar la cuadratura. Esta simple heurstica no garantiza
que la adicin de una serie de puntos conservar el equilibrio del rbol, ni que los
hiperrectangles estarn bien formados para una bsqueda de vecinos ms cercanos. Es una
buena idea reconstruir el rbol de vez en cuando, por ejemplo, cuando su profundidad crece
hasta el doble de la mejor profundidad posible.
Como hemos visto, los rboles kD son buenas estructuras de datos para lograr que los vecinos
ms prximos efecten efi cientemente. Sin embargo, no son perfectos. Los conjuntos de
datos distorsionados presentan un conflicto bsico entre el deseo de que el rbol est
perfectamente equilibrado y el deseo de que las regiones sean cuadradas. Ms importante
an, rectngulos, incluso cuadrados, no son la mejor forma de usar de todos modos, debido
a sus esquinas. Si el crculo discontinuo en la figura 4.13 fuera mayor, lo que sera si la
instancia negra estuviera un poco ms alejada del objetivo, se cruzara la esquina inferior
derecha del rectngulo en la parte superior izquierda y entonces ese rectngulo tendra que
ser investigado , tambin a pesar de que las instancias de formacin que lo definen estn muy
lejos de la esquina en cuestin. Las esquinas de las regiones rectangulares son incmodas.
La solucin? Utilice hiperesferas, no hiperrectangles. Las esferas vecinas pueden
superponerse, mientras que los rectngulos pueden apoyarse, pero esto no es un problema
porque el algoritmo de vecindad ms cercano para los rboles kD no depende de que las
regiones sean disjuntas. Una estructura de datos llamada un rbol de bola de nes k-
dimensional hiperesferas ("bolas") que cubren los puntos de datos, y los arregla en un rbol.
La figura 4.14 (a) muestra 16 instancias de entrenamiento en el espacio bidimensional,
superpuestas por un patrn de crculos superpuestos, y la figura 4.14 (b) muestra un rbol
formado a partir de estos crculos. Los crculos en diferentes niveles del rbol se indican con
diferentes estilos de guin y los crculos ms pequeos se dibujan en tonos de gris. Cada
nodo del rbol representa una bola, y el nodo est rayado o sombreado de acuerdo con la
misma convencin
para que pueda identificar en qu nivel estn las bolas. Para ayudarle a entender el rbol, los
nmeros se colocan en los nodos para mostrar cuntos puntos de datos se consideran dentro
de esa pelota. Pero tenga cuidado: esto no es necesariamente el mismo que el nmero de
puntos que caen dentro de la regin espacial que representa la pelota. Las regiones en cada
nivel a veces se superponen, pero los puntos que caen en el rea de superposicin se asignan
a slo una de las bolas superpuestas (el diagrama no muestra cul). En lugar de los conteos
de ocupacin en la Figura 4.14 (b), los nodos de los rboles reales de pelota almacenan el
centro y el radio de su bola; los nodos de hojas registran los puntos que contienen tambin.
Para usar un rbol de pelota para encontrar el vecino ms cercano a un objetivo determinado,
comience por recorrer el rbol de arriba abajo para localizar la hoja que contiene el objetivo
y nd el punto ms cercano al objetivo en esa pelota. Esto da un lmite superior para la
distancia del objetivo a su vecino ms cercano. Entonces, al igual que para el rbol kD,
examine el nodo hermano. Si la distancia del objetivo al centro del hermano excede su radio
ms el lmite superior actual, no puede contener posiblemente un punto ms cercano; si no,
el hermano debe ser examinado descendiendo el rbol ms lejos.
En la figura 4.15, el blanco est marcado con una estrella y el punto negro es su vecino ms
cercano. Se puede descartar todo el contenido de la bola gris: no puede contener un punto
ms cercano porque su centro est demasiado lejos. Progrese recursivamente el rbol hasta
su raz, examinando cualquier bola que pueda contener un punto ms cercano que el lmite
superior actual.
Los rboles de bolas se construyen de arriba abajo, y como con los rboles kD el problema
bsico es encontrar una buena manera de dividir una pelota que contiene un conjunto de
puntos de datos en dos. En la prctica, no tiene que continuar hasta que las bolas de la hoja
contengan slo dos puntos: Puede detenerse antes, una vez que se alcance un nmero mnimo
predeterminado, y lo mismo ocurre con los rboles kD. Aqu hay un mtodo de divisin
posible. Elige el punto en la bola que
est ms lejos de su centro, y luego un segundo punto que est ms alejado de la primera.
Asigne todos los puntos de datos en la pelota al ms cercano de estos dos centros de
agrupacin; luego calcula el centroide de cada grupo y el radio mnimo requerido para que
encierre todos los puntos de datos que representa. Este mtodo tiene el mrito de que el coste
de dividir una bola que contiene n puntos es slo lineal en n. Existen algoritmos ms
elaborados que producen bolas ms ajustadas, pero requieren ms computacin. No
describiremos algoritmos sofisticados para construir rboles de bola o actualizarlos de forma
incremental a medida que se encuentren nuevas instancias de entrenamiento.
CLUSTERING
Las tcnicas de agrupacin se aplican cuando no hay clases que se prediquen, pero las
instancias se dividen en grupos naturales. Estos grupos presumiblemente se refieren a algn
mecanismo que est en funcionamiento en el dominio del que se extraen las instancias, un
mecanismo que hace que algunos casos tengan una mayor similitud entre s que con los
restantes casos. Clustering naturalmente requiere diferentes tcnicas para la clasificacin y
asociacin de mtodos de aprendizaje que hemos considerado hasta ahora.
Como vimos en la Seccin 3.6, existen diferentes maneras de expresar el resultado del
agrupamiento. Los grupos identificados pueden ser exclusivos: Cualquier instancia pertenece
a un solo grupo. O pueden estar superpuestos: Una instancia puede caer en varios grupos. O
pueden ser probabilsticas: Una instancia pertenece a cada grupo con una cierta probabilidad.
O pueden ser jerrquicos: Una divisin de instancias en grupos en el nivel superior y cada
grupo se reen mayor, tal vez hasta los casos individuales. En realidad, la eleccin entre estas
posibilidades debe ser dictada por la naturaleza de los mecanismos que se cree que subyacen
en el fenmeno de agrupamiento en particular. Sin embargo, debido a que estos mecanismos
son raramente conocidos -la misma existencia de clsteres es, despus de todo, algo que
estamos tratando de descubrir- y por razones pragmticas tambin, la eleccin suele ser
dictada por las herramientas de agrupacin disponibles.
Vamos a examinar un algoritmo que funciona en los dominios numricos, las instancias de
particionamiento en clsteres disjuntos. Al igual que el mtodo bsico de vecindad ms
cercana de aprendizaje basado en la instancia, es una tcnica simple y directa que se ha
utilizado durante varias dcadas. En el captulo 6 examinamos los mtodos de agrupacin
ms recientes que realizan la agrupacin incremental y probabilstica.
de abajo no necesitan ser abiertos -al menos no en esta iteracin particular de k-medios. La
prxima vez, los centros de clster habrn cambiado y las cosas pueden ser diferentes.
APRENDIZAJE MULTI-INSTANCIA
En el Captulo 2 presentamos el aprendizaje multi-instancia, donde cada ejemplo en los datos
comprende varias instancias diferentes. Llamamos a estos ejemplos bolsas (notamos la
diferencia entre bolsas y juegos en la Seccin 4.2). En el aprendizaje supervisado multi-
instancia, una etiqueta de clase se asocia con cada bolsa, y el objetivo del aprendizaje es
determinar cmo se puede deducir la clase de las instancias que componen la bolsa. Aunque
se han ideado algoritmos avanzados para abordar tales problemas, resulta que la metodologa
simple puede aplicarse aqu con resultados sorprendentemente buenos. Un enfoque simple
pero eficaz es manipular los datos de entrada para transformarlos en un problema de
aprendizaje de instancia nica y luego aplicar mtodos de aprendizaje estndar, como los
descritos en este captulo. Dos de estos enfoques se describen en las siguientes secciones.
Agregacin de la entrada
Puede convertir un problema de instancia mltiple en uno de instancia nica calculando
valores como media, modo, mnimo y mximo que resumen las instancias de la bolsa y
agregndolos como nuevos atributos. Cada instancia "resumen" conserva la etiqueta de la
clase de la bolsa de la que se deriv. Para clasificar una nueva bolsa se utiliza el mismo
proceso: Se crea una nica instancia agregada con atributos que resumen las instancias de la
bolsa. Sorprendentemente, para el conjunto de datos de la actividad original de la droga que
estimul el desarrollo del aprendizaje multi-instancia, se pueden obtener resultados
comparables con alumnos de mltiples instancias de propsito especial usando slo los
valores mnimo y mximo de cada atributo para cada bolsa, combinados con un vector de
soporte (vase el captulo 6). Un inconveniente potencial de este enfoque es que las mejores
estadsticas de resumen para calcular dependen del problema en cuestin. Sin embargo, el
costo computacional adicional asociado con la exploracin de combinaciones de diferentes
estadsticas de resumen se compensa por el hecho de que el proceso de resumen significa que
el algoritmo de aprendizaje procesa menos instancias.
Agregacin de la salida
En lugar de agregar las instancias en cada bolsa, otro enfoque es aprender un clas- sista
directamente de las instancias originales que componen la bolsa. Para lograr esto, todas las
instancias de una bolsa determinada se asignan a la etiqueta de la clase de la bolsa. En el
momento de la clasificacin, se produce una prediccin para cada caso en la bolsa a predecir,
y las predicciones se agregan de alguna manera para formar una prediccin para la bolsa en
su conjunto. Un enfoque consiste en tratar las predicciones como votos para las distintas
etiquetas de las clases. Si el clasificador es capaz de asignar probabilidades a las etiquetas de
la clase, stas podran promediarse para obtener una distribucin de probabilidad general para
la etiqueta de la clase de la bolsa. Este mtodo trata las instancias de forma independiente y
les da igual in uencia en la etiqueta de clase predicha.
Un problema es que las bolsas en los datos de entrenamiento pueden contener diferentes
nmeros de instancias. Idealmente, cada bolsa debe tener la misma influencia en el modelo
nal que se aprende. Si el algoritmo de aprendizaje puede aceptar pesos de nivel de instancia,
esto se puede lograr asignando cada instancia en una bolsa dada un peso inversamente
proporcional al tamao de la bolsa. Si una bolsa contiene n instancias, dar a cada uno un peso
de 1 / n asegura que las instancias contribuyan igualmente a la etiqueta de la clase de la bolsa
y cada bolsa recibe un peso total de 1.
OTRAS LECTURAS
El esquema 1R fue propuesto e investigado a fondo por Holte (1993). Nunca se pens
realmente como un "mtodo" de aprendizaje de la mquina. El punto era ms para demostrar
que las estructuras muy simples subyacen a la mayora de los conjuntos de datos prcticos
que se utilizan para evaluar los esquemas de aprendizaje automtico en el momento y que
ponen en marcha los esquemas inductivos inductivos en conjuntos de datos simples era como
usar un martillo para romper una tuerca. Por qu lidiar con un rbol de decisiones complejo
cuando una simple regla har? El esquema que genera una regla simple por clase se debe a
Lucio de Souza Coelho de Brasil y Len Trigg de Nueva Zelanda, y ha sido llamado
hiperpipes. Un algoritmo muy simple, tiene la ventaja de ser extremadamente rpido y es
bastante factible incluso con un enorme nmero de atributos.
Bayes era un filsofo ingls del siglo XVIII que expuso su teora de la probabilidad en un
"Ensayo para resolver un problema en la doctrina de las posibilidades", publicado en las
Transacciones filosficas de la Royal Society de Londres (Bayes, 1763). La regla que lleva
su nombre ha sido una piedra angular de la teora de la probabilidad desde entonces. La
dificultad con la aplicacin de la regla de Bayes en la prctica es la asignacin de
probabilidades previas.
Algunos estadsticos, llamados Bayesianos, toman la regla como un evangelio e insisten en
que la gente haga serios intentos de estimar con precisin las probabilidades previas, aunque
estas estimaciones son a menudo subjetivas. Otros, no bayesianos, prefieren el tipo de anlisis
libre de prioridad que tpicamente genera intervalos de confianza estadstica, lo cual veremos
en el Captulo 5. Con un conjunto de datos particular, las probabilidades previas para Nave
Bayes son generalmente razonablemente fciles de estimar, Bayesiano al aprendizaje. Sin
embargo, la hiptesis de la independencia hecha por el mtodo Nave Bayes es un gran
obstculo y se estn haciendo esfuerzos para aplicar el anlisis bayesiano sin asumir
independencia. Los modelos resultantes se denominan redes bayesianas (Heckerman et al.,
1995), y los describimos en la seccin 6.7.
Las tcnicas bayesianas haban sido utilizadas en el campo del reconocimiento de patrones
(Duda y Hart, 1973) durante 20 aos antes de que fueran adoptadas por investigadores de
aprendizaje automtico (por ejemplo, Langley et al., 1992) y se hicieron trabajar en conjuntos
de datos con atributos redundantes (Langley y Sage, 1994) y atributos numricos (John y
Langley, 1995). La etiqueta Nave Bayes es desafortunada porque es difcil usar este mtodo
sin sentirse simplista. Sin embargo, no hay nada ingenuo sobre su uso en circunstancias
apropiadas. El modelo multinomial Nave Bayes, que es particularmente til para la
clasificacin de textos, fue investigado por McCallum y Nigam (1998).
Quinlan (1986) describe el procedimiento bsico ID3 desarrollado en este captulo. Una
descripcin completa del mtodo, incluyendo las mejoras que se incorporan en C4.5, aparece
en un libro clsico de Quinlan (1993), que da una lista del sistema C4.5 completo, escrito en
el lenguaje de programacin C. PRISM fue desarrollado por Cendrowska (1987), quien
tambin introdujo el conjunto de datos de lentes de contacto.
Las reglas de asociacin se introducen y describen en la literatura de la base de datos en lugar
de en la literatura de aprendizaje automtico. Aqu el nfasis est mucho en tratar con
enormes cantidades de datos en lugar de en formas sensibles de probar y evaluar algoritmos
en conjuntos de datos limitados. El algoritmo introducido en este captulo es el mtodo
Apriori desarrollado por Agrawal y sus asociados (Agrawal et al., 1993a, 1993b, Agrawal y
Srikant, 1994). En un artculo de Chen et al. (1996).
La regresin lineal se describe en la mayora de los textos estadsticos estndar, y en Lawson
y Hanson (1995) se puede encontrar un tratamiento particularmente completo. El uso de
modelos lineales para la clasificacin goz de gran popularidad en los aos sesenta; Nilsson
(1965) es una excelente referencia. Determina una unidad de umbral lineal como una prueba
binaria de si una funcin lineal es mayor o menor que cero y una mquina lineal como un
conjunto de funciones lineales, una para cada clase, cuyo valor para un ejemplo desconocido
es comparado y el ms grande elegido como su clase predicha. En el pasado lejano, los
perceptrons cayeron de favor en la publicacin de un libro in uential que demostr que tenan
limitaciones fundamentales (Minsky y Papert, 1969); sin embargo, los sistemas ms
complejos de funciones lineales han experimentado un resurgimiento en los ltimos aos en
forma de redes neuronales, descritas en la Seccin 6.4. Los algoritmos de Winnow fueron
introducidos por Nick Littlestone en su Ph.D. tesis (Littlestone, 1988, 1989). Los
clasificadores lineales de respuesta mltiple han encontrado aplicacin en una operacin
llamada apilamiento que combina la salida de otros algoritmos de aprendizaje, descritos en
el Captulo 8 (vase Wolpert, 1992).
Fix y Hodges (1951) realizaron el primer anlisis del mtodo del vecino ms cercano, y Johns
(1961) fue pionero en su uso en problemas de clasificacin. Cover y Hart (1967) obtuvieron
el resultado terico clsico de que, para conjuntos de datos suficientemente grandes, su
probabilidad de error nunca excede el doble del mnimo terico. Devroye et al. (1996)
demostr que k-vecino ms cercano es asintticamente ptimo para k grande y n con k / n
0. Los mtodos vecinos ms cercanos ganaron popularidad en el aprendizaje automtico a
travs del trabajo de Aha (1992), quien mostr que el aprendizaje basado en la instancia
puede se combinan con la poda ejemplar ruidosa y la ponderacin de los atributos y que los
mtodos resultantes tienen un buen rendimiento en comparacin con otros mtodos de
aprendizaje. Tomamos esto de nuevo en el captulo 6.
La estructura de datos del rbol kD fue desarrollada por Friedman et al. (1977). Nuestra
descripcin sigue de cerca una explicacin dada por Andrew Moore en su Ph.D. (Moore,
1991). Moore, quien, junto con Omohundro (1987), fue pionero en su uso en el aprendizaje
automtico. Moore (2000) describe maneras sofisticadas de construir los rboles de la bola
que funcionan bien incluso con millares de atributos. Tomamos nuestro ejemplo del rbol de
la bola de notas de la conferencia por el gris de Alexander de la universidad de Carnegie-
Mellon. Demiroz y Guvenir (1997) describen el mtodo del intervalo de caractersticas de
voto mencionado en la seccin de discusin al final de la seccin 4.7.
El algoritmo k-means es una tcnica clsica, y muchas descripciones y variaciones estn
disponibles (por ejemplo, Hartigan, 1975). La variante k-means ++, que produce una mejora
significativa al escoger las semillas iniciales ms cuidadosamente, fue introducida en 2007
por Arthur y Vassilvitskii (2007). El uso inteligente de kD-rboles para acelerar la agrupacin
de k-medios, que hemos elegido para ilustrar utilizando rboles de bola en su lugar, fue
pionera por Moore y Pelleg (2000) en su algoritmo de clustering X-means. Ese algoritmo
contiene algunas otras innovaciones, descritas en la Seccin 6.8.
El mtodo de tratar los problemas de aprendizaje de mltiples instancias mediante la
aplicacin de estudiantes estndar de una sola instancia a datos resumidos a nivel de bolsa se
aplic conjuntamente con mquinas de vector de soporte por Grtner et al. (2002). El enfoque
alternativo de la agregacin de la produccin se explica por Frank y Xu (2003).
IMPLEMENTACIONES WEKA
Para los clasificadores, vea la Seccin 11.4 y la Tabla 11.5.
Inferir reglas rudimentarias: OneR, HyperPipes (aprende una regla por clase)
Modelizacin estadstica:
NaveBayes y muchas variantes, incluyendo NaiveBayesMultinomial
rboles de decisin: Id3
Reglas de decisin: prisma
Reglas de asociacin (ver Seccin 11.7 y Tabla 11.8): a priori
Modelos lineales:
SimpleLinearRegression, LinearRegression, Logistic (regresin)
VotedPerceptron, Winnow
Aprendizaje basado en instancias: IB1, VFI (intervalos de funcin de votacin)
Clustering (consulte la Seccin 11.6 y la Tabla 11.7): SimpleKMeans
Aprendizaje de mltiples instancias: SimpleMI, MIWrapper