Aprendizaje de reglas para un sistema de recomendación contextual

Post on 04-Jul-2015

727 views 0 download

Transcript of Aprendizaje de reglas para un sistema de recomendación contextual

Aprendizaje de Reglas para unSR contextual

Blanca A. Vargas Goveablanca.vargas@cenidet.edu.mx

Grupo de Sistemas de Recomendacióncenidet

Feb 16, 2012

2

AntecedentesEvaluación

Surfeous

Metodología para el aprendizaje de reglas

Selección de atributos

Preparación de datos

1

Contenido

2

3

4

3

Surfeous: prototipo de SRusuario

opiniones

buscando restaurante

ratings y tags

enfoque contextual

enfoque social

[1]

4

Surfeous: modelos de contexto

usuario item

presupuesto

latitud

fumador alcohol

formalidad

ambiente

edad

transportación

estado-civil

hijos

interés

personalidadreligión

ocupación

pesoestatura

pago

accesibilidad

cocinafax

ZIPzona-fumar

ciudad

servicioscocina

ambienteestado

latitud

alcohol

formalidad

país

estacionamiento

teléfono

tipo-de-pago

dirección

días

horas

franquiciaaccesibilidad

costo

longitud

color-favorito

5

Evaluación: metodología

Popularidad ítemBásica

Por grupos Usuarios con más ratings

Usuarios con menos ratings

Distribución usuario-ítem

Selección de atributos

6

Evaluación: resultados

social fusión contextooriginal 0.335 0.278 0.133atributos-sel 0.335 0.327 0.133

original atributos-sel0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

socialfusióncontexto

La evaluaciónmás baja se obtiene en el enfoque contextual

7

¿Sobreajuste?¿Por qué es bajo? ¿Qué ocurre con las reglas?

¿Demasiado generales?

Si   es roja, redonda, de 5cm de    diámetro   y es jaspeada en el 20% de su    superficie entonces    es una manzana

Si   es rojaentonces    es una manzana

8

Ejemplo de reglas

9

Aprendizaje de Reglas

Se necesita un conjunto de reglas que describa los datos sin sobre-ajuste ni extrema generalización

¿Entonces?

10

Metodología

Selección de atributos

modelo del usuario

con ambos modelos

Análisis del estado actual de las reglasPreparación de datos para el aprendizaje

Aprendizaje automático usando ILP

Prueba de reglas aprendidas

modelo del ítem

11

Selección de atributos

12

¿Para qué sirve?

Mejorar el desempeño predictivo

Construir modelos máseficientes

Mejorar el entendimientode los modelos

Selección deatributos

[2]

13

Selección de atributos: proceso

Generación desub-conjuntos

Criterio de paro

Validación deresultados

Evaluación desub-conjuntos

forward/backwardbúsqueda: hill-climbing, best-first,...

Métrica

filtro/wrapper

no

si

sub-conjunto chi-cuadrada, ganan-cia de información,clasificador, consisten-cia

UmbralNo. de atributos seleccionadosQue no mejore la evaluación

14

Las Vegas Filter: criterio de inconsistencia

IC s(A)=S (A)−maxkS k (A)

IR(S )=∑A∈S

IC S (A)

∣S∣

Conteo de inconsistencia

Valor de inconsistencia

[3]

15

área costo franquicia fumar Rating A Rating B1 i bajo n s 0 02 i bajo n s 1 03 i bajo n s 2 04 i bajo n s 1 15 i alto n n 0 16 i alto n n 1 17 i alto n n 2 18 e alto s n 1 19 e bajo n n 1 110 e bajo n s 2 2

Ejemplo

16

Instancias iguales: 1,2,3,4n=4, clases=0,1,2,1clase frecuente=1 (2 instancias)Conteo de inconsistencia (IC): 4-2=2

Instancias iguales: 5,6,7N=3, clases= 0,1,2clase frecuente=1 (1 instancia)Conteo de inconsistencia (IC): 3-1=2

Valor de Inconsistencia: (2+2)/10 = 4/10 = 0.4

