Está en la página 1de 19

CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO

6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Si Astigmatismo = si y ? entonces lentes recomendados = duros

Edad = joven 2/4


Edad = adulta 1/4
Edad = mayor 1/4
Anteojos = miope 3/6
Anteojos = hipremétrope 1/6
Lágrimas = reducida 0/6
Lágrimas = normal 4/6

Si Astigmatismo = si y Lágrimas = normal y ? entonces lentes recomendados = duros

Edad = joven 2/2


Edad = adulta 1/2
Edad = mayor 1/2
Anteojos = miope 3/3
Anteojos = hipremétrope 1/3

Si Astigmatismo = si y Lágrimas = normal y Anteojos = miope entonces lentes recomendados = duros

Esta es una de las reglas finales, pero cubre sólo tres casos para los cuales la recomendación es lentes
duros. Con lo cual, si aplicamos nuevamente el algoritmo para la clase duros, sin tener en cuenta los casos
cubiertos por la regla anterior, obtendremos:

Si Edad = joven y Astigmatismo = si y Lágrimas = normal entonces lentes recomendados = duros

Una vez que cubrimos todos los casos de clase dura, se repite el procedimiento para las otras dos clases.

6. LA FAMILIA TDIDT

La familia de los Top Down Induction Trees (TDIDT) pertenece a los métodos inductivos del
Aprendizaje Automático que aprenden a partir de ejemplos preclasificados. En Minería de Datos, se
utiliza para modelar las clasificaciones en los datos mediante árboles de decisión.

6.1. Construcción de los árboles de decisión

Los árboles TDIDT, a los cuales pertenecen los generados por el ID3 y el C4.5, se construyen a partir del
método de Hunt. El esqueleto de este método para construir un árbol de decisión a partir de un conjunto T
de datos de entrenamiento es muy simple. Sean las clases {C1, C2,. . ., Ck}. Existen tres posibilidades:

1. T contiene uno o más casos, todos pertenecientes a un única clase Cj: El árbol de decisión para T
es una hoja identificando la clase Cj .

- 27 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

2. T no contiene ningún caso: El árbol de decisión es una hoja, pero la clase asociada debe ser
determinada por información que no pertenece a T. Por ejemplo, una hoja puede escogerse de
acuerdo a conocimientos de base del dominio, como ser la clase mayoritaria.
3. T contiene casos pertenecientes a varias clases: En este caso, la idea es refinar T en subconjuntos
de casos que tiendan, o parezcan tender hacia una colección de casos pertenecientes a una única
clase. Se elige una prueba basada en un único atributo, que tiene uno o más resultados,
mutuamente excluyentes {O1, O2,. . ., On}. T se particiona en los subconjuntos T1, T2,. . ., Tn donde
Ti contiene todos los casos de T que tienen el resultado Oi para la prueba elegida. El árbol de
decisión para T consiste en un nodo de decisión identificando la prueba, con una rama para cada
resultado posible. El mecanismo de construcción del árbol se aplica recursivamente a cada
subconjunto de datos de entrenamientos, para que la i-ésima rama lleve al árbol de decisión
construido por el subconjunto Ti de datos de entrenamiento.

A continuación se presenta el algoritmo del método ID3 para la construcción de árboles de decisión en
función de un conjunto de datos previamente clasificados.

Función ID3
(R: conjunto de atributos no clasificadores,
C: atributo clasificador,
S: conjunto de entrenamiento) devuelve un árbol de decisión;

Comienzo
Si S está vacío,
devolver un único nodo con Valor Falla;
Si todos los registros de S tienen el mismo valor para el atributo clasificador,
Devolver un único nodo con dicho valor;
Si R está vacío, entonces
devolver un único nodo con el valor más frecuente del atributo clasificador en los
registros de S [Nota: habrá errores, es decir, registros que no estarán bien clasificados en
este caso];
Si R no está vacío, entonces
D atributo con mayor Ganancia(D,S) entre los atributos de R;
Sean {dj| j=1,2, .., m} los valores del atributo D;
Sean {Sj| j=1,2, .., m} los subconjuntos de S correspondientes a los valores de dj
respectivamente;
Devolver un árbol con la raíz nombrada como D y con los arcos nombrados d1, d2, .., dm
que van respectivamente a los árboles
ID3(R-{D}, C, S1), ID3(R-{D}, C, S2), .., ID3(R-{D}, C, Sm);
- 28 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Fin

6.1.1. Cálculo de la Ganancia de Información

En los casos, en los que el conjunto T contiene ejemplos pertenecientes a distintas clases, se realiza una
prueba sobre los distintos atributos y se realiza una partición según el “mejor” atributo. Para encontrar el
“mejor” atributo, se utiliza la teoría de la información, que sostiene que la información se maximiza
cuando la entropía se minimiza. La entropía determina la azarosidad o desestructuración de un conjunto.

Supongamos que tenemos ejemplos positivos y negativos. En este contexto la entropía de un subconjunto
Si, H(Si), puede calcularse como:
H ( S i ) = − pi+ log pi+ − pi− log pi−
Donde pi+ es la probabilidad de que un ejemplo tomado al azar de Si sea positivo. Esta probabilidad
puede calcularse como
ni+
pi+ = (1)
ni+ + ni−
Si el atributo at divide el conjunto S en los subconjuntos Si, i = 1,2, . .. . . , n, entonces, la entropía total del
sistema de subconjuntos será:
n
H ( S , at ) = P (S i ) ⋅ H (S i ) (2)
i =1

Donde H (S i ) es la entropía del subconjunto S i y P (S i ) es la probabilidad de que un ejemplo pertenezca


a S i . Puede calcularse, utilizando los tamaños relativos de los subconjuntos, como:
Si
P (S i ) = (3)
S

La ganancia en información puede calcularse como la disminución en entropía. Es decir:

I (S , at ) = H (S ) − H (S , at ) (4)

Donde H (S ) es el valor de la entropía a priori, antes de realizar la subdivisión, y H (S , at ) es el valor de


la entropía del sistema de subconjuntos generados por la partición según at.

