560 likes | 769 Views
Tesis Doctoral. Minería Web de Uso y Perfiles de Usuario: Aplicaciones con Lógica Difusa. Víctor Heughes Escobar Jeria Granada, 2007. Directoras: Dra. María José Martín Bautista Dra. María Amparo Vila Miranda.
E N D
Tesis Doctoral Minería Web de Uso y Perfiles de Usuario: Aplicaciones con Lógica Difusa Víctor Heughes Escobar JeriaGranada, 2007 Directoras:Dra. María José Martín Bautista Dra. María Amparo Vila Miranda Departamento de Ciencias de la Computación e Inteligencia Artificial. Universidad de Granada.
Motivación • La Minería Web se define como “el proceso global de descubrir información o conocimiento potencialmente útil y previamente desconocido a partir de los datos de la web” [Etzioni, 1996]. Forma intermedia Técnicas de minería de datos adecuadas para el análisis de la información que se encuentra en la web
Motivación Minería Web Minería Web de Contenido Minería Web de Estructura Minería Web de Uso Documentos Web Enlaces entre e intra Documentos Archivos Log
Motivación ¿Cómo es el comportamiento de navegación del usuario en la web? ¿Cómo podemos identificar a los usuarios que navegan por la web si no se registran? ¿Cómo podemos ofrecer una información más adecuada al usuario durante su navegación?... Minería de Datos Lógica Difusa
Objetivos • La aplicación de la lógica difusa en la minería web de uso. • La obtención de patrones de navegación, a través de la técnica de reglas de asociación difusas. • Realizar un análisis demográfico, utilizando la técnica del clustering difuso para la agrupación y caracterización de sesiones de usuarios. • Construcción de perfiles de usuario, a través de un modelo general de obtención y representación de los mismos en XML.
Contenidos • Minería Web de Uso. (Capítulo 3) - Modelo de datos. • Análisis de patrones de navegación. (Capítulo 4) - Obtención de reglas de asociación difusas para el análisis de patrones de navegación: caso real (E.T.S.I.I.T.). • Análisis demográfico. (Capítulo 5) - Clustering de páginas similares: caso real. - Clustering difuso de sesiones de usuarios: caso real (E.T.S.I.I.T.). • Perfiles de usuario y lógica difusa. (Capítulo 6) - Modelo de obtención y representación en XML de los perfiles de usuario. - Aplicación para un caso real (E.T.S.I.I.T.). • Conclusiones y trabajos futuros. (Capítulo 7)
Contenidos • Minería Web de Uso. (Capítulo 3) - Modelo de datos. • Análisis de patrones de navegación. - Obtención de reglas de asociación difusas para el análisis de patrones de navegación: caso real. • Análisis demográfico. - Clustering de páginas similares: caso real. - Clustering difuso de sesiones de usuarios: caso real. • Perfiles de usuario y lógica difusa. - Modelo de obtención y representación en XML de los perfiles de usuario. - Aplicación para un caso real. • Conclusiones y trabajos futuros.
Minería Web de Uso – Etapas (Capítulo 3) Minería Web de Uso Etapas (Capítulo 3) Descubrimiento de Patrones de Uso Colección de Datos de Uso Interpretación de los resultados Preprocesamiento de Datos de Uso Técnicas de Minería: - Clustering - Reglas de Asociación - Servidor Web - Servidor Proxy - Máquina del Usuario - Heterogeneidad y Carencia de Estructura - Forma Intermedia - Interpretar patrones - Construir perfiles
Minería Web de Uso – Etapas (Capítulo 3) Minería Web de Uso Minería Web de Uso Tipos de ficheros log (Capítulo 3) Tipos de ficheros log (Capítulo 3) Tipos de ficheros Registros de Referencia Registros de Accesos Registros de Agentes Registros de Error Common Log File Format (CLFF) Extended Common Log File Format (ECLFF) Performance Log File Format (PLFF)
Minería Web de Uso Ejemplo de Fichero ECLFF • Archivo Extended Common Log File Format (ECLFF) Identificación de usuario Pág. Referenciada Fecha/Hora Estado Autentificación de usuario Agente Bytes Host o IP Petición
Una página web pi P, esun documento HTML identificable a través de la red con una URL. • Una sesión de usuariosj S, se define como una secuencia de accesos temporales a un sitio particular de la Web por un usuario. Viene determinada por un conjunto de clicks en el sitio web, denominado clickstream. • La relación entre una página pi Py la sesión sj Sen la que se visita viene dada por la matriz UP, donde cada valor representa el tiempo de la permanencia del usuario en la página pi en la sesión sj Minería Web de Uso Modelo de datos (Capítulo 3)
Minería Web de Uso Modelo de datos (cont.) • Caracterizaremos el clickstream para la identificación de sesiones de usuarios (Método timeout [Chen et al., 1996]): • Sea rk el kthclick del clickstream R de una dirección IP en tk segundos. • Sea rk+1 el (k+1)thclick del clickstream de la misma dirección IP en tk+1 segundos después del click rk. • T es el tiempo de espera calculada como la diferencia entre ambos click en un sitio web es T =(tk+1 - tk) • Si T< β, siendo βel tiempo de espera máximo, entonces el click rk y rk+1 son considerados partes de la sesión Si. En otro caso, si T> β, entonces el click rk es estimada como final de la sesión Si, mientras el click rk+1 es el clickstream de la sesión Si+1.
Minería Web de Uso Modelo de datos (cont.) • Identificación de sesiones de usuario:
Contenidos • Minería Web de Uso (Capítulo 3) - Modelo de datos. • Análisis de patrones de navegación. (Capítulo 4) - Obtención de reglas de asociación difusas para el análisis de patrones de navegación: caso real (E.T.S.I.I.T). • Análisis demográfico. - Clustering de páginas similares: caso real. - Clustering difuso de sesiones de usuarios: caso real. • Perfiles de usuario y lógica difusa. - Modelo de obtención y representación en XML de los perfiles de usuario. - Aplicación para un caso real. • Conclusiones y trabajos futuros.
Patrones de navegación • Objetivo Obtener patrones de navegación del usuario y así tener una mejor descripción de su comportamiento en la web y de esa manera saber realmente lo que sucede en el sitio web. • Problema • Problema de navegación temporal: intervalo horario – página • visitada. • Problema de navegación intrapágina: pagina visitada - página • referenciada. • Metodología usada Reglas de asociación difusas.
Definición:[Delgado et al., 2003] Dado I un conjunto de ítems, definiremos una transacción difusa , donde . Sea el grado de pertenencia de i a y notaremos a el grado de inclusión de un ítemset en una transacción difusa definida como Patrones de navegación Reglas de asociación difusas (Capítulo 4) • Medidas de interés: hemos utilizado diferentes medidas para la obtención de las reglas de asociación difusas, tanto medidas objetivas como subjetivas [Liu et al., 2000]. • Algoritmo: AprioriTID
Patrones de navegación Modelo asociado a la navegación temporal - Fecha-Página visitada • Problema 1:problema de navegación temporal. • Ítems: fecha/hora y páginas visitadas • Transacciones: tablas transaccionales difusa para la obtención de las reglas, para los ítems fecha/hora y páginas visitadas.
Patrones de navegación Ejemplo de regla de asociación difusa – Fecha-Página visitada Fecha/Hora → Página Visitada. Mañana → http://www.shop2.cz/ls/index.php?\&id=98\&filtr=102 • Soporte =60%; confianza =1.0; FC =1.0 Interpretación: del conjunto analizado el 60% presentaba esta regla, la cual nos indica que los usuarios se conectan por la mañana a esa página.
Patrones de navegación Modelo asociado a la navegación entre páginas - Página visitada – Página referenciada (Capítulo 4) • Problema 2:problema de navegación entre páginas. • Ítems: páginas visitadas y páginas referenciadas. • Transacciones: tablas transaccionales difusa para la obtención de las reglas, para los ítems páginas visitadas y páginas referenciadas: peso Frecuencia Obtención de los pesos
Patrones de navegación Ejemplo de regla de asociación difusa – Página visitada – Página referenciada página visitada → página referenciada /dt/?c=11670 → http://www.shop2.cz - Soporte =40%; confianza =1.0; FC =1.0 Interpretación:esto indica que los usuarios vistan a la página /dt/?c=11670 y luego se van a la página http://www.shop2.cz, esta regla se encuentra en un 40% dentro del conjunto analizado.
Patrones de navegación Medidas de calidad (Capítulo 4) • Medidas de calidad subjetivas:reglas conforme (confm), reglas con consecuentes inesperados (unexpConseq), reglas con antecedentes inesperados (unexpCond) y ambos lados de la reglas inesperados (bsUnexp) [Liu et al., 2000]. • Obtención de las creencias del usuario Para esto hemos realizado una encuesta (referente a la navegación entre páginas). • Creencia del Usuario: 1. Foro →asignaturas 2. Tablón de anuncios →actividades 3. Eventos → página principal 4. Programación →página principal
Patrones de navegación Medidas de calidad (cont.) • Conjuntos de datos:
Patrones de navegación Resultados (Capítulo 4) • Reglas obtenidas del conjunto 5: Foro • Discusión de los resultados: el usuario navega habitualmente por las diferentes secciones del foro.
Contenidos • Minería Web de Uso - Modelo de datos. • Análisis de patrones de navegación. - Obtención de reglas de asociación difusas para el análisis de patrones de navegación: caso real. • Análisis demográfico. (Capítulo 5) - Clustering de páginas similares: caso real. - Clustering difuso de sesiones de usuarios: caso real (E.T.S.I.I.T.). • Perfiles de usuario y lógica difusa. - Modelo de obtención y representación en XML de los perfiles de usuario. - Aplicación para un caso real. • Conclusiones y trabajos futuros.
Objetivo. • Caracterizar distintos tipos de usuarios a través de: • análisis de los grupos de páginas por los que navegan en función de su dirección. • análisis de los grupos de sesiones en función de las páginas visitadas. • Metodología. Análisis demográfico Clustering de Páginas Web Clustering Difuso de Sesiones de usuario
Análisis demográfico Ideas básicas acerca de los métodos de clustering • Definición clásica • Dado un conjunto X = {x1,x2,…,xn} queremos obtener una partición P= {A1, A2,…,Ac} tal que una cierta medida de semejanza entre los elementos de un mismo grupo sea lo mayor posible y la de entre miembros de dos grupos sea mínima. • Clustering difuso: Cuando la partición es difusa:
Análisis demográfico Medidas utilizadas (Capítulo 5) • Levenshtein. • Coseno.
Análisis demográfico Medidas utilizadas (cont.) • Coseno extendido.
Análisis demográfico Ideas básicas acerca de los métodos de clustering • Definición clásica • Dado un conjunto X = {x1,x2,…,xn} queremos obtener una partición P= {A1, A2,…,Ac} tal que una cierta medida de semejanza entre los elementos de un mismo grupo sea lo mayor posible y la de entre miembros de dos grupos sea mínima. • Clustering difuso: Cuando la partición es difusa:
Análisis demográfico Obtención de la partición inicial de datos (Capítulo 5) • Técnica utilizada: Clustering jerárquico (SPSS). • Criterios utilizados:(Basados en su relación con la lógica difusa) [Delgado et al., 1996] • Mínima distancia entre los elementos de un grupo, • máxima distancia entre grupos. • Distancia al Crisp más cercano.
Análisis demográfico Páginas Web Sesiones de Usuario Datos Iniciales Clustering Jerárquico Clustering C-medias difuso C-medias Validación de Resultados
Análisis demográfico Validación del clustering • Coeficiente de partición. • Coeficiente de Entropía.
Análisis demográfico Sesiones de Usuario Páginas Web Datos Iniciales Clustering Jerárquico Clustering C-medias C-medias difuso Validación de Resultados
Objetivo. Obtener grupos de páginas web más similares para saber cuales son las más representativas de la navegación del usuario. • Modelo de datos asociado. Un Conjunto de páginas definida como: Las páginas web puede ser vista conceptualmente como una matriz página-página mxm: Análisis demográfico Clustering de páginas similares (Capítulo 5)
Análisis demográfico Resultados del clustering de páginas similares • Conjuntos de datos: • Medida: Levenshtein • Técnica: clustering con el algoritmo c-medias • Número de particiones iniciales: 12 (obtenidos con el análisis de clustering jerárquico previamente).
Análisis demográfico Resultados del clustering de páginas similares Tablón Foro Alumnos Sin caracterizar
Análisis demográfico Sesiones de Usuario Páginas Web Datos Iniciales Clustering Jerárquico Clustering C-medias C-medias difuso Validación de Resultados
Conjunto de sesiones S definida como: • Conjunto de páginas P, definida como: • Matriz sesión-página mxn: Análisis demográfico Clustering de difuso de sesiones de usuarios (Capítulo 5) • Objetivo. Obtener grupos de sesiones de usuarios que navegan por la web con características similares. • Modelo de datos asociado. A partir de esta matriz de peso sesión-página obtendremos una matriz de semejanza entre las sesiones definida y para obtener esta semejanza aplicaremos la medida del coseno y coseno extendido.
Análisis demográfico Resultados del clustering de sesiones de usuario • Conjuntos de datos: • Medidas: coseno y coseno extendido. • Técnica: clustering difuso con el algoritmo c-medias difuso. • Número de particiones iniciales: 12 (obtenidos mediante el análisis jerárquico previamente)
Análisis demográfico Resultados del clustering de sesiones de usuario (cont.) Coseno Coseno extendido • Discusión de los resultados: la medida del coseno extendido fue la que mejor representación entregaba de las sesiones con respecto a los centroidos.
Contenidos • Minería Web de Uso - Modelo de datos. • Análisis de patrones de navegación. - Obtención de reglas de asociación difusas para el análisis de patrones de navegación: caso real. • Análisis demográfico. - Clustering de páginas similares: caso real. - Clustering difuso de sesiones de usuarios: caso real. • Perfiles de usuario y lógica difusa. (Capítulo 6) - Modelo de obtención y representación en XML de los perfiles de usuario. - Aplicación para un caso real (E.T.S.I.I.T). • Conclusiones y trabajos futuros.
Perfiles de usuario • Objetivo. • Construcción de perfiles de usuario, a través de la navegación de que realiza el usuario en la web, y así poder identificar diferentes grupos sociales y/o demográficos. • Plantear un modelo de obtención y representación de los perfiles de usuarios en XML.
Análisis demográfico Modelo para la obtención del perfil de usuario (Capítulo 6) Identificación de entradas Identificación de entradas Fuente de información (Ficheros log) Fuente de información (Ficheros log) Identificación de sesiones de usuarios Identificación de sesiones de usuarios Método para la identificación de sesiones Método para la identificación de sesiones Preprocesamiento de la información Preprocesamiento de la información 4 4 7 7 2 2 6 6 5 5 1 1 8 8 3 3 Perfiles de usuario Perfiles de usuario Grupos de sesiones Grupos de sesiones Representación de los perfiles en XML Representación de los perfiles en XML Técnica de Minería para realizar agrupamiento de sesiones Técnica de Minería para realizar agrupamiento de sesiones
Análisis demográfico Definición de perfil de usuario • Definición de perfil de usuario:colección de datos acerca de las preferencias o intereses de navegación de los usuarios . • Definición formal de perfil de usuario:[Martín-Bautista et al., 2002]. Relativo a los aspectos sociales: rango de edad, nivel educativo, idioma… • Vi: Variables demográficas Ficheros Log • Li: Variables de identificación • Ki: Variables de clickstream Resultado de una agregación de perfiles asociados a cada sesión • z’i: Perfil simple de la sesión Se asocian pesos a las páginas
Análisis demográfico Modelo de representación en XML del perfil de usuario • Li: Variables de identificación • Ki: Variables de clickstream • Vi: Variables demográficas • z’i: Perfil simple de la sesión
Análisis demográfico Ejemplo de perfil de usuario • Li: Variables de identificación • Ki: Variables de clickstream • Vi: Variables demográficas • z’i: Perfil simple de la sesión
Análisis demográfico Obtención del perfil de usuario a partir del clustering difuso Sea C = {c1,c2,...,cn} los clusters de sesiones de usuarios más representativas de la navegación realizada por los usuarios en el sitio web de la escuela, siendo n el número de la partición inicial. Sea Q= {q1,q2,...,qn} el conjunto de los perfiles de los usuarios obtenidos. Entonces: C = {c1,c2,...,cn} → Q= {q1,q2,...,qn}
<?xml version="1.0" encoding="UTF-8"?> <Perfil11> <Identificacion_Usuario> <Tipo Tipo="alumno" /> </Identificacion_Usuario> <Paginas> <Pagina Pagina_Visitada="0">*GET/apps/foro/index.phpHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="1">*GET/apps/foro/index.php?action=foro&idforo=asignaturasHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="2">*GET/apps/foro/index.php?action=foro&idforo=generalHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="3">*GET/profesores/jmaroza/anecdotario/anecdotario-z.htmHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="4">*GET/apps/tablon/HTTP/1.1*</Pagina> <Pagina Pagina_Visitada="5">*GET/apps/foro/index.php?action=hebra&idhebra=1819&page=0HTTP/1.1*</Pagina> <Pagina Pagina_Visitada="6">*GET/apps/foro/index.php?action=hebra&idhebra=696HTTP/1.1*</Pagina> <Pagina Pagina_Visitada="7">*GET/apps/foro/index.php?action=hebra&idhebra=1349HTTP/1.0*</Pagina> <Pagina Pagina_Visitada="8">*GET/page.php?pageid=googlemapsHTTP/1.1*</Pagina> </Paginas> <Var_Demograficas> <Edad>Joven</Edad> <Paciencia>Paciente</Paciencia> <Idioma>Español</Idioma> </Var_Demograficas> <Perfil_Simple> <Terminos Termino="0">Ingeniería</Terminos> <Terminos Termino="1">Informática</Terminos> <Terminos Termino="2">Telecomunicación</Terminos> <Terminos Termino="3">Foros</Terminos> <Terminos Termino="4">Asignatura</Terminos> <Terminos Termino="5">General</Terminos> <Terminos Termino="6">Anecdotario</Terminos> <Terminos Termino="7">Googlemaps</Terminos> </Perfil_Simple> </Perfil11> • Perfil de alumno obtenido del caso real (Perfil 11, Anexo C)
<?xml version="1.0" encoding="UTF-8"?> <Perfil10> <Identificacion_Usuario> <Tipo Tipo="profesor" /> </Identificacion_Usuario> <Paginas> <Pagina Pagina_Visitada="0">*GET/usuarios/jmlvega/idragon//formate.cssHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="1">*GET/apps/convocatorias/styles/convocatorias.cssHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="2">*GET/profesores/jmaroza/anecdotario/chmanual.htmHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="3">*GET/profesores/jmaroza/anecdotario/anecdotario-z.htmHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="4">*GET/planes/index.php?id=3&id2=127HTTP/1.1*</Pagina> <Pagina Pagina_Visitada="5">*GET/page.php?pageid=horarioHTTP/1.1*</Pagina> <Pagina Pagina_Visitada="6">*GET/apps/foro/index.php?action=hebra&idhebra=1617HTTP/1.1*</Pagina> </Paginas> <Var_Demograficas> <Edad>Adulto</Edad> <Paciencia>Muy Paciente</Paciencia> <Idioma>Español</Idioma> </Var_Demograficas> <Perfil_Simple> <Terminos Termino="0">Ingeniería</Terminos> <Terminos Termino="1">Informática</Terminos> <Terminos Termino="2">Telecomunicación</Terminos> <Terminos Termino="3">Index</Terminos> <Terminos Termino="4">skin/reloaded</Terminos> <Terminos Termino="5">convocatorias</Terminos> <Terminos Termino="6">ubuntu</Terminos> <Terminos Termino="7">planes</Terminos> <Terminos Termino="8">estudio</Terminos> <Terminos Termino="9">Horario</Terminos> </Perfil_Simple> </Perfil10> • Perfil de profesor obtenido del caso real (Perfil 10, Anexo C)
Análisis demográfico Clasificación de los perfiles a partir de las páginas web • Metodología • Árbol de decisión. Algoritmo J4.8 (C4.5), (WEKA). • Algunos resultados • Perfil 10 está clasificado por la página GET/apps/convocatorias. • Perfil 12 está clasificado por la página GET/apps/descargas. • Perfil 3 está clasificado por la página GET/alumnos/shin/shin.htm. • Perfil 7 está clasificado por la página GET/alumnos/mlii. • Perfil 4 está clasificado por la página GET/apps/foro/index.php. • Perfil 6 está clasificado por las páginas: GET/apps/foro/index.php, GET/apps/tablon,GET/alumnos/diegorp/canalplus.html, GET/alumnos/diegorp/canal.css. Profesor Alumno