Usamos cookies. Tienes opciones. Las cookies nos ayudan a mantener el sitio funcionando sin problemas e informar sobre nuestra publicidad, pero si deseas realizar ajustes, puedes visitar nuestro Aviso de cookies para más información.
Utilizamos cookies propias y de terceros para analizar su actividad en el sitio web con el objetivo de enviarle publicidad personalizada y mejorar el funcionamiento de la web. Puedes aceptar todas las cookies pulsando el botón “ACEPTAR” o seleccionarlas en función de su funcionalidad pulsando el botón “AJUSTES”.
×

Google Prediction API: Machine Learning a tu alcance

“Hacer predicciones es muy difícil, especialmente cuando se trata del futuro”

Corría mediados del siglo XX cuando el físico danés Niels Bohr hacía esta afirmación acerca de las predicciones. Y es que adelantarse a los acontecimientos es una obsesión que se remonta a tiempos muy lejanos.
Hoy, la situación con respecto a esta “obsesión” no ha cambiado, pero si se han desarrollado métodos que, si bien no predicen el futuro con un 100% de efectividad, ayudan a disminuir la incertidumbre en gran medida.
Google ha puesto a nuestro alcance una serie de herramientas basadas en aprendizaje automático que facilitan el análisis de datos. A este conjunto de herramientas lo ha llamado “Prediction API”.

Google Prediction API

Fuente: Web huffingtonpost

 

¿Qué se requiere para poder utilizar Google Prediction API?

Se debe tener una cuenta de Google y crear un proyecto en Google Cloud Platform Console teniendo activados Google Prediction API y Google Cloud Storage API.
Google Cloud Platform no es gratuito pero dispone de una versión de prueba de 60 días, tiempo suficiente para valorar si nos merece la pena adquirir la versión de pago.

Pero…¿qué nos permite hacer Google Prediction API?

La respuesta es bastante amplia puesto que con la API de predicción de Google se puede hacer prácticamente cualquier cosa relacionada con el análisis de datos. Desde un sistema de recomendación, hasta análisis de sentimientos, pasando por la detección de spam.

Los pasos que se han de seguir para utilizar Prediction API son los siguientes:

Crear los datos de entrenamiento: en función de la utilidad que le queramos dar al modelo de predicción debemos crear un conjunto de datos apropiado.
El formato que admite la API es separado mediante comas, con lo cual el conjunto de datos debe tener el siguiente aspecto:
“etiqueta”,”texto etiquetado”

Supongamos que queremos detectar si los comentarios enviados a nuestra web son comentarios reales o son spam. Los datos que se deberían utilizar para entrenar al modelo deberían seguir el siguiente formato:

“spam”,”esto es un comentario spam”
“no spam”,”esto es un comentario real”

Subir los datos de entrenamiento a Google Cloud Storage:
1. En la consola de Google Cloud Platform ir a Cloud Storage
2. Click en Crear Bucket
3. Dentro del bucket creado, subir el archivo con los datos de entrenamiento

Entrenar la API con los datos:
Para entrenar el clasificador:
1. Activar OAuth 2.0
2. Seleccionar el método de entrenamiento trainedmodels.insert

A continuación, será necesario insertar el ID de nuestro proyecto y, en request body, habrá que rellenar dos parámetros: el “id” que será el nombre que nosotros queramos darle a nuestro modelo y que se utilizará tanto para entrenar como para hacer consultas al modelo y “storageDataLocation” donde le indicaremos la ubicación del fichero con los datos de entrenamiento siguiendo el siguiente formato BUCKET_NAME/file.

El aspecto de la petición debe ser el siguiente:

 

Training model

Después daremos click en “Execute” y el modelo comenzará a entrenarse. Es importante comprobar el estado del entrenamiento para ver si ha terminado. Para ello, disponemos del método trainedmodels.get. Este método devolverá la siguiente información:

 

Training 2

 

Click en la imagen para ver a tamaño completo

 

Dónde “trainingStatus” tendrá el valor “RUNNING” si el entrenamiento aún está en proceso o “DONE” si el entrenamiento ha terminado.

Lanzar la consulta al modelo: una vez que el entrenamiento ha acabado, nuestro modelo ya está preparado para empezar a predecir. En este caso nosotros le preguntaremos al modelo si un comentario es spam o no y el modelo nos devolverá su predicción. Si el modelo recibe como entrada el texto “esto es un comentario spam” se obtendrá como resultado “spam”.
Para enviar la consulta se han de seguir los siguientes pasos:

1. Seleccionar el método trainedmodels.predict
2. Identificar el proyecto asociado al modelo predictivo
3. Indicar el ID del modelo predictivo que hemos creado mediante el método trainedmodels.insert

Con lo cual la consulta debe quedar de la siguiente manera:

Training 3

 

Al ejecutar este método la respuesta que se obtiene es la siguiente:

Training 4

La clave con la puntuación más alta (en este caso “spam”) está disponible en outputLabel y es el valor que el modelo ha predicho con respecto al texto de entrada “esto es un comentario spam”.

Como se puede ver, Google Prediction API facilita de forma notable una tarea tan dificultosa como es la de extraer información a través de los datos. Esto pone en jaque a los expertos en machine learning ya que no se necesitan amplios conocimientos para hacer uso de la herramienta.

Veamos cómo evoluciona Google Prediction API pero todo apunta a que tendrá un alto grado de aceptación entre los analistas de datos, vosotros ¿qué pensáis?

 

En nuestra compañía