2. Etapas de procesamiento
2.1 Preprocesamiento
El preprocesamiento consiste en convertir la información de uso, contenido y estructura obtenida de varias fuentes de datos disponibles en las abstracciones de datos necesarias para el descubrimiento de patrones.Se divide en 3 etapas.
Preprocesamiento de uso
El preprocesamiento de uso podría decirse que es la tarea más compleja en el proceso de Minería de Uso Web debido a que los datos disponibles suelen estar incompletos. A menos que se utilice un mecanismo de seguimiento de cliente, sólo está disponible la dirección IP y el agente utilizado están disponibles para identificar usuarios y sesiones de servidor.
Muchas de los problemas encontrados son:
- Única dirección IP / Múltiples sesiones de servidor Por lo general los Internet Service Providers (ISPs) tienen un grupo de servidores proxy mediante el cual pueden acceder los usuarios. Un servidor proxy puede tener muchos usuarios accediendo a una Web en el mismo periodo.
- Múltiples direcciones IP / Una sesión única de servidor.Algunos ISPs o herramientas de privacidad aleatoria, asignan cada solicitud de un usuario a un grupo de direcciones IP. En este caso una única sesión de servidor puede tener múltiples direcciones IP.
- Múltiples direcciones IP / Usuario único: Un usuario que accede a la web desde diferentes máquinas puede tener diferentes IPs para cada sesión. Esto hace que el seguimiento de visitas cuente a ese usuario único como más de una visita.
- múltiples Agentes / Usuario único: También, un usuario que usa más de un navegador, incluso en la misma máquina, puede aparecer como múltiples usuarios.
Asumiendo que cada usuario ha sido identificado ( a través de cookies, logins o análisis de agentes o IP ), el click-stream(término para referirse al rastro de los clicks que realiza un usuario en una web) para cada usuario debe ser dividido en sesiones. El mayor inconveniente de realizar esta tarea es gestionar cuando un usuario abandona la web. Para resolver este problema podremos utilizar los log del servidor (donde se almacena la información sobre qué contenido se está mostrando en cada momento) o utilizando variables de estado para cada sesión activa (donde se almacena la información necesaria para determinar qué contenido ha sido visto por el usuario).
Preprocesamiento de contenido
El preprocesamiento de contenido consiste en convertir el texto, las imágenes y otros ficheros multimedia en estructuras que sean útiles para el proceso de Minería de Uso de la Web. Para ellos utilizamos métodos de clasificación o clustering que nos permiten organizar la información y ser usada para filtrar información en la entrada o en la salida de los algoritmos de descubrimiento de patrones. Por ejemplo, los resultados de un algoritmo de clasificación pueden utilizarse para limitar los patrones en los contenidos de páginas vistas sobre un cierto tema o clase de productos. Además podemos clasificar o hacer cluster de páginas vistas basados no solo en temas sino también en intención de uso, ya que esta clasificación nos puede transmitir información, recopilar información del usuario, permitir la navegación, o algunas combinaciones de estos usos.
Por supuesto, antes de analizar toda esta información es necesario convertirla en un formato cuantificable como los espacios vectoriales. Por ejemplo, podemos tratar un caso muy corriente para entender este proceso mejor. Los ficheros de texto se pueden romper en vectores de palabras y aplicar sobre ello los cálculos necesarios y en el caso de las gráficas nos podemos quedar con la descripción para valorar su contenido.
El mayor problema los tendremos en las páginas web. Por una parte tenemos aquellas que son estáticas y se pueden preprocesar fácilmente por el análisis de HTML sin un coste muy alto. El inconveniente más grande es en los servidores de contenido dinámicos, donde se emplean técnicas de personalización y/o se consultan a las bases de datos para construir las diferentes vistas de una página. Entonces, en una sesión solo podremos acceder a una determinada fracción de información. En estos casos el vector espacial tendrá que almacenar más información ya que el contenido de cada página debe estar reunido a una solicitud HTTP de un rastreador, o una combinación de plantillas, script y acceso a bases de datos para procesarla. Si solo se accede a una parte del servidor para ser preprocesadas, la salida de cualquier algoritmo de clustering o clasificación puede ser parcial.
2.2 Preprocesamiento de Estructura
La estructura de un sitio es creada por los enlaces de hipertexto entre las páginas visitadas. La estructura puede ser obtenida y preprocesada de la misma manera que el contenido de un sitio. Otra vez, el contenido dinámico (además de los enlaces) plantean más problemas que las páginas estáticas. Para cada sesión de usuario tiene que crear una estructura de sitio diferente.
2.3 Interferencia de patrones (pattern discovery)
El descubrimiento de patrones se basa en métodos y algoritmos desarrollados desde muchos campos como estadísticas, minería de datos, aprendizaje automático y reconocimiento de patrones aplicado a la minería Web. Pero claro, los métodos desarrollados en otros campos los deberemos transformar para aplicarlos correctamente en nuestros campo de estudio. Por ejemplo, en el descubrimiento de reglas de asociación, la noción de una transacción para el análisis de mercado no debe estar en consideración del orden en que los objetos son seleccionados. Sin embargo, en la minería de uso de la web, una sesión de servidor es una secuencia ordenada de solicitudes de páginas por un usuario.
2.4 Análisis estadístico
Este proceso es el método más común para extraer base del conocimiento sobre los visitantes de una Web. Analizando los ficheros de sesiones, uno puede realizar diferentes tipos de análisis estadísticos descriptivos (frecuencia, significado, medio...) en variables como páginas visitadas, duración de la visita y ruta de navegación. Estos análisis además pueden incluir todos los errores de bajo nivel limitados detectando puntos de entrada no autorizados o encontrando URIs no válidas. Además en la profundidad de estos análisis, este tipo de bases de conocimiento pueden ser potencialmente útiles para mejorar la ejecución de los sistemas, aumentar la seguridad de los sistemas, facilitar las tareas de modificación del sitio y proveyendo soporte para decisiones de marketing.
2.5 Reglas de asociación
La generación de reglas de asociación puede ser utilizada para relacionar páginas que son más referenciadas juntas a menudo en una sesión única de servidor . Si aplicamos estas reglas en el contexto de la minería de Uso de la Web, podremos obtener información acerca de aquellas web que son accedidas juntas con un valor de apoyo superior a un umbral especificado.
Sus beneficios son muy conocidos en las empresas y aplicaciones de marketing, pero la presencia de estas reglas puede ayudar a diseñadores Web a reestructurar su sitio Web. Las reglas de asociación pueden también servir como métodos heurísticos para documentos en calidad de reducir la latencia por usuario cuando cargan una página desde un sitio remoto.
2.6 Clustering
Clustering es una técnica que agrupa juntos un conjunto de objetos que tienen características similares. En el dominio del Uso Web, hay dos tipos de clusters interesantes:
- clusters de usoSu finalidad es crear grupos de usuarios que exhiben patrones de navegación similares. Es útil para realizar estudios de mercado.
- cluster de páginasSu finalidad es crear grupos de páginas que exhiben patrones de contenidos similares. Es útil para buscadores web.
Clasificación
La clasificación es la tarea de mapear un objeto que contiene información en una de las clases predefinidas. Si aplicamos el concepto en la Web, nos interesará generar una clase usuario que nos permita diferencia entre diferentes objetos para analizar comportamientos. La clasificación puede ser hecha usando algoritmos de aprendizaje inductivos supervisados como clasificación de árboles de decisión, etc.
Patrones secuenciales
La técnicas de descubrimiento de patrones secuenciales intenta encontrar similitudes de diferente sesiones, creando conjuntos de usuarios que siguen el mismo conjunto de objetos en un tiempo ordenado. Usando este enfoque, los mercados Web muestran anuncios apuntando a ciertos grupos de usuario. Otros tipos de análisis temporales que pueden ser ejecutados en patrones de secuencia incluyen análisis de tendencias, detecciones de puntos de cambio o análisis similares.
Dependencia de modelado
Modelar dependencia es otra tarea de descubrimiento de patrones en la Minería Web. El objetivo es desarrollar un modelo capaz de representar dependencias significativas entre las variables de un dominio Web. Como ejemplo, uno puede estar interesado en construir un modelo representando los estados diferentes de un usuario mientras compra en una tienda online analizando cada uno de los pasos que realiza para gestionar una compra. Hay muchas técnicas de aprendizaje que pueden ser empleadas para modelar la navegación de los usuarios como los Modelos Markov Hidden(es un modelo estadístico en el que se asume que el sistema a modelar es un proceso de Márkov de parámetros desconocidos) y Redes Belief Bayesian(es un modelo de grafo probabilístico (un tipo de modelo estático) que representa un conjunto de variables aleatorias y sus dependencias condicionales a través de un grafo acíclico dirigido (DAG por sus siglas en inglés)) muy conocidos en el campo. Modelando los patrones de uso web no solamente proveerán un framework teórico para analizar el comportamiento de los usuarios y poder predecir las tendencia de la web en un futuro, sino que también se podrá desarrollar estrategias para incrementar las ventas de productos ofertados por el sitio Web o mejorar la navegación a conveniencia de los usuarios.
2.7 Análisis de patrones
El análisis de patrones es el último paso en el proceso de minería de uso de la web y su finalidad es filtrar reglas que no son interesantes o patrones de un conjunto obtenido en la fase de descubrimiento de patrones. La metodología de análisis está usualmente dirigida por la aplicación que realiza el proceso de minería web. La forma más común del análisis de patrones consiste en un mecanismo de consultas a una base de conocimiento como por ejemplo SQL. Otro método es cargar los datos de uso en un cubo de datos en orden de ejecutar operaciones OLAP(es el acrónimo en inglés de procesamiento analítico en línea (On-Line Analytical Processing). Es una solución utilizada en el campo de la llamada Inteligencia de negocios (o Business Intelligence) cuyo objetivo es agilizar la consulta de grandes cantidades de datos. Para ello utiliza estructuras multidimensionales (o Cubos OLAP) que contienen datos resumidos de grandes Bases de datos o Sistemas Transaccionales (OLTP). Se usa en informes de negocios de ventas, marketing, informes de dirección, minería de datos y áreas similares.).
2.8 Algunas herramientas existentes
Existen múltiples herramientas para analizar los ficheros de registro de acceso, para extraer estadísticas, realizar informes (en html y texto) e incluso hacer gráficos. Entre ellas podemos mencionar algunos conocidos como Webtrends, Getstats, Analog, Microsoft Intersé Market Focus, entre otros.
Respecto a los generadores de estadísticas de acceso podemos mencionar el 3DstatS, M5 Analyzer, Web Log Explorer, eWebLog Analyzer. Por último debemos mencionar el Web Mining Log Sessionizator XPert, es una herramienta de procesamiento y análisis, que permite la generación de reglas para comprender el comportamiento de los visitantes de un sitio Web.