A medida que más organizaciones pasan al aprendizaje automático (ML) para generar conocimientos más profundos, dos obstáculos clave con los que se encuentran son el etiquetado y la gestión del ciclo de vida. El etiquetado es la identificación de datos y la adición de etiquetas para proporcionar contexto para que un modelo de ML pueda aprender de él. Las etiquetas pueden indicar una frase en un archivo de audio, un automóvil en una fotografía o un órgano en una resonancia magnética. El etiquetado de datos es necesario para permitir que los modelos de ML funcionen con los datos. La gestión del ciclo de vida tiene que ver con el proceso de configurar un experimento de ML y documentar el conjunto de datos, la biblioteca, la versión y el modelo utilizados para obtener resultados. Un equipo puede realizar cientos de experimentos antes de decidirse por un enfoque. Volver atrás y recrear ese enfoque puede ser difícil sin registros de los elementos de ese experimento.
Muchos ejemplos y tutoriales de ML comienzan con un conjunto de datos que incluye un valor objetivo. Sin embargo, los datos del mundo real no siempre tienen ese valor objetivo. Por ejemplo, en el análisis de sentimientos, una persona generalmente puede emitir un juicio sobre si una revisión es positiva, negativa o mixta. Pero las reseñas se componen de una colección de texto sin valor de juicio adjunto. Para crear un aprendizaje supervisado modelo para resolver este problema, un conjunto de datos etiquetados de alta calidad es esencial. Verdad fundamental de Amazon SageMaker es un servicio de etiquetado de datos completamente administrado que facilita la creación de conjuntos de datos de entrenamiento de alta precisión para ML.
Para las organizaciones que usan Databricks como su plataforma de análisis y datos en AWS para realizar tareas de extracción, transformación y carga (ETL), el objetivo final suele ser entrenar un modelo de aprendizaje supervisado. En esta publicación, mostramos cómo Databricks se integra con Ground Truth y Amazon SageMaker para el etiquetado de datos y distribución de modelos.
Resumen de la solución
Ground Truth es un servicio de etiquetado de datos completamente administrado que facilita la creación de conjuntos de datos de entrenamiento de alta precisión para ML. A través de la consola Ground Truth, podemos crear flujos de trabajo de etiquetado de datos personalizados o integrados en minutos. Estos flujos de trabajo admiten una variedad de casos de uso, incluidas nubes de puntos 3D, video, imágenes y texto. Además, Ground Truth ofrece el etiquetado automático de datos, que utiliza un modelo ML para etiquetar nuestros datos.
Entrenamos nuestro modelo en el conjunto de datos de Reseñas de Clientes de Amazon disponible públicamente. En un nivel alto, los pasos son los siguientes:
- Extraiga un conjunto de datos sin procesar para etiquetarlo y muévalo a Servicio de almacenamiento simple de Amazon (Amazon S3).
- Realice el etiquetado creando un trabajo de etiquetado en SageMaker.
- Cree y entrene un modelo de aprendizaje lineal simple de Scikit-learn para clasificar el sentimiento del texto de revisión en la plataforma Databricks usando una muestra cuaderno.
- Uso flujo ml componentes para crear y realizar MLOps y guardar los artefactos del modelo.
- Implemente el modelo como punto final de SageMaker mediante el Biblioteca MLflow SageMaker para la inferencia en tiempo real.
El siguiente diagrama ilustra el proceso de etiquetado y aprendizaje automático mediante Ground Truth y MLflow.
Crear un trabajo de etiquetado en SageMaker
Del conjunto de datos de Reseñas de clientes de Amazon, extraemos solo las partes de texto, porque estamos creando un modelo de análisis de opiniones. Una vez extraído, colocamos el texto en un depósito S3 y luego creamos un trabajo de etiquetado de Ground Truth a través de la consola de SageMaker.
En Crear trabajo de etiquetado página, llene todos los campos requeridos. Como parte del paso de esta página, Ground Truth le permite generar el archivo de manifiesto del trabajo. Ground Truth utiliza el archivo de manifiesto de entrada para identificar la cantidad de archivos u objetos en el trabajo de etiquetado para que se cree y envíe la cantidad correcta de tareas a los etiquetadores humanos (o máquinas). El archivo se guarda automáticamente en el depósito S3. El siguiente paso es especificar la categoría de tareas y la selección de tareas. En este caso de uso, elegimos Texto como la categoría de la tarea, y Clasificación de texto con una sola etiqueta para la selección de tareas, lo que significa que un texto de revisión tendrá un solo sentimiento: positivo, negativo o neutral.
Finalmente, escribimos instrucciones simples pero concisas para los etiquetadores sobre cómo etiquetar los datos de texto. Las instrucciones se muestran en la herramienta de etiquetado y, opcionalmente, puede revisar la vista del anotador en este momento. Finalmente, enviamos el trabajo y monitoreamos el progreso en la consola.
Mientras el trabajo de etiquetado está en progreso, también podemos mirar los datos etiquetados en el Salida pestaña. Podemos monitorear cada texto y etiqueta de revisión, y si el trabajo fue realizado por un humano o una máquina. Podemos seleccionar que el 100% de los trabajos de etiquetado sean realizados por humanos o elegir la anotación de la máquina, lo que agiliza el trabajo y reduce los costos de mano de obra.
Cuando se completa el trabajo, el resumen del trabajo de etiquetado contiene enlaces al manifiesto de salida y al conjunto de datos etiquetado. También podemos ir a Amazon S3 y descargar ambos desde nuestra carpeta de depósito S3.
En los siguientes pasos, usamos un cuaderno Databricks, flujo mly conjuntos de datos etiquetados por Ground Truth para construir un Scikit-learn modelo.
Descargar un conjunto de datos etiquetados de Amazon S3
Comenzamos descargando el conjunto de datos etiquetados de Amazon S3. El manifiesto se guarda en formato JSON y lo cargamos en un Spark DataFrame en Databricks. Para entrenar el modelo de análisis de opinión, solo necesitamos el texto de revisión y la opinión que anotó el trabajo de etiquetado de Ground Truth. Usamos select() para extraer esas dos características. Luego, convertimos el conjunto de datos de PySpark DataFrame a Pandas DataFrame, porque el algoritmo Scikit-learn requiere el formato Pandas DataFrame.
A continuación, usamos Scikit-learn CountVectorizer
para transformar el texto de revisión en un vector de bigrama configurando el ngram_range
valor máximo a 2. CountVectorizer
convierte el texto en una matriz de recuentos de tokens. Entonces usamos TfidfTransformer
para transformar el vector de bigrama en un formato de frecuencia de documento de frecuencia inversa (TF-IDF).
Comparamos las puntuaciones de precisión para el entrenamiento realizado con un vector de bigrama frente a bigrama con TF-IDF. TF-IDF es una medida estadística que evalúa qué tan relevante es una palabra para un documento en una colección de documentos. Debido a que el texto de revisión tiende a ser relativamente breve, podemos observar cómo TF-IDF afecta el rendimiento del modelo predictivo.
Configurar un experimento de MLflow
MLflow fue desarrollado por Databricks y ahora es un proyecto de código abierto. MLflow administra el ciclo de vida de ML, por lo que puede rastrear, recrear y publicar experimentos fácilmente.
Para configurar experimentos de MLflow, usamos mlflow.sklearn.autolog()
para habilitar el registro automático de hiperparámetros, métricas y artefactos de modelos siempre que estimator.fit()
, estimator.fit_predict()
, y estimator.fit_transform()
son llamados. Alternativamente, puede hacerlo manualmente llamando mlflow.log_param()
y mlflow.log_metric()
.
Ajustamos el conjunto de datos transformado a un clasificador lineal con aprendizaje de descenso de gradiente estocástico (SGD). Con SGD, el gradiente de la pérdida se estima una muestra a la vez y el modelo se actualiza en el camino con un programa de fuerza decreciente.
Esos dos conjuntos de datos que preparamos anteriormente se pasan al train_and_show_scores()
función para el entrenamiento. Después del entrenamiento, necesitamos registrar un modelo y guardar sus artefactos. Usamos mlflow.sklearn.log_model()
para hacerlo.
Antes de implementar, miramos los resultados del experimento y elegimos dos experimentos (uno para bigram y el otro para bigram con TF-IDF) para comparar. En nuestro caso de uso, el segundo modelo entrenado con bigram TF-IDF funcionó un poco mejor, por lo que elegimos ese modelo para implementar. Una vez registrado el modelo, lo implementamos y cambiamos la etapa del modelo a producción. Podemos lograr esto en la interfaz de usuario de MLflow, o en el código usando transition_model_version_stage()
.
Implemente y pruebe el modelo como punto final de SageMaker
Antes de implementar el modelo entrenado, debemos crear un contenedor Docker para alojar el modelo en SageMaker. Hacemos esto ejecutando un comando MLflow simple que construye y empuja el contenedor a Registro de contenedores elásticos de Amazon (Amazon ECR) en nuestra cuenta de AWS.
Ahora podemos encontrar el URI de la imagen en la consola de Amazon ECR. Pasamos la URI de la imagen como un image_url
parámetro y uso DEPLOYMENT_MODE_CREATE
para el parámetro de modo si se trata de una nueva implementación. Si actualiza un punto final existente con una nueva versión, use DEPLOYMENT_MODE_REPLACE
.
Para probar el punto final de SageMaker, creamos una función que toma el nombre del punto final y los datos de entrada como sus parámetros.
Conclusión
En esta publicación, le mostramos cómo usar Ground Truth para etiquetar un conjunto de datos sin procesar y cómo usar los datos etiquetados para entrenar un clasificador lineal simple usando Scikit-learn. En este ejemplo, usamos MLflow para rastrear hiperparámetros y métricas, registrar un modelo de grado de producción e implementar el modelo entrenado en SageMaker como punto final. Junto con Databricks para procesar los datos, puede automatizar todo este caso de uso, de modo que, a medida que se introducen nuevos datos, se pueden etiquetar y procesar en el modelo. Al automatizar estas canalizaciones y modelos, los equipos de ciencia de datos pueden centrarse en nuevos casos de uso y descubrir más información en lugar de dedicar su tiempo a administrar las actualizaciones de datos día a día.
Para empezar, echa un vistazo Use Amazon SageMaker Ground Truth para etiquetar datos y regístrate para un Prueba gratuita de 14 días de Databricks en AWS. Para obtener más información sobre cómo Databricks se integra con SageMaker, así como con otros servicios de AWS como Pegamento AWS y Desplazamiento al rojo de Amazon, Visite Ladrillos de datos en AWS.
Además, consulte los siguientes recursos utilizados en esta publicación:
Use la siguiente cuaderno para comenzar.
Acerca de los autores
Rumi Olsen es Arquitecto de soluciones en el Programa de socios de AWS. Se especializa en soluciones de aprendizaje automático y sin servidor en su función actual, y tiene experiencia en tecnologías de procesamiento de lenguaje natural. Pasa la mayor parte de su tiempo libre con su hija explorando la naturaleza del noroeste del Pacífico.
Igor Alekseev es arquitecto de soluciones de socios en AWS en datos y análisis. Igor trabaja con socios estratégicos ayudándolos a construir arquitecturas complejas optimizadas para AWS. Antes de unirse a AWS, como arquitecto de soluciones/datos, implementó muchos proyectos en Big Data, incluidos varios lagos de datos en el ecosistema de Hadoop. Como ingeniero de datos, participó en la aplicación de AI/ML a la detección de fraudes y la automatización de oficinas. Los proyectos de Igor estaban en una variedad de industrias, incluidas las comunicaciones, las finanzas, la seguridad pública, la fabricación y la atención médica. Anteriormente, Igor trabajó como líder técnico/ingeniero de pila completa.
Naseer Ahmed es Arquitecto sénior de soluciones de socios en Databricks que respalda su negocio de AWS. Naseer se especializa en almacenamiento de datos, inteligencia empresarial, desarrollo de aplicaciones, contenedores, sin servidor y arquitecturas de aprendizaje automático en AWS. Fue votado como PYME del año 2021 en Databricks y es un ávido entusiasta de las criptomonedas.
- Coinsmart. El mejor intercambio de Bitcoin y criptografía de Europa.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. ACCESO LIBRE.
- CriptoHawk. Radar de altcoins. Prueba gratis.
- Fuente: https://aws.amazon.com/blogs/machine-learning/build-an-mlops-sentiment-analysis-pipeline-using-amazon-sagemaker-ground-truth-and-databricks-mlflow/
- "
- 100
- 2021
- 3d
- Sobre
- Mi Cuenta
- preciso
- adición
- algoritmo
- Todos
- Amazon
- análisis
- Analytics
- applicación
- Desarrollo de aplicaciones
- La aplicación de
- enfoque
- audio
- auto
- Automatización
- Hoy Disponibles
- AWS
- fondo
- base
- Big Data
- build
- Construir la
- construye
- incorporado
- inteligencia empresarial
- de
- cases
- Categoría
- Elige
- clasificación
- código
- --
- Comunicaciónes
- integraciones
- Consola
- Envase
- contiene
- Precio
- creado
- Creamos
- cripto
- Current
- personalizado
- datos
- Ciencia de los datos
- más profundo
- desplegar
- Desplegando
- despliegue
- Detección
- desarrollado
- Desarrollo
- difícil
- Docker
- documentos
- No
- el lado de la transmisión
- pasan fácilmente
- ecosistema
- habilitar
- Punto final
- ingeniero
- esencial
- estimado
- ejemplo
- experimento
- Caracteristicas
- Terrenos
- Finalmente
- financiar
- cómodo
- Focus
- siguiendo
- formato
- fraude
- Gratuito
- ser completados
- función
- generar
- objetivo
- va
- la salud
- Alta
- altamente
- Cómo
- Como Hacer
- HTTPS
- humana
- Humanos
- Cientos
- Identificación
- Identifique
- imagen
- implementado
- Incluye
- industrias
- Las opciones de entrada
- Insights
- Intelligence
- involucra
- IT
- Trabajos
- Empleo
- Clave
- etiquetado
- Etiquetas
- mano de obra
- idioma
- Lead
- APRENDE:
- aprendizaje
- Nivel
- Biblioteca
- enlaces
- carga
- máquina
- máquina de aprendizaje
- hecho
- HACE
- gestionado
- Management
- administrar
- a mano
- Fabricación
- Matrix
- medir
- Métrica
- mezclado
- ML
- modelo
- modelos
- Monitorear
- más,
- MEJOR DE TU
- movimiento
- Natural
- Naturaleza
- cuaderno
- número
- Ofertas
- solicite
- para las fiestas.
- Otro
- Costa
- Socio
- socios
- actuación
- persona
- plataforma
- punto
- positivo
- Problema
- Producción
- Programa
- proyecta
- proporcionar
- público
- publicar
- Crudo
- en tiempo real
- archivos
- registrarte
- registrado
- Requisitos
- Recursos
- Resultados
- una estrategia SEO para aparecer en las búsquedas de Google.
- Reseñas
- Ejecutar
- correr
- Safety
- Ciencia:
- sentimiento
- Sin servidor
- de coches
- Servicios
- set
- pólipo
- En Corto
- sencillos
- So
- a medida
- Soluciones
- RESOLVER
- se especializa
- Gastos
- montón
- Etapa
- comienzo
- fundó
- estadístico
- STORAGE
- Estratégico
- SOPORTE
- Apoyar
- Target
- tareas
- equipo
- Tecnologías
- test
- A través de esta formación, el personal docente y administrativo de escuelas y universidades estará preparado para manejar los recursos disponibles que derivan de la diversidad cultural de sus estudiantes. Además, un mejor y mayor entendimiento sobre estas diferencias y similitudes culturales permitirá alcanzar los objetivos de inclusión previstos.
- equipo
- ficha
- del IRS
- seguir
- Formación
- Transformar
- juicio
- Tutoriales
- ui
- superior
- descubrir
- Actualizaciones
- utilizan el
- generalmente
- propuesta de
- variedad
- Video
- Ver
- sean
- sin
- Actividades:
- trabajado
- funciona
- año