Data Mining basado en la Teoría de la Información

Anuncio
Data Mining basado en la Teoría de la Información
Marcelo R. Ferreyra – [email protected]
La palabra información parece ir de la mano con las últimas tecnologías. Sociedad de
Información, Tecnología de la Información, Redes de Información. Se dice que una
base de datos contiene Información y que con los algoritmos apropiados es posible
obtenerla.
Hay un viejo adagio que dice: “Si no puedes medirlo, no puedes manejarlo”. ¿Es
posible medir la información? Si, es posible.
En 1948, Claude Shannon publicó su tesis que justamente trataba acerca de cómo medir
la información. Si bien su intención era aplicar esta nueva idea en las comunicaciones
eléctricas, su trabajo sentó las bases para la era digital que vendría.
Desde el punto de vista de la Teoría de la Información de Shannon, un sistema de
comunicación puede ser representado de la siguiente manera:
Mensaje
Mensaje
Señal
recibida
Señal
Fuente de
Información
Transmisor
Receptor
Destino
Fuente de ruido
Fig1, The Mathematical Theory of Communication, Shannon & Weaver, Pg. 7
La fuente de información contiene un conjunto de mensajes que pueden seleccionarse
para ser enviados por medio de un transmisor.
El transmisor convierte el mensaje en una señal que será enviada por un canal de
comunicación hasta llegar al receptor, que se encargará de convertirla nuevamente en
un mensaje que recibirá el destinatario.
Un ejemplo aclarará las cosas. Cuando una persona comunica algo a otra, la fuente de
información es su cerebro, el transmisor son sus cuerdas vocales que generan la señal
auditiva que será transmitida por medio del aire (canal de comunicación) hasta llegar a
los oídos (receptor) de la otra persona y convertida nuevamente por medio de su cerebro
en el mensaje original.
El ambiente podría introducir cierto ruido que haría dificultoso al receptor identificar
correctamente el mensaje.
Data Mining basado en Teoría de la Información
1
Agosto 2007
Usando este sistema ideal de comunicación podemos investigar un poco más
profundamente acerca de lo que significa información.
La cantidad de información que contiene una fuente de información está relacionada
con el grado de libertad que uno tiene para seleccionar los mensajes. Por ejemplo,
supongamos un caso muy simple en el que la fuente de información contiene sólo dos
mensajes, los cuales tienen la misma chance de ser seleccionados.
Para medir la cantidad de información se usa un concepto llamado Entropía. La entropía
es una medida usada en termodinámica para medir el grado de desorden de un sistema.
En Teoría de la Información, la entropía es usada para medir el grado de libertad de
elección de un mensaje. Así cuanto mayor es la entropía, mayor será la incertidumbre de
un sistema y mayor también la información que contiene.
Al principio esto parece un poco confuso, ya que se asocia la cantidad de información
con el grado de incertidumbre, pero un ejemplo ayudará a clarificar los conceptos.
Si una fuente contiene un único mensaje, no habrá lugar para elegir y entonces se dice
que la información que aporta esta fuente es nula. Por ejemplo, si una urna contiene
solamente bolillas blancas, no existirá libertad de elegir el color de una bolilla, ya que
todas serán blancas. La incertidumbre de los mensajes (el color de las bolillas) es nula,
por lo tanto la información es nula.
En cambio, si la urna contiene bolillas blancas y negras, entonces es posible seleccionar
entre dos opciones y la incertidumbre, así como la información ya no serán nulas. O sea,
desde el punto de vista de la Teoría de la Información, la información está relacionada
con la cantidad de mensajes disponibles. En principio podríamos decir que a mayor
cantidad de mensajes disponibles, mayor información (aunque esto no es rigurosamente
cierto, como veremos más adelante). Si sólo existe un mensaje, la información será
nula.
La entropía, que se usa para medir la información, se mide en bits y para calcularla se
utilizan logaritmos en base 2. Por ejemplo, el lanzamiento de una moneda implica dos
posibilidades, entonces la cantidad de bits necesarios es:
H = log2(número de posibles mensajes) = log2(2) = 1
Un bit es la cantidad de información necesaria para representar dos posibles resultados.
En el caso de la moneda, es cara o cruz. Si fuesen 4 posibles resultados, el doble del
caso anterior, sería lógico que la cantidad de información se duplicase
H = log2(4) = 2
Como podemos ver, para 4 posibilidades se necesitan 2 bits, el doble del caso anterior.
Usar logaritmos en base 2 duplica la cantidad de información, tal como esperábamos.
Hasta ahora consideramos que cada alternativa tiene las mismas posibilidades de ser
elegida. O sea, si una fuente de información tuviera dos mensajes para ser seleccionados
con la misma probabilidad, esa fuente contendría 1 bit de información. ¿Pero cómo
Data Mining basado en Teoría de la Información
2
Agosto 2007
calcularíamos la entropía si los mensajes tuvieran diferentes chances de ser elegidos? La
Teoría de la Información nos da la respuesta:
H = - (p1 * log2(p1) + p2 * log2(p2))
Esta manera de calcular la cantidad de entropía no hace otra cosa que ponderar los
logaritmos de acuerdo a las probabilidades de elegir cada mensaje (el signo menos es
simplemente para evitar que la entropía sea negativa, ya que el logaritmo de un número
menor que 1 es negativo). De una manera más general podríamos escribir el cálculo de
la entropía de la siguiente manera:
H = − ∑ pi ∗ log 2 ( pi )
i
Cuando cada mensaje tiene las mismas probabilidades de ser elegido, la entropía es
máxima. Si las probabilidades son diferentes para cada mensaje, entonces la entropía
será menor. Por ejemplo, si la fuente contiene dos mensajes y en el caso extremo uno de
los mensajes tiene chance 0 de ser elegido, la entropía será nula, ya que solo existirá
posibilidad de elegir un solo mensaje (el de probabilidad 1).
El siguiente gráfico nos muestra cómo varía la entropía en función de las probabilidades
para el caso de 2 mensajes. Las probabilidades serán p y 1-p. Vemos que para el caso de
probabilidad 0.5 para cada mensaje, la entropía es máxima, o sea 1 bit.
Ruido y Equivocación
Hasta ahora hemos hablado de la información de una fuente, medida por la entropía. A
mayor libertad de elección de mensajes, mayor entropía y por ende, mayor información.
Ahora supondremos un sistema completo, con un emisor que envía mensajes y un
receptor que los recibe. Si no existe ninguna fuente de ruido, la probabilidad de recibir
exactamente los mensajes enviados es 1. Pero si hay ruido en el medio, entonces ya no
estaremos seguros de recibir el mensaje correcto. La Teoría de la Información nos
permite medir esta incertidumbre cuando existe una fuente de ruido.
Para calcular estas incertidumbres se usa la entropía relativa entre los conjuntos de
mensajes enviados X y recibidos Y.
Data Mining basado en Teoría de la Información
3
Agosto 2007
La incertidumbre de la señal enviada, cuando conocemos la señal recibida, recibe el
nombre de Equivocación y se simboliza como H(X|Y). O sea conocemos la señal
recibida Y pero tenemos cierta incertidumbre respecto a la señal enviada X. La
información neta transmitida será la información enviada menos la equivocación
T = H(X) – H(X|Y)
Si en cambio conocemos la señal enviada X pero tenemos incertidumbre respecto a la
señal recibida Y, entonces podemos medirla por medio de H(Y|X) o lo que es lo mismo
la incertidumbre de la señal recibida cuando se conoce la señal enviada. A este tipo de
incertidumbre se la conoce como Ruido, que también nos permite calcular la
información neta transmitida como la información recibida menos el ruido, la cual
debería ser exactamente igual a la calculada anteriormente
T = H(Y) – H(Y|X) = H(X) – H(X|Y)
Los Datos como un canal de Información
Si asumimos ciertas suposiciones, entonces podemos usar la Teoría de la Información
para caracterizar la relación entre dos o más variables de una tabla de datos.
Supongamos que estamos analizando un sistema mediante una serie de mediciones
capturadas por distintas variables del mismo. Cada cierto tiempo vamos tomando los
valores de las variables de interés y las anotamos en una tabla. Ahora queremos analizar
si una determinada variable tiene alguna relación con otra. Dicho de otro modo,
queremos ver cuál es la información en común para estas dos variables.
Asumimos que una de las variables es una fuente de información cuyos mensajes son
los diferentes valores que fuimos midiendo y la otra variable representa el papel del
receptor de los mensajes.
La tabla de datos sería el canal de comunicación entre la variable que emite los
mensajes (X) y la variable que los recibe (Y).
Ahora podríamos calcular la información transmitida entre X e Y simplemente como la
información generada por la fuente menos la equivocación, o como la información
recibida menos el ruido, tal como vimos anteriormente.
Este tipo de análisis nos permitirá conocer distintos aspectos de la información
contenida en los datos, pero antes de entrar en más detalles veremos cómo es posible
medir la entropía de una o más variables.
Entropía en un conjunto de Datos
Asumamos que los datos están representados por variables que intentan medir diferentes
características del sistema de interés. El propósito de cualquier proyecto de Data Mining
es encontrar cómo se relacionan estas variables entre sí y fundamentalmente cómo
afectan el resultado del sistema.
Data Mining basado en Teoría de la Información
4
Agosto 2007
Por ejemplo, si el sistema es un grupo de clientes que interactúan con una empresa y nos
queremos enfocar en la pérdida de estos clientes, entonces nuestras variables candidatas
para representar la fuente de información podrían ser las quejas, la cantidad de
productos comprados al mes, los canales que utilizan, los tiempos de entrega de los
productos, etc.
Suponemos que estas variables contienen suficiente información para conocer si un
cliente seguirá activo o no (sea lo que sea lo que signifique activo). Para calcular esta
información, usamos una variable que nos indica si realmente el cliente está activo o no
mediante dos mensajes distintos (Activo/NoActivo), y asumimos que esta variable
representa la señal recibida. Si la señal enviada es igual a la señal recibida, entonces
podríamos predecir con total seguridad qué clientes seguirán activos y cuáles no. O sea,
podríamos usar las variables que forman la fuente de información (Entrada, o Input o X)
para conocer exactamente el estado del receptor (Salida, o Output o Y).
Si en cambio la señal recibida (Salida) no es igual a la enviada (Entrada), entonces
suponemos que la Entrada no contiene suficiente información libre de ruido para definir
completamente la Salida.
Comencemos con la información disponible en el sistema. Podemos representar las
variables del sistema, o variables de Entrada X de la siguiente manera
v1 v2 v3 v4 v5 v6
La figura anterior representa 6 variables (una por cada columna) y varios casos (uno por
cada fila). Por ejemplo, en el caso del ejemplo anterior las variables serían las quejas, la
cantidad de productos comprados al mes, etc, y los casos serían los distintos clientes.
Cada caso contiene una determinada combinación de valores de las variables que se dan
al mismo tiempo. Estas combinaciones pueden ser únicas, o pueden coincidir para
algunos casos. Por ejemplo
Data Mining basado en Teoría de la Información
5
Agosto 2007
v1 v2 v3 v4 v5 v6
Estos dos casos podrían tener iguales valores en cada una de las variables
Ser levemente diferentes
O completamente diferentes
En cualquier caso, podemos pensar que las diferentes combinaciones de valores de las
variables representan una señal del sistema y lo representaremos como un punto para
cada caso
Data Mining basado en Teoría de la Información
6
Agosto 2007
Cada señal identifica a un estado del sistema. Si cada señal es única, o sea que no existe
otra combinación de variables exactamente igual, entonces la relación entre señales y
estados será biunívoca, o sea, para cada señal habrá un solo estado y para cada estado
una sola señal. Podemos calcular la entropía de este sistema calculando primero las
probabilidades de cada señal que, en este ejemplo, con 22 señales distintas, será 1/22
para cada señal. Ya que la probabilidad para todas señales es la misma, la entropía será
máxima. En este ejemplo la entropía será:
22
H = − ∑ pi ∗ log 2 ( pi ) = − ∑
i
1
1
⎛ 1 ⎞
∗ log 2 ⎜ ⎟ = 4.46 bits
22
⎝ 22 ⎠
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
1/22
Data Mining basado en Teoría de la Información
7
Agosto 2007
En cambio, cuando para un estado existe más de una señal que lo identifica, las
probabilidades asociadas ya no serán las mismas y por lo tanto la entropía dejará de ser
la máxima posible para este sistema
1/22
2/22
1/22
1/22
2/22
1/22
2/22
1/22
2/22
2/22
3/22
3/22
1/22
Hagamos un repaso de los visto hasta ahora: tenemos un conjunto de datos con
variables que representan una situación de interés. Cada fila es un caso representado por
las diferentes combinaciones de valores de las variables, y cada uno de estos casos
identifica un estado del sistema. Podrían existir varios casos que identifican el mismo
estado haciendo que la incertidumbre del sistema disminuya. De hecho, si todos los
casos fueran exactamente iguales, el sistema tendría incertidumbre nula, o lo que es lo
mismo, no contendría ninguna información (¿qué información tendría un conjunto de
datos con todas las filas exactamente iguales?). En general, algunos de los estados
identificados por las señales serán similares y otros muy distintos.
Data Mining basado en Teoría de la Información
8
Agosto 2007
Estos estados podrían representarse en un mapa de 2 dimensiones como sigue
Aquellos estados que están próximos contendrán información similar. Cuanto más
alejados estén, menos información común compartirán.
Agrupación de valores de variables
Un buen modelo debe estar basado en señales que sean lo menos ambiguas posibles.
Para lograr este objetivo se usa un método llamado chunking, que agrupa diferentes
valores de las variables. El objetivo del chunking tiene dos propósitos:
1. Maximizar la representatividad de la señal
2. Minimizar el ruido tanto como sea posible
Una señal, dada por los diferentes valores que asume la variable en los distintos casos
de una muestra, es representativa de la población si existen suficientes casos como para
estabilizar la forma de la distribución de los valores. Supongamos que tenemos una
bolsa con bolillas de n diferentes colores en proporciones diferentes. Si vamos
construyendo un histograma con cada bolilla que sacamos al azar de la bolsa, el mismo
irá cambiando su forma de una manera drástica con las primeras extracciones, pero a
medida que avanzamos, la forma del histograma se irá estabilizando.
No entraremos aquí en detalles, pero es posible encontrar la cantidad de extracciones
necesarias para lograr que la distribución se estabilice lo suficiente como para decir que
esa muestra es representativa de la población con una determinada confianza. Esta
cantidad de extracciones es proporcional a n, cuanto menor sea la cantidad de valores
distintos en la población, menor será la cantidad de valores necesarios para obtener una
muestra representativa.
Por ejemplo, si tenemos 100 valores distintos que agrupamos en sólo 10, será una
manera de lograr una muestra más representativa que si usamos los 100 valores distintos
para una dada cantidad de casos.
Por otro lado, cuando agrupamos valores estamos perdiendo información, ya que la
cantidad de mensajes distintos disminuye, pero se minimiza el ruido causado por
diferentes valores distintos que apuntan al mismo estado.
El siguiente gráfico muestra un ejemplo de agrupación de los valores de una variable
Data Mining basado en Teoría de la Información
9
Agosto 2007
Los valores forman grupos representativos que llevan la mayor información posible.
Cuando hablamos de valores nos referimos a valores numéricos o categóricos. O sea, no
sólo es posible agrupar variables numéricas, sino también categóricas. Para el caso de
variables numéricas, el método general es conocido normalmente como Binning,
aunque existen distintas variantes que veremos más adelante.
Lo importante es que con Chunking hemos logrado maximizar la representatividad y
minimizar el ruido.
La cantidad de grupos o bins afecta la representatividad, el ruido y la cantidad de
información perdida en el proceso. Existe un número de bins ideal que logra un
compromiso entre la representatividad y el ruido por un lado, y la información perdida
por el otro.
Información Transmitida
Hasta ahora hemos visto cómo es posible calcular la entropía (incertidumbre, grados de
libertad de elección de los mensajes, información) de un conjunto de datos que
llamamos datos de entrada X (Input). El cálculo de la entropía de los datos de salida Y
es un problema similar. La única diferencia es que normalmente se asume que Y está
compuesto por una sola variable.
Ahora veremos cómo podemos calcular la entropía relativa entre los datos de entrada y
un resultado de interés o datos de salida Y (Output).
Anteriormente vimos que la información transmitida puede ser calculada como la señal
recibida menos la equivocación o como la señal enviada menos el ruido.
Data Mining basado en Teoría de la Información
10
Agosto 2007
T = H(Y) – H(Y|X) = H(X) – H(X|Y)
Pero ¿cómo calculamos estos valores? El siguiente gráfico nos será de mucha ayuda
para relacionar las diferentes mediciones de la entropía
H(X;Y)
H(X)
H(Y)
H(X|Y) (Equivocación)
T(X,Y)
H(Y|X) (Ruido)
La barra superior representa la entropía de la señal conjunta X e Y. Supongamos que
queremos analizar un sistema compuesto por la tirada de un dado y una variable que nos
da información acerca de la paridad del valor obtenido. En este sistema, la variable X
indicaría si el valor es par o impar y la variable Y sería el valor obtenido.
Para calcular la entropía de la señal conjunta, tendríamos que listar todos los pares de
eventos posibles. En nuestro caso serán:
Paridad
Impar
Par
Impar
Par
Impar
Par
Resultado
1
2
3
4
5
6
Como vemos, hay sólo 6 casos y todos tienen probabilidad 1/6 de aparecer, por lo tanto
la entropía de la señal conjunta será
H(X;Y) = log2(6) = 2.585 bits
La siguiente barra representa la entropía de la señal enviada o X. En nuestro caso
existen sólo dos mensajes posibles con probabilidad ½, Par e Impar. Por lo tanto la
entropía será
H(X) = log2(2) = 1 bit
La entropía de la señal de salida o el resultado de tirar el dado será calculada en base a
los distintos resultados posibles, que en este caso son 6. La entropía será
H(Y) = log2(6) = 2.585 bits
Por último, la cuarta barra representa las relaciones vistas anteriormente:
T(X,Y) = H(X) – H(Y|X) = H(Y) – H(X|Y)
Data Mining basado en Teoría de la Información
11
Agosto 2007
También es posible calcular la información transmitida usando la entropía de la señal
conjunta
T(X,Y) = H(X) + H(Y) - H(X;Y)
T(X;Y) = 1
+ 2.585 – 2.585 = 1 bit
O sea, para nuestro sistema calculamos que la cantidad de información necesaria para
conocer exactamente el resultado de un dado es 2.585 bits. El sistema nos proporciona
una señal que nos permite disminuir la incertidumbre, aunque no totalmente. Esta señal
transmite 1 bit de información (nos indica si el resultado es par o impar).
Ruido y Equivocación
Si bien el ruido y la equivocación tienen una definición muy clara en la Teoría de la
Información, es bueno tener una idea un poco más intuitiva de lo que significan cuando
estamos analizando un conjunto de datos
Volviendo al ejemplo más real de una empresa que ha reunido datos acerca de sus
clientes y desea analizar la pérdida de clientes (churning o attrition), lo que en realidad
estamos intentando es conocer cuánta información contienen los datos de entrada X
respecto de la variable Y que identifica si un cliente está activo o no.
X
Y
Así como anteriormente asociábamos a cada señal un estado, ahora podemos asociar a
cada señal (o estado) de X, a una señal de Y
Data Mining basado en Teoría de la Información
12
Agosto 2007
X
Y
De la misma manera que antes, con datos reales rara vez existe una correspondencia
biunívoca entre las señales de entrada y salida. Existen 4 posibles casos, 3 de ellos
simples y un cuarto que es la combinación de los anteriores.
El primer caso es cuando la relación entre señales es biunívoca, o sea cuando las señales
de la entrada identifican sin ambigüedades las de la salida, tal como se muestra en el
siguiente gráfico
X
q
Y
a
b
c
Y
r
s
a 1.0
q
r
s
X
b
1.0
c
1.0
El segundo caso es cuando varias señales distintas de entrada apuntan a una sola señal
de salida. Este es un caso de Equivocación, como ya vimos anteriormente. Muchas
voces distintas están diciendo lo mismo. El siguiente gráfico aclara el problema
X
a
b
c
Y
Y
q
s
a 1.0
q
Data Mining basado en Teoría de la Información
r
X
13
b 1.0
c 1.0
Agosto 2007
Cuando la relación contiene Ruido, existen diferentes casos (filas de la tabla de los
datos) que apuntan al mismo estado de la salida. O sea, la señal de salida es incierta para
la señal de entrada, al menos en algún grado
Y
X
Y
q
q
r
s
a
r
s
a 0.3 0.3 0.3
X
b
c
En el caso de ruido hay que tener en cuenta que no necesariamente la cantidad de
señales de entrada que apuntan a distintas señales de salida son iguales. O sea, podría
ser por ejemplo, que una de las señales tenga una probabilidad del 80%, otra del 15% y
la tercera del 5%, tal como lo ilustra la siguiente figura
X
Y
Y
q
q
r
s
a
r
s
a 0.8 0.15 0.05
X
b
c
Con datos reales lo normal es que se de una mezcla de información, ruido y
equivocación
X
a
b
c
Y
Y
q
q
r
s
r
s
a 0.5 0.5
X
b
1.0
c
0.5 0.5
Ahora que ya hemos visto cómo calcular las diferentes entropías y conocemos
exactamente qué significan cada una de ellas, estamos en condiciones de ver cómo
podemos avanzar un poco más y construir modelos de predicción.
Modelos de Predicción
Una vez que hemos construido el mapa de información que relaciona cada señal de
entrada con la de la salida, es posible usar algún tipo de función que represente esta
relación
Data Mining basado en Teoría de la Información
14
Agosto 2007
Comenzamos con el mapa de información que relaciona X e Y. Recordemos que las
variables que componen la señal de entrada ya han sido agrupadas para lograr
maximizar la representatividad y minimizar el ruido.
X
Y
Ahora es posible agrupar las señales de salida a fin de minimizar ruido y maximizar la
señal útil
Grupos Entrada
Solo resta encontrar una función de transferencia que relacione los grupos (chunks o
bins) de la entrada, con los grupos de la salida
Grupos Salida
Data Mining basado en Teoría de la Información
15
Agosto 2007
Resumen de todo el proceso
Comenzamos con una tabla de datos que contiene variables que servirán para hacer
predicciones respecto de otra variable. En estadística, las primeras son llamadas
variables independientes y a la variable a predecir se la llama variable dependiente. En
Teoría de la Información, las primeras son llamadas variables de entrada (Inputs) y la
variable a predecir se llama variable de salida (Output).
Las variables de entrada son agrupadas para que sean lo más representativas posible y a
su vez contengan la mayor información libre de ruido. La combinación de estas
variables en cada caso (fila) de la tabla representa un estado o mensaje del sistema.
Cada uno de estos mensajes lleva información respecto de la variable de salida. Esta
información se mide por medio de la entropía. Cuando el mismo mensaje es usado por
distintos casos para relacionar distintos estados de la salida, decimos que existe ruido.
El ruido es indeseable porque enmascara la señal y no nos permite obtener el mensaje
correcto.
La información que se transmite desde la entrada a la salida se calcula como la
información recibida menos el ruido. Esta información transmitida se puede usar para
predecir los valores de la variable de salida. Una de las grandes ventajas de medir
información es que podemos conocer de antemano si los datos con que contamos serán
suficientes para predecir una variable de interés o no. Dicho de otro modo, si la
información que se transmite de la entrada a la salida es muy baja, ninguna herramienta
de modelado será capaz de hacer un buen trabajo. Si no existe información, no hay
manera de realizar un modelo, no importa si lo intentamos con una red neuronal, un
árbol de decisión o un algoritmo asombroso y recién descubierto.
Es posible armar un mapa que vincule los mensajes o señal de entrada con los mensajes
de la salida. Si a su vez encontramos una función lineal de transferencia apropiada,
podremos realizar predicciones de la salida en base a la entrada.
Variables
Variables
Agrupadas
Mensaje
Grupos Entrada
Mapa de
Información
Grupos Salida
Valor de salida
más probable
Data Mining basado en Teoría de la Información
16
Agosto 2007
Si bien este gráfico muestra todo el proceso, el modelo puede ser visto directamente en
términos de los valores originales de las variables y un valor predicho. O sea, todo el
proceso interno de reducción del ruido, incremento de la representatividad y mapeo de
la información pasaría a ser un proceso completamente transparente.
Cabe aclarar que si bien la función de transferencia es lineal, el modelo como un todo
(chunking, mapa de información y función de transferencia) es capaz de tratar con
relaciones lineales y no lineales.
Si bien en este ejemplo se usó una función lineal de transferencia para relacionar
información de entrada y de salida, también podríamos haber usado un conjunto de
reglas.
Bining
Hasta ahora nos referimos a un método llamado Bining para agrupar valores de
variables numéricas. Recordemos que cada vez que agrupamos valores, perdemos
información. Pero no todas las agrupaciones posibles pierden la misma cantidad de
información. Por ejemplo, supongamos que queremos obtener 10 grupos o bins de una
variable con rango 1 a 100. Una manera de agrupar los valores podría ser mediante
subrangos, por ejemplo, un grupo contendrá los valores de 1 a 10, el otro de 11 a 20, y
así sucesivamente. Otro podría ser de 1 a 35 el primer grupo, de 36 a 40 el segundo, y
distintos puntos de corte hasta lograr los 10 grupos. Lo más probable es que estas dos
agrupaciones hayan perdido diferente cantidad de información.
Existe un algoritmo llamado LIL (Least Information Lost) que permite encontrar una
manera de agrupar los valores para que la información perdida sea la mínima.
Ventajas en el uso de la Teoría de la Información
Existen una ventaja fundamental y varias que son una consecuencia del enfoque. Una
vez que se cuenta con los datos y se debe encontrar un modelo de predicción, lo normal
es que se asuma que estos datos contienen información suficiente para que el modelo
sea de utilidad. Con un enfoque basado en la Teoría de la Información, en vez de asumir
que los datos contienen información, podemos medir la cantidad de información
contenida. Este enfoque evita que naveguemos a ciegas en un mar de datos.
Si los datos no contienen información, ¿para qué molestarse en encontrar un buen
modelo?
Además de conocer la información transmitida, también es posible conocer otro tipo de
información como es el ruido y la equivocación que nos permitirán hacer un análisis
llamado Data Survey, en el que se miran los datos como un todo en busca de posibles
problemas. Para más información referirse al capítulo 11 del libro Data Preparation for
Data Mining de Dorian Pyle.
La selección de un grupo de variables es siempre un problema. En general los métodos
exhaustivos son prohibitivos debido a que si se intenta buscar la mejor combinación
entre un grupo grande de variables, el tiempo de CPU es enorme. Reducir la cantidad de
variables mediante alguna combinación de las mismas, por ejemplo encontrando las
Data Mining basado en Teoría de la Información
17
Agosto 2007
Componentes Principales, es algo que no ayuda demasiado, ya que el modelo final
estará basado en todas las variables y tratar de entenderlo será una tarea casi imposible.
Poder medir la cantidad de información que una o más variables llevan respecto de la
variable de interés, nos permite un método óptimo para encontrar un grupo de variables
que lleve la mayor cantidad posible de información.
El método es muy simple: Primero se selecciona la variable con mayor información
posible sobre la variable de interés. Luego se debe seleccionar la variable que mayor
información adicional aporta, considerando la información que ya aportaron las
variables previamente seleccionadas. Se continúa de la misma manera hasta que la
información ganada no justifique la pérdida de representatividad de la muestra. Para
mayor información referirse al documento Feature Selection disponible en
www.pti.com/espanol/index.htm
Otro tema muy importante para modelar datos es la preparación de los mismos, aunque
desafortunadamente es la etapa menos desarrollada en la mayoría de los proyectos de
Data Mining debido fundamentalmente a la complejidad que encierra el tema.
Para sacarle el jugo a los datos hay que prepararlos previamente, o sea, hay que
transformarlos de alguna manera. Por ejemplo, si la distribución de una variable tiene
una larga cola, usar esa variable sin modificarla es desperdiciar la información que
podría contener. También a veces es necesario asignar valores a variables no numéricas
(por ejemplo, estado civil, CP, profesión, etc), pero hacerlo al azar, como es la práctica
común, destruye la estructura multidimensional de los datos y hace muy complicado el
trabajo de la herramienta que intenta sacar información de los datos. Preparar los datos
normalmente toma entre el 60% y el 90% del tiempo total del proyecto.
Una de las consecuencias del proceso de chunking y mapeo de la información es que los
datos quedan preparados en forma automática.
Otra posibilidad que brinda la Teoría de la Información es comparar el rendimiento de
un modelo con respecto a la información contenida en los datos. No siempre es posible
obtener toda la información disponible en los datos. Si un modelo no logra capturar toda
la información, entonces la información de sus predicciones será menor que la
información disponible en los datos. Podemos calcular la eficiencia de un modelo como
sigue:
E=
Información Modelo
Información Datos
Si un modelo tiene una eficiencia del 5% habrá que analizar por qué capturó tan poca
información y ver si es posible mejorarlo mediante la configuración de sus parámetros,
si es que esto es posible (una red neuronal tiene varios parámetros para elegir, en
cambio un modelo basado en una función de transferencia lineal podría no tener ningún
parámetro). En cambio si el modelo capturó un 80% de la información disponible,
podremos estar casi seguros de que hemos logrado lo mejor dados los datos con que
contamos.
Data Mining basado en Teoría de la Información
18
Agosto 2007
En síntesis, algunas de las ventajas que se logran al usar la Teoría de la Información
para analizar y modelar datos son:
1. Es posible caracterizar la información contenida en los datos y calcular la
información útil, el ruido y la equivocación
2. Es posible filtrar el ruido y lograr que la información sea más representativa
3. Es posible seleccionar, de un conjunto grande de variables, aquellas con
mayor información
4. En el proceso de chunking y mapeo de la información se produce un valor
agregado: la preparación automática de las variables.
5. Los modelos de predicción que se pueden armar son muy simples de
entender
6. Es posible medir la eficiencia de un modelo de predicción (qué cantidad de
información disponible capturó)
Referencias
Pyle, Dorian, Data Modeling and Data Mining, Morgan Kaufmann, 2003
Pyle, Dorian, Data Preparation for Data Mining, Morgan Kaufmann, 1999
MacKay, David J.C., Information Theory, Inferences, and Learning Algorithms, 2001
Shannon, Claude y Weaver, Warren, The Mathematical Theory of Communication,
University of Illinois Press, 1998
Documentos y artículos del sitio web de Powerhouse www.pti.com/espanol/index.htm
Data Mining basado en Teoría de la Información
19
Agosto 2007
Descargar