Sub-conjunto AInstancias iguales: 1,2,3,4n=4, clases=0,0,0,1clase frecuente=0 (3 instancias)Conteo de inconsistencia (IC): 4-3=1

Instancias iguales: 5,6,7N=3, clases= 1,1,1clase frecuente=1 (3 instancias)Conteo de inconsistencia (IC): 3-3=0

Valor de Inconsistencia: (1+0)/10 = 1/10 = 0.1

Sub-conjunto B

Ejemplo

17

Descripción de los datos: Surfeous

130restaurantes

1,160ratings

0,1,2valores de

rating 8.41ratings/usuario

115restaurantescon 1 rating

138usuarios

18

¿Cómo se hizo?

http://www.cs.waikato.ac.nz/ml/weka/

Modelo del usuario

Modelo del servicio

Modelo del usuario + Modelo del servicio

Selección de atributos para: [4]

19

Preparación de datos

usuario

user­profile

user­cuisine user­payment

user­attributesClase

20

Preparación de datos

Para el modelo de servicio se efectuóun proceso similar.

Selección deatributos

ítem

usuario+

ítem

usuario

Selección deatributos

Selección deatributos

21

Cada archivo es la entrada a WEKA

22

WEKA

23

WEKA

24

Resultadosusuario ítem

formalidad

edadinterés

color-favoritococina

zona-fumar

cocinaalcohol

tipo-de-pago

días

horas

alcohol

cocina

edad religión

interéscolor-favorito

horas

usuario + ítem

86.96%80.95%

75.00%

25

Preparación de datos

26

Preparación de datos para el aprendizaje

Obtener los elementos necesarios para el aprendizaje automático: reglas prototipo, conocimiento del dominio e instancias aterrizadas.

Objetivos

Preparar una plataforma de prueba de reglas.

27

Preparación de datos para el aprendizaje

ReglasFormato RDF

PredicadosProlog

Extracción deliterales (condiciones)

Instanciar las condiciones con los valores de atributos

usuariofuma(Restaurant,User):­atom_chars(Msg,"Regla1\n"),write(Msg),permiteFumar(Restaurant,"section"),esFumador(User,true).

<regla nombre="fumatrue1"><antecedente>Restaurant(?r) ^ IDPlace(?r,?id) 

^....</antecedente><consecuente>

sqwrl:selectDistinct(?id)</consecuente><tipo>2</tipo>

</regla>

esFumador("AAAM",false).esFumador("aguilar",false).esFumador("agusperez",false).

permiteFumar(Item,Algo)tieneFormalidad(Item,Algo)ofreceServicio(Item,Algo)sirveAlimento(Item,Algo)esFranquicia(Item,Algo)

28

Preparación de datos para el aprendizaje

Plataforma para prueba de reglas

Análisis de las reglas originales

Predicados correspondientes a atributos (condiciones)

Reglas muy generales, producen varios resultados por tipo de regla (fumador, estudiante, …)

Ya se tiene

En proceso

29

Lo que sigue

Selección de atributos

modelo del usuario

con ambos modelos

Análisis del estado actual de las reglasPreparación de datos para el aprendizaje

Aprendizaje automático usando ILP

modelo del ítem

Prueba de reglas aprendidas

30

[4] M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, and I. H. Witten, “The WEKA data mining software: an update,” SIGKDD Explorations Newsletter, vol. 11, no. 1, pp. 10–18, Nov. 2009.

[2] I. Guyon and A. Elisseeff, “An introduction to variable and feature selection,” Journal of Machine Learning Research, vol. 3, pp. 1157–1182, Mar. 2003.

[1] R. Ponce-Medellín, Búsquedas contextuales de servicios basados en localización en un entorno de web social. 2010.

[3] H. Liu and R. Setiono, “A probabilistic approach to feature selection - A filter solution,” in 13th International Conference on Machine Learning, 1996, pp. 319–327.

Referencias

31

Gracias

blanca.vargas@cenidet.edu.mx@blancavg