La web semántica ¿Por qué? I

Deja un comentario

Aunque no nos demos cuenta, la manera en la que usamos nuestro lenguaje es impresionante. Nosotros no tenemos ningún problema (lingüístico) con preguntarle a algún desconocido cómo encontrar el cajero más próximo. De la misma manera podemos tener alguna idea y gracias al poder del lenguaje natural la podemos compartir, al igual que el conocimiento adquirido a través de la experiencia. No sólo eso, también podemos adquirir conocimiento a partir de las experiencias de otros, incluso de personas que dejaron esos conocimientos plasmados en libros escritos muchos años de que naciéramos. Si no fuera por el lenguaje natural, el lenguaje humano, todos nuestros conocimientos serían difíciles de transmitir y administrar.

Por ejemplo si digo:

  • El árbol cayó de la casa.
  • La casa cayó de el árbol.

La reacción que provoca cada una de las oraciones es diferente. La diferencia reside en el orden en el que se encuentra cada una de las cláusulas, porque las palabras son las mismas, las mismas letras y los mismos sonidos. Lo único que varía es lo que está antes y después de “cayó de”. Por la experiencia que hemos adquirido con el tiempo, sabemos que “cayó” es la palabra que usamos para representar que una entidad, que entendemos con características más materiales, realiza un desplazamiento en un sentido específico (arriba hacia abajo), en un tiempo anterior al momento de la locución. Además agregamos la palabra “de” que nos indica un desprendimiento del objeto de otro que normalmente imaginamos de mayor tamaño. También hemos aprendido que árbol y casa son entidades más materiales y más grandes, por lo que parece anómalo que un árbol caiga de una casa o lo inverso. Pero también tenemos conocimiento del mundo que nos ha enseñado que se pueden construir casas en los árboles así como existen árboles dentro de casas.

El párrafo anterior es un ejemplo de la complejidad que se puede encontrar en una expresión pequeña y sintácticamente simple. Y gracias a ese conocimiento podemos contestar preguntas de mayor complejidad como: “¿Qué estaba arriba de qué?” o “La acción que se describe en el ejemplo, ¿ocurre en el futuro?”.

Por esto podemos decir, sin que sea una definición absoluta, que la semántica es el proceso por el cuál comunicamos información suficiente para que resulte en una acción. Por esta misma razón se puede usar la semántica para representar, combinar y compartir conocimiento entre grupos de máquinas y se pueden crear sistemas computacionales que puedan reaccionar ante tal conocimiento.

La mayoría de los programadores han usado la semántica, por ejemplo cuando le asignan un valor específico a una variable. En los lenguajes que fuerzan la declaración semántica de la variable, la semántica es explícita. Esto permite que otros programas pueden usar los datos arrojados por este programa.

Esa es la importancia de la semántica en los sistemas de cómputo, en el siguiente post hablaremos sobre como ocurren estas transacciones de información en la web.

La web semántica ¿Qué es?

Deja un comentario

Logo SW

No es tan sencillo dar una definición de la web semántica, pues ha sido definida de múltiples formas a través del tiempo. Sin embargo algo que se repite constantemente es que es una extensión de la web actual (la WWW o World Wide Web). Esta extensión utiliza la información existente y relaciona los datos entre ellos.

Es decir, en la web semántica podemos seguir encontrando la información que encontramos ahora, hecha principalmente por humanos y dirigida para humanos, pero con la extensión añadida las computadoras podrían saber que tipo de datos son los que se están transmitiendo y podrían comunicarlo a otras computadoras.

Podríamos sugerir que la web semántica es una extensión que envuelve a la WWW donde se define la información y los servicios en la web. Esto hace posible que la misma web entienda y satisfaga las necesidades de las personas y las máquinas para usar el contenido de la web.

Imagen multimediaPor ejemplo, en la web actual yo puedo ver mis fotos, puedo ver mi agenda, encontrar información sobre alguna conferencia en la web semántica, pero ¿qué pasa si le digo al motor de búsqueda tradicional que estoy interesado en encontrar una conferencia sobre web semántica próxima al lugar donde tome las fotos en la fecha X y que además esté (yo) disponible en las fechas de la conferencia?

Bueno, esto ya es muy complejo pero no tendría por que serlo tanto, ¿no? Si de todas formas ya he subido gran parte de mi información en la red y la actualizo cada vez que me conecto, se podrían conectar los datos que contienen la información que busco para que fuera más fácil encontrar la información específica.