El uso de la entropía para evaluar el mejor atributo no es el único método existente o utilizado en
Aprendizaje Automático. Sin embargo, es el utilizado por Quinlan al desarrollar el ID3 y su sucesor el
C4.5.

6.1.2. Entropía

El estudio de la entropía, como la define la teoría de la Información, merece un capítulo aparte.


Supongamos que tenemos una moneda que está arreglada para que siempre salga cara. Entonces,
P(cara)=1. Si tiramos la moneda, podemos predecir que el resultado será cara. ¿Cuánta información
hemos aprendido? (o, ¿cuán inciertos fuimos al predecir?). No hemos aprendido nada.

- 29 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

¿Qué pasaría si la moneda no estuviese tocada? ¿Cuánto aprendemos si sale cara? 1bit (no estábamos
seguros acerca de cuál de los dos resultados igualmente probables saldría y ahora lo sabemos). Entonces,
una distribución “uniforme” tiene poca incertidumbre y, por ende, aprendemos menos porque aprendemos
a partir de resultados altamente probables.

Supongamos ahora, que tenemos una moneda en la cual la probabilidad de que salga cara es muy alta
(0.99). Si tiramos la moneda y sale ceca, nos sorprendemos, aprendemos más si nos dicen que un evento
muy poco probable ha ocurrido. En general, la cantidad de aprendizaje es inversamente proporcional a la
probabilidad del evento.

