Riesgo de modificacion contractual

Modelo entrenado sobre contratos publicos peruanos 2021-2023, validado en 2024 y medido contra 2025. Generado el 2026-08-17.

0.371
PR-AUC en prueba
18.0%
Tasa base
59.0%
Aciertos en el top 100
3.3x
Mejor que al azar
Que predice y para que sirveUn contrato "modificado" es el que despues de firmado acumula adicionales, reducciones o prorrogas. Que un 22% de los contratos termine asi significa que lo licitado no era lo que se iba a ejecutar. El modelo no busca acusar a nadie: busca ordenar los contratos para que un equipo con capacidad de revisar cien empiece por los cien que importan.

Comparacion contra los baselines

Un modelo solo vale si le gana a las alternativas obvias. Aqui compite contra predecir siempre la tasa base y contra ordenar por monto sin aprender nada, que ya separa bastante por si solo.

ModeloPR-AUCROC-AUCBrierTop 100Lift@100
gradient_boosting_simple0.47780.74550.147573.0%3.28x
gradient_boosting0.47070.73670.150271.0%3.19x
regresion_logistica0.45240.73900.199166.0%2.96x
baseline_monto0.43030.70640.247568.0%3.05x
baseline_tasa_base0.22290.50000.173627.0%1.21x

Resultados sobre 2024, el anio de validacion. El ganador fue gradient_boosting_simple: Version mas regularizada, por si la anterior sobreajusta al periodo de entrenamiento.

Resultado contra el anio de prueba

El anio 2025 no participo en ninguna decision: ni en el entrenamiento ni en la eleccion del modelo. Se midio una sola vez.

Contratos revisadosAciertosMejor que al azar
los 50 de mayor riesgo60.0%3.3x
los 100 de mayor riesgo59.0%3.3x
los 250 de mayor riesgo51.2%2.8x
los 500 de mayor riesgo47.6%2.6x

Con una tasa base de 18.0%, revisar contratos al azar encontraria esa proporcion. El modelo los concentra arriba del ranking.

Calibracion: el modelo sobreestima, y se sabe por que

probabilidad predichafrecuencia real
Validacion 2024
probabilidad predichafrecuencia real
Prueba 2025
Censura a la derechaLa brecha media entre probabilidad predicha y frecuencia real es de 0.022 en validacion y 0.050 en prueba. La diferencia no es del modelo sino del dato: un contrato firmado en 2025 tuvo menos meses para acumular modificaciones que uno de 2024, y el archivo del portal no publica la fecha de cada modificacion, asi que no hay forma de acotar la ventana. El modelo sobreestima la probabilidad en el anio mas reciente porque esos contratos aun no tuvieron tiempo de acumular modificaciones. El orden que produce sigue siendo valido; la probabilidad absoluta debe leerse como cota superior mientras los contratos no maduren.

Que mira el modelo

Importancia por permutacion: cuanto empeora el PR-AUC al desordenar cada variable. Se usa esta y no la importancia interna del arbol, que premia a las variables con muchos valores distintos.

monto_pen0.152ent_tasa_modificacion0.028objeto0.025ent_contratos_previos0.008ent_proveedores_previos0.008departamento_entidad0.006duracion_prevista0.005prov_entidades_previas0.005prov_penalidades_previas0.003ent_monto_medio_previo0.002proveedor_en_padron0.002prov_contratos_previos0.001

Como se evito la fuga temporal

La reglaUna feature solo puede usar informacion disponible el dia en que se firmo el contrato. El historial de cada entidad y de cada proveedor se calcula con ventanas RANGE BETWEEN UNBOUNDED PRECEDING AND INTERVAL 1 DAY PRECEDING, de modo que ningun contrato ve a otro del mismo dia. Quedan fuera del modelo, aunque estan en el archivo: los montos de adicionales y prorrogas (son el desenlace), la fecha de publicacion en SEACE (ocurre despues de firmar) y la fecha de fin actualizada (cambia justamente cuando hay prorroga).
Particion temporal, no aleatoriaEntrenamiento 2021-2023 (19,740 contratos), validacion 2024 (7,933), prueba 2025. Un split aleatorio habria dejado contratos de 2025 en entrenamiento y de 2021 en prueba, midiendo una habilidad que el modelo nunca necesitara: predecir el pasado con informacion del futuro.
Por que solo desde 2021Hasta 2020 el portal publicaba tambien compras menores, con una mediana de S/ 7 500 frente a los S/ 338 000 de 2021 en adelante. Mezclar ambos regimenes seria entrenar sobre dos poblaciones distintas y llamarlas una sola.