feat: implement project development module, transfer management features, and industrial AVM model integration

This commit is contained in:
Ho Ngoc Hai
2026-04-18 20:34:35 +07:00
parent 0f3b4d7b0d
commit 38b9def99a
66 changed files with 9051 additions and 17 deletions

View File

@@ -0,0 +1,188 @@
{
"version": "ridge-industrial-v1",
"trained_at": "2026-04-18T08:19:02.245595+00:00",
"n_parks_in_source": 20,
"heads": {
"land": {
"target_column": "landRentUsdM2Year",
"n_train": 20,
"alpha": 7.847599703514607,
"mape_loo": 0.1463,
"coverage_80_loo": 0.8,
"q80_log": 0.1883,
"top_coefficients": [
{
"feature": "region_central",
"coef": -0.0873
},
{
"feature": "log_fdi_province",
"coef": 0.0856
},
{
"feature": "occupancy",
"coef": 0.0618
},
{
"feature": "ind_electronics",
"coef": 0.0502
},
{
"feature": "log_dist_airport_km",
"coef": -0.0355
},
{
"feature": "ind_plastics",
"coef": -0.0259
},
{
"feature": "ind_garment",
"coef": 0.0124
},
{
"feature": "region_north",
"coef": -0.0117
}
],
"slices": {
"central": {
"n": 2,
"mape_in_sample": 0.1158,
"median_residual_log": -0.1966
},
"north": {
"n": 7,
"mape_in_sample": 0.0697,
"median_residual_log": -0.0146
},
"south": {
"n": 11,
"mape_in_sample": 0.095,
"median_residual_log": 0.0298
}
}
},
"rbf": {
"target_column": "rbfRentUsdM2Month",
"n_train": 20,
"alpha": 7.847599703514607,
"mape_loo": 0.1118,
"coverage_80_loo": 0.8,
"q80_log": 0.1268,
"top_coefficients": [
{
"feature": "log_fdi_province",
"coef": 0.0582
},
{
"feature": "region_central",
"coef": -0.0529
},
{
"feature": "ind_electronics",
"coef": 0.0348
},
{
"feature": "occupancy",
"coef": 0.0318
},
{
"feature": "log_dist_airport_km",
"coef": -0.0239
},
{
"feature": "ind_plastics",
"coef": -0.0181
},
{
"feature": "log_dist_highway_km",
"coef": -0.0106
},
{
"feature": "ind_food",
"coef": 0.0065
}
],
"slices": {
"central": {
"n": 2,
"mape_in_sample": 0.089,
"median_residual_log": -0.1132
},
"north": {
"n": 7,
"mape_in_sample": 0.0601,
"median_residual_log": -0.0016
},
"south": {
"n": 11,
"mape_in_sample": 0.0758,
"median_residual_log": 0.0139
}
}
},
"rbw": {
"target_column": "rbwRentUsdM2Month",
"n_train": 20,
"alpha": 7.847599703514607,
"mape_loo": 0.1243,
"coverage_80_loo": 0.8,
"q80_log": 0.1214,
"top_coefficients": [
{
"feature": "log_fdi_province",
"coef": 0.0604
},
{
"feature": "region_central",
"coef": -0.0562
},
{
"feature": "ind_electronics",
"coef": 0.0389
},
{
"feature": "occupancy",
"coef": 0.0297
},
{
"feature": "ind_plastics",
"coef": -0.0217
},
{
"feature": "log_dist_airport_km",
"coef": -0.0196
},
{
"feature": "log_dist_highway_km",
"coef": -0.0114
},
{
"feature": "region_north",
"coef": -0.0054
}
],
"slices": {
"central": {
"n": 2,
"mape_in_sample": 0.1026,
"median_residual_log": -0.1232
},
"north": {
"n": 7,
"mape_in_sample": 0.0668,
"median_residual_log": -0.0088
},
"south": {
"n": 11,
"mape_in_sample": 0.0773,
"median_residual_log": 0.0175
}
}
}
},
"warnings": [
"n_train < 30 per head — LOO metrics are noisy; interpret CIs as wide.",
"Targets are log1p-transformed rent; CIs use conformal quantile on log residuals."
]
}