De momento esto no es posible porque las aplicaciones para ver mis fotos, buscar en la web, organizar mi agenda, administrar mi dinero, etc. son todas diferentes. Algunas grandes empresas que ofrecen todos estos servicios en línea (por ejemplo Google) se han dado cuenta que es una buena idea relacionar todos estos datos para incrementar su ganancia, y es lo que hará con la nueva política de privacidad.

La web semántica trata de ligar datos más allá de una sola empresa. Y no solo eso, a diferencia de la WWW que fue orientada principalmente para el intercambio de textos, esta nueva web pretende obtener los datos de diferentes fuentes de información: Videos, fotos, audio, texto, etc. con el fin de integrarlos y combinarlos.

concepto LinkedDataLa idea es que los datos tengan sentido entre ellos para poder facilitar diferentes tareas entre diferentes computadoras o diferentes dispositivos. Es decir, se espera que cuando el usuario use un equipo de cómputo, este pueda comunicarse con él y con los otros equipos del mundo, de tal forma en la que ambos entiendan la información que se está transmitiendo.

Para que quede un poco más claro aquí dejo un video (en inglés) que expande y muestra más ejemplos de lo que he dicho hasta ahora:

Extracción de Información II

Deja un comentario

En la entrada anterior había explicado qué era la extracción de información y como se iniciaba el proceso para extraer información de un texto completamente sin estructura y uno semi estructurado.

Había usado el ejemplo de extracción de nombres de personas en una nota periodística que, por cierto, es una operación común y requerida por diversos medios de comunicación y otros sistemas relacionados con las tecnologías del lenguaje. El proceso había llegado a detectar y extraer de manera exitosa los nombres.

Una vez extraídos estos nombres se colocan en una plantilla donde existe una lugar específico para nombres. Esta plantilla debe contener todos los campos requeridos para el proceso de extracción de información. Es decir, si además de los nombres me interesa extraer fechas y lugares de esas notas periodísticas, mi plantilla debe contener un campo específico para nombres de lugares y fechas encontradas. De esta manera puedo estructurar la información existente dentro de los documentos analizados.

Arquitectura de E de I

La plantilla con los campos

El diseño de esta plantilla tampoco puede ser un proceso trivial. Se requiere de una decisión específica sobre el tipo de información que se requiere extraer en determinados documentos. La evaluación del éxito o fracaso del sistema de extracción de información depende en gran medida del diseño de la plantilla que debe llenarse. Estas plantillas deben representar la necesidad de información. Es decir deben contener todos los campos que sean de interés, pero sólo los campos que sean de interés. En otras palabras, una plantilla con menos campos de los requeridos dará como resultado una extracción de información que será insuficiente, mientras que una plantilla con más campos de los necesarios tendrá como resultado datos cuya extracción resulta costosa e inútil.

Como puede intuirse, los campos representados en esta plantilla son los que se utilizarán para poblar una base de datos tradicional, de esta manera la información queda estructurada para facilitar su utilización por otros sistemas.

Aplicaciones

Los sistemas que utilicen esta información pueden ser de diferente índole. Por ejemplo, los sistemas de resumen automático pueden utilizar la información para el entendimiento del texto la generación de resumen, los sistemas de pregunta-respuesta pueden usar la información estructurada para devolver una respuesta precisa a una pregunta determinada, los sistemas de traducción automática pueden usar esta información para decidir como traducir determinados fragmentos textuales o incluso no traducir nombres de personas, empresas etc.

Metadatos

Los campos de esta plantilla están otorgando información sobre el tipo de dato que contienen, si esta información se hace explícita forman metadatos. Algo muy interesante de estos, es que también pueden interpretarse como datos que contienen información muy especial y que será de mucha utilidad al momento de desarrollar motores de búsqueda semánticos. Esta información es la que se podría denominar información semántica en el campo de la búsqueda, recuperación y extracción de información.

La llamamos semántica porque contiene el significado específico de nuestros datos, nos define que un nombre siempre será una cadena de caracteres, e incluso se pude pensar que está en representación de una entidad anclada en el mundo real. También podemos saber que una fecha es una entidad de representación de tiempo y que en diferentes lenguas o culturas tiene diferentes formas de expresarse.

Conocer la semántica de nuestros datos permite recuperar mayor cantidad de información relevante con mayor exactitud.