Partición y ejemplo

Importante

El soporte técnico de Machine Learning Studio (clásico) finalizará el 31 de agosto de 2024. Se recomienda realizar la transición a Azure Machine Learning antes de esa fecha.

A partir del 1 de diciembre de 2021 no se podrán crear recursos de Machine Learning Studio (clásico). Hasta el 31 de agosto de 2024, puede seguir usando los recursos de Machine Learning Studio (clásico) existentes.

La documentación de ML Studio (clásico) se está retirando y es posible que no se actualice en el futuro.

Crea varias particiones de un conjunto de datos en función del muestreo

Categoría: Transformación de datos/ Ejemplo y división

Nota:

Solo se aplica a: Machine Learning Studio (clásico)

Hay módulos para arrastrar y colocar similares en el diseñador de Azure Machine Learning.

Información general sobre el módulo

En este artículo se describe cómo usar el módulo Partición y ejemplo de Machine Learning Studio (clásico) para realizar el muestreo en un conjunto de datos o crear particiones a partir del conjunto de datos.

El muestreo es una herramienta importante en Machine Learning porque permite reducir el tamaño de un conjunto de datos mientras mantiene la misma relación de valores. Este módulo admite varias tareas relacionadas que son importantes en el aprendizaje automático:

  • División de los datos en varias subsecciones del mismo tamaño.

    Puede usar las particiones para la validación cruzada o para asignar casos a grupos aleatorios.

  • Separación de los datos en grupos para trabajar con los datos de un grupo específico.

    Después de asignar aleatoriamente casos a diferentes grupos, puede que deba modificar las características asociadas a un único grupo.

  • Muestreo.

    Puede extraer un porcentaje de los datos, aplicar un muestreo aleatorio o elegir una columna para usarla para equilibrar el conjunto de datos y realizar el muestreo estratificado de sus valores.

  • Creación de un conjunto de datos más pequeño para las pruebas.

    Si tiene una gran cantidad de datos, puede utilizar solo las n primeras filas al configurar el experimento y después cambiar al conjunto de datos completo cuando compile el modelo. También puede usar el muestreo para crear conjuntos de datos más pequeños para su uso en desarrollo.

Cómo configurar la partición y el ejemplo

Este módulo admite varios métodos para dividir los datos en particiones o para el muestreo. Elija el método en primer lugar y, a continuación, establezca las opciones adicionales necesarias para el método.

  • Obtener el número máximo de filas

Obtener las N filas superiores de un conjunto de datos

Utilice este modo para obtener solo las n primeras filas. Esta opción es útil si desea probar un experimento en un pequeño número de filas y no necesita equilibrar o muestrear los datos en ningún modo.

  1. Agregue el módulo Partición y ejemplo al experimento en Studio (clásico) y conecte el conjunto de datos.

  2. Partition or sample mode (Modo de partición o muestra): establezca esta opción en Principal.

  3. Número de filas que se seleccionan: escriba el número de filas que se devolverán.

    El número de filas que especifique debe ser un entero no negativo. Si el número de filas seleccionadas es superior al número de filas del conjunto de datos, se devuelve el conjunto de datos completo.

  4. Ejecute el experimento.

El módulo genera un único conjunto de datos que contiene solo el número especificado de filas. Las filas siempre se leen desde la parte superior del conjunto de datos.

Crear una muestra de datos

