Revisión: Google Cloud AutoML es un aprendizaje automático verdaderamente automatizado

Cuando intentas entrenar el mejor modelo de aprendizaje automático para tus datos automáticamente, existe AutoML, o aprendizaje automático automatizado, y luego está Google Cloud AutoML. Google Cloud AutoML es superior. 

En el pasado, analicé H2O Driverless AI, Amazon SageMaker y Azure Machine Learning AutoML. Driverless AI realiza automáticamente la ingeniería de funciones y el ajuste de hiperparámetros, y afirma funcionar tan bien como los maestros de Kaggle. Amazon SageMaker admite la optimización de hiperparámetros. Azure Machine Learning AutoML recorre automáticamente características, algoritmos e hiperparámetros para algoritmos básicos de aprendizaje automático; una función de ajuste de hiperparámetros de Azure Machine Learning independiente le permite barrer hiperparámetros específicos para un experimento existente.

Estos son buenos, pero Google Cloud AutoML va a un nivel completamente diferente y personaliza las redes neuronales profundas de alta precisión y probadas en batalla de Google para sus datos etiquetados. En lugar de comenzar desde cero al entrenar modelos a partir de sus datos, Google Cloud AutoML implementa el aprendizaje de transferencia profunda automática (lo que significa que comienza a partir de una red neuronal profunda existente entrenada en otros datos) y la búsqueda de arquitectura neuronal (lo que significa que encuentra la combinación correcta de extra capas de red) para la traducción de pares de idiomas, la clasificación del lenguaje natural y la clasificación de imágenes.

En cada área, Google ya tiene uno o más servicios previamente capacitados basados ​​en redes neuronales profundas y enormes conjuntos de datos etiquetados. Estos pueden funcionar para sus datos sin modificar, y debe probarlos para ahorrar tiempo y dinero. Si estos servicios no hacen lo que necesitas, Google Cloud AutoML te ayuda a crear un modelo que sí lo hace, sin requerir que sepas cómo realizar el aprendizaje por transferencia o incluso cómo crear redes neuronales.

El aprendizaje por transferencia ofrece dos grandes ventajas sobre el entrenamiento de una red neuronal desde cero. Primero, requiere muchos menos datos para el entrenamiento, ya que la mayoría de las capas de la red ya están bien entrenadas. En segundo lugar, se ejecuta mucho más rápido, ya que solo optimiza las capas finales.

Traducción de Google Cloud AutoML

Entonces, por ejemplo, puede entrenar contra 1,000 pares de oraciones en dos idiomas en una o dos horas con el aprendizaje por transferencia de Google Cloud AutoML Translation. La red neuronal base que se está personalizando, NMT, tomó de cientos a miles de horas para entrenarse desde cero para cada par de idiomas, en una gran cantidad de CPU y GPU. Tenga en cuenta que el cargo por hora para entrenar un modelo de traducción personalizado es actualmente de $ 76.

La Guía para principiantes de AutoML Translation explica los conceptos básicos de lo que puede hacer Google Cloud AutoML Translation y por qué lo usaría. Esencialmente, refina un modelo de traducción general existente para un propósito específico. No es necesario hacer ningún tipo de formación para la general de la traducción del centenar de idiomas que Google ya soportes, pero lo que se necesita para ejecutar la transferencia de aprendizaje si se desea crear una red de traducción de la especializada vocabulario o uso. Un ejemplo que menciona Google es la traducción de documentos financieros urgentes en tiempo real. La traducción de propósito general no siempre utilizará los términos técnicos correctos para las finanzas.

 Configurar la capacitación para Google Cloud AutoML Translation es un proceso de cinco pasos, como se muestra en las capturas de pantalla a continuación, una vez que haya preparado un archivo con pares de oraciones. Usé los 8,720 pares de inglés-español para los mensajes de la aplicación proporcionados por Google en AutoML Translation Quickstart, formateado como un archivo de valores separados por tabuladores. Google Cloud AutoML Translation también admite el formato de intercambio de memoria de traducción (TMX) basado en XML para pares de oraciones.

