Quantcast
Channel: BEEVA Labs » machine learning
Viewing all articles
Browse latest Browse all 14

Etiquetado automático de imágenes: Cloud Vision API vs Caffe

$
0
0

Hace aproximadamente un mes Google liberó como beta Cloud Vision API, hasta entonces solamente disponible en preview. Cloud Vision es un servicio de visión artificial que permite acceder de forma simple a funcionalidades avanzadas como etiquetado de imágenes, reconocimiento óptico de caracteres (OCR), o detección de caras.

En BEEVA Labs hemos probado la funcionalidad de etiquetado de imágenes de Cloud Vision, y la hemos comparado con una alternativa abierta como la que proporciona Caffe, un framework de Deep Learning desarrollado originalmente por investigadores de la Universidad de Berkeley.

Hay que tener en cuenta que esta funcionalidad de etiquetado clasifica cada imagen asignándole su categoría o categorías más probables y los correspondientes scores. Pero esta funcionalidad no soporta detección de múltiples objetos, ni identifica si una determinada etiqueta se corresponde con una región concreta de la imagen.

Por otro lado sabemos que Caffe utiliza 1.000 categorías diferentes, aunque desconocemos el número exacto de categorías o etiquetas utilizado por Cloud Vision. Según su documentación, serían “miles”.

Un benchmark ¿justo?

Diseñar un benchmark justo para etiquetado de imágenes es muy complicado. Hay que tener en cuenta que tanto los datos de entrenamiento como el conjunto de etiquetas empleado por los modelos de Caffe y Cloud Vision es muy distinto. Además, el comportamiento de cada uno de estos sistemas será muy superior sobre imágenes semejantes a aquellas con las que ha sido entrenado, frente a las que sean muy diferentes.

Los modelos utilizados por Caffe han sido entrenados fundamentalmente sobre el conjunto de imágenes de Imagenet. Mientras que Cloud Vision parece haber sido entrenado a partir de las imágenes y etiquetas de Freebase. Además, la salida de Cloud Vision permite asociar las entidades de Freebase con entidades de su Knowledge Graph.

Como necesitábamos un número suficientemente amplio de imágenes etiquetadas según las categorías utilizadas por CloudVision y Caffe, hemos generado un conjunto de 1.500 imágenes etiquetadas, la mitad de las cuales proceden de Imagenet y la otra mitad de Freebase.

Cabe destacar que, a través de la documentación de Google, no hemos podido confirmar con seguridad que las imágenes de Freebase constituyan su conjunto de entrenamiento. Este punto puede haber penalizado al servicio de Google en nuestro benchmark. En cualquier caso, las conclusiones generales de nuestro estudio tampoco habrían cambiado mucho.

Resultados, conclusiones y líneas futuras

Finalmente, tras evaluar el conjunto de 1.500 imágenes, los 2 modelos disponibles en Caffe obtuvieron una precisión de un 38% y un 25% frente al 5% obtenido por Cloud Vision. Mientras que considerando como válidos los 5 primeros resultados para cada imagen la precisión (P@5) asciende a 46% y 39% frente al 20%.

Como muestra de ejemplo, los resultados para las siguientes imágenes de ejemplo fueron:

scooter

scooter

sound card

sound card

golf ball

golf ball

dress

 

 

 

 

  • scooter (ImageNet): [‘motor scooter’, ‘scooter’]
    • Caffe1: [‘motor scooter’, ‘moped’, ‘reel’, ‘tricycle’, ‘crash helmet’]
    • Caffe2: [‘motor scooter’, ‘wheeled vehicle’, ‘vehicle’, ‘conveyance’, ‘container’]
    • CloudVision: [‘scooter’, ‘vehicle’, ‘motorcycle’, ‘land vehicle’, ‘mode of transport’]
  • sound card: (Freebase): [‘audio card’, ‘sound card’]
    • Caffe1: [‘tobacco shop’, ‘fire screen’, ‘book jacket’, ‘prayer rug’, ‘shoji’]
    • Caffe2: [‘mercantile establishment’, ‘shop’, ‘place of business’, ‘establishment’, ‘structure’]
    • CloudVision: [‘sound card’, ‘condominium’, ‘technology’]
  • golf ball: (ImageNet): [‘golf ball’]
    • Caffe1: [‘golf ball’, ‘soccer ball’, ‘croquet ball’, ‘baseball’, ‘rugby ball’]
    • Caffe2: [‘golf ball’, ‘golf equipment’, ‘ball’, ‘sports equipment’, ‘game equipment’]
    • CloudVision: [‘sports equipment’, ‘inflatable’, ‘sphere’, ‘ball’]
  • dress (Freebase) [‘apparel’, ‘dress’]:
    • Caffe1: [‘hoopskirt’, ‘overskirt’, ‘neck brace’, ‘barbershop’, ‘Windsor tie’]
    • Caffe2: [‘skirt’, ‘clothing’, ‘garment’, ‘consumer goods’, ‘commodity’]
    • CloudVision: [‘finger’, ‘cartoon’, ‘hand’, ‘thumb’, ‘singing’]

Como se ha comentado en la sección anterior, este benchmark no ha sido especialmente riguroso y es posible que el servicio de Google haya resultado algo penalizado. En cualquier caso, algunas de las principales conclusiones que hemos sacado serían:

  • En el ámbito de etiquetado de imágenes, lo que ofrece Cloud Vision es algo que puedes encontrar en el estado del arte de Deep Learning y software Open Source.
  • Los investigadores que desarrollan modelos para Caffe solo deben preocuparse porque la precisión de sus resultados sea estado del arte. Los ingenieros de Google deben preocuparse también porque su servicio sea robusto, seguro, y escalable. Y es lógico que esto tenga un coste e imponga algunas limitaciones.
  • Cloud Vision API es gratuita para las 1.000 primeras llamadas diarias. A partir de ahí, su precio oscila entre 0.60$ y 5$ cada 1000 llamadas. Por otro lado, Google avisa de los problemas que podría acarrear implantar esta API calificada como Beta en entornos productivos: “This API might be changed in backward-incompatible ways and is not subject to any SLA or deprecation policy.”

Uno de nuestros objetivos a medio plazo es completar este benchmark en el ámbito de la visión artificial comparando más soluciones SaaS, como Microsoft Project Oxford o IBM Alchemy, frente a alternativas open-source. Con un enfoque más riguroso si es posible. E introduciendo también otras funcionalidades como OCR, en las que creemos que el servicio de Google puede resultar más competitivo.

Imagen: noffload.net

Enrique Otero Muras
Enrique Otero. Research Lab @ BEEVA. Interesado por el mundo de la “ciencia de datos”. He participado en proyectos de Big Data para BBVA y BBVA Data & Analytics.

Viewing all articles
Browse latest Browse all 14

Latest Images

Trending Articles





Latest Images