La inteligencia artificial (IA) y el aprendizaje automático (ML) han experimentado una adopción generalizada en organizaciones empresariales y gubernamentales. El procesamiento de datos no estructurados se ha vuelto más fácil con los avances en el procesamiento del lenguaje natural (NLP) y los servicios de IA/ML fáciles de usar como Amazon Textil, Amazon Transcribey Amazon Comprehend. Las organizaciones han comenzado a utilizar servicios de IA/ML como Amazon Comprehend para crear modelos de clasificación con sus datos no estructurados para obtener información profunda que no tenían antes. Aunque puede utilizar modelos previamente entrenados con un esfuerzo mínimo, sin una selección de datos y un ajuste de modelos adecuados, no podrá obtener todos los beneficios de los modelos AI/ML.
En esta publicación, explicamos cómo crear y optimizar un modelo de clasificación personalizado utilizando Amazon Comprehend. Demostramos esto utilizando una clasificación personalizada de Amazon Comprehend para crear un modelo de clasificación personalizado de múltiples etiquetas y proporcionamos pautas sobre cómo preparar el conjunto de datos de entrenamiento y ajustar el modelo para cumplir con métricas de rendimiento como exactitud, precisión, recuperación y puntuación F1. Utilizamos los artefactos de salida del entrenamiento del modelo de Amazon Comprehend como una matriz de confusión para ajustar el rendimiento del modelo y guiarlo en la mejora de sus datos de entrenamiento.
Resumen de la solución
Esta solución presenta un enfoque para crear un modelo de clasificación personalizado optimizado mediante Amazon Comprehend. Pasamos por varios pasos, incluida la preparación de datos, la creación de modelos, el análisis de métricas de rendimiento del modelo y la optimización de la inferencia basada en nuestro análisis. Usamos un Amazon SageMaker cuaderno y del Consola de administración de AWS para completar algunos de estos pasos.
También analizamos las mejores prácticas y técnicas de optimización durante la preparación de datos, la creación y el ajuste de modelos.
Requisitos previos
Si no tiene una instancia de cuaderno de SageMaker, puede crear una. Para obtener instrucciones, consulte Crear una instancia de portátil de Amazon SageMaker.
Prepara los datos
Para este análisis, utilizamos el conjunto de datos de Clasificación de comentarios tóxicos de Kaggle. Este conjunto de datos contiene 6 etiquetas con 158,571 puntos de datos. Sin embargo, cada etiqueta solo tiene menos del 10% del total de datos como ejemplos positivos, y dos de las etiquetas tienen menos del 1%.
Convertimos el conjunto de datos de Kaggle existente al Amazon Comprehend formato CSV de dos columnas con las etiquetas divididas usando un delimitador de barra vertical (|). Amazon Comprehend espera al menos una etiqueta para cada punto de datos. En este conjunto de datos, encontramos varios puntos de datos que no se incluyen en ninguna de las etiquetas proporcionadas. Creamos una nueva etiqueta llamada limpia y asignamos cualquiera de los puntos de datos que no son tóxicos para que sean positivos con esta etiqueta. Finalmente, dividimos los conjuntos de datos seleccionados en conjuntos de datos de entrenamiento y de prueba utilizando una proporción de 80/20 dividida por etiqueta.
Usaremos el cuaderno de preparación de datos. Los siguientes pasos utilizan el conjunto de datos de Kaggle y preparan los datos para nuestro modelo.
- En la consola de SageMaker, elija Instancias de cuaderno en el panel de navegación.
- Seleccione la instancia del cuaderno que ha configurado y elija Jupyter abierto.
- En Nuevo menú, seleccione terminal.
- Ejecute los siguientes comandos en la terminal para descargar los artefactos necesarios para esta publicación:
- Cierre la ventana de la terminal.
Deberías ver tres cuadernos y tren.csv archivos.
- Elige el cuaderno Preparación de datos.ipynb.
- Ejecute todos los pasos en el cuaderno.
Estos pasos preparan el conjunto de datos sin procesar de Kaggle para que sirva como conjuntos de datos de prueba y entrenamiento seleccionados. Los conjuntos de datos seleccionados se almacenarán en el cuaderno y Servicio de almacenamiento simple de Amazon (Amazon S3).
Considere las siguientes pautas de preparación de datos cuando trabaje con conjuntos de datos de etiquetas múltiples a gran escala:
- Los conjuntos de datos deben tener un mínimo de 10 muestras por etiqueta.
- Amazon Comprehend acepta un máximo de 100 etiquetas. Este es un límite suave que se puede aumentar.
- Asegúrese de que el archivo del conjunto de datos esté correctamente formateado con el delimitador adecuado. Los delimitadores incorrectos pueden introducir etiquetas en blanco.
- Todos los puntos de datos deben tener etiquetas.
- Los conjuntos de datos de entrenamiento y prueba deben tener una distribución de datos equilibrada por etiqueta. No utilice distribución aleatoria porque podría introducir sesgos en los conjuntos de datos de entrenamiento y prueba.
Construya un modelo de clasificación personalizado
Usamos los conjuntos de datos de prueba y entrenamiento seleccionados que creamos durante el paso de preparación de datos para construir nuestro modelo. Los siguientes pasos crean un modelo de clasificación personalizado de múltiples etiquetas de Amazon Comprehend:
- En la consola de Amazon Comprehend, elija Clasificación personalizada en el panel de navegación.
- Elige Crear nuevo modelo.
- Nombre del modelo, ingrese el modelo de clasificación tóxica.
- Nombre de la versión, ingrese 1.
- Anotación y formato de datos., escoger Uso del modo multietiqueta.
- Conjunto de datos de entrenamiento, ingrese la ubicación del conjunto de datos de capacitación seleccionado en Amazon S3.
- Elige Conjunto de datos de prueba proporcionado por el cliente e ingrese la ubicación de los datos de prueba seleccionados en Amazon S3.
- Datos resultantes, ingrese la ubicación de Amazon S3.
- Rol de IAM, seleccione Crear un rol de IAM, especifique el sufijo del nombre como "comprender-blog".
- Elige Crear para iniciar el entrenamiento del modelo de clasificación personalizado y la creación del modelo.
La siguiente captura de pantalla muestra los detalles del modelo de clasificación personalizado en la consola de Amazon Comprehend.
Ajuste para el rendimiento del modelo
La siguiente captura de pantalla muestra las métricas de rendimiento del modelo. Incluye métricas clave como precisión, recuperación, puntuación F1, exactitud y más.
Una vez entrenado y creado el modelo, generará el archivo output.tar.gz, que contiene las etiquetas del conjunto de datos, así como la matriz de confusión para cada una de las etiquetas. Para ajustar aún más el rendimiento de predicción del modelo, debe comprender su modelo con las probabilidades de predicción para cada clase. Para hacer esto, necesita crear un trabajo de análisis para identificar las puntuaciones que Amazon Comprehend asignó a cada uno de los puntos de datos.
Complete los siguientes pasos para crear un trabajo de análisis:
- En la consola de Amazon Comprehend, elija Trabajos de análisis en el panel de navegación.
- Elige Crear trabajo.
- Nombre, introduzca
toxic_train_data_analysis_job
. - Tipo de análisis, escoger Clasificación personalizada.
- Modelos de clasificación y volantes, especificar
toxic-classification-model
. - Versión, especifique 1.
- Ubicación de datos de entrada S3, ingrese la ubicación del archivo de datos de entrenamiento seleccionado.
- Formato de entrada, escoger Un documento por línea.
- Ubicación de los datos de salida S3, ingrese la ubicación.
- Permisos de acceso, seleccione Usar una función de IAM existente y elija el rol creado anteriormente.
- Elige Crear trabajo para iniciar el trabajo de análisis.
- Seleccione Trabajos de análisis para ver los detalles del trabajo. Tome nota de la identificación del trabajo en Detalles del trabajo. Usaremos la identificación del trabajo en nuestro siguiente paso.
Repita los pasos para iniciar el trabajo de análisis de los datos de prueba seleccionados. Utilizamos los resultados de predicción de nuestros trabajos de análisis para conocer las probabilidades de predicción de nuestro modelo. Tome nota de los identificadores de trabajo de los trabajos de capacitación y análisis de pruebas.
Usamos la Análisis-de-umbral-de-modelo.ipynb cuaderno para probar las salidas en todos los umbrales posibles y calificar la salida en función de la probabilidad de predicción utilizando scikit-learn. precision_recall_curve
función. Además, podemos calcular la puntuación F1 en cada umbral.
Necesitaremos la identificación del trabajo del análisis de Amazon Comprehend como entrada para Análisis de umbral de modelo computadora portátil. Puede obtener los identificadores de trabajo desde la consola de Amazon Comprehend. Ejecute todos los pasos en Análisis de umbral de modelo Cuaderno para observar los umbrales de todas las clases.
Observe cómo la precisión aumenta a medida que aumenta el umbral, mientras que ocurre lo contrario con la recuperación. Para encontrar el equilibrio entre los dos, utilizamos la puntuación F1 donde tiene picos visibles en su curva. Los picos en la puntuación F1 corresponden a un umbral particular que puede mejorar el rendimiento del modelo. Observe cómo la mayoría de las etiquetas caen alrededor de la marca de 0.5 para el umbral, excepto la etiqueta de amenaza, que tiene un umbral de alrededor de 0.04.
Luego podemos usar este umbral para etiquetas específicas que tienen un rendimiento inferior con solo el umbral predeterminado de 0.5. Al utilizar los umbrales optimizados, los resultados del modelo sobre los datos de prueba mejoran para la amenaza de la etiqueta de 0.00 a 0.24. Estamos utilizando la puntuación F1 máxima en el umbral como punto de referencia para determinar lo positivo frente a lo negativo para esa etiqueta en lugar de un punto de referencia común (un valor estándar como > 0.7) para todas las etiquetas.
Manejo de clases subrepresentadas
Otro enfoque que es eficaz para un conjunto de datos desequilibrado es sobremuestreo. Al sobremuestrear la clase subrepresentada, el modelo ve la clase subrepresentada con mayor frecuencia y enfatiza la importancia de esas muestras. Usamos el Sobremuestreo-subrepresentado.ipynb cuaderno para optimizar los conjuntos de datos.
Para este conjunto de datos, probamos cómo cambia el rendimiento del modelo en el conjunto de datos de evaluación a medida que proporcionamos más muestras. Utilizamos la técnica de sobremuestreo para aumentar la aparición de clases subrepresentadas y mejorar el rendimiento.
En este caso particular, probamos con 10, 25, 50, 100, 200 y 500 ejemplos positivos. Tenga en cuenta que, aunque repetimos puntos de datos, estamos mejorando inherentemente el rendimiento del modelo al enfatizar la importancia de la clase subrepresentada.
Cost
Con Amazon Comprehend, paga sobre la marcha según la cantidad de caracteres de texto procesados. Referirse a Precios de Amazon Comprehend por costos reales.
Limpiar
Cuando haya terminado de experimentar con esta solución, limpie sus recursos para eliminar todos los recursos implementados en este ejemplo. Esto le ayuda a evitar costos continuos en su cuenta.
Conclusión
En esta publicación, proporcionamos mejores prácticas y orientación sobre la preparación de datos, el ajuste de modelos utilizando probabilidades de predicción y técnicas para manejar clases de datos subrepresentadas. Puede utilizar estas mejores prácticas y técnicas para mejorar las métricas de rendimiento de su modelo de clasificación personalizado de Amazon Comprehend.
Para obtener más información sobre Amazon Comprehend, visite Recursos para desarrolladores de Amazon Comprehend para encontrar recursos de video y publicaciones de blog, y consulte Preguntas frecuentes sobre comprensión de AWS.
Acerca de los autores
Sathya Balakrishnan es Arquitecto Sr. de Entrega de Clientes en el equipo de Servicios Profesionales de AWS, especializado en datos y soluciones de ML. Trabaja con clientes financieros federales de EE.UU. Le apasiona construir soluciones pragmáticas para resolver los problemas comerciales de los clientes. En su tiempo libre, disfruta ver películas y hacer caminatas con su familia.
príncipe mallari es científico de datos de NLP en el equipo de servicios profesionales de AWS, especializado en aplicaciones de NLP para clientes del sector público. Le apasiona usar ML como una herramienta para permitir que los clientes sean más productivos. En su tiempo libre, disfruta jugar videojuegos y desarrollar uno con sus amigos.
- Distribución de relaciones públicas y contenido potenciado por SEO. Consiga amplificado hoy.
- PlatoData.Network Vertical Generativo Ai. Empodérate. Accede Aquí.
- PlatoAiStream. Inteligencia Web3. Conocimiento amplificado. Accede Aquí.
- PlatoESG. Carbón, tecnología limpia, Energía, Ambiente, Solar, Gestión de residuos. Accede Aquí.
- PlatoSalud. Inteligencia en Biotecnología y Ensayos Clínicos. Accede Aquí.
- Fuente: https://aws.amazon.com/blogs/machine-learning/improve-prediction-quality-in-custom-classification-models-with-amazon-comprehend/
- :posee
- :es
- :dónde
- $ UP
- 1
- 10
- 100
- 200
- 24
- 25
- 50
- 500
- 7
- 9
- a
- Nuestra Empresa
- Acepta
- Mi Cuenta
- la exactitud
- a través de
- real
- Adicionalmente
- Adopción
- avances
- AI
- AI / ML
- Todos
- permitir
- también
- Aunque
- Amazon
- Amazon Comprehend
- Amazon SageMaker
- Amazon Web Services
- an
- análisis
- y
- cualquier
- aplicaciones
- Aplicaciones de la PNL
- enfoque
- somos
- en torno a
- AS
- Activos
- asigna
- At
- evitar
- AWS
- Balance
- basado
- BE
- porque
- a las que has recomendado
- antes
- beneficios
- MEJOR
- y las mejores prácticas
- entre
- parcialidad
- Blog
- Entradas De Blog
- build
- Construir la
- by
- , que son
- PUEDEN
- Puede conseguir
- case
- Cambios
- personajes
- Elige
- clase
- privadas
- clasificación
- clientes
- comentario
- Algunos
- completar
- comprender
- Calcular
- configurado
- confusión
- Consola
- contiene
- continuo
- convertir
- Precio
- Para crear
- creado
- creación
- comisariada
- curaduría
- curva
- personalizado
- cliente
- Clientes
- datos
- puntos de datos
- Preparación de datos
- científico de datos
- conjuntos de datos
- tratar
- profundo
- Predeterminado
- entrega
- demostrar
- desplegado
- detalles
- Determinar
- Developer
- el desarrollo
- do
- documento
- No
- descargar
- durante
- cada una
- más fácil
- Eficaz
- esfuerzo
- enfatiza
- enfatizando
- Participar
- Empresa
- evaluación
- ejemplo
- ejemplos
- Excepto
- ejecutar
- existente
- espera
- Explicar
- f1
- Otoño
- familia
- Federal
- Archive
- archivos
- Finalmente
- financiero
- Encuentre
- siguiendo
- amigos
- Desde
- ser completados
- función
- promover
- Juegos
- generar
- obtener
- Go
- Va
- Gobierno
- guía
- guía
- orientaciones
- encargarse de
- Tienen
- es
- he
- ayuda
- su
- Cómo
- Como Hacer
- Sin embargo
- HTML
- http
- HTTPS
- ID
- Identifique
- ids
- importancia
- mejorar
- la mejora de
- in
- incluye
- Incluye
- aumente
- aumentado
- información
- inherentemente
- Las opciones de entrada
- Insights
- ejemplo
- Instrucciones
- Intelligence
- dentro
- introducir
- IT
- Trabajos
- Empleo
- solo
- Clave
- Label
- Etiquetas
- idioma
- Gran escala
- APRENDE:
- aprendizaje
- menos
- menos
- como
- LIMITE LAS
- Ubicación
- máquina
- máquina de aprendizaje
- para lograr
- Management
- marca
- Matrix
- max
- máximas
- Conoce a
- Menú
- métrico
- Métrica
- podría
- mínimo
- mínimo
- ML
- modelo
- modelos
- más,
- MEJOR DE TU
- Películas
- debe
- nombre
- Natural
- Procesamiento natural del lenguaje
- Navegación
- ¿ Necesita ayuda
- negativas
- Nuevo
- Next
- nlp
- cuaderno
- Aviso..
- número
- observar
- aparición
- of
- a menudo
- on
- ONE
- , solamente
- optimización
- Optimización
- optimizado
- optimizando
- para las fiestas.
- "nuestr
- salida
- cristal
- particular
- apasionado
- Pagar
- para
- actuación
- recoger
- tubo
- Platón
- Inteligencia de datos de Platón
- PlatónDatos
- jugando
- Por favor
- punto
- puntos
- positivo
- posible
- Publicación
- Artículos
- prácticas
- pragmático
- Precisión
- predicción
- preparación
- Preparar
- regalos
- previamente
- problemas
- Procesado
- tratamiento
- productivo
- Profesional
- apropiado
- proporcionar
- previsto
- público
- calidad
- azar
- proporción
- Crudo
- darse cuenta de
- remitir
- Requisitos
- Recursos
- Resultados
- Función
- sabio
- Científico
- Puntuación
- sector
- ver
- visto
- ve
- ayudar
- Servicios
- Varios
- tienes
- Shows
- sencillos
- Soft
- a medida
- Soluciones
- RESOLVER
- algo
- especializada
- soluciones y
- dividido
- estándar
- comienzo
- fundó
- paso
- pasos
- STORAGE
- almacenados
- tal
- ¡Prepárate!
- equipo
- la técnica
- técnicas
- terminal
- test
- probado
- texto
- que
- esa
- La
- su
- luego
- Estas
- ellos
- así
- aquellos
- amenaza
- Tres
- umbral
- 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
- a
- del IRS
- Total
- entrenado
- Formación
- dos
- bajo
- subrepresentado
- entender
- us
- federales de EE. UU.
- utilizan el
- fácil de utilizar
- usando
- propuesta de
- Video
- videojuegos
- Ver
- visibles
- Visite
- vs
- ver
- we
- web
- servicios web
- WELL
- cuando
- que
- mientras
- extendido
- seguirá
- ventana
- sin
- funciona
- Usted
- tú
- zephyrnet
- Zip