eduardo morales, jesu´s gonzalez´emorales/cursos/aprendizaje2/... · 2010. 6. 22. · contenido...
TRANSCRIPT
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Seleccion de Atributos
Eduardo Morales, Jesus Gonzalez
INAOE
Mayo, 2010
(INAOE) Mayo, 2010 1 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Contenido
Contenido
1 Contenido
2 Introduccion
3 Estrategias de busqueda
4 Evaluacion de Subconjuntos
5 Algoritmos
6 Construccion de atributos
(INAOE) Mayo, 2010 2 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Selecci on de Atributos
• A partir de los atributos originales selecciona unsubconjunto de estos
• Ventajas esperadas:1 Mejorar el desempeno predictivo2 Construir modelos mas eficientemente3 Mejorar entendimiento sobre los modelos generados
(INAOE) Mayo, 2010 3 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Selecci on de Atributos
• Aplicaciones recientes en textos o en seleccion degenes ilustran claramente la necesidad de reducir elnumero de atributos
• Aunque muchos atributos pueden traer un mayor poderdiscriminativo, en la practica, una cantidad excesiva deatributos retrasa significativamente el proceso deaprendizaje y puede producir sobre-ajustes
• La meta es seleccionar el subconjunto S mas pequenode todos los atributos F , tal que P(C|S) ≈ P(C|F )
(INAOE) Mayo, 2010 4 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Selecci on de Atributos
• Osea, seleccionar el subconjunto mas pequeno deatributos tal que no se afecte significativamente elporcentage de clasificacion y que la distribucion declases resultante sea lo mas parecido posible a laoriginal
• Un atributo es irrelevante si no afecta de ninguna formaal concepto meta
• Un atributo es redundante si no anade nada nuevo alconcepto meta
• Un atributo se considera relevante si no es irrelevante oredundante.
(INAOE) Mayo, 2010 5 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Selecci on de Atributos
El proceso de seleccion de atributos involucra 4 pasos:
1 Generacion de candidatos (subconjuntos), lo cualinvolucra una estrategia de busqueda
2 Evaluacion de candidatos (subconjuntos), lo cualrequiere un criterio de evaluacion
3 Criterio de paro: Este puede darse por la estrategia debusqueda, el numero de iteraciones realizadas, elnumero de atributos seleccionados, el que no semejore el criterio de evaluacion al anadir/quitar otroatributo, que el error de clasificacion este por debajo aun umbral, etc.
4 Validacion de resultados: Ya sea contra atributosconocidos como relevantes o comparando el error en laclasificacion con y sin la seleccion de atributos.
(INAOE) Mayo, 2010 6 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Selecci on de Atributos
En general, los algoritmos de seleccion de atributos sedistinguen por su forma de evaluar atributos y los podemosclasificar en tres:
1 Filtros (filters): seleccionan/evaluan los atributos enforma independiente del algoritmo de aprendizaje (verfigura 1).
2 Wrappers: usan el desempeno de algun clasificadorpara determinar lo deseable de un subconjunto (verfigura 2).
3 Hıbridos: usan una combinacion de los dos criterios deevaluacion en diferentes etapas del proceso debusqueda.
(INAOE) Mayo, 2010 7 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Esquema de Algoritmos tipo filter .
Figura: Esquema generico de algoritmos tipo filter.
(INAOE) Mayo, 2010 8 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Esquema de Algoritmos tipo wrapper .
Figura: Esquema generico de algoritmos tipo wrapper.
(INAOE) Mayo, 2010 9 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Algoritmo de Selecci on de Atributos
Sea: D datos de entrenamiento, S0
Smejor := S0
Evmejor = eval(Smejor , D, M) {evalua S usando M}while NOT criterio de paro do
Snvo = genera(Smejor , D)Evnvo = eval(Snvo, D, M)if (Evnvo es mejor que Evmejor ) then
Evmejor := Evnvo
Smejor := Snvo
end ifend whileRegresa Smejor
Si M - evalua atributos independientemente del algoritmo deaprendizaje, entonces tenemos un filter y si M es unalgoritmo de aprendizaje, tenemos un wrapper
(INAOE) Mayo, 2010 10 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Selecci on de Atributos
• Cambiando la forma de generar nuevos candidatos(estrategia de busqueda) y el criterio de paro, podemosgenerar diferentes versiones
• Diferentes criterios de evaluacion (independientes delalgoritmo de aprendizaje) nos generan diferentesalgoritmos filter. Vamos a ver varias medidas deevaluacion comunmente utilizadas.
• Diferentes algoritmos de aprendizaje nos generandiferentes algoritmos wrapper.
(INAOE) Mayo, 2010 11 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Introduccion
Algoritmo Hıbrido
La idea general del algoritmo hıbrido es la siguiente:
• Empieza con un subconjunto S0 (por ejemplo vacıo sise usa forward-selection)
• Aumenta la cardinalidad (1 atributo) y evalua todos loselementos de esa cardinalidad con una medidaindependiente del algoritmo de aprendizaje
• El mejor subconjunto se evalua con un algoritmo deaprendizaje y se queda con el mejor (de todas lascardinalidades vistas) hasta el momento
• Continua con la siguiente cardinalidad
La no mejora en la calidad del algoritmo de aprendizajepuede usarse como criterio de paro.
(INAOE) Mayo, 2010 12 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Estrategias de busqueda
Estrategias de Busqueda
• La generacion de subconjuntos involucra una estrategiade busqueda. Para N atributos existen 2N
subconjuntos, por lo que se requiere de una buenaestrategia de busqueda.
• Para esto se requiere especificar el punto inicial debusqueda. Si se empieza con un conjunto de atributosvacıo y se van anadiendo (forward selection), si seempiezan con todos los atributos y se van eliminando(backward elimination) o si se anaden y quitan atributos(bi-direccional).
• El punto inicial tambien puede ser un conjunto deatributos aleatorio.
(INAOE) Mayo, 2010 13 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Estrategias de busqueda
Estrategias de Busqueda
• Dado un criterio de evaluacion, se pueden realizar unagran cantidad de estrategias de busqueda. Por ejemplo,best-first, A∗, beam-search, hill climbing, etc.
• Dentro de estas estrategias existen metodos basadosen branch-&-bound para no considerar todos lossubconjuntos. Sin embargo, en general requiere que seespecifique de entrada un numero de atributos aseleccionar.
• En general, y dada la gran cantidad de posiblessubconjuntos, se prefiere usar una estrategia greedy ohill-climbing.
(INAOE) Mayo, 2010 14 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Estrategias de busqueda
Estrategias de Busqueda
En general se tienen tres estrategias de busqueda:
• forward selection: se van incorporandoprogresivamente las variables. Es computacionalmentemas eficiente, pero tiende a producir peoressubconjuntos, ya que se toman decisiones locales.
• backward selection: se van eliminando progresivamentelas variables. Es computacionalmente mas caro peropuede considerar variables debiles individualmente,pero fuertes cuando se consideran en conjunto.
• Bi-directional selection: Se pueden anadir o eliminaratributos partiendo de un subconjunto inicial. Unaalternativa es anadir (o quitar) p atributos en cada pasoy eliminar (anadir) q atributos en el siguiente paso(p > q).
(INAOE) Mayo, 2010 15 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Estrategias de busqueda
Estrategias de Busqueda
• Tambien se puede realizar busqueda aleatoria, con unpunto inicial generado aleatoriamente y continuandodesde ahı con una estrategia greedy repitiendo elproceso varias veces (random restart hill-climbing), sepuede introducir aleatoriedad a la busqueda (e.g.,simulated annealing), etc.
• Se puede usar diversas variantes de busqueda yoptimizacion como local search, tabu search, ant colonyoptimization, algoritmos geneticos, swarm optimization,etc.
• En general, podemos dividir a las estrategias degeneracion de candidatos en: (i) completas (completano necesariamente implica que sea exhaustiva), (ii)heurısticas, y (iii) aleatorias.
(INAOE) Mayo, 2010 16 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Evaluaci on de Subconjuntos
• A grandes rasgos depende de si se usa un criterioindependiente o no de un algoritmo de aprendizaje.
• Los independientes son los filtros. Aquı se puede usaruna medida de distancia, basada en informacion, endependencia o en consistencia.
• Los dependientes son los wrappers y usan eldesempeno de un algoritmo de aprendizaje paraevaluar un subconjunto de atributos.
• En el caso de clustering, se trata de evaluar la calidadde los clusters, por ejemplo, en base a que tancompactos son los grupos o que tan separados estan.
(INAOE) Mayo, 2010 17 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Evaluaci on de Subconjuntos
• Por consideraciones de eficiencia, escalabilidad,simplicidad y buenos resultados empıricos, muchas delas medidas utilizadas independientemente delalgoritmo de aprendizaje se aplican a un solo atributo ala vez.
• Estos metodos no pueden capturar combinaciones quepodrıan dar buenos resultados. Por lo que una variableque aparentemente no sirve por sı sola, puede darresultados muy buenos en combinacion con otras.
• Inclusive dos variables que no aportan nada porseparado pueden ser utiles juntas.
(INAOE) Mayo, 2010 18 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Evaluaci on de Subconjuntos
• Los que evaluan un atributo a la vez pueden eliminaratributos irrelevantes, pero no los redundantes, ya quetienen una evaluacion parecida a otros
• Son rapidos y producen una lista ordenada de atributosde acuerdo a su medida de evaluacion o ranking
• Una vez producida la lista, se tiene que especificardonde cortar (o hasta que atributo considerar) y paraesto existen diferentes opciones
(INAOE) Mayo, 2010 19 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Selecci on de Atributos Rankeados
• Especificar un numero N y quedarse con los primerosN atributos
• Especificar un umbral y si la medida de desempeno esmenor que el umbral, entonces descartar, por ejemplo,que los que estan alejados dos varianzas de la mediade la medida de desempeno.
• Introducir variables aleatorias (1-3) y eliminar losatributos que reciban valores por debajo de la(s)variable(s) aleatoria(s)
(INAOE) Mayo, 2010 20 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Efecto de Introducir variables Aleatorias
(INAOE) Mayo, 2010 21 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Selecci on de Atributos por Subconjuntos
• En lugar de evaluar atributos individuales y ordenarlos,en general es deseable considerar subconjuntos deatributos. Esto elimina la suposicion generica en laevaluacion individual de que los atributos sonindependientes entre si dada la clase.
• Estos algoritmos en general pueden eliminar tantoatributos irrelevantes como redundantes, sin embargo,son en general poco eficientes.
(INAOE) Mayo, 2010 22 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Medidas de Evaluaci on
• Existe una gran cantidad de medidas de evaluacion deatributos (e.g., Euclideana, distancia Matusita,Kullback-Leibler 1 y 2, basada en entropıa,Bhattacharyya, Relief, OneR, Chi-Square, etc.) perosolo vamos a revisar algunas de ellas.
• Se usan para evaluar atributos individuales, aunquemuchas de ellas se pueden extender para evaluarsobconjuntos, aunque implica mas calculos y a vecesmas datos para obtener mejores estimaciones
• Esto de nuevo puede crear una lista ordenada, peroahora de subconjuntos. La idea es quedarse con elmejor subconjunto.
(INAOE) Mayo, 2010 23 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Medidas de Evaluaci on
Podemos clasificar las medidas en los siguientes tipos:
• Medidas de distancia: para un problema de dos clases,un atributo X es mejor que uno Y si X genera masdiferencia entre las probabilidades condicionales de lasclases que Y . Aquı podemos incluir muchas de lasmedidas propuestas, como la Euclideana, entre otras.
• Medidas de informacion: La ganancia de informaciondel atributo X la podemos definir como la diferenciaentre la incertidumbre previa y la posterior al usar X . Elatributo X es mejor que el Y si X tiene mas gananciade informacion que Y .
(INAOE) Mayo, 2010 24 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Medidas de Evaluaci on
• Kullback-Leibler o entropıa cruzada estima lainformacion mutua entre cada variable y la clase
I(i) =
∫
xi
∫
yp(xi , y)log
p(xi , y)
p(xi)p(y)dxdy
Que para variables discretas se escribe como:
I(i) =∑
xi
∑
y
P(X = xi , Y = y)logP(X = xi , Y = y)
P(X = xi)P(Y = y)
y estimar las probabilidades en base a frecuencia delos datos, lo cual se complica con muchas variables yclases.
(INAOE) Mayo, 2010 25 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Medidas de Evaluaci on
• Medidas de dependencia: miden dependencia ocorrelacion entre variables. Si la correlacion del atributoX con la clase C es mayor que la del atributo Y con laclase C, entonces X es mejor que Y
• Una variante es determinar que tan correlacionadoesta un atributo con otros para determinar redundancia.La idea es ver que atributos estan correlacionadosfuertemente con la clase. El coeficiente de correlacionesta dado por:
R(i) =cov(Xi , Y )
√
var(Xi)var(Y )
(INAOE) Mayo, 2010 26 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Medidas de Evaluaci on
• Esto se puede estimar como:
R(i) =
∑mk=1(xk ,i − xi)(yk − y)
√
∑mk+1(xk ,i − xi)2
∑mk+1(yk − y)2
Muchas veces se usa R(i)2 porque representa que tanbien se ajusta linealmente una variable individual conrespecto a la clase (y).
• Esto se puede extender para cualquier numero declases.
• El coeficiente de correlacion solo detecta dependenciaslineales entre una variable y la clase. Una alternativa esusar ajustes no lineales.
(INAOE) Mayo, 2010 27 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Evaluacion de Subconjuntos
Medidas de Evaluaci on
• Medidas de consistencia: miden la consistencia de lashipotesis con respecto a un grupo de atributos,buscando el mınimo conjunto de atributos que generehipotesis consistentes.
• Medidas basadas en error: usan un algoritmo declasificacion como medida de evaluacion (wrapper).
Con estas medidas y diferentes estrategias para generaratribitutos (i.e., completos, heurısticos, y aleatorios),podemos formar una gran cantidad de posibles algoritmos.
(INAOE) Mayo, 2010 28 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• SOAP: opera sobre atributos numericos. No empleadistancias ni calculos estadısticos y tiene un bajo costo.Idea: contar cuantas veces el valor de la clase cambiacon respecto al atributo ordenado en forma ascendente.
• SFS/SBS (Sequential Forward/Backward Selection):empieza con el cojunto vacıo/completo y en cadaiteracion anade/quita un atributo seleccionado con unafuncion de evaluacion.
(INAOE) Mayo, 2010 29 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• SFFS/SFBS (Sequential Floating Forward/BackwardSelection): aplica, despues de cada pasoforward/backward, tantos pasos backward/forwardcomo se pueda, mientras el subconjunto de atributossea mejor que los evaluados previamente en ese nivel.Si empieza con el conjunto vacıo anade mas atributos ysi empieza con el conjunto completo, elimina masatributos.
• Liu (2004) encuentra atributos fuertemente relevantes(si se eliminan siempre afectan la calidad predictiva),debilmente relevantes (pueden o no afectar la calidad alser eliminados), los cuales pueden ser o noredundantes, y los irrelevantes. Los redundantes loseliminan calculando la cobija de Markov
(INAOE) Mayo, 2010 30 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Un Esquema para Eliminar AtributosRedundantes
(INAOE) Mayo, 2010 31 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• Branch & Bound (Narendra): Busqueda completa yevaluacion basada en distancia. Define un tamano deprofundidad (i.e., numero de atributos) y usa unamedida sobre los atributos para definir criterios decorte. Sigue un proceso de backward elimination
• Requiere que la medida de evaluacion sea monotonicay en principio requiere saber el numero de atributosmeta.
• Se han hecho extensiones (e.g., Somol) usandoestimaciones
(INAOE) Mayo, 2010 32 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Ejemplo de Branch & Bound
(INAOE) Mayo, 2010 33 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Ejemplo de Branch & Bound conEstimaciones
(INAOE) Mayo, 2010 34 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• Clasificadores con una sola variable: Una posibilidad esusar una sola variable para tratar de clasificar (decisionstump) y ordenar las variables dependiendo de que tanbien clasifican. Se puede medir el error con varioscriterios, basada en falsos positivos, falsos negativos,curvas ROC, etc.
• Basados en seleccion y estrategias de algoritmosexistentes. Una posibilidad es usar un algoritmo dearboles (e.g., C4.5) y quedarse con los atributos queaparecen en un arbol podado.
(INAOE) Mayo, 2010 35 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• Heurısticos basados en distancia, por ejemplo,Relief/Relieff: Dado un ejemplo, Relief busca a sus dosvecinos mas cercanos, uno de la misma clase y otro deuna clase diferente, y actualiza los pesos de losatributos involucrados dependiendo de si sus valoresson iguales o no a estos ejemplos
(INAOE) Mayo, 2010 36 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algotitmo de Relief
for i = 1 to n doSelecciona aleatoriamente un ejemplo E de una claseEncuentra el ejemplo de la misma clase mas cercano Py el ejemplo de otra clase mas cercano Nfor A := 1 to Num. de atributos do
W [A] := W [A] − diff(A, E , P)/n + diff(A, E , N)/nend for
end for
(INAOE) Mayo, 2010 37 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Relief
• diff(Atr , Inst1, Inst2) calcula la diferencia entre losvalores del atributo Atr de dos ejemplos. Para valoresdiscretos la diferencia es 1 si son diferentes y 0 si soniguales. Para atributos continuos se puede normalizar ytomar un valor continuo entre 0 y 1
• La idea es favorecer atributos que tengan valoresdiferentes en ejemplos parecidos de diferente clase yvalores iguales en ejemplos parecidos de la mismaclase, que se puede interpretar como:
W [A] = P(dif. valor de A | instancia de clase dif.)−P(dif. valor de A | instancia de misma clase)
(INAOE) Mayo, 2010 38 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Extensiones a Relief (Relieff)
1 En Relieff, el proceso se repite un numero de vecesigual al numero total de ejemplos
2 En lugar de tomar el ejemplo positivo y negativo mascercano, se toman los k ejemplos positivos y negativosmas cercanos y se promedia el resultado (e.g., k = 10).
3 Para N clases, busca los k ejemplos mas cercanospara cada una de las clases multiplicado por laprobabilidad de ocurrencia de cada clase.
(INAOE) Mayo, 2010 39 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Extensiones a Relief (Relieff)
• Para actualizar los pesos se usan probabilidadesP(X |Y ) calculadas usando un estimador Laplaciano.
P(X |Y ) =N(X ∧ Y ) + mPa(X )
N(Y ) + m
Donde:• N(Z ) = numero de ejemplos con resultado Z ,• Pa(X ) = N(X)+1
N+Num.posiblesresultados• m es un parametro relacionado a la cantidad de ruido(m = 2 en las publicaciones originales)
(INAOE) Mayo, 2010 40 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• Basados en dependencias entre variables: Otraposibilidad es usar filtros basados en cobijas deMarkov. Una cobija de Markov de una variable xi es unconjunto de variables, sin incluir a xi que hacen a lavariable “innecesaria”. Una vez que se encuentra lacobija de Markov se puede eliminar esa variable.
• Basados en informacion completos: usando el principiode descripcion mınima (MDL), en donde se utiliza unaexpresion que se interpreta como el numero de bitsnecesarios para transmitir la clase de las instancias, losparametros optimos, los atributos relevantes y losirrelevantes.
(INAOE) Mayo, 2010 41 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Algoritmos
• Combinando con progressive sampling: se usa unconjunto pequeno de datos y se corre C4.5. Seincremente el numero de datos y se repite el proceso.Se comparan los atributos seleccionados y se evaluansi los atributos diferentes son relevantes o no.
• Combinado con active learning: la idea es seleccionarinstancias que pueden ser relevantes para realizar laseleccion de atributos. Las instancias se agrupanusando kd-trees y luego se seleccionan n instancias decada grupo y se alimenta a relieff
(INAOE) Mayo, 2010 42 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Combinando con active sampling
(INAOE) Mayo, 2010 43 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Interacci on entre Atributos
• Interaccion entre atributos: Por ejemplo, si queremosver la interaccion entre 4 atributos usando medidas deinformacion (Jakulin):I(X ; Y ; Z ; C) = I(X , Y , Z ; C) − I(X , Y ; C) − I(Y , Z ; C) −I(X , Z ; C) + I(X ; C) + I(Y ; C) + I(Z ; C) y variantes(nwG)
(INAOE) Mayo, 2010 44 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Esquema de dependencias de informaci onentre atributos
(INAOE) Mayo, 2010 45 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Comentarios
• En general es deseable hacer primeramente un analisispare tratar de eliminar las variables claramenteirrelevantes e identificar las variables redundandantes.
• Al escoger un algoritmo de seleccion de atributos esimportante tomar en cuenta:
1 El proposito: visualizacion, entendimiento de datos,limpieza de datos, eliminacion de redundancia y/oirrelevancia, desempeno
2 El tiempo de procesamiento: si no es crıtico se puedeusar una estrategia de busqueda cara
3 La salida: lista ordenada o subconjunto
(INAOE) Mayo, 2010 46 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Comentarios
Cont...
4 La relacion entre atributos relevantes y el total deatributos: Pocos relevantes - forward selection, pocosirrelevantes - backward elimination
5 Si es clasificacion o clustering la tarea que se tiene
6 El tipo de atributos que se tienen
7 La relacion atributos y el numero de instancias
8 Si se puede usar conocimiento del dominio.
(INAOE) Mayo, 2010 47 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Algoritmos
Algunos Retos
Dentro de los retos actuales:
• Poder lidear exitosamente con una alta dimensionalidady/o alta dimensionalidad y pocas instancias
• Incorporar ideas de active y progressive sampling aseleccion de atributos
• Tomar en cuenta interdependencias entre variasvariables a la vez
• Extender las ideas a otro tipo de atributos (e.g.,secuencias, datos semi-estructurados, texto, etc.).
• Combinarlo con ideas de sobre/sub–muestreo
(INAOE) Mayo, 2010 48 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Construccion de atributos
Construcc on de Atributos
• Aunque hemos mencionado en general las ventajas deeliminar atributos, muchas veces tambien convieneanadir atributos.
• Esto es porque una representacion diferente puedesimplificar la tarea del algoritmo de aprendizaje (e.g.,maquinas de soporte vectorial).
• Una forma de introducir nuevos atributos es creandoatributos derivados de los atributos originales.
• Normalmente se usan combinaciones booleanas paraatributos binarios y combinaciones aritmeticas paraatributos numericos.
(INAOE) Mayo, 2010 49 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Construccion de atributos
Construcci on de Atributos
• Tambien se pueden utilizar aproximaciones lineales deatributos que den una buena prediccion de los datosoriginales (singular value decomposition o SVD).
• La idea de Constructive Induction es crear nuevosatributos en base a operadores de construccionpredefinidos e ir seleccionando los mejores atributos(originales o derivados), manteniendo simpre fijo unnumero maximo de atributos, hasta llegar a un criteriode paro.
(INAOE) Mayo, 2010 50 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Construccion de atributos
Algoritmo General de Construcci on deAtributos
AtribActual = atributos originalesOperadores = conjunto de operadores de construccionwhile NOT criterio de terminacion do
• AtribNvos = AtribActual ∪ atributos nuevosconstruidos con Operadores sobre AtribActual• Corre algoritmo de aprendizaje en AtribNvos• AtribActual = Selecciona los mejores atributos deAtribNvos
end while
(INAOE) Mayo, 2010 51 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Construccion de atributos
Ejemplo de Construcci on de Atributos
Construccion de tres atributos, a partir de R,G,B paraclasificar piel:
(INAOE) Mayo, 2010 52 / 53
Contenido
Introduccion
Estrategias debusqueda
Evaluacion deSubconjuntos
Algoritmos
Construccionde atributos
Construccion de atributos
Construcci on de Atributos
• Una alternativa que se ha usado para la construccionde atributos esta basada en clustering
• La idea es reemplazar un grupo de variables“parecidas” por el centroide del cluster que se vuelve unnuevo atributo.
• En general, el automatizar el cambio de representacionsigue siendo un problema abierto con poco trabajo enML
(INAOE) Mayo, 2010 53 / 53