Las APIs más usadas en ‘machine learning’ al margen de Google, IBM o Amazon

4 min lectura
Desarrollo / 14 abril 2016
Las APIs más usadas en ‘machine learning’ al margen de Google, IBM o Amazon
Las APIs más usadas en ‘machine learning’ al margen de Google, IBM o Amazon

BBVA API Market

En BBVAOpen4U ya hemos visto en más de una ocasión la importancia del aprendizaje automático para el desarrollo de negocio de las empresas y el enorme impacto en la comunidad de las grandes tecnológicas como Google, IBM, Amazon o Microsoft. Pero no son los únicos jugadores en el mercado de la creación de modelos predictivos o el procesamiento de lenguaje natural. Algunos pelean, con éxito, para abrirse hueco en este campo de alta competencia y también mucho futuro.

PredictionIO, AT&T Speech, Wit.ai o Diffbot son cuatro ejemplos prácticos de que se puede nacer y crecer solo dentro del machine learning y el procesamiento de lenguaje natural, aunque eso te lleve luego a aceptar ofertas de integración con grandes compañías. El éxito de estos proyectos tiene en las APIs (interfaces de desarrollo de aplicaciones) su razón de ser. Sin ellas sería imposible hacer negocio.

PredictionIO

PredictionIO es un servidor de machine learning de código abierto que permite a los equipos de desarrollo y ciencia de datos crear motores de predicción totalmente escalables, condición importante cuando se trabaja con datos en tiempo real. Algunas de las características más interesantes de PredictionIO:

Simplificación de la gestión de la infraestructura de datos.

Soporte para bibliotecas de aprendizaje automático y procesamiento de datos tan conocidas como Spark MLlib (la herramienta de Apache Spark, la plataforma de computación distribuida opensource, que contiene algoritmos para regresión logística, máquinas de vectores de soporte (SVM), modelos de árbol de regresión bayesianas, técnicas de mínimos cuadrados, análisis de conglomerados de K medias…) o OpenNLP (biblioteca de machine learning basada en procesamiento de lenguaje natural).

Incorporar modelos predictivos propios al motor de PredictionIO.

Respuesta a consultas dinámicas en tiempo real.

Unificación de los datos de distintas plataformas, tanto en lotes como en fuentes en tiempo real, para hacer análisis predictivo totalmente integral.

PredictionIO dispone de varios SDKs para lenguajes como Java, Ruby, Python o PHP. La herramienta está basada fundamentalmente en tres componentes:

Plataforma de PredictionIO: una pila de desarrollo de código abierto donde los clientes pueden construir, evaluar e implementar motores con algoritmos de aprendizaje automático de forma sencilla y escalable.

Servidor de eventos: esta herramienta de PredictionIO permite que las aplicaciones puedan enviar eventos al servidor a través de una API.

Galería de plantillas: no es necesario descargar las plantillas de los diferentes motores en función de cada aplicación de machine learning.

AT&T Speech

Las APIs de AT&T Speech permiten a los desarrolladores incluir funcionalidades de reconocimiento de voz tanto en aplicaciones web como en aplicaciones móviles.  Dispone de tres interfaces de programación de aplicaciones que transforman la voz en texto y el texto en voz de forma general o personalizada.

La API de voz a texto: solo acepta formatos de audio de un canal, usa un diccionario de gramática para hacer transcripciones tanto en inglés como en español y un sistema de contextualización para aumentar la precisión. La API transcribe discursos de voz por lotes de cuatro minutos. Para obtener la transcripción completa habría que unir los distintos lotes a posteriori.

La API de voz a texto personalizado: en este caso, la interfaz hace transcripciones a partir de los términos (gramática y sugerencias) de una base de datos que genera el propio desarrollador. Se busca mayor precisión.

La API de texto a voz: acepta texto plano o en formato XML con un límite máximo de 500 bytes (equivale a textos de unas 100 palabras), y soporta voces tanto masculinas como femeninas en dos idiomas, inglés y español. 

Aquí se puede hacer la descarga de los distintos SDKs

Wit.ai

Wit.ai es una plataforma de procesamiento de lenguaje natural para desarrolladores. Concretamente una comunidad formada ya por más de 20.000 profesionales. ¿Para qué utilizan ellos Wit.ai? Pues para introducir funcionalidades en aplicaciones web y móviles en campos como la robótica, los servicios de mensajería o los wearables. La API de Wit.ai tiene la capacidad de aprender del lenguaje humano por si misma con cada interacción.

Algunas de sus características más importantes:

Wit.ai es totalmente libre, incluso para su uso comercial. Las aplicaciones de la plataforma son abiertas porque, según sus creadores, “solo se usan aplicaciones privadas cuando existen restricciones de privacidad”. “La aplicación abierta es capaz de usar los datos proporcionados por la comunidad para ser aún más inteligente”.

Cada usuario o desarrollador que use Wit.ai es dueño de sus datos, pero debe ser consciente que se utilizarán para mejorar la plataforma.

● En estos momentos ya soporta numerosos lenguajes: inglés, español, francés, alemán, italiano, holandés, polaco, sueco, portugués o ruso.

Wit.ai dispone de tutoriales para sistemas operativos móviles como iOS, Android y Windows Phone; para todos los navegadores web; y lenguajes de programación como Python, Ruby, C o Rust.

Para probar las bondades de la plataforma, Wit.ai tiene una aplicación web que, con acceso al micrófono, es posible jugar con sus funcionalidades.

Diffbot

Diffbot es una plataforma que utiliza la inteligencia artificial (una combinación de machine learning y reconocimiento de lenguaje natural) para extraer, de forma automática, datos de páginas web como texto, fotos, vídeos o comentarios. Es por tanto una herramienta que permite escrapear todo lo rescatable de una web. Todo eso es posible gracias al repertorio de APIs que proporciona la plataforma. Hay que tener en cuenta que Diffbot no es una herramienta de código abierto.

Algunas de las funcionalidades más interesares de Diffbot para sus clientes son:

Las APIs de Diffbot se ejecutan en JavaScript.

Funciona en páginas web en inglés o en otros idiomas.

Etiquetado automático de la información escrapeada.

Extracción de datos en formatos JSON o CSV. Bulk API permite a los desarrolladores escrapear cientos de páginas web de forma simultánea.

Bibliotecas en PHP, Python, JavaScript, Objective-C o Perl.

Más información sobre APIs aquí.

Síguenos en @BBVAAPIMarket

También podría interesarte