Minería web de uso y perfiles de usuario: aplicaciones con lógica difusa (página 2)
Enviado por Pablo Turmero
9 Archivo Extended Common Log File Format (ECLFF) Host o IP Identificación de usuario Autentificación de usuario Fecha/Hora Petición Estado Bytes Pág. Referenciada Agente Minería Web de Uso
Ejemplo de Fichero ECLFF
10 (Gp:) Una página web pi? P , es un documento HTML identificable a través de la red con una URL.
Una sesión de usuario sj? 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? P y la sesión sj? S en 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
11 Caracterizaremos el clickstream para la identificación de sesiones de usuarios (Método timeout [Chen et al., 1996]): Sea rk el kth click del clickstream R de una dirección IP en tk segundos. Sea rk+1 el (k+1)th click 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.)
12 Identificación de sesiones de usuario: Minería Web de Uso
Modelo de datos (cont.)
13
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 (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.
Contenidos
14 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. Patrones de navegación
15 Patrones de navegación 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
Reglas de asociación difusas
(Gp:) 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
16 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 Modelo asociado a la navegación temporal – Fecha-Página visitada
17 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 Ejemplo de regla de asociación difusa – Fecha-Página visitada
18 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: Obtención de los pesos Frecuencia peso Patrones de navegación Modelo asociado a la navegación entre páginas – Página visitada – Página referenciada
19 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 Ejemplo de regla de asociación difusa – Página visitada – Página referenciada
20 Obtención de las creencias del usuario Creencia del Usuario: 1. Foro ? asignaturas 2. Tablón de anuncios ? actividades 3. Eventos ? página principal 4. Programación ? página principal Para esto hemos realizado una encuesta (referente a la navegación entre páginas). 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]. Patrones de navegación
Medidas de calidad
21 Conjuntos de datos: Patrones de navegación
Medidas de calidad (cont.)
22 Reglas obtenidas del conjunto 5: Discusión de los resultados: el usuario navega habitualmente por las diferentes secciones del foro. Patrones de navegación
Resultados
Foro
23
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 (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.
Contenidos
24 Clustering de Páginas Web Clustering Difuso de Sesiones de usuario
(Gp:) Objetivo. (Gp:) 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. (Gp:) Metodología.
Análisis demográfico
25 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 Ideas básicas acerca de los métodos de clustering
26 Levenshtein. Coseno. Análisis demográfico
Medidas utilizadas
27 Coseno extendido. Análisis demográfico
Medidas utilizadas (cont.)
28 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 Ideas básicas acerca de los métodos de clustering
29 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 Obtención de la partición inicial de datos
30 Datos Iniciales Clustering Jerárquico Clustering Validación de Resultados Páginas Web Sesiones de Usuario C-medias difuso C-medias Análisis demográfico
31 Coeficiente de partición. Coeficiente de Entropía. Análisis demográfico
Validación del clustering
32 Análisis demográfico Datos Iniciales Clustering Jerárquico Clustering Validación de Resultados Páginas Web Sesiones de Usuario C-medias difuso C-medias
33 (Gp:) Modelo de datos asociado. (Gp:) Un Conjunto de páginas definida como: (Gp:) Las páginas web puede ser vista conceptualmente como una matriz página-página mxm : (Gp:) Objetivo. (Gp:) Obtener grupos de páginas web más similares para saber cuales son las más representativas de la navegación del usuario.
Análisis demográfico
Clustering de páginas similares
34 Conjuntos de datos: Análisis demográfico 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). Resultados del clustering de páginas similares
35 Foro Tablón Alumnos Sin caracterizar Análisis demográfico Resultados del clustering de páginas similares
36 Datos Iniciales Clustering Jerárquico Clustering Validación de Resultados Páginas Web Sesiones de Usuario C-medias difuso C-medias Análisis demográfico
37 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. Modelo de datos asociado. Objetivo. Obtener grupos de sesiones de usuarios que navegan por la web con características similares. Análisis demográfico (Gp:) Conjunto de sesiones S definida como: (Gp:) Conjunto de páginas P, definida como : (Gp:) Matriz sesión-página mxn :
Clustering de difuso de sesiones de usuarios
38 Conjuntos de datos: Análisis demográfico 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)
Resultados del clustering de sesiones de usuario
39 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. Coseno Análisis demográfico Resultados del clustering de sesiones de usuario (cont.)
40
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. – 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.
Contenidos
41 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. Perfiles de usuario
42 Preprocesamiento de la información Método para la identificación de sesiones Técnica de Minería para realizar agrupamiento de sesiones Representación de los perfiles en XML Fuente de información (Ficheros log) Identificación de entradas Identificación de sesiones de usuarios Grupos de sesiones Perfiles de usuario 2 1 3 4 5 6 7 8 Análisis demográfico Modelo para la obtención del perfil de usuario
Preprocesamiento de la información Método para la identificación de sesiones Técnica de Minería para realizar agrupamiento de sesiones Representación de los perfiles en XML Fuente de información (Ficheros log) Identificación de entradas Identificación de sesiones de usuarios Grupos de sesiones Perfiles de usuario 2 1 3 4 5 6 7 8
43 Relativo a los aspectos sociales: rango de edad, nivel educativo, idioma… Ficheros Log Se asocian pesos a las páginas Resultado de una agregación de perfiles asociados a cada sesión Vi: Variables demográficas Li: Variables de identificación Ki: Variables de clickstream z’i: Perfil simple de la sesión 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]. Análisis demográfico
Definición de perfil de usuario
44 Vi: Variables demográficas Li: Variables de identificación z’i: Perfil simple de la sesión Ki: Variables de clickstream Análisis demográfico Modelo de representación en XML del perfil de usuario
45 Vi: Variables demográficas Li: Variables de identificación z’i: Perfil simple de la sesión Ki: Variables de clickstream Análisis demográfico
Ejemplo de perfil de usuario
46 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} Análisis demográfico Obtención del perfil de usuario a partir del clustering difuso
47 < ?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)
48 < ?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)
49 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. Alumno Profesor Metodología
Árbol de decisión. Algoritmo J4.8 (C4.5), (WEKA).
Análisis demográfico Clasificación de los perfiles a partir de las páginas web
50
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. – Modelo de obtención y representación en XML de los perfiles de usuario. – Aplicación para un caso real.
Conclusiones y trabajos futuros.
Contenidos
51 Obtención de patrones de navegación:
Hemos planteado un modelo de obtención de reglas de asociación difusas .
Hemos llevado a cabo un proceso de interpretación semántica aplicando tanto medidas de interés objetivas como medidas de interés subjetivas.
Hemos experimentado sobre un sitio web real.
Conclusiones Conclusiones y Trabajos Futuros
52 Análisis demográfico: Utilizando diversas técnicas del clustering hemos podido establecer una metodología para realizar diferentes agrupaciones de los elementos que participan en un sitio web. Hemos utilizado el clustering jerárquico para la obtención de la partición inicial de los datos y hemos utilizado el coeficiente de partición y la entropía como medidas de validación para las técnicas anteriores. Por último, hemos experimentado sobre un caso real que nos permitió identificar diferentes grupos demográficos de usuarios.
Conclusiones
53 Construcción de perfiles de usuario: Hemos planteado una nueva representación de los perfiles de usuarios en XML
Hemos definido un modelo de obtención de los perfiles de usuarios, basándonos en el análisis demográfico realizado en el clustering difuso de las sesiones de usuarios.
Hemos realizado una clasificación de los perfiles de usuarios a través de las páginas web más representativas.
Conclusiones
54 Extender los resultados obtenidos a otros sitios web hasta desarrollar una herramienta integrada que incluya tanto los procesos de análisis descritos como la actualización dinámica y online de los perfiles de usuario.
Ampliar el estudio de otras agrupaciones, asociaciones y relaciones entre los elementos que participan en el sitio web.
En un futuro, extenderemos el uso de los perfiles de usuario para desarrollar un sistema de recomendación que complete el proceso de personalización aquí iniciado. Trabajos futuros
Página anterior | Volver al principio del trabajo | Página siguiente |