Notarás que no hay ninguna opción para controlar el hardware (CPU, GPU, TPU y memoria) que se usa para realizar el entrenamiento. Eso es deliberado: la formación utilizará lo que necesite. Tampoco hay opciones para controlar las capas de redes neuronales que se agregan al modelo, el número de épocas que se ejecutarán o los criterios de detención.

Una vez que se completa el entrenamiento del modelo, puede ver la mejora (si todo va bien) en la puntuación BLEU sobre el modelo base e intentar hacer predicciones con el modelo. Esta capacitación tomó 0.9 horas (menos de lo previsto) y costó $ 68.34.

Lenguaje natural de Google Cloud AutoML

La API de Google Natural Language toma texto y predice entidades, opiniones, sintaxis y categorías (de una lista predefinida). Si su problema de clasificación de texto no se ajusta a ninguno de ellos, puede proporcionar un conjunto etiquetado de declaraciones y usar Google Cloud AutoML Natural Language para crear un clasificador personalizado.

Para configurar AutoML Natural Language para el entrenamiento, debe obtener sus datos, etiquetarlos, prepararlos como un archivo CSV y ejecutar el entrenamiento. También puede utilizar la interfaz de usuario de AutoML Natural Language para cargar y etiquetar los datos si lo prefiere.

Una vez que se completa el entrenamiento del modelo, puede ver la matriz de precisión, recuperación y confusión del modelo. También puede ajustar el umbral de puntuación para la compensación deseada de precisión / recuperación. Para minimizar los falsos negativos, optimice la recuperación. Para minimizar los falsos positivos, optimice la precisión.

Esta capacitación tomó 3.63 horas (aproximadamente como se predijo) y costó $ 10.88.

Google Cloud AutoML Vision

La API de Google Cloud Vision clasifica las imágenes en miles de categorías predefinidas, detecta objetos y rostros individuales dentro de las imágenes, y encuentra y lee palabras impresas contenidas en las imágenes. Google Cloud AutoML Vision le permite definir y entrenar su propia lista de categorías. Algunas aplicaciones de la vida real incluyen la detección de daños en turbinas eólicas a partir de fotos de drones y la clasificación de materiales reciclables para la gestión de residuos.

Para configurar un conjunto de datos de Google Cloud AutoML Vision, debe obtener al menos 100 imágenes para cada categoría y etiquetarlas en un archivo CSV. Todas las imágenes y el archivo CSV deben residir en un depósito de Google Cloud Storage.

Configuré este entrenamiento para que se ejecute durante un máximo de una hora, que es gratis para hasta 10 modelos al mes. Me sorprendió gratamente ver los buenos resultados del entrenamiento gratuito y no me molesté en continuar con el entrenamiento para mejorar la precisión y la memoria.

Google Cloud AutoML ofrece opciones convenientes para realizar traducciones específicas, clasificación de texto personalizada y clasificación de imágenes personalizada. Cada una de estas API funciona bien si le proporciona suficientes datos etiquetados con precisión, y requiere mucho menos tiempo y habilidad que construir su propio modelo de red neuronal o incluso su propio modelo de aprendizaje por transferencia. Con Google Cloud AutoML, en realidad está creando modelos de TensorFlow, sin necesariamente saber nada sobre TensorFlow, Python, arquitecturas de redes neuronales o hardware de entrenamiento.

Hay muchas formas de hacer la preparación de datos incorrecta, pero afortunadamente las tres API comprueban los errores más comunes, como tener muy pocos o demasiados ejemplos para cualquier categoría. Los diagnósticos que se muestran después del entrenamiento le dan una buena idea de qué tan bien funciona su modelo, y puede modificar fácilmente los modelos agregando más datos de entrenamiento etiquetados y volviendo a ejecutar el entrenamiento.

-

Costo: Google Cloud AutoML Translation: la capacitación cuesta $ 76.00 por hora, la traducción $ 80 por millón de caracteres después de los primeros 500K. Lenguaje natural de Google Cloud AutoML: la capacitación cuesta $ 3.00 por hora, clasificación $ 5 por mil registros de texto después de los primeros 30K. Google Cloud AutoML Vision: la capacitación cuesta $ 20 por hora después de la primera hora, clasificación $ 3 por mil imágenes después de las primeras mil. 

Plataforma: Google Cloud Platform