Ahora supongamos que tenemos un dado normal. Si nos dicen el resultado de una tirada, ¿cuánto hemos
aprendido? 2.6 bits (cada posibilidad ocurre 1/6 de las veces, log2(1/(1/6))

En general la información de un evento es I(e)= log2(1/P(e)) = -log2P(e)

Ahora, supongamos que S es una variable aleatoria con n valores posibles. Entonces, como explicamos
anteriormente, la entropía se define como
n
H (S i ) = − p i log p i
i =1
donde pi es la probabilidad de que un ejemplo tomado al azar pertenezca a la clase i y se calcula en base a
la frecuencia de los datos de dicha clase en los datos de entrenamiento. Vemos que la entropía es
simplemente la cantidad de información esperada de observar un evento que ocurre según una
distribución de probabilidades. La entropía mide la cantidad de incertidumbre que tenemos dada una
distribución de probabilidades.

Si tomamos un conjunto con elementos positivos y negativos, la entropía variará entre 0 y 1 y puede
representarse de la siguiente manera.

1.2
1
0.8
Entropía

0.6
0.4
0.2
0
0 0.5 1 1.5
p+

Notemos que la entropía es 0 si todos los ejemplos pertenecen a la misma clase, y es 1 cuando hay igual
número de ejemplos positivos y negativos en el conjunto de datos.

Cuanto tenemos c clases posibles, el valor máximo de la entropía será log2c.

- 30 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Una interpretación de la entropía desde el punto de vista de la Teoría de la Información es que especifica
el número mínimo de bits de información necesarios para codificar un ejemplo arbitrario S (un ejemplo
sacado al azar del conjunto de datos). Por ejemplo, si p+ es 1, el receptor sabe que el ejemplo es positivo,
con lo cual no es necesario enviar ningún bit. En cambio, si p+ es 0.5, se necesita 1 bit para indicar si el
ejemplo es positivo o negativo. Si p+ es 0.8, se pueden utilizar varios mensajes de menos de 1 bit para
indicar la clase de varios ejemplos.

6.1.3. Proporción de ganancia

Volviendo al tema de la elección del “mejor” atributo para realizar ña división de los datos, encontramos
que la ganancia favorece a aquellos atributos que tienen muchos valores frente a los que tienen pocos
valores. Tomemos, por ejemplo, unos registros diarios, cada uno con la fecha. Si particionamos el
conjunto de datos según el campo fecha, dicha partición será perfecta, sin embargo, el árbol resultante no
servirá para clasificar casos futuros. Como el campo fecha tiene tantos valores, divide a los datos de
entrenamiento en conjuntos pequeños, con lo cual tendrá una alta ganancia de información en relación a
los datos de entrenamiento.
Para evitar esto puede utilizarse otra medida para dividir a los datos. Una de estas medida alternativas es
la ganancia de información. Esta medida penaliza a los atributos como fecha al incorporar el término de
información de la división, que es sensible a que tan amplia y uniformemente cada atributo divide a los
datos:
n T Ti
I _ división( X ) = −
i
× log 2
i =1 T T

La información de la división no es otra cosa que la entropía del conjunto con respecto al atributo i. Se
define, entonces, a la proporción de ganancia como:
I (T , X )
proporción _ de _ ganancia( X ) =
I _ división( X )
Cabe destacar que la información de la división penalizará a aquellos atributos con muchos valores
uniformemente distribuidos. Si tenemos n datos separados perfectamente por un atributo, la información
de la división para ese caso será log2n. En cambio, un atributo que divide a los ejemplos en dos mitades,
tendrá una información de la división de 1.

¿Qué pasa cuando la información de la división es cercana a cero? Para resolver este inconveniente
pueden aplicarse varias heurísticas. Por ejemplo, puede utilizarse la ganancia como medida y utilizar la
proporción de ganancia sólo para los atributos que estén sobre el promedio.

6.1.4. Datos Numéricos

Los árboles de decisión pueden generarse tanto a partir de atributos discretos como de atributos
numéricos. Cuando se trabaja con atributos discretos, la partición del conjunto según el valor de un
atributo es simple. Por ejemplo, agrupamos todos los animales que tengan pico, siendo tiene_pico un
atributo y sus posibles valores si y no. En el caso de los atributos numéricos esta división no es tan fácil.
Por ejemplo, si queremos partir los días de un mes en función a la cantidad de lluvia caída, es casi
imposible que encontremos dos días con exactamente la misma cantidad de precipitaciones caídas.

- 31 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Para solucionar este problema, puede recurrirse a la binarización. Este método consiste en formar dos
rangos de valores de acuerdo al valor de un atributo, que pueden tomarse como simbólicos. Por ejemplo,
si en un día hubo 100ml de lluvia, pueden crearse los intervalos [0,100) y [100, +∝) y el cálculo de la
entropía se realiza como si los dos intervalos fueran los dos valores simbólicos que puede tomar el
atributo.

6.1.5. Poda de los árboles generados

Existen varias razones para la poda de los árboles generados por los métodos de TDIDT [Michalski y
otros, 1998]. Entre ellas podemos nombrar la sobregeneralización, la evaluación de atributos poco
importantes o significativos, y el gran tamaño del árbol obtenido. En el primer caso, un árbol puede haber
sido construido a partir de ejemplos con ruido, con lo cual algunas ramas del árbol pueden ser engañosas.
En cuanto a la evaluación de atributos no relevantes, deben podarse ya que sólo agregan niveles en el
árbol y no contribuyen a la ganancia de información. Por último, si el árbol obtenido es demasiado
grande, se dificulta la interpretación por parte del usuario, con lo cual hubiera sido lo mismo utilizar un
método de caja negra.

Existen dos enfoques para podar los árboles: la pre-poda (preprunning) y la post-poda (postprunning). En
el primer caso se detiene el crecimiento del árbol cuando la ganancia de información producida al dividir
un conjunto no supera un umbral determinado. En la post-poda se podan algunas ramas una vez que se ha
terminado de construir el árbol.

El primer enfoque, conocido como pre-poda, tiene la atracción de que no se pierde tiempo en construir
una estructura que luego será simplificada en el árbol final. El método típico en estos casos es buscar la
mejor manera de partir el subconjunto y evaluar la partición desde el punto de vista estadístico mediante
la teoría de la ganancia de información, reducción de errores, etc. Si esta evaluación es menor que un
límite predeterminado, la división se descarta y el árbol para el subconjunto es simplemente la hoja más
apropiada. Sin embargo, este tipo de método tiene la contra de que no es fácil detener un particionamiento
en el momento adecuado, un límite muy alto puede terminar con la partición antes de que los beneficios
de particiones subsiguientes parezcan evidentes, mientras que un límite demasiado bajo resulta en una
simplificación demasiado leve.

El segundo enfoque, es entonces, el utilizado por el ID3 y el C4.5. Una vez construido el árbol se procede
a su simplificación según los criterios propios de cada uno de los algoritmos.

6.1.6. El Principio de Longitud de Descripción Mínima

El fin último de los sistemas de aprendizaje es aprender una “teoría” del dominio de los ejemplos, una
teoría que es predictiva en el sentido de que es capaz de predecir la clase de nuevos instancias. Al hablar
de teorías podemos estar refiriéndonos a árboles o reglas de decisión entre otros.

Existe un principio de la ciencia conocido como Afeitadora de Occam (Occam’s Razor) [Mitchell,
2000a], que determina que cuando todas las condiciones son iguales, se prefieren las teorías simples. Es
decir, la mejor teoría científica es la que explica todos los hechos y tiene el menor tamaño. Como Einstein
sostuvo: “Todo debe hacerse lo más simple posible, pero no más simple que eso”. ¿Cómo aplicamos la
Afeitadora de Occam al aprendizaje automático? En el caso de estos sistemas, todas las teorías generadas
contienen errores, podemos decir que estos errores son como las excepciones a la misma. Entonces, para
asegurarnos que todas las condiciones sean iguales, debemos incluir las excepciones en la teoría.

- 32 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

El Principio de Longitud de Descripción Mínima (MDL) ([Quinlan, 1993d], [Mitchell, 2000b], [Quinlan y
Cameron-Jones, 1995], [Quinlan, 1995], [Joachims y otros, 1995]) sostiene que la mejor teoría para un
conjunto de datos es aquella que minimiza el tamaño de la teoría y la cantidad de información necesaria
para especificar las excepciones. Desde el punto de vista del Aprendizaje Automático esto significa que
dado un conjunto de instancias, un sistema de aprendizaje infiere una teoría a partir de ellas. Supongamos
una analogía con el campo de las comunicaciones: la teoría con las excepciones debe ser transmitida por
un canal perfecto. El MDL sostiene que la mejor generalización es la que requiere la menor cantidad de
bits para comunicar la generalización junto con los ejemplos a partir de la cual fue generada. Esto evita las
teorías que satisfacen los datos al extremo sobreajuste, ya que los ejemplos se transmiten también, y las
teorías demasiado extensas serán penalizadas. Por otro lado, también se puede transmitir la teoría nula que
no ayuda en lo más mínimo al transmitir los ejemplos. Entonces, pueden transmitirse tanto las teorías
simples como aquellas muy complejas y el MDL provee una forma de medir la performance de los
algoritmos basándose en los datos de entrenamiento únicamente. Esta parece ser la solución ideal al
problema de medir la performance.

Veamos cómo aplicamos el principio MDL. Supongamos que un sistema de aprendizaje genera una teoría
T, basada en un conjunto de entrenamiento E, y requiere una cierta cantidad de bits L[T] para codificar la
teoría. Dada la teoría, el conjunto de entrenamiento puede codificarse en una cantidad L[E/T] de bits.
L[E/T] está dada por la función de ganancia de información sumando todos los miembros del conjunto de
entrenamiento. La longitud de descripción total de la teoría es L[E]+L[E/T]. El principio MDL
recomienda la teoría T que minimiza esta suma.

6.1.7. Funciones alternativas

Cuando hablamos de cómo elegir el “mejor” atributo en cada partición de los datos para construir un árbol
de decisión según el método de divide y reinarás, dijimos que podíamos utilizar la entropía tal como lo
hace el ID3. No obstante, la entropía no es la única medida que podemos utilizar. Existen medidas
alternativas que también nos dan una idea del éxito de cada atributo para particionar los datos. Vamos a
ver una de ellas, la función de pérdida cuadrática.
Dada una instancia con k clases posibles a la que puede pertenecer, el sistema aprendiz devuelve un vector
de probabilidades p1, p2, .....,pk de las clases de la instancia. Es decir, pi indica la probabilidad que tiene la
instancia de pertenecer a la clase i. Con lo cual, los elementos del vector suman 1.

El resultado verdadero de la clasificación de la instancia será una de las clases posibles, entonces, si lo
expresamos en un vector a1, a2, .....,ak donde ai=1 si el elemento es de clase i y es 0 en caso contrario.

Entonces, utilizamos la siguiente función para evaluar la pérdida de información según cada atributo:

Ejemplo

(p − a j ) = 1 + 2 pi +
k k
2 2
j pj
j =1 j =1

6.2. Atributos Desconocidos

Cuando explicamos el método de Hunt, consideramos que todos los resultados de todas las pruebas para
todos los casos eran conocidos. Dividimos el conjunto T de datos de entrenamiento en los subconjuntos
- 33 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

{Ti} según los resultados de una prueba en particular, y, una vez construido el árbol, clasificamos un caso
tomando la rama correspondiente al resultado de la prueba de cada nodo de decisión. Como cada prueba
se basa en un único atributo, el resultado de una prueba no puede determinarse si no se conoce el valor del
atributo.

¿Qué pasa cuando los datos están incompletos como ocurre generalmente con cualquier conjunto de datos
de la vida real? Podemos tomar dos caminos posibles ante los datos incompletos: descartar una proporción
importante de los datos por incompletos y declarar algunos casos como inclasificables, o adaptar los
algoritmos para poder trabajar con valores de atributos faltantes. En la mayoría de los casos, la primera
opción es inaceptable. Para poder aplicar la segunda opción, hay tres cuestiones importantes que deben ser
tenidas en cuenta:
Selección de una prueba en la cual la partición del conjunto de entrenamiento se realiza en base a un
criterio heurístico como ser la ganancia o la proporción de ganancia. Si dos pruebas distintas utilizan
atributos con distinta cantidad de valores desconocidos, ¿cómo debe tenerse esto en cuenta al medir su
importancia relativa?

Una vez que una prueba ha sido seleccionada, los casos de entrenamiento con valores desconocidos para
los atributos relevantes no pueden ser asociados con una respuesta particular de la prueba, y, por lo tanto,
no pueden asignarse a un subconjunto {Ti}. ¿Cómo deben tratarse estos casos durante la partición?

Cuando el árbol de decisión se utiliza para clasificar un caso nuevo, ¿cómo debe proceder el sistema al
encontrarse con un valor de atributo desconocido para el nodo de decisión que está tratando de evaluar?

Varios autores han tratado de resolver estos problemas, generalmente rellenando los valores desconocidos
con los valores más frecuentes. En un estudio realizado por Quinlan, [Quinlan,1989], se comparan las
soluciones más comunes a este problema. El autor llega a la conclusión general de que existen varios
enfoques que son notablemente inferiores, pero no existe ningún enfoque que sea claramente superior. A
continuación se presenta un resumen del estudio.

6.2.1. Estudio sobre datos con atributos desconocidos en la Inducción

6.2.1.1. Métodos analizados

Todos los enfoques descriptos a continuación fueron implementados como variantes de un programa que
construye un árbol de decisión utilizando la proporción de ganancia [Quinlan, 1989]. Los árboles
producidos no fueron podados. Varios enfoques para solucionar los tres problemas fueron explorados.
Cada uno de ellos tiene una letra identificatoria, tal que una combinación de letras implica una
combinación de métodos.

Al evaluar una prueba basada en el atributo A

I- Ignorar los casos del conjunto de entrenamiento con valores desconocidos


R- Reducir la ganancia de información aparente al testear A en la proporción de casos
con valores desconocidos para A: si A tiene una proporción de valores
desconocidos del x%, la prueba sobre A no dará información x% del tiempo.
S- “Completar” los valores desconocidos de A antes de calcular la ganancia de A
[Shapiro, 1983], basándose en los valores de otros atributos
C- Completar los valores de A con el valor más frecuente para el atributo antes de
calcular la ganancia.

- 34 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Al partir el conjunto de entrenamiento utilizando una prueba sobre el atributo A y un caso de


entrenamiento tiene un valor desconocido de A.

I- Ignorar el caso
S- Determinar el valor de A utilizando el método de Shapiro y asignarlo al subconjunto
correspondiente.
C- Tratar el caso como si tuviera el valor más común de A.
P- Asignar el caso a uno de los subconjuntos con probabilidad proporcional al número
de casos con valores conocidos en cada subconjunto.
F- Asignar una fracción del caso a cada subconjunto utilizando las proporciones
explicadas en el inciso anterior.
A- Incluir el caso en todos los subconjuntos
U- Desarrollar una rama separada para los casos de valores desconocidos de A.

Al clasificar un caso nuevo con un valor desconocido del atributo A que debe ser evaluado.

U- Si existe una rama especial para los valores desconocidos de A, tomarla


S- Determinar el resultado más probable de A y actuar de acuerdo con ello.
C- Tratar el caso como si fuese el del valor más común de A.
F- Explorar todas las ramas, combinando los resultados para reflejar las probabilidades
de los distintos resultados.
H- Parar en este punto y asignar el caso a la clase más frecuente.

6.2.1.2. Casos analizados

Valores desconocidos al particionar: los resultados de las pruebas revelan una clara superioridad del RFF
(asignar casos fraccionales a los subconjuntos) y una clara desventaja del RIF (ignorar los casos de
entrenamiento con valores desconocidos).

Valores desconocidos al clasificar: la estrategia de parar ante los valores desconocidos dio muy malos
resultados, mientras que todos las otras estrategias dieron resultados similares

Valores desconocidos al seleccionar las pruebas: ignorar los valores desconocidos dio resultados peores
que reducir la ganancia o completar los valores, pero no existió un método claramente superior entre estos
dos últimos.

6.2.1.3. Resultados obtenidos

El estudio se concentró en dominios con altos niveles de valores desconocidos y conjuntos de


entrenamiento chicos. Este estudio proporcionó evidencia para las siguientes hipótesis:
En la evaluación de pruebas, los enfoques que ignoran los casos con valores desconocidos (y por lo tanto
no tienen en cuenta la proporción de desconocimiento) presentan malos resultados cuando esta proporción
varía de atributo en atributo.

Cuando el conjunto de entrenamiento se parte ignorando los casos con valores desconocidos para el
atributo probado, se obtienen resultados pobres (esta es la forma en que el ID3 realiza las particiones). El
enfoque de dividir los casos entre los subconjuntos resultó muy bueno.

- 35 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Durante la clasificación, tratar de determinar el resultado más probable de una prueba, funciona bien en
algunos dominios (aquellos en los cuales la sustitución puede realizarse con confianza), pero muy mal en
otros. La combinación de todos los resultados posibles es más resilente, dando una mayor certeza en la
clasificación general.

6.3. Transformación a Reglas de Decisión

Los árboles de decisión demasiado grandes son difíciles de entender porque cada nodo debe ser
interpretado dentro del contexto fijado por las ramas anteriores. Cada prueba tiene sentido, solamente, si
se analiza junto con los resultados de las pruebas previas. Cada prueba en el árbol tiene un contexto único
que es crucial a la hora de entenderla y puede ser muy difícil comprender un árbol en el cual el contexto
cambia demasiado seguido al recorrerlo. Además, la estructura de árbol puede hacer que un concepto en
particular quede fragmentado, lo cual hace que el árbol sea aún más difícil de entender. Existen dos
maneras de solucionar estos problemas: definir nuevos atributos que estén relacionados con las tareas o
cambiar de método de representación, por ejemplo, a reglas de decisión.

En cualquier árbol de decisión, las condiciones que deben satisfacerse cuando un caso se clasifica por una
hoja pueden encontrarse analizando los resultados de las pruebas en el camino recorrido desde la raíz. Es
más, si el camino fuese transformado directamente en una regla de producción, dicha regla podría ser
expresada como una conjunción de todas las condiciones que deben ser satisfechas para llegar a la hoja.
Consecuentemente, todas los antecedentes de las reglas generadas de esta manera serían mutuamente
excluyentes y exhaustivos.

Al hablar de reglas de decisión o de producción nos referimos a una estructura de la forma:

Si atributo1=valorX y atributo2=valorY .... y atributon=valorZ


Entonces claseK

Diremos que una regla cubre un caso si el caso satisface todas las condiciones en el antecedente de la
misma.

6.4. Resolución de un ejemplo utilizando el ID3

En esta sección se presentarán un árbol y un conjunto de reglas de decisión obtenidos utilizando el ID3,
para ejemplificar su aplicación. Supongamos que queremos analizar cuáles días son convenientes para
jugar al tenis basándonos en la humedad, el viento y el estado del tiempo. Los datos que se utilizarán se
presentan en la siguiente tabla:

Estado Humedad Viento JuegoTenis


Soleado Alta Leve No
Soleado Alta Fuerte No
Nublado Alta Leve Si
Lluvia Alta Leve Si

- 36 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Estado Humedad Viento JuegoTenis


Lluvia Normal Leve Si
Lluvia Normal Fuerte No
Nublado Normal Fuerte Si
Soleado Alta Leve No
Soleado Normal Leve Si
Lluvia Normal Leve Si
Soleado Normal Fuerte Si
Nublado Alta Fuerte Si
Nublado Normal Leve Si
Lluvia Alta Fuerte Si

En el caso de este ejemplo, los árboles y las reglas obtenidos utilizando la ganancia y la proporción de
ganancia son iguales. Se mostrarán ambos ejemplos juntos con fines prácticos.

6.4.1. Construcción del árbol de decisión

A partir de todos los datos disponibles, el ID3 analiza todas las divisiones posibles según los distintos
atributos y calcula la ganancia y/o la proporción de ganancia. Comencemos analizando el atributo Estado.

El atributo Estado tiene la siguiente distribución de datos:

Lluvia Nublado Soleado


No 1 0 3
Si 4 4 2
Totales 5 4 5

Para calcular la ganancia y, por lo tanto, también la proporción de ganancia, es necesario calcular la
entropía del conjunto. Entonces,

10 10 4 4
H ( S ) = − p Si log 2 p Si − p No log 2 p No = − log 2 − log 2 = 0.86312bits
14 14 14 14

Calculamos ahora la entropía que tendrían los conjuntos resultantes de la división de datos según este
atributo.
2
5 1 1 4 4 4 0 0 4 4 5 3 3 2 2
H ( S , Estado) = P (S i ) ⋅ H (S i ) = − log 2 − log 2 + − log 2 − log 2 + − log 2 − log 2
i =1 14 5 5 5 5 14 4 4 4 4 14 5 5 5 5

5 4 5
H ( S , Estado) = × 0.7219 + × 0 + 0.97095 = 0.6046bits
14 14 14

- 37 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Ahora calculamos la ganancia resultante de dividir al subconjunto según el atributo Estado, tendremos:

Ganancia(S , Estado ) = H (S ) − H (S , Estado ) = 0.25852bits

Para calcular la proporción de ganancia debemos conocer primero la información de la división que se
calcula como:
n Si Si 5 5 4 4 5 5
I _ división(S ) = − × log 2 =− × log 2 − × log 2 − × log 2 = 1.577bits
i =1 S S 14 14 14 14 14 14

Finalmente, calculamos la proporción de ganancia.

Ganancia( S )
proporción _ de _ ganancia( S ) = = 0.491042bits
I _ división( S )

De la misma manera en que calculamos la ganancia y la proporción de ganancia para el caso anterior,
calculamos para el atributo Humedad los siguientes valores:

Ganancia=0.0746702 bits Proporción de ganancia =0.14934 bits

Para el caso del atributo Viento obtenemos los siguientes valores:

Ganancia=0.00597769 bits Proporción de ganancia =0.0122457 bits

Una vez que hemos calculado las ganancias y proporciones de ganancia para todos los atributos
disponibles, debemos elegir el atributo según el cual dividiremos a este conjunto de datos. Recordemos
que tanto en el caso de la ganancia como en el de la proporción de ganancia, el mejor atributo para la
división es aquel que la maximiza. En este ejemplo, la división según el atributo Estado es la que mayor
ganancia y proporción de ganancia ofrece. Esto significa que el nodo raíz del árbol será un nodo que
evalúa el atributo Estado. La figura 8 esquematiza la construcción de un árbol de decisión utilizando el
ID3 para el conjunto de datos en cuestión. La figura 9 presenta el árbol de decisión obtenido.

- 38 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Estado Humedad Viento JuegoTenis


Soleado Alta Leve No
ESTADO
Soleado Alta Fuerte No ganancia=0.258521
Nublado Alta Leve Si proporción de ganancia=0.491042
Lluvia Alta Leve Si
HUMEDAD
Lluvia Normal Leve Si Ganancia=0.0746702
Lluvia Normal Fuerte No Proporción de ganancia =0.14934
Nublado Normal Fuerte Si
Soleado Alta Leve No VIENTO
Ganancia=0.00597769
Soleado Normal Leve Si Proporción de ganancia
Lluvia Normal Leve Si =0.0122457
Soleado Normal Fuerte Si
Nublado Alta Fuerte Si
Nublado Normal Leve Si
Lluvia Alta Fuerte Si
Estado
Lluvia Soleado
Nublado

Estado Humedad Viento JuegoTenis Estado Humedad Viento JuegoTenis Estado Humedad Viento JuegoTenis
Lluvia Alta Leve Si Nublado Alta Leve Si Soleado Alta Leve No
Lluvia Normal Leve Si Nublado Normal Fuerte Si Soleado Alta Fuerte No
Lluvia Normal Fuerte No Nublado Alta Fuerte Si Soleado Alta Leve No
Lluvia Normal Leve Si Nublado Normal Leve Si Soleado Normal Leve Si
Lluvia Alta Fuerte Si SI Soleado Normal Fuerte Si
Viento HUMEDAD
Ganancia=0.170951 Humedad
Proporción de ganancia =0.358525 HUMEDAD
Ganancia=0.970951
VIENTO Proporción de ganancai=2.03632
Ganancia=0.321928
Alta VIENTO
Proporción de ganancia =0.675162 Normal
Ganancia=0.0199731
Proporción de ganancia=0.0418885

Leve

Estado Humedad Viento JuegoTenis Estado Humedad Viento JuegoTenis


Soleado Alta Leve No Soleado Normal Leve Si
Fuerte Soleado Alta Fuerte No Soleado Normal Fuerte Si
Soleado Alta Leve No
SI
NO

Estado Humedad Viento JuegoTenis


Lluvia Alta Leve Si
Lluvia Normal Leve Si
Lluvia Normal Leve Si
SI

Estado Humedad Viento JuegoTenis


Lluvia Normal Fuerte No
Lluvia Alta Fuerte Si
Humedad

Normal
Alta

Estado Humedad Viento JuegoTenis Estado Humedad Viento JuegoTenis


Lluvia Alta Fuerte Si Lluvia Normal Fuerte No
SI NO

Figura 8: Esquema de la construcción de un árbol de decisión utilizando el ID3

- 39 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Estado
Lluvia Soleado
Nublado
Viento Humedad
SI

Leve Alta Normal


Fuerte

SI NO SI
Humedad

Normal
Alta

SI NO

Figura 9: Árbol de decisión obtenido con el ID3

6.4.2. Transformación a reglas de decisión

Como se explicó anteriormente para pasar un árbol de decisión a reglas de decisión, el ID3 lo recorre en
preorden y cada vez que llega a una hoja, escribe la regla que tiene como consecuente el valor de la
misma, y como antecedente, la conjunción de las pruebas de valor especificados en todos los nodos
recorridos desde la raíz para llegar a dicha hoja. Analicemos el pasaje del árbol de la figura 9 a reglas de
decisión.

El recorrido del árbol comienza por la raíz Estado, continúa por los nodos Viento y Humedad hasta llegar
a la hoja “SI”. La regla generada para este recorrido será:

Regla 0
SI Estado = Lluvia
Y Viento = Fuerte
Y Humedad = Alta
ENTONCES JuegoTenis = Si

Si seguimos el recorrido preorden, llegamos a continuación a la hoja “NO”, obteniendo en este caso la
siguiente regla:

- 40 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Regla 1
SI Estado = Lluvia
Y Viento = Fuerte
Y Humedad = Normal
ENTONCES JuegoTenis = No

Recorriendo en este sentido el árbol, el resto de las reglas obtenidas se muestran a continuación.

Regla 2
SI Estado = Lluvia
Y Viento = Leve
ENTONCES JuegoTenis = Si
Regla 3
SI Estado = Nublado
ENTONCES JuegoTenis = Si
Regla 4
SI Estado = Soleado
Y Humedad = Alta
ENTONCES JuegoTenis = No
Regla 5
SI Estado = Soleado
Y Humedad = Normal
ENTONCES JuegoTenis = Si

7. EVALUACIÓN DE LOS MÉTODOS DE APRENDIZAJE

La evaluación es la clave del progreso en la minería de datos. Existen varias maneras de inferir estructuras
a partir de los datos; para determinar cuál es el mejor método para cada conjunto de datos, debe existir
una manera de evaluar los métodos de aprendizaje y compararlos entre sí.

Si se cuenta con una gran cantidad de datos, la evaluación no es problema: se genera un modelo a partir de
un conjunto grande de entrenamiento y, luego, se lo prueba con otro gran conjunto de datos. Sin embargo,
aunque la minería de datos implica por su definición trabajar con grandes cantidades de datos, los
conjuntos de datos de buena calidad son pocos. Los datos de entrenamiento deben ser cuidadosamente
generados y analizados por expertos humanos, un recurso que escasea.

- 41 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

Existen varios indicadores de la performance de un algoritmo de aprendizaje. Algunos de ellos se


describen a continuación [Michalski y otros, 1998]:

Precisión: cantidad de ejemplos positivos y negativos evaluados correctamente. Algunas


veces, es importante distinguir entre dos tipos de errores: los ejemplos positivos
clasificados como negativos (errores de omisión) y viceversa (errores de comisión). Estos
dos tipos de errores nos ayudan a determinar si los conceptos aprendidos son demasiado
generales o demasiado específicos. Para que un sistema sea preciso, es necesario que
genere descripciones que sean consistentes (no cubran ningún ejemplo negativo) y que
sean completas (cubran todos los ejemplos positivos).
Eficiencia: un sistema debe ser capaz de generar descripciones correctas con un número
mínimo de ejemplos. Un instructor no siempre puede dotar al sistema de una cantidad
infinita de ejemplos, y la velocidad en el aprendizaje es un indicador de inteligencia.
Dentro de la eficiencia, debemos evaluar también los requerimientos computacionales.
Estos se miden en función a la cantidad de tiempo y recursos que un sistema necesita
para llegar a una buena descripción.
Comprensibilidad: es importante que los conceptos generados sean comprensibles al
usuario, ya que el fin último de estos sistemas es que el usuario aprenda algo de ellos.
Robustez: contra el ruido y contra los ejemplos incompletos. Cada sistema maneja estos
dos problemas de forma diferente, con lo cual debe evaluarse en cada sistema en
particular.
Requerimientos especiales: en algunos dominios, se requiere que un sistema aprenda a
medida que llegan los ejemplos. Esto se conoce como aprendizaje incremental y es,
especialmente, importante en aquellas áreas en que los conceptos evolucionan, cambian
su significado a través del tiempo.

7.1. Evaluación en la familia TDIDT

Para los problemas de clasificación, como los de la familia TDIDT, es natural medir la performance del
clasificador con una proporción de error. El clasificador predice la clase de cada instancia: si la
predicción es correcta, estamos ante un éxito; si no lo es, estamos ante un error. La proporción de error,
entonces, es simplemente la cantidad de errores sobre la cantidad total de instancias clasificadas.

Por supuesto, lo que nos interesa es estimar la proporción de errores sobre los nuevos datos y no sobre los
datos de entrenamiento, los cuales ya están clasificados. ¿Podemos decir que la proporción de error
estimada a partir de los datos de entrenamiento es correcta para los datos futuros? No, si los datos sobre
los que se estima el error fueron utilizados al generar el clasificador. La proporción de error sobre los
datos de entrenamiento no es un buen indicador de los errores futuros, dado que el clasificador se generó a
partir de estos datos, la proporción de error es subjetiva y totalmente optimista. La proporción de error
generada a partir de los datos de entrenamiento se conoce como error de sustitución, ya que Se calcula al
sustituir las instancias en un clasificador que fue construido a partir de ellas. A pesar de que no es un buen
estimador para la predicción de futuros errores, es muy útil conocerlo.

Para predecir la performance del clasificador en los datos futuros, necesitamos evaluar la proporción de
error sobre datos no utilizados durante la construcción del mismo. El conjunto independiente de datos
utilizado con este propósito es el conjunto de prueba. Es esencial que el conjunto de prueba no haya sido
utilizado para nada en la generación del clasificador. Entonces, aquellos esquemas en que la construcción

- 42 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

se realiza en dos etapas o requieren probar el clasificador, trabajan con dos conjuntos de datos: el de
entrenamiento y el de prueba.
Podemos decir que a mayor cantidad de datos, mejor clasificador y mejor estimador de error. El problema
está cuando hay una pequeña cantidad de datos de entrenamiento. En muchas situaciones, los datos de
entrenamiento y prueba deben clasificarse manualmente. Debemos encontrar la forma de encontrar un
buen estimador de error, aún cuando los datos de prueba escasean. A continuación, se explican varios
métodos para evaluar los algoritmos de clasificación.

7.2. Métodos de evaluación

7.2.1. Evaluación Cruzada (Cross-Validation)

Cuando existe una cantidad limitada de datos de entrenamiento y prueba, puede aplicarse el método de
retención (holdout) para estimar la proporción de error [Witten y Frank, 2000]. Este método reserva una
cierta cantidad de datos al azar para prueba y utiliza el resto para el entrenamiento. En general, se reserva
un tercio para prueba y se utilizan dos tercios como datos de entrenamiento.

Por supuesto, siempre cabe la posibilidad de que los datos utilizados para entrenamiento y prueba no sean
representativos. En general, no se puede afirmar si un conjunto es representativo o no, pero existe una
prueba muy simple que vale la pena realizar: cada una de las clases del conjunto total de datos debería
estar representada en la misma proporción en los datos de entrenamiento y prueba, y esta proporción
debería ser similar a la que se presentará cuando se aplique el modelo generado al caso real. Supongamos
que todos los ejemplos de una clase determinada no entran en el conjunto de entrenamiento, el
clasificador generado será incorrecto. Al trabajar con la hipótesis del Universo Cerrado, no podemos
pretender que clasifique correctamente los miembros de una clase que no sabía que existía. Si en el
conjunto de prueba hay datos de esa clase, la proporción de error obtenida será muy grande. Entonces, al
dividir al azar los datos preclasificados entre los conjuntos de entrenamiento y prueba, debemos garantizar
que cada clase esté correctamente representada tanto en los datos de prueba como en los de
entrenamiento. Este procedimiento se conoce como estratificación (stratification), y podemos hablar de
una retención estratificada.

Una manera de evitar la tendencia introducida por los datos retenidos, es repetir el proceso completo
(entrenamiento y prueba) varias veces con distintas divisiones de los datos. En cada iteración, una misma
proporción de los datos se retiene al azar para las pruebas y el resto se utiliza para el entrenamiento. Las
proporciones de error obtenidas en las múltiples iteraciones se promedian para obtener una proporción de
error general. Este método se conoce como retención repetida (repeated holdout).

En un procedimiento de retención general podríamos elegir cambiar los roles de los datos de
entrenamiento y de prueba entre sí. No obstante, esto es factible únicamente si trabajamos con una
proporción 50:50, lo cual no es ideal ya que conviene utilizar más del 50% de los datos para el
entrenamiento. Para solucionar este problema utilizamos una variación del método estadístico de
validación cruzada (cross-validation).

En la validación cruzada, se determina con anterioridad una cierta cantidad de pliegos o particiones de los
datos. Supongamos que utilizamos tres, es decir, los datos se dividen al azar en tres particiones de
aproximadamente la misma cantidad, y cada una a su turno se utiliza para prueba mientras que las otras
dos se utilizan para entrenamiento. Por lo tanto, utilizamos un tercio para prueba y dos tercios para
entrenamiento, y repetimos el procedimiento tres veces. Las tres proporciones de error obtenidas se
promedian para llegar a una proporción de error general. Este procedimiento conocido como validación
- 43 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

cruzada de tres pliegues (threefold cross-validation), puede trabajar con datos estratificados, en cuyo caso
sería validación cruzada de tres pliegues estratificada.

Podemos generalizar el método para llegar a una validación cruzada de n pliegues, estratificada o no. El
caso más utilizado para predecir la proporción de error de una técnica de aprendizaje es utilizar una
validación cruzada de diez pliegues. Además, las pruebas han demostrado que el uso de la estratificación
mejora los resultados levemente [Witten y Frank, 2000]. Utilizar una validación cruzada de diez pliegues
puede no ser suficiente para obtener un buen estimador de la proporción de error. Distintas validaciones
cruzadas de diez pliegues dan distintos resultados dado que la división en pliegues se realiza al azar. La
estratificación reduce la variación entre los resultados pero no la elimina. Si se quiere obtener una
estimación de la proporción de error muy precisa, generalmente, se repite la validación cruzada de diez
pliegues diez veces y se promedian los resultados. Esto implica invocar al algoritmo de aprendizaje cien
veces con conjuntos de datos del tamaño del 90% del conjunto original. Obtener una buena medida de la
performance es un método que consume grandes recursos computacionales.

7.2.2. Dejar-uno-afuera (Leave-one-out)

La validación cruzada de diez pliegues es una manera normalmente utilizada para estimar la proporción
de error, pero no es la única. Existen otras técnicas bastante populares como la de dejar-uno-afuera. Esta
técnica es simplemente una validación cruzada de n pliegues donde n es el número de instancias del
conjunto de datos. Por turnos, cada una de las instancias se deja afuera y se entrena el clasificador con el
resto de las instancias. Se lo evalúa según el resultado de la clasificación de la instancia que había
quedado afuera. Los resultados de las n evaluaciones luego se promedian para determinar la proporción de
error.

Este procedimiento es atractivo por dos razones [Witten y Frank, 2000]. Primero, se utiliza la mayor
cantidad de ejemplos posibles para el entrenamiento, lo cual se presume incrementa la posibilidad de que
el clasificador sea correcto. Segundo, el procedimiento es determinístico: no se parten los datos al azar.
Además, no tiene sentido repetir el procedimiento diez ni cien veces, ya que siempre se obtendrá el mismo
resultado. Debe tenerse en cuenta que dado el alto costo computacional de aplicar este método, no es
factible utilizarlo para grandes conjunto de datos. Sin embargo, este método es el mejor para pequeños
conjuntos de datos porque, en cierta medida, evalúa todas las posibilidades.

7.2.3. Bootstrap

Este método está basado en el procedimiento estadístico de obtener muestras con sustitución. En los
métodos anteriores, cuando se tomaba una muestra de los datos de entrenamiento o de prueba, se lo hacía
sin reemplazo. Es decir, la misma instancia, una vez seleccionada, no podía seleccionarse nuevamente. La
mayoría de las técnicas de aprendizaje pueden, no obstante, utilizar la misma instancia dos veces, y el
hecho de repetirse genera una diferencia.

La idea del bootstrap es tomar muestras del conjunto de datos con remplazo para formar un conjunto de
entrenamiento. Para ello, un conjunto de n instancias se muestrea n veces, con reemplazo, y se obtiene
otro conjunto de datos de n instancias. Como algunas instancias del segundo conjunto estarán repetidas,
deben existir algunas instancias del conjunto original que no fueron seleccionadas. Utilizaremos estas
instancias para el conjunto de prueba.

- 44 -
CENTRO DE INGENIERÍA DEL SOFTWARE E INGENIERÍA DEL CONOCIMIENTO
6
! " # $% &'(
&
') * +,-. .- -./ / . ." 0 1 2 3
4 10
))555 3 )1