Esta opción es compatible con un muestreo aleatorio simple o un muestreo aleatorio estratificado. Esto es útil si desea crear un conjunto de datos de muestra más pequeño representativo para las pruebas.

  1. Agregue el módulo Partición y ejemplo al experimento en Studio (clásico) y conecte el conjunto de datos.

  2. Modo de partición o muestra: esta opción se establece en Muestreo.

  3. Velocidad de muestreo: escriba un valor entre 0 y 1. Este valor especifica el porcentaje de filas del conjunto de datos de origen que debe incluirse en el conjunto de datos de salida.

    Por ejemplo, si desea solo la mitad del conjunto de datos original, escriba 0.5 para indicar que la tasa de muestreo debe ser un 50 %.

    Las filas del conjunto de datos de entrada se ordenan de forma aleatoria y se colocan selectivamente en el conjunto de datos de salida, según la relación especificada.

  4. Valor de ed. aleatorio para el muestreo: opcionalmente, escriba un entero para usarlo como valor de valor de valor de valor.

    Esta opción es importante si desea que las filas se dividan de la misma manera cada vez. El valor predeterminado es 0, lo que significa que se genera una inicialización inicial basada en el reloj del sistema. Esto puede conducir a resultados ligeramente diferentes cada vez que ejecute el experimento.

  5. División estratificada para el muestreo: seleccione esta opción si es importante que las filas del conjunto de datos se dividan uniformemente por alguna columna de clave antes del muestreo.

    Para la Stratification key column for sampling (Columna de clave de estratificación para muestreo), seleccione una sola columna de estratos a fin de utilizarla al dividir el conjunto de datos. A continuación, las filas del conjunto de datos se dividen como sigue:

    1. Todas las filas de entrada se agrupan (estratificadas) por los valores de la columna de estratos especificada.

    2. Las filas se ordenan aleatoriamente dentro de cada grupo.

    3. Cada grupo se agrega de forma selectiva al conjunto de datos de salida para cumplir con la relación especificada.

    Para más información sobre el muestreo estratificado, consulte la sección Notas técnicas .

  6. Ejecute el experimento.

    Con esta opción, el módulo genera un único conjunto de datos que contiene una muestra representativa de los datos.

    La salida no contiene la parte sin muestreo restante del conjunto de datos. Sin embargo, puede crear una combinación en los conjuntos de datos mediante el módulo Apply SQL Transformation (Aplicar SQL transformación), para determinar qué filas no se usaron.

Dividir los datos en particiones

Use esta opción si desea dividir el conjunto de datos en subconjuntos de los datos. Esta opción también es útil cuando desea crear un número personalizado de plegamientos para la validación cruzada o dividir filas en varios grupos.

  1. Agregue el módulo Partición y ejemplo al experimento en Studio (clásico) y conecte el conjunto de datos.

  2. Para el Partition or sample mode (Modo de partición o muestra), seleccione Assign to Folds (Asignar a plegamientos).

  3. Use replacement in the partitioning (Usar reemplazo en la creación de particiones): seleccione esta opción si desea que la fila muestreada se vuelva a poner en el grupo de filas para poder reutilizarla. Como resultado, la misma fila podría asignarse a varios plegamientos.

    Si no utiliza el reemplazo (opción predeterminada), la fila muestreada no se vuelve a colocar en el grupo de filas para poder reutilizarla. Como resultado, cada fila puede asignarse a solo un plegamiento.

  4. Randomized split (División aleatoria): seleccione esta opción si desea que las filas se asignen aleatoriamente a plegamientos.

    Si no selecciona esta opción, las filas se asignan a los plegamientos con el método round-robin.

  5. Valor de ed. aleatorio: opcionalmente, escriba un entero que se usará como valor de valor de ed. Esta opción es importante si desea que las filas se dividan de la misma manera cada vez. En caso contrario, el valor predeterminado de 0 significa que se usará una inicialización inicial aleatoria.

  6. Especifique el método del particionador: indique cómo desea que los datos se apreorcione en cada partición, mediante estas opciones:

    • Partition evenly (Partición uniforme): use esta opción para colocar un número igual de filas en cada partición. Para especificar el número de particiones de salida, escriba un número entero en el cuadro de texto Specify number of folds to split evenly into (Especificar número de plegamientos en los que se debe dividir uniformemente).

    • Partition with customized proportions (Partición con proporciones personalizadas): Use esta opción para especificar el tamaño de cada partición como una lista separada por comas.

      Por ejemplo, si desea crear tres particiones y la primera partición va a contener el 50 % de los datos y las dos particiones restantes van a contener cada una el 25 % de los datos, haga clic en el cuadro de texto List of proportions separated by comma (Lista de proporciones separadas por comas) y escriba estos números: .5, .25, .25

      La suma de todos los tamaños de partición debe ser exactamente 1.

      • Si escribe números que se suman menos de 1, se crea una partición adicional para contener las filas restantes. Por ejemplo, si escribe los valores ,2 y ,3, se crea una tercera partición que contiene el 50 por ciento restante de todas las filas.

      • Si escribe números que se suman a más de 1, se produce un error al ejecutar el experimento.

  7. Stratified split (División estratificada): seleccione esta opción si desea que las filas se estratifiquen al dividir y, a continuación, elija la columna de estratos.

    Para más información sobre el muestreo estratificado, consulte la sección Notas técnicas .

  8. Ejecute el experimento.

    Con esta opción, el módulo genera varios conjuntos de datos con particiones mediante las reglas que especificó.

