Compartir a través de


Dividir los datos mediante la división del recomendador

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 División del recomendador en el módulo Split Data (Dividir datos) de Machine Learning Studio (clásico). Esta opción es útil cuando necesita preparar conjuntos de datos de entrenamiento y pruebas para su uso con un modelo de recomendación. Estos modelos no solo requieren un formato específico, sino que puede ser muy difícil dividir las clasificaciones, los usuarios y los elementos de forma equilibrada sin herramientas especiales.

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 De división del recomendador facilita este proceso al preguntar por el tipo de modelo de recomendación con el que está trabajando: por ejemplo, ¿recomienda elementos, sugiere una clasificación o busca usuarios relacionados? A continuación, divide el conjunto de datos por los criterios que especifique, como cómo controlar usuarios fríos o elementos en frío.

Al dividir los conjuntos de datos, el módulo devuelve dos conjuntos de datos, uno destinado al entrenamiento y otro para pruebas o evaluación de modelos. Si el conjunto de datos de entrada contiene datos adicionales por instancia (como clasificaciones, por ejemplo), se conservan en la salida.

Para obtener información general sobre la creación de particiones de datos para experimentos de aprendizaje automático, consulte

Otras opciones del módulo Dividir datos admiten diferentes maneras de dividir los datos:

Dividir un conjunto de datos usado por un modelo de recomendación

La opción División del recomendador se proporciona específicamente para los datos que se usan para entrenar sistemas de recomendación.

Antes de usar esta opción, asegúrese de que los datos están en un formato compatible. El divisor de recomendación funciona bajo la suposición de que el conjunto de datos consta solo de pares usuario-elemento o triples de clasificación de elementos de usuario. Para más información, consulte Requisitos de datos de entrada en este artículo.

  1. Agregue el módulo Split Data al experimento y conéctelo como entrada en el conjunto de datos que quiere dividir.

  2. En Modo de división, seleccione División del recomendador.

  3. Establezca las siguientes opciones para controlar cómo se dividen los valores. Especifique un porcentaje representado como un número entre 0 y 1.

    • Fracción de usuarios solo de entrenamiento: especifique la fracción de usuarios que se deben asignar solo al conjunto de datos de entrenamiento. Esto significa que las filas nunca se usarían para probar el modelo.

    • Fracción de las clasificaciones de usuario de prueba para el entrenamiento: especifique que parte de las clasificaciones de usuario que ha recopilado se pueden usar para el entrenamiento.

    • Fracción de usuarios en frío: los usuarios en frío son usuarios que el sistema no ha encontrado previamente. Normalmente, dado que el sistema no tiene información de estos usuarios, son valiosos para el entrenamiento, pero las predicciones pueden ser menos precisas.

    • Fracción de elementos en frío: los elementos en frío son elementos que el sistema no ha encontrado previamente. Dado que el sistema no tiene información sobre estos elementos, son valiosos para el entrenamiento, pero las predicciones pueden ser menos precisas.

    • Fracción de usuarios omitido: esta opción permite al recomendador omitir algunos usuarios, lo que le permite entrenar el modelo en un subconjunto de datos. Esto podría ser útil por motivos de rendimiento. Especifique el porcentaje de usuarios que se deben omitir.

    • Fracción de elementos omitido: el divisor de recomendación puede omitir algunos elementos y entrenar el modelo en un subconjunto de datos. Esto podría ser útil por motivos de rendimiento. Especifique el porcentaje de elementos que se omitirán.

  4. Quitar elementos en frío generados ocasionalmente: esta opción normalmente se establece en cero, para asegurarse de que todas las entidades del conjunto de pruebas se incluyen en el conjunto de entrenamiento.

    Se dice que un elemento es “ocasionalmente frío” si está incluido solamente en el conjunto de prueba, pero no se eligió explícitamente como frío. Estos elementos se pueden producir con los pasos (4) y (6) del algoritmo que se describe en la sección División de los datos de recomendación.

  5. Valor de ed. aleatorio para el recomendador: especifique un valor de valor si desea dividir los datos de la misma manera cada vez. De lo contrario, de forma predeterminada, los datos de entrada se dividen aleatoriamente, usando un valor de reloj del sistema como valor de ed.

  6. Ejecute el experimento.

