Creo que un supuesto básico del aprendizaje automático o de la estimación de parámetros es que los datos no vistos proceden de la misma distribución que el conjunto de entrenamiento. Sin embargo, en algunos casos prácticos, la distribución del conjunto de prueba será casi diferente de la del conjunto de entrenamiento.
Digamos que para un problema de multiclasificación a gran escala que intenta clasificar descripciones de productos en unas 17.000 clases. El conjunto de datos de entrenamiento tendrá unas preferencias de clase muy asimétricas, de forma que algunas clases pueden tener muchos ejemplos de entrenamiento, pero otras pueden tener sólo unos pocos. Supongamos que un cliente nos proporciona un conjunto de pruebas con etiquetas de clase desconocidas. Intentamos clasificar cada producto del conjunto de prueba en una de las 17.000 clases, utilizando el clasificador entrenado en el conjunto de entrenamiento. Es probable que el conjunto de prueba tenga distribuciones de clase sesgadas, pero probablemente muy diferentes de las del conjunto de entrenamiento, ya que podrían estar relacionadas con diferentes áreas de negocio. Si las dos distribuciones de clases son muy diferentes, el clasificador entrenado podría no funcionar bien en el conjunto de prueba. Esto parece especialmente obvio con el clasificador Naive Bayes.
¿Existe algún principio para gestionar la diferencia entre el conjunto de entrenamiento y un conjunto de prueba determinado para los clasificadores probabilísticos? He oído que la "SVM transductiva" hace algo similar en la SVM. ¿Existen técnicas similares para aprender un clasificador que funcione mejor en un conjunto de pruebas determinado? Entonces podemos volver a entrenar el clasificador para diferentes conjuntos de pruebas, como se permite en este escenario práctico.