El tamaño y la calidad de un conjunto de datos

"Recolección de residuos, basura y residuos"

El anuncio anterior se aplica al aprendizaje automático. Después de todo, tu modelo es tan bueno como tus datos. Pero ¿cómo puedes medir la calidad de tu conjunto de datos y mejorarlo? ¿Cuántos datos se necesitan para obtener resultados útiles? Las respuestas dependen del tipo de problema que resuelvas.

El tamaño de un conjunto de datos

Como regla general, tu modelo debería entrenar al menos un orden de magnitud más ejemplos que los parámetros entrenables. Por lo general, los modelos simples en conjuntos de datos grandes superan a los modelos sofisticados en conjuntos de datos pequeños. Google tuvo mucho éxito en el entrenamiento de modelos de regresión lineal simples en grandes conjuntos de datos.

¿Qué cuenta como "muchos" datos? Depende del proyecto. Ten en cuenta el tamaño relativo de estos conjuntos de datos:

Conjunto de datos Tamaño (cantidad de ejemplos)
Conjunto de datos de flores de iris 150 (conjunto total)
MovieLens (el conjunto de datos de 20 millones) 20,000,263 (conjunto total)
Respuesta inteligente de Gmail de Google 238,000,000 (conjunto de entrenamiento)
Ngram de Google Libros 468,000,000,000 (total establecido)
Google Traductor billones

Como puede ver, los conjuntos de datos vienen en varios tamaños.

La calidad de un conjunto de datos

No tiene sentido tener muchos datos si son malos; la calidad también es importante. Pero ¿qué se considera como “calidad”? Es un término poco claro. Considera adoptar un enfoque empírico y elegir la opción que produzca el mejor resultado. Con esa mentalidad, un conjunto de datos de calidad te permite tener éxito con el problema empresarial que te interesa. En otras palabras, los datos son buenos si realizan la tarea prevista.

Sin embargo, cuando recopilas datos, es útil tener una definición de calidad más concreta. Algunos aspectos de calidad suelen corresponder a modelos con mejor rendimiento:

  • confiabilidad
  • representación de características
  • minimizando sesgo

Confiabilidad

Confiabilidad hace referencia al grado en el que puede confiar en sus datos. Un modelo entrenado con un conjunto de datos confiable tiene más probabilidades de generar predicciones útiles que un modelo entrenado con datos poco confiables. Para medir la confiabilidad, debes determinar lo siguiente:

  • ¿Qué tan comunes son los errores de etiquetas? Por ejemplo, si los humanos etiquetan tus datos, a veces los humanos cometen errores.
  • ¿Tus funciones son ruidosas? Por ejemplo, las mediciones del GPS fluctúan. Hay ruido. No hay problema. Nunca borrarás definitivamente todo el ruido. También puedes recopilar más ejemplos.
  • ¿Los datos se filtraron correctamente para tu problema? Por ejemplo, ¿tu conjunto de datos debería incluir búsquedas de bots? Si estás compilando un sistema de detección de spam, es probable que la respuesta sea sí, pero si intentas mejorar los resultados de la búsqueda para personas, no.

¿Por qué los datos no son confiables? Recuerda el Curso intensivo de aprendizaje automático que muchos ejemplos en los conjuntos de datos no son confiables debido a uno o más de los siguientes motivos:

  • Valores omitidos. Por ejemplo, una persona olvidó ingresar un valor para la antigüedad de una casa.
  • Ejemplos duplicados Por ejemplo, un servidor subió por error los mismos registros dos veces.
  • Etiquetas incorrectas. Por ejemplo, una persona etiquetó incorrectamente una imagen de un roble como un arce.
  • Valores de atributos incorrectos. Por ejemplo, alguien escribió un dígito de más o un termómetro quedó al sol.

Google Traductor se concentró en la confiabilidad para seleccionar el mejor subconjunto de sus datos; es decir, algunos datos tenían etiquetas de mayor calidad que otras.

Representación de características

Recuerda que, en el Curso intensivo de aprendizaje automático, se representa la asignación de datos a atributos útiles. Te recomendamos tener en cuenta las siguientes preguntas:

La sección Transforma tus datos de este curso se enfocará en la representación de características.

Entrenamiento y predicción

Supongamos que obtienes excelentes resultados sin conexión. Luego, en el experimento en vivo, los resultados no se mantienen. ¿Qué podría pasar?

Este problema sugiere sesgos de entrenamiento y entrega, es decir, se calculan diferentes resultados para tus métricas en el momento del entrenamiento en comparación con el momento de la entrega. Las causas de sesgo pueden ser sutiles, pero tienen efectos mortales en tus resultados. Siempre considera qué datos están disponibles para tu modelo en el momento de la predicción. Durante el entrenamiento, usa solo las funciones que tendrás disponibles y asegúrate de que tu conjunto de entrenamiento sea representativo del tráfico de entrega.