Nota · 2 min de lectura
Separar los datos cambia lo que demuestra el entrenamiento
Un modelo puede funcionar con viviendas nuevas de una zona conocida y fallar al cambiar de mercado. En mis pruebas con CatBoost evalúo ambas situaciones.
Qué significa un inmueble nuevo
Para preparar datos a mayor escala, usé Jev para etiquetar 50.000 inmuebles de la base de datos y construir el dataset de características para CatBoost. Ese trabajo de etiquetado prepara la información con la que el modelo aprende; la evaluación comprueba si lo aprendido sirve para otros inmuebles.
En mis experimentos de valoración, sacar una vivienda del entrenamiento no bastaba para saber cómo se comportaría el modelo en otra ciudad. Seguía teniendo ejemplos del mismo mercado. Eso responde a una pregunta distinta de entrenar sin ningún anuncio de esa zona.
Probé separaciones por identidad del inmueble y por mercado. También revisé anuncios repetidos: dos publicaciones de la misma vivienda no son dos ejemplos independientes. Si una acaba en entrenamiento y otra en evaluación, el resultado puede parecer mejor de lo que es.
Comprobar qué ha aprendido
Añadí atributos, probé varias semillas y comparé CatBoost con cálculos más sencillos. En algunos controles, permutar los atributos conservando los huecos daba resultados parecidos o mejores. La mejora no bastaba para afirmar que el modelo estaba aprendiendo el efecto de esos atributos.
Eso cambia cómo interpreto el entrenamiento. Más columnas pueden añadir información, ruido o pistas sobre la muestra. Una mejora dentro de las zonas conocidas no prueba que el modelo generalice a otras.
También separo los datos usados para elegir parámetros de los usados para evaluar. Cuando ya he inspeccionado los errores de una muestra y ajustado el modelo a partir de ellos, esa muestra sirve para diagnosticar; necesito datos nuevos para comprobar la mejora. La calidad del modelo depende tanto de esta separación como del algoritmo elegido.