Share via


Dividir los datos mediante la división de filas

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.

En este artículo se describe cómo usar la opción Dividir filas del módulo Dividir datos de Machine Learning Studio (clásico). Esta opción es especialmente útil cuando necesita dividir los conjuntos de datos usados para el entrenamiento y las pruebas, ya sea aleatoriamente o por algunos criterios.

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.

La opción Dividir filas admite divisiones aleatorias y estratificadas. Por ejemplo, puede especificar una división de 70 a 30 o una división de 10 a 90 con la variable de destino representada igualmente en ambos conjuntos de datos.

Para obtener información general sobre la creación de particiones de datos para experimentos de aprendizaje automático, consulte Split Data and Partition and Split (Dividir datos y dividir y dividir).

Otras opciones del módulo Split Data (Dividir datos) admiten diferentes maneras de dividir los datos:

Dividir un conjunto de datos en dos grupos

  1. Agregue el módulo Split Data (Dividir datos) al experimento en Studio (clásico) y conecte el conjunto de datos que desea dividir.

  2. Para Splitting mode, elija Split rows.

  3. Fraction of rows in the first output dataset (Fracción de filas del primer conjunto de datos de salida). Use esta opción para determinar cuántas filas pertenecen a la primera salida (izquierda). Todas las demás filas irán a la segunda salida (derecha).

    El coeficiente representa el porcentaje de filas que se envían para el primer conjunto de datos de salida, por lo que debe escribir un número decimal comprendido entre 0 y 1.

    Por ejemplo, si escribe 0,75 como valor, el conjunto de datos se dividiría usando una relación de 75:25, donde el 75 % de las filas se enviará al primer conjunto de datos de salida, y el 25 % se enviará al segundo conjunto de datos de salida.

  4. Seleccione la opción Randomized split (División aleatoria) si quiere realizar la selección de datos en los dos grupos de forma aleatoria. Esta es la opción preferida cuando se crean conjuntos de datos de entrenamiento y de prueba.

  5. Valor de inicialización aleatorio: escriba un valor entero no negativo para inicializar la secuencia seudoalearia de instancias que se va a usar. Este valor de inicialización predeterminado se usa en todos los módulos que generan números aleatorios.

    Especificar un valor de inicialización hace que los resultados sean reproducibles en general. Si tiene que repetir los resultados de una operación de división, debe especificar un valor de inicialización para el generador de números aleatorios. De lo contrario, el valor de inicialización aleatorio se establece de forma predeterminada en 0, lo que significa que el valor de inicialización inicial se obtiene a partir del reloj del sistema. Como consecuencia, la distribución de datos puede ser ligeramente diferente cada vez que haga una división.

  6. Stratified split (División estratificada): Establezca esta opción en True para garantizar que los dos conjuntos de datos de resultados contengan una muestra representativa de los valores de la columna de estratos o la columna de clave de estratificación.

    Con el muestreo estratificado, los datos se dividen de forma que cada conjunto de datos de salida obtiene aproximadamente el mismo porcentaje de cada valor de destino. Por ejemplo, es posible que quiera asegurarse de que los conjuntos de entrenamiento y pruebas están más o menos equilibrados con respecto al resultado o con respecto a alguna otra columna, como el sexo.

  7. Ejecute el experimento o haga clic con el botón derecho en el módulo y seleccione Ejecutar seleccionado.

Ejemplos

En los ejemplos siguientes se muestra cómo realizar divisiones simples mediante el modo Dividir filas.

Dividir en dos partes iguales

Agregue el módulo Split Data (Dividir datos) después del conjunto de datos sin ningún otro cambio. De forma predeterminada, el módulo divide el conjunto de datos en dos partes iguales. Si los datos tienen un número impar de filas, la segunda salida obtiene el resto.

Dividir en terceras partes

Supongamos que desea dividir un conjunto de datos en dos partes, con un tercero de los datos usados para el entrenamiento y el resto para pruebas o divisiones adicionales.

Para ello, agregue un módulo Split Data (Dividir datos) y establezca fraction of rows ( Fracción de filas) de la primera salida en 0,33. La segunda salida contiene los dos tercios restantes.

Para dividir la segunda salida en partes iguales, agregue otra instancia del módulo Dividir datos y, esta vez, use el valor predeterminado para una división de 50 a 50.

Notas técnicas

Esta sección contiene detalles de implementación, sugerencias y respuestas a las preguntas más frecuentes.

Detalles de la implementación

  • Este módulo requiere que el conjunto de datos contenga al menos dos filas; De lo contrario, se produce un error.

  • Si usa la opción de especificar el número de filas que quiere, el número especificado debe ser un entero positivo y el número debe ser menor que el número total de filas del conjunto de datos.

  • Todos los valores de porcentaje deben estar dentro del intervalo 0 y 1.

  • Si especifica un número o porcentaje como un número de punto flotante menor que uno, y no usa el símbolo de porcentaje (%), el número se interpreta como un valor proporcional.

Requisitos adicionales para el muestreo estratificado

  • La columna de capa solo puede contener datos nominales o categóricos. Si la columna contiene datos numéricos continuos, se genera un mensaje de error.

  • Una columna con demasiados valores únicos no es un buen candidato para la estratificación. Puede intentar contraer algunas categorías o agrupar valores de antemano.

Consulte también

Ejemplo ySplitPartition y Sample