Los aspirantes a Watson: 4 proyectos de código abierto para inteligencia artificial

Durante el último año, como parte de los nuevos servicios empresariales que IBM ha estado impulsando en su reinvención, Watson se ha convertido menos en un truco ganador de "Jeopardy" y más en una herramienta. También sigue siendo creación propiedad de IBM.

¿Cuáles son las posibilidades, entonces, de crear un sistema de aprendizaje automático en lenguaje natural del orden de Watson, aunque con componentes de código abierto? Hasta cierto punto, esto ya ha sucedido, en parte porque Watson mismo se construyó sobre el trabajo de código abierto existente y otros han estado desarrollando sistemas similares en paralelo a Watson. Aquí hay un vistazo a cuatro de estos proyectos.

DARPA DeepDive

La marca más grande del grupo, el proyecto DeepDive de DARPA no pretende emular el sistema de consultas en lenguaje sencillo de Watson, sino la capacidad de Watson para mejorar su toma de decisiones con el tiempo con la guía humana.

Desarrollado principalmente por Christopher Re, profesor de la Universidad de Wisconsin, el proyecto es de código abierto (Apache 2.0). Según EE Times, el objetivo principal de DeepDive es crear un sistema automatizado para clasificar datos no estructurados, en un caso de ejemplo, categorizar artículos en revistas técnicas. Aquellos que planean utilizar DeepDive deben estar familiarizados con SQL y Python, pero el sistema ya es capaz de extraer datos de una amplia variedad de fuentes convencionales, como páginas web o documentos PDF.

Apache UIMA

La gestión de información no estructurada (UIMA) es un estándar para realizar análisis de contenido textual. Watson usó una implementación de UIMA, pero no tiene que pasar por Watson para usar UIMA. De hecho, la arquitectura UIMA de IBM era de código abierto y la Fundación Apache la mantiene. Cuenta con soporte para múltiples lenguajes de programación, con actualizaciones agregadas periódicamente (más recientemente en octubre de 2014).

Apache UIMA, tal como está, está muy lejos de ser una solución completa de aprendizaje automático; es solo una parte, aunque importante, del todo que IBM creó. Si no desea utilizar lo básico, puede elegir uno de sus proyectos derivados, como YodaQA, que aprovecha UIMA para su procesamiento y utiliza Wikipedia como fuente de datos principal.

OpenCog

OpenCog "tiene como objetivo proporcionar a los científicos de investigación y desarrolladores de software una plataforma común para crear y compartir programas de inteligencia artificial". De código abierto bajo la licencia GNU Affero, la ambición del proyecto es alimentar nada menos que lo que sus creadores llaman sistemas "generalmente inteligentes", inteligencia artificial que tiene una comprensión amplia y humana del mundo en lugar de especialidades centradas en el dominio (como ser muy bueno en el ajedrez pero nada más).

Los creadores de OpenCog afirman que su marco ya está en uso en "aplicaciones de lenguaje natural, tanto para investigación como para corporaciones comerciales". Eso lo aleja un poco más de los conceptos de IA de pie en el cielo y se acerca al dominio práctico de preguntas y respuestas que habita Watson.

OAQA (Avance abierto de sistemas de respuesta a preguntas)

Como su nombre podría implicar, la misión de OAQA es "un avance abierto en la ingeniería de sistemas de respuesta a preguntas: sistemas de software de lenguaje que brindan respuestas directas a preguntas planteadas en lenguaje natural". ¿Suena como uno de los objetivos de Watson? Sí, especialmente desde que IBM y la Universidad Carnegie Mellon iniciaron conjuntamente la OAQA. Al igual que Apache UIMA, OAQA implementa el marco UIMA, pero no lo considere una solución lista para usar; es un juego de herramientas.

El principal inconveniente de cada proyecto, como puede adivinar, es que no se ofrecen en un paquete tan refinado o pulido como Watson. Mientras que Watson está diseñado para usarse inmediatamente en un contexto empresarial, estos son conjuntos de herramientas en bruto que requieren un trabajo pesado.

Además, los servicios de Watson ya han sido entrenados previamente con un cuerpo curado de datos del mundo real. Con estos sistemas, tendrá que proporcionar las fuentes de datos, lo que puede resultar un proyecto mucho más grande que la programación en sí.