Wrangler de datos de Amazon SageMaker lo ayuda a comprender, agregar, transformar y preparar datos para el aprendizaje automático (ML) desde una única interfaz visual. Contiene más de 300 transformaciones de datos integradas para que pueda normalizar, transformar y combinar funciones rápidamente sin tener que escribir ningún código.
Los profesionales de la ciencia de datos generan, observan y procesan datos para resolver problemas comerciales en los que necesitan transformar y extraer características de conjuntos de datos. Las transformaciones, como la codificación ordinal o la codificación one-hot, aprenden codificaciones en su conjunto de datos. Estas salidas codificadas se conocen como parámetros entrenados. A medida que los conjuntos de datos cambian con el tiempo, puede ser necesario reajustar las codificaciones en datos que no se habían visto anteriormente para mantener el flujo de transformación relevante para sus datos.
Nos complace anunciar la función de reacondicionamiento de parámetros entrenados, que le permite usar parámetros entrenados anteriormente y reajustarlos como desee. En esta publicación, demostramos cómo usar esta función.
Descripción general de la función de reacondicionamiento de Data Wrangler
Ilustramos cómo funciona esta función con el siguiente ejemplo, antes de profundizar en los detalles de la función de reacondicionamiento de parámetros entrenados.
Suponga que su conjunto de datos de clientes tiene una característica categórica para country
representado como cadenas como Australia
y Singapore
. Los algoritmos de ML requieren entradas numéricas; por lo tanto, estos valores categóricos deben codificarse en valores numéricos. Codificar datos categóricos es el proceso de crear una representación numérica para categorías. Por ejemplo, si su categoría país tiene valores Australia
y Singapore
, puede codificar esta información en dos vectores: [1, 0] para representar Australia
y [0, 1] para representar Singapore
. La transformación utilizada aquí es una codificación one-hot y la nueva salida codificada refleja los parámetros entrenados.
Después de entrenar el modelo, con el tiempo sus clientes pueden aumentar y tendrá más valores distintos en la lista de países. El nuevo conjunto de datos podría contener otra categoría, India
, que no formaba parte del conjunto de datos original, lo que puede afectar la precisión del modelo. Por lo tanto, es necesario volver a entrenar su modelo con los nuevos datos que se han recopilado con el tiempo.
Para superar este problema, debe actualizar la codificación para incluir la nueva categoría y actualizar la representación vectorial según su último conjunto de datos. En nuestro ejemplo, la codificación debe reflejar la nueva categoría para el country
, cual es India
. Comúnmente nos referimos a este proceso de actualización de una codificación como una operación de reacondicionamiento. Después de realizar la operación de reacondicionamiento, obtiene la nueva codificación: Australia
: [1, 0, 0], Singapore
: [0, 1, 0], y India
: [0, 0, 1]. Reajustar la codificación one-hot y luego volver a entrenar el modelo en el nuevo conjunto de datos da como resultado predicciones de mejor calidad.
La función de reacondicionamiento de parámetros entrenados de Data Wrangler es útil en los siguientes casos:
- Se agregan nuevos datos al conjunto de datos. – Es necesario volver a entrenar el modelo ML cuando el conjunto de datos se enriquece con nuevos datos. Para lograr resultados óptimos, necesitamos reajustar los parámetros entrenados en el nuevo conjunto de datos.
- Entrenamiento en un conjunto de datos completo después de realizar ingeniería de características en datos de muestra – Para un conjunto de datos grande, se considera una muestra del conjunto de datos para aprender los parámetros entrenados, que pueden no representar su conjunto de datos completo. Necesitamos volver a aprender los parámetros entrenados en el conjunto de datos completo.
Las siguientes son algunas de las transformaciones de Data Wrangler más comunes realizadas en el conjunto de datos que se benefician de la opción de reacondicionamiento de parámetros entrenados:
Para obtener más información sobre las transformaciones en Data Wrangler, consulte Transformar datos.
En esta publicación, mostramos cómo procesar estos parámetros entrenados en conjuntos de datos usando Data Wrangler. Puede usar flujos de Data Wrangler en trabajos de producción para reprocesar sus datos a medida que crecen y cambian.
Resumen de la solución
Para esta publicación, demostramos cómo usar la función de parámetros entrenados de reacondicionamiento de Data Wrangler con el conjunto de datos disponible públicamente en Kaggle: Datos de vivienda de EE. UU. de Zillow, Propiedades en venta en los Estados Unidos. Tiene los precios de venta de viviendas en varias distribuciones geográficas de viviendas.
El siguiente diagrama ilustra la arquitectura de alto nivel de Data Wrangler utilizando la función de reacondicionamiento de parámetros entrenados. También mostramos el efecto sobre la calidad de los datos sin el parámetro entrenado de reacondicionamiento y contrastamos los resultados al final.
El flujo de trabajo incluye los siguientes pasos:
- Realizar análisis de datos exploratorios – Cree un nuevo flujo en Data Wrangler para iniciar el análisis exploratorio de datos (EDA). Importe datos comerciales para comprender, limpiar, agregar, transformar y preparar sus datos para la capacitación. Referirse a Explore las capacidades de Amazon SageMaker Data Wrangler con conjuntos de datos de muestra para obtener más detalles sobre cómo realizar EDA con Data Wrangler.
- Crear un trabajo de procesamiento de datos – Este paso exporta todas las transformaciones que realizó en el conjunto de datos como un archivo de flujo almacenado en el configurado Servicio de almacenamiento simple de Amazon (Amazon S3) ubicación. El trabajo de procesamiento de datos con el archivo de flujo generado por Data Wrangler aplica las transformaciones y los parámetros entrenados aprendidos en su conjunto de datos. Cuando se completa el trabajo de procesamiento de datos, los archivos de salida se cargan en la ubicación de Amazon S3 configurada en el nodo de destino. Tenga en cuenta que la opción de reacondicionamiento está desactivada de forma predeterminada. Como alternativa a la ejecución instantánea del trabajo de procesamiento, también puede programar un trabajo de procesamiento en unos pocos clics usando Data Wrangler - Crear trabajo para ejecutar en momentos específicos.
- Cree un trabajo de procesamiento de datos con la función de reacondicionamiento de parámetros entrenados – Seleccione la nueva función de reacondicionamiento de parámetros entrenados mientras crea el trabajo para forzar el reaprendizaje de sus parámetros entrenados en su conjunto de datos completo o reforzado. Según la configuración de ubicación de Amazon S3 para almacenar el archivo de flujo, el trabajo de procesamiento de datos crea o actualiza el nuevo archivo de flujo. Si configura la misma ubicación de Amazon S3 que en el Paso 2, el trabajo de procesamiento de datos actualiza el archivo de flujo generado en el Paso 2, que puede usarse para mantener su flujo relevante para sus datos. Al finalizar el trabajo de procesamiento, los archivos de salida se cargan en el depósito S3 configurado del nodo de destino. Puede usar el flujo actualizado en todo su conjunto de datos para un flujo de trabajo de producción.
Requisitos previos
Antes de comenzar, cargue el conjunto de datos en un depósito de S3 y luego impórtelo a Data Wrangler. Para obtener instrucciones, consulte Importar datos de Amazon S3.
Veamos ahora los pasos mencionados en el diagrama de arquitectura.
Realizar EDA en Data Wrangler
Para probar la función de reacondicionamiento de parámetros entrenados, configure el siguiente análisis y transformación en Data Wrangler. Al final de la configuración de EDA, Data Wrangler crea un archivo de flujo capturado con parámetros entrenados del conjunto de datos.
- Cree un nuevo flujo en Amazon SageMaker Data Wrangler para el análisis exploratorio de datos.
- Importe los datos comerciales que cargó en Amazon S3.
- Puede obtener una vista previa de los datos y las opciones para elegir el tipo de archivo, el delimitador, el muestreo, etc. Para este ejemplo, usamos el primera k opción de muestreo proporcionada por Data Wrangler para importar los primeros 50,000 XNUMX registros del conjunto de datos.
- Elige Importa.
- Después de verificar la coincidencia de tipos de datos aplicada por Data Wrangler, agregue un nuevo análisis.
- Tipo de análisis, escoger Informe de información y calidad de datos.
- Elige Crear.
Con el Informe de información y calidad de datos, obtiene un breve resumen del conjunto de datos con información general, como valores faltantes, valores no válidos, tipos de características, recuentos de valores atípicos y más. Puede elegir características property_type
y city
para aplicar transformaciones en el conjunto de datos para comprender la función de parámetro entrenado de reacondicionamiento.
Centrémonos en la característica. property_type
del conjunto de datos. en el informe Detalles de funciones sección, se puede ver la property_type
, que es una función categórica, y seis valores únicos derivados del conjunto de datos muestreado de 50,000 XNUMX por Data Wrangler. El conjunto de datos completo puede tener más categorías para la característica property_type
. Para una característica con muchos valores únicos, puede preferir la codificación ordinal. Si la característica tiene algunos valores únicos, se puede utilizar un enfoque de codificación one-hot. Para este ejemplo, optamos por la codificación one-hot en property_type
.
Del mismo modo, para el city
función, que es un tipo de datos de texto con una gran cantidad de valores únicos, apliquemos la codificación ordinal a esta función.
- Navegue hasta el flujo de Data Wrangler, elija el signo más y elija Agregar transformación.
- Elija el Codificar categórico Opción para transformar características categóricas.
Desde el Informe de calidad y perspectivas de datos, característica property_type
muestra seis categorías únicas: CONDO
, LOT
, MANUFACTURED
, SINGLE_FAMILY
, MULTI_FAMILY
y TOWNHOUSE
.
- Transformar, escoger Codificación one-hot.
Después de aplicar la codificación one-hot en la característica property_type
, puede obtener una vista previa de las seis categorías como características separadas agregadas como nuevas columnas. Tenga en cuenta que se tomaron muestras de 50,000 XNUMX registros de su conjunto de datos para generar esta vista previa. Al ejecutar un trabajo de procesamiento de Data Wrangler con este flujo, estas transformaciones se aplican a todo su conjunto de datos.
- Agregue una nueva transformación y elija Codificar categórico para aplicar una transformación en la característica
city
, que tiene una mayor cantidad de valores de texto categóricos únicos. - Para codificar esta característica en una representación numérica, elija Codificación ordinal para Transformar.
- Elija Vista previa en esta transformación.
Puede ver que la característica categórica city
se asigna a valores ordinales en la columna de salida e_city
.
- Agregue este paso eligiendo Actualizar.
- Puede establecer el destino en Amazon S3 para almacenar las transformaciones aplicadas en el conjunto de datos para generar la salida como archivo CSV.
Data Wrangler almacena el flujo de trabajo que definió en la interfaz de usuario como un archivo de flujo y lo carga en la ubicación de Amazon S3 del trabajo de procesamiento de datos configurado. Este archivo de flujo se usa cuando crea trabajos de procesamiento de Data Wrangler para aplicar las transformaciones en conjuntos de datos más grandes o para transformar nuevos datos de refuerzo para volver a entrenar el modelo.
Iniciar un trabajo de procesamiento de datos de Data Wrangler sin reacondicionamiento habilitado
Ahora puede ver cómo la opción de reacondicionamiento usa parámetros entrenados en nuevos conjuntos de datos. Para esta demostración, definimos dos trabajos de procesamiento de Data Wrangler que operan con los mismos datos. El primer trabajo de procesamiento no permitirá el reacondicionamiento; para el segundo trabajo de procesamiento, usamos reacondicionamiento. Comparamos los efectos al final.
- Elige Crear trabajo para iniciar un trabajo de procesamiento de datos con Data Wrangler.
- Nombre del trabajo, ingresa un nombre.
- under Parámetros entrenados, no seleccione Reinstale.
- Elige Configurar trabajo.
- Configure los parámetros del trabajo, como los tipos de instancia, el tamaño del volumen y la ubicación de Amazon S3 para almacenar el archivo de flujo de salida.
- Data Wrangler crea un archivo de flujo en la ubicación S3 del archivo de flujo. El flujo usa transformaciones para entrenar parámetros, y luego usamos la opción de reacondicionamiento para volver a entrenar estos parámetros.
- Elige Crear.
Espere a que se complete el trabajo de procesamiento de datos para ver los datos transformados en el depósito de S3 configurado en el nodo de destino.
Inicie un trabajo de procesamiento de datos de Data Wrangler con reacondicionamiento habilitado
Vamos a crear otro trabajo de procesamiento habilitado con la función de reacondicionamiento de parámetros capacitados habilitada. Esta opción aplica los parámetros entrenados que se volvieron a aprender en todo el conjunto de datos. Cuando se completa este trabajo de procesamiento de datos, se crea o actualiza un archivo de flujo en la ubicación configurada de Amazon S3.
- Elige Crear trabajo.
- Nombre del trabajo, ingresa un nombre.
- Parámetros entrenados, seleccione Reinstale.
- Si usted elige Ver todo, puede revisar todos los parámetros entrenados.
- Elige Configurar trabajo.
- Ingrese la ubicación del archivo de flujo de Amazon S3.
- Elige Crear.
Espere a que se complete el trabajo de procesamiento de datos.
Consulte el depósito de S3 configurado en el nodo de destino para ver los datos generados por el trabajo de procesamiento de datos que ejecuta las transformaciones definidas.
Exportar a código Python para ejecutar trabajos de procesamiento de Data Wrangler
Como alternativa a iniciar los trabajos de procesamiento con la opción Crear trabajo en Data Wrangler, puede desencadenar los trabajos de procesamiento de datos exportando el flujo de Data Wrangler a un cuaderno de Jupyter Notebook. Data Wrangler genera un cuaderno Jupyter con entradas, salidas, configuraciones de trabajo de procesamiento y código para verificaciones de estado de trabajo. Puede cambiar o actualizar los parámetros según sus requisitos de transformación de datos.
- Elija el signo más junto a la final Transformar nodo.
- Elige Exportar a y Amazon S3 (a través de Jupyter Notebook).
Puede ver un cuaderno Jupyter Notebook abierto con entradas, salidas, configuraciones de trabajo de procesamiento y código para verificaciones de estado de trabajo.
- Para hacer cumplir la opción de reacondicionamiento de parámetros entrenados a través del código, configure el
refit
parámetro paraTrue
.
Comparar los resultados del trabajo de procesamiento de datos
Una vez que se completan los trabajos de procesamiento de Data Wrangler, debe crear dos nuevos flujos de Data Wrangler con la salida generada por los trabajos de procesamiento de datos almacenados en el destino de Amazon S3 configurado.
Puede consultar la ubicación configurada en la carpeta de destino de Amazon S3 para revisar los resultados de los trabajos de procesamiento de datos.
Para inspeccionar los resultados del trabajo de procesamiento, cree dos nuevos flujos de Data Wrangler utilizando el Informe de información y calidad de datos para comparar los resultados de la transformación.
- Cree un nuevo flujo en Amazon SageMaker Data Wrangler.
- Importe el trabajo de procesamiento de datos sin reajustar el archivo de salida habilitado desde Amazon S3.
- Agregar un nuevo análisis.
- Tipo de análisis, escoger Informe de información y calidad de datos.
- Elige Crear.
Repita los pasos anteriores y cree un nuevo flujo de gestión de datos para analizar la salida del trabajo de procesamiento de datos con el reacondicionamiento habilitado.
Ahora veamos los resultados de los trabajos de procesamiento para la característica property_type
utilizando los informes de calidad de datos y perspectivas. Desplácese a los detalles de la función en la lista de Informes de datos e información feature_type
.
El trabajo de procesamiento de parámetros entrenados reajustado ha reajustado los parámetros entrenados en todo el conjunto de datos y codificado el nuevo valor APARTMENT
con siete valores distintos en el conjunto de datos completo.
El trabajo de procesamiento normal aplicó los parámetros entrenados del conjunto de datos de muestra, que tienen solo seis valores distintos para el property_type
rasgo. Para datos con feature_type
APARTMENT
, la estrategia de manejo inválida Se aplica Skip y el trabajo de procesamiento de datos no aprende esta nueva categoría. La codificación one-hot ha saltado esta nueva categoría presente en los nuevos datos, y la codificación salta la categoría APARTMENT
.
Centrémonos ahora en otra característica, city
. El trabajo de procesamiento de parámetros capacitados de reacondicionamiento ha vuelto a aprender todos los valores disponibles para el city
característica, teniendo en cuenta los nuevos datos.
Como se muestra en el Resumen de funciones sección del informe, la nueva columna de funciones codificadas e_city
tiene parámetros 100 % válidos mediante el uso de la función de reacondicionamiento de parámetros entrenados.
Por el contrario, el trabajo de procesamiento normal tiene un 82.4 % de valores faltantes en la nueva columna de funciones codificadas e_city
. Este fenómeno se debe a que solo el conjunto de muestra de parámetros entrenados aprendidos se aplica en el conjunto de datos completo y el trabajo de procesamiento de datos no aplica reacondicionamiento.
Los siguientes histogramas representan la característica codificada ordinal e_city
. El primer histograma es de la característica transformada con la opción de reacondicionamiento.
El siguiente histograma es de la característica transformada sin la opción de reacondicionamiento. La columna naranja muestra los valores faltantes (NaN) en el Informe de información y calidad de los datos. Los nuevos valores que no se aprenden del conjunto de datos de muestra se reemplazan como No es un número (NaN) según lo configurado en la interfaz de usuario de Data Wrangler estrategia de manejo inválida.
El trabajo de procesamiento de datos con el parámetro entrenado de reacondicionamiento volvió a aprender el property_type
y city
características teniendo en cuenta los nuevos valores de todo el conjunto de datos. Sin el parámetro entrenado de reacondicionamiento, el trabajo de procesamiento de datos solo usa los parámetros entrenados previamente aprendidos del conjunto de datos de muestra. Luego los aplica a los nuevos datos, pero los nuevos valores no se tienen en cuenta para la codificación. Esto tendrá implicaciones en la precisión del modelo.
Limpiar
Cuando no esté utilizando Data Wrangler, es importante cerrar la instancia en la que se ejecuta para evitar incurrir en cargos adicionales.
Para evitar perder trabajo, guarde su flujo de datos antes de apagar Data Wrangler.
- Para guardar su flujo de datos en Estudio Amazon SageMaker, escoger Archive, A continuación, elija Guardar flujo de datos Wrangler. Data Wrangler guarda automáticamente su flujo de datos cada 60 segundos.
- Para cerrar la instancia de Data Wrangler, en Studio, elija Ejecución de instancias y kernels.
- under APLICACIONES EN EJECUCIÓN, elija el icono de apagado junto a la aplicación sagemaker-data-wrangler-1.0.
- Elige Apagar todo para confirmar.
Data Wrangler se ejecuta en una instancia ml.m5.4xlarge. Esta instancia desaparece de INSTANCIAS EN EJECUCIÓN cuando cierra la aplicación Data Wrangler.
Después de cerrar la aplicación Data Wrangler, debe reiniciarse la próxima vez que abra un archivo de flujo de Data Wrangler. Esto puede tardar unos minutos.
Conclusión
En esta publicación, brindamos una descripción general de la función de reacondicionamiento de parámetros entrenados en Data Wrangler. Con esta nueva característica, puede almacenar los parámetros entrenados en el flujo de Data Wrangler, y los trabajos de procesamiento de datos usan los parámetros entrenados para aplicar las transformaciones aprendidas en grandes conjuntos de datos o conjuntos de datos de refuerzo. Puede aplicar esta opción para vectorizar características de texto, datos numéricos y manejar valores atípicos.
Preservar los parámetros entrenados a lo largo del procesamiento de datos del ciclo de vida de ML simplifica y reduce los pasos de procesamiento de datos, admite una ingeniería de características sólida y admite el entrenamiento de modelos y el entrenamiento de refuerzo en nuevos datos.
Le recomendamos que pruebe esta nueva función para sus requisitos de procesamiento de datos.
Sobre los autores
Hariharan Suresh es arquitecto sénior de soluciones en AWS. Le apasionan las bases de datos, el aprendizaje automático y el diseño de soluciones innovadoras. Antes de unirse a AWS, Hariharan fue arquitecto de productos, especialista en implementación de banca central y desarrollador, y trabajó con organizaciones BFSI durante más de 11 años. Fuera de la tecnología, disfruta del parapente y el ciclismo.
santosh kulkarni es un Arquitecto de Soluciones Empresariales en Amazon Web Services que trabaja con clientes deportivos en Australia. Le apasiona crear aplicaciones distribuidas a gran escala para resolver problemas comerciales utilizando su conocimiento en AI/ML, big data y desarrollo de software.
vishaal kapoor es un científico aplicado sénior con AWS AI. Le apasiona ayudar a los clientes a comprender sus datos en Data Wrangler. En su tiempo libre, practica mountain bike, snowboard y pasa tiempo con su familia.
Aniketh Manjunath es ingeniero de desarrollo de software en Amazon SageMaker. Ayuda a dar soporte a Amazon SageMaker Data Wrangler y le apasionan los sistemas de aprendizaje automático distribuido. Fuera del trabajo, le gusta caminar, ver películas y jugar al cricket.
- AI
- arte ai
- generador de arte ai
- robot ai
- Amazon SageMaker
- Wrangler de datos de Amazon SageMaker
- inteligencia artificial
- certificación de inteligencia artificial
- inteligencia artificial en banca
- robots de inteligencia artificial
- robots de inteligencia artificial
- software de inteligencia artificial
- Aprendizaje automático de AWS
- blockchain
- conferencia blockchain ai
- Coingenius
- inteligencia artificial conversacional
- criptoconferencia ai
- de dall
- deep learning
- google ai
- Intermedio (200)
- máquina de aprendizaje
- Platón
- platón ai
- Inteligencia de datos de Platón
- Juego de Platón
- PlatónDatos
- juego de platos
- escala ia
- sintaxis
- zephyrnet