Ejemplos

Para obtener ejemplos de cómo dividir un conjunto de clasificaciones y características que se usan para entrenar o probar un modelo de recomendación, se recomienda revisar el tutorial proporcionado con este experimento de ejemplo en Azure AI Gallery: Recomendación de películas.

Notas técnicas

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

Requisitos para los datos de entrada

El divisor de recomendación funciona bajo la suposición de que el conjunto de datos consta solo de pares usuario-elemento o triples de clasificación de elementos de usuario. Por lo tanto, el módulo Dividir datos no puede funcionar en conjuntos de datos que tienen más de tres columnas, para evitar confusiones con los datos de tipo de característica.

Si el conjunto de datos contiene demasiadas columnas, es posible que reciba este error:

Error 0022: El número de columnas seleccionadas en el conjunto de datos de entrada no es igual a x

Como solución alternativa, puede usar Seleccionar columnas en el conjunto de datos para quitar algunas columnas. Siempre puede volver a agregar las columnas más adelante, mediante el módulo Agregar columnas.

Como alternativa, si el conjunto de datos tiene muchas características que desea usar en el modelo, divida el conjunto de datos con una opción diferente y entrena el modelo mediante Train Model en lugar de Train Matchbox Recommender.

Para obtener información detallada sobre los formatos de datos admitidos, vea Train Matchbox Recommender(Entrenar recomendador de Matchbox).

Consejos de uso

  • Se produce un error si el conjunto de datos no contiene al menos dos filas.

  • Si especifica un número como un porcentaje o si usa una cadena que contiene el carácter “%”, el valor se interpretará como un porcentaje.

    Todos los valores de porcentaje deben estar dentro del rango (0, 100), sin incluir los valores 0 y 100.

  • Si especifica un número o un porcentaje que es un número de punto flotante menor que uno y no usa el símbolo de porcentaje “%”, el número se interpretará como un valor proporcional.

Detalles de la implementación

El siguiente algoritmo se usa al dividir datos en conjuntos de entrenamiento y prueba para su uso con un modelo de recomendación:

  1. La fracción solicitada de elementos omitidos se quita junto con todas las observaciones asociadas.

  2. La fracción de elementos fríos solicitada se mueve al conjunto de prueba junto con todas las observaciones asociadas.

  3. La fracción solicitada de usuarios omitidos que queda después de los dos primeros pasos se quita junto con todas las observaciones asociadas.

  4. La fracción solicitada de usuarios fríos que queda después de los dos primeros pasos se mueve al conjunto de prueba junto con todas las observaciones asociadas.

  5. La fracción solicitada de usuarios de solo entrenamiento que queda después de los dos primeros pasos se mueve al conjunto de entrenamiento junto con todas las observaciones asociadas.

  6. De cada usuario que queda después de todos los pasos anteriores, la fracción solicitada de clasificaciones de usuario de prueba se mueve al conjunto de entrenamiento, mientras que el resto se mueve al conjunto de prueba.

    Al menos una observación siempre se mueve al conjunto de entrenamiento para cada usuario.

  7. Si se solicita, las instancias asociadas a los elementos fríos producidos ocasionalmente pueden quitarse del conjunto de prueba.

    Se dice que un elemento es “ocasionalmente frío” si está incluido solamente en el conjunto de prueba, pero no se eligió explícitamente como frío. Tales elementos se pueden generar mediante los pasos (4) y (6).

    El uso previsto de esta opción es que el número solicitado de usuarios y elementos fríos se establezca en cero. De este modo, todas las entidades del conjunto de pruebas se incluirán en el conjunto de entrenamiento.

Consulte también

Dividir datosParticióny división