La probabilidad de que una instancia particular sea elegida para el conjunto de entrenamiento es de 1/n, y,
por lo tanto, hay un 1-1/n de probabilidad de que no sea elegida. Si multiplicamos esto según las n
oportunidades de ser elegida, obtenemos la siguiente probabilidad de que no sea escogida:

n
1
1- = e -1 = 0.368
n

Entonces, un conjunto de datos lo suficientemente grande contendrá un 36.8% de instancias de prueba y


un 63.2% de entrenamiento. Esta es la razón por la cual este método se conoce como el 0.632 bootstrap.

El error estimado sobre el conjunto de prueba será pesimista porque el clasificador tiene en cuenta sólo el
63% de los datos del conjunto original, lo cual es poco frente al 90% de la validación cruzada de diez
pliegues. Para compensar el error del conjunto de entrenamiento se combina con el error en el conjunto de
prueba de la siguiente manera:

e = 0.632 × e prueba + 0.368 × e entrenamiento

Luego, todo el proceso de bootstrap se repite varias veces, y todos los estimadores de error se promedian.

7.3. Estimación del costo

Hasta ahora no hemos considerado el costo de tomar malas decisiones y malas clasificaciones. La
optimización de las proporciones de clasificación sin considerar el costo de los errores, generalmente lleva
a resultados extraños. Existe un ejemplo famoso de un sistema de inducción utilizado para predecir los
períodos fértiles de las vacas en un tambo. Las vacas se controlaron con un identificador electrónico en la
oreja, y otros atributos como el volumen de leche y su composición química. En las primeras pruebas del
sistema de aprendizaje automático, los resultados afirmaban que las vacas nunca estaban en el período
fértil. El período menstrual de las vacas es similar al de los humanos, con lo cual la regla generada era
correcta el 97% de las veces, un grado de precisión impresionante para el dominio de la agricultura. Sin
embargo, lo que se buscaba eran reglas que predijeran cuando una vaca estaba fértil y no cuando no lo
estaba, con lo cual, los costos de los dos casos de error son distintos. La evaluación por exactitud en la
clasificación asume costos iguales por naturaleza.

Si los costos son conocidos, pueden incluirse en el análisis de los métodos. Restringiremos nuestro
análisis a los casos que tienen clases sí y no únicamente. Los cuatro resultados posibles de una predicción
pueden listarse en una matriz de confusión como la que se muestra a continuación.

Clase predicha
Sí No
Clase Sí Verdadero Falso Negativo
verdadera positivo
No Falso Positivo Verdadero
Negativo

- 45 -

También podría gustarte