• No se han encontrado resultados

4.2. Adaptación de la plataforma para redes sociales

5.1.1. Funcionalidades del Sistema

Dentro del funcionamiento de un servicio de socialización en línea, una de sus particularidades más relevante es la posibilidad de mantener contacto entre dos usuarios, a través del establecimiento de una relación que caracterice la conexión existente entre dichas entidades. Por lo tanto, se construyó un sistema en donde las tecnologías semánticas son empleadas para enriquecer e inferir las relaciones entre los usuarios de una red social en línea.

Por esta razón, el sistema extrae desde la base de datos de la red social en línea la información del perfil de los usuarios y sus interacciones, los cuales, posteriormente son expresados en términos de las propiedades de las ontologías descritas en el capítulo 3. Como resultado se obtiene el grafo de la red, en donde los datos del perfil de usuario y sus relaciones, están enriquecidas semánticamente. De igual forma, el sistema lleva a cabo una etapa de razonamiento; en ella, el grafo enriquecido de la red, las ontologías y reglas de inferencia, son enlazadas a un razonador a fin de generar un grafo adicional, cuyos triples representan las relaciones inferidas por el sistema. Los grafos obtenidos en ambos procesos, tanto en el enriquecimiento como en las inferencias, son almacenados en la base de conocimiento.

Adicionalmente, en esta propuesta fue adaptada una plataforma de redes sociales en línea, por medio de la creación de un plugin, que implementa funciones adicionales, tales como un servicio de descubrimiento y especificación de diferentes tipos de relaciones, que en su variedad buscan representar algunos escenarios sociales en los que un ser humano actúa. Las inferencias que el usuario acepta desde la plataforma son agregadas al grafo de la red enriquecido; este grafo es la representación de una red social en línea que considera enriquecimiento semántico y la inferencia de las relaciones entre usuarios. El sistema es representado en la Figura 28, y está compuesto de los siguientes módulos.

Obtención y enriquecimiento semántico de los datos de usuario: Este módulo está encargado de mapear los datos de perfil, y relaciones de amistad propios de la plataforma Elgg, para enriquecerlos semánticamente a través de algunos conceptos de las ontologías y transformarlos en un grafo.

Razonamiento sobre el grafo social: La función de éste módulo es realizar el proceso de inferencia sobre los datos del grafo obtenido en el anterior módulo.

18

Inferencia de Relaciones entre Entidades de una Red Social en Línea

Prototipo y Experimentación

69 Este proceso de inferencia, se realiza de acuerdo a las relaciones que el usuario ha agregado en la red, dicha información esta almacenada en una base de datos.  Refinamiento de resultados: Tiene la responsabilidad de verificar los resultados

del proceso de inferencia y compararlos con los grafos almacenados en la base del conocimiento, con el fin de presentar las mejores sugerencias posibles.

SEPlugin: Este plugin integrado a la plataforma Elgg, representa el único medio de interacción de los usuarios con el sistema. Por lo tanto, es el encargado de procesar las peticiones y presentar los datos en las distintas interfaces.

Figura 28. Arquitectura lógica del sistema. (Fuente: propia)

5.1.1.1. Secuencia lógica asociada a la Arquitectura 1) SEPlugin es instalado e inicializado.

2) El archivo [SemanticApplication.jar] de la aplicación semántica es lanzado en el servidor.

Inferencia de Relaciones entre Entidades de una Red Social en Línea 70

3) El MÓDULO DE OBTENCIÓN Y ENRIQUECIMIENTO SEMÁNTICO DE LOS DATOS DE USUARIO inicia la lectura de las tablas de la BD del SNS, que contienen la información de usuario relacionada con Perfiles y Relaciones. Posteriormente, invoca los métodos de Jena para describir esta información en términos de ontologías estándar, produciendo un Grafo Social Básico Enriquecido de la red.