Usar datos de una partición predefinida

Esta opción se usa cuando ha dividido un conjunto de datos en varias particiones y ahora desea cargar cada partición para su posterior análisis o procesamiento.

  1. Agregue el módulo Partición y ejemplo al experimento en Studio (clásico).

  2. Conéctelo a la salida de una instancia anterior de Partición y muestra. Esa instancia debe haber usado la opción Assign to Folds (Asignar a plegamientos) para generar algunas particiones.

  3. Partition or sample mode (Modo de partición o muestra): seleccione Pick Fold (Seleccionar plegamiento).

  4. Especifique de qué plegado se va a muestrear: para seleccionar una partición que se va a usar, escriba su índice. Los índices de partición están basados en 1. Por ejemplo, si ha dividido el conjunto de datos en tres partes, las particiones tendrían los índices de 1, 2 y 3.

    Si escribe un valor de índice no válido, se produce un error en tiempo de diseño: "Error 0018: El conjunto de datos contiene datos no válidos".

    Además de agrupar el conjunto de datos por plegamientos, puede separar el conjunto de datos en dos grupos: un plegamiento de destino y todo lo demás. Para ello, escriba el índice de un único plegamiento y, a continuación, seleccione la opción Pick complement of the selected fold (Seleccionar complemento del plegamiento seleccionado), para obtener todo excepto los datos del plegamiento especificado.

  5. Si trabaja con varias particiones, debe agregar instancias adicionales del módulo Partición y muestra para controlar cada partición.

    Por ejemplo, supongamos que los pacientes previamente particionados en cinco plegamientos con la edad. Para trabajar con cada plegado individual, necesita cinco copias del módulo Partición y ejemplo y, en cada uno de ellos, seleccione un plegado diferente.

    Sugerencia

    En el experimento de ejemplo, División de partición y ejemplo, se muestra esta técnica.

  6. Ejecute el experimento.

    Con esta opción, el módulo genera un único conjunto de datos que contiene solo las filas asignadas a ese subconjunto.

Nota:

No se puede ver las designaciones de plegamiento directamente; están presentes solo en los metadatos.

Ejemplos

Para obtener ejemplos de cómo se usa este módulo, consulte el Azure AI Gallery:

  • Validación cruzada para la clasificación binaria: se aplica una frecuencia de muestreo del 20 % para crear un conjunto de datos muestreado aleatoriamente más pequeño. El conjunto de datos del censo original tenía más de 30 000 filas. el conjunto de datos muestreado tiene aproximadamente 6500.

  • Validación cruzada para regresión: los datos se asignan aleatoria e uniformemente a cinco plegamientos, sin estratificación, y los resultados se usan para la validación cruzada.

  • Dividir partición y ejemplo: muestra varias maneras de usar la creación de particiones y el muestreo. En primer lugar, la opción Asignar a plegaciones se usa para asignar filas del conjunto de datos a uno de los tres grupos de tamaño uniforme. A continuación, se agregan tres instancias más de Partition y Sample mediante el modo Pick Fold para aplicar operaciones a subconjuntos de los datos.

    • En el primer plegado (índice de 1), las filas se dividen aleatoriamente.
    • En el segundo plegado (índice de 2), las filas se dividen por educación.
    • En el tercer plegamiento (índice de 3), las filas se dividen por edad.

Notas técnicas

  • La columna de estratificación debe ser categórica con valores discretos. Si la columna aún no es categórica y recibe un error, use Editar metadatos para cambiar las propiedades de la columna.

  • La columna de capa que especifique no puede contener datos continuos: es decir, datos numéricos con valores de punto flotante en cada celda. De lo contrario, el módulo no puede procesar los datos y devuelve un error.

    El motivo es que cualquier columna usada para la estratificación debe tener un conjunto finito de valores posibles. Si la columna de capa especificada contiene valores de punto flotante y la columna no es de tipo categórico, puede que contenga un número infinito de valores.

  • Si la columna strata contiene valores booleanos y desea que se interpreten como categóricos, debe usar el módulo Editar metadatos para cambiar la etiqueta de metadatos.

  • Si la columna de capa contiene datos numéricos o de cadena con demasiados valores únicos, la columna no es un buen candidato para el muestreo estratificado.