4) El MÓDULO DE ACTUALIZACIÓN Y RAZONAMIENTO SOBRE EL GRAFO SOCIAL en su primera iteración almacena el Grafo Social Básico Enriquecido en el MODELO DE CONOCIMIENTO, a través del MÓDULO DE REFINAMIENTO, como el Grafo Social Enriquecido GSE Estable. Este contiene la información relacionada con los perfiles de usuario de la red y todas sus relaciones. Adicionalmente, el MÓDULO DE ACTUALIZACIÓN Y RAZONAMIENTO SOBRE EL GRAFO SOCIAL ejecuta el Proceso de Inferencia sobre el GSE Estable, teniendo en cuenta la información de las reglas que se deben ejecutar según el tipo de relación que se requiera; esta información se encuentra en la base de datos Control DB. Siguiente, procede a cargar las Reglas de Inferencia y Ontologías a ser aplicadas, dando como resultado un modelo llamado Modelo de Inferencia. A este modelo son aplicados procesos de depuración con el propósito de apartar información extra, resultado del Proceso de Inferencia. El modelo final es almacenado en el MODELO DE CONOCIMIENTO a través del MÓDULO DE REFINAMIENTO como el GSE Inferido.

Nota: Después de la primera iteración, el GSE Estable producido por el MÓDULO DE OBTENCIÓN Y ENRIQUECIMIENTO SEMÁNTICO DE LOS DATOS DE USUARIO es comparado con el GSE Estable almacenado en la última iteración antes de almacenarse en el MODELO DE CONOCIMIENTO, con el fin buscar actualizaciones de los datos de perfil de usuario

5) El MÓDULO DE REFINAMIENTO se encarga de almacenar y consultar los Grafos Sociales Enriquecidos (GSE) en el MODELO DE CONOCIMIENTO, El GSE Estable que contiene la información coherente y estable de la red y el GSE Inferido, que contiene las inferencias que se obtienen a partir del Proceso de Inferencia en el MÓDULO DE ACTUALIZACIÓN Y RAZONAMIENTO SOBRE EL GRAFO SOCIAL.

6) El PLUGIN lee la información del MODELO DE CONOCIMIENTO y la publica en el SNS, presentando información semántica de perfil, relaciones al usuario e inferencias (si hay disponibles).

Esta interfaz brinda las siguientes opciones al usuario:

7) Agregar Relaciones: Permite agregar nuevos tipos de relaciones almacenándolas

en el MODELO DE CONOCIMIENTO como parte del GSE Estable. Lee el GSE Inferido para brindar nuevas sugerencias de relaciones y tipos al usuario, dando la opción de Aceptar o Rechazar.

Inferencia de Relaciones entre Entidades de una Red Social en Línea

Prototipo y Experimentación

71 a) Cuando rechaza las relaciones sugeridas, estas se almacenan en MODELO DE CONOCIMIENTO como parte del modelo GSE Descartado y remueve estas relaciones del GSE Inferido para que no sean presentadas nuevamente.

b) Cuando acepta las relaciones inferidas, estas son incorporadas en el GSE Estable y posteriormente eliminadas del GSE Inferido, con el propósito de que estas relaciones no sean presentadas de nuevo al usuario. Al mismo tiempo, se envía una notificación de relación por medio del SNS para que el usuario destino esté al tanto de esta modificación y se mantenga información coherente tanto en el SNS como en el MODELO DE CONOCIMIENTO. Por último, es modificada la base de datos Control DB para indicar qué tipo de relación se especificó, activando las reglas de inferencia para ésta.

8) Editar Relaciones: Permite al usuario visualizar las relaciones semánticas que han

sido establecidas por el y eliminarlas, al mismo tiempo permite visualizar otras relaciones semánticas que lo involucran, dándole la opción de eliminarlas.

9) Información Semántica: Brinda la toda la información de usuario presente

MODELO DE CONOCIMIENTO, También permite modificar o adicionar información de perfil, para luego ser incorpora en el GSE Estable dando espacio al enriquecimiento del MODELO DE CONOCIMIENTO.

10) El proceso es ejecutado nuevamente desde el paso 3, con el propósito de capturar cambios adicionales sean establecidos en el SNS y adicionarlos al MODELO DE CONOCIMIENTO.