Más información sobre el muestreo estratificado

El muestreo estratificado garantiza que los subconjuntos de los datos tengan un muestreo representativo de la columna de capa seleccionada. Esta técnica es útil, por ejemplo, cuando quiere asegurarse de que los datos de entrenamiento contienen la misma distribución de valores de edad que tienen los datos de prueba, o viceversa. También puede que le interese estratificar una columna de sexo en un estudio de atención sanitaria para asegurarse de que los hombres y las mujeres se distribuyan uniformemente al crear particiones de los datos. La estratificación garantiza que las relaciones de los valores seleccionados se conservan.

Para especificar los valores en los que se deben separar los datos, seleccione una sola columna para que sirva como columna de capa.

Este módulo requiere que la columna de capa sea una columna categórica. Si quiere usar una columna de valores enteros para los estratos, es aconsejable asignar un tipo de categoría a esta columna. Puede hacerlo a través del esquema de los datos antes de agregarlos a Machine Learning Studio (clásico), o bien puede actualizar los metadatos de la columna mediante Editar metadatos.

Las columnas con datos continuos (es decir, datos numéricos con valores de número de punto flotante en cada celda) no se pueden utilizar como columnas de estratos. Si se produce un error, puede usar Agrupar datos en cubos para agrupar los valores en intervalos discretos y, a continuación, usar Editar metadatos para garantizar que la columna se tratará como categórica.

Entradas esperadas

Nombre Tipo Descripción
Dataset Tabla de datos Conjunto de datos que se va a dividir

Parámetros del módulo

Nombre Intervalo Tipo Valor predeterminado Descripción
Modo de partición o muestra Lista Métodos de muestreo muestreo Seleccionar el modo de partición o muestreo
Usar reemplazo en la creación de particiones Any Boolean False Indique si los plegamientos deben estar desconexos (valor predeterminado: sin reemplazo) o superpuestos (true: usar reemplazo)
División aleatoria Any Boolean True Indique si la división es aleatoria
Inicialización aleatoria Any Entero 0 Especificar un valor de inicialización para el generador de números aleatorios
Especificar el método del particionador Lista Métodos de partición Partición uniforme Seleccione Partición uniforme para particionar en plegaciones del mismo tamaño o Partición con proporciones personalizadas para dividir en plegados de tamaño personalizado.
Especificar el número de subconjuntos en el que realizar la división uniformemente >=1 Entero 5 Selección de una serie de particiones en las que dividir
División estratificada Lista Tipo Verdadero/Falso False Indique si la división se estratifica
Columna de clave de estratificación Any ColumnSelection Contiene la clave de estratificación
Lista de proporciones separadas por comas Any Cadena Enumerar proporciones, separadas por comas
División estratificada división para asignación de subconjuntos personalizada Any Tipo Verdadero/Falso False Indique si la división está estratificada para las asignaciones de pliegues personalizadas
Columna de clave de estratificación para asignación de subconjunto personalizada Any ColumnSelection Contiene la clave de estratificación para las asignaciones de pliegues personalizadas
Especificar qué subconjunto se va a muestrear >=1 Entero 1 Contiene el índice del plegado que se va a muestrear.
Seleccionar complemento del subconjunto seleccionado Any Boolean False Selección del complemento del plegado especificado
Tasa de muestreo Any Float 0,01 Elija una frecuencia de muestreo
Valor de inicialización aleatorio para el muestreo Any Entero 0 Especifique un valor de inicialización para el generador de números aleatorios de cara al muestreo
División estratificada para el muestreo Any Verdadero/Falso False Indique si la división se estratifica para el muestreo
Columna de clave de estratificación para el muestreo Any ColumnSelection Contiene la clave de estratificación para el muestreo
Número de filas para seleccionar >=0 Entero 10 Elija un número máximo de registros que se permitirá que pasen al siguiente módulo

Salidas

Nombre Tipo Descripción
Conjunto de datos Tabla de datos Conjunto de datos resultante de la división

Consulte también

Muestrear y dividir
División de datos
Edición de metadatos
Agrupación de datos en intervalos