Update load.py
Browse files
load.py
CHANGED
|
@@ -43,6 +43,34 @@ def convergence_suppressor(inputs):
|
|
| 43 |
def clip_modulation(x):
|
| 44 |
return tf.clip_by_value(x, 0.7, 1.3)
|
| 45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 46 |
CUSTOM_OBJECTS = {
|
| 47 |
'drainage_penalty': drainage_penalty,
|
| 48 |
'convergence_suppressor': convergence_suppressor,
|
|
@@ -63,7 +91,7 @@ PV_FloodNet = tf.keras.models.load_model(get_path("sharktide", "PV-FloodNet"), s
|
|
| 63 |
PV_FloodTrustNet = hft.load_model("sharktide", "PV-FloodTrustNet", "tf_model.h5", True)
|
| 64 |
PV_FloodScaler = joblib.load("scalers/PV-floodtrust_scaler.pkl")
|
| 65 |
|
| 66 |
-
FlashFloodNet =
|
| 67 |
FlashFloodTrustNet = hft.load_model("sharktide", "FlashFloodTrustNet", "tf_model.h5", True)
|
| 68 |
FlashFloodScaler = joblib.load("scalers/flashFloodtrustscaler.pkl")
|
| 69 |
|
|
|
|
| 43 |
def clip_modulation(x):
|
| 44 |
return tf.clip_by_value(x, 0.7, 1.3)
|
| 45 |
|
| 46 |
+
@register_keras_serializable()
|
| 47 |
+
def drainage_penalty2(inputs):
|
| 48 |
+
dd = inputs[:, 2]
|
| 49 |
+
return (1.0 - 0.4 * tf.sigmoid((dd - 3.5) * 2))[:, None]
|
| 50 |
+
|
| 51 |
+
@register_keras_serializable()
|
| 52 |
+
def convergence_suppressor2(inputs):
|
| 53 |
+
ci = inputs[:, 4]
|
| 54 |
+
return (1.0 + 0.3 * tf.sigmoid((ci - 0.5) * 8))[:, None]
|
| 55 |
+
|
| 56 |
+
@register_keras_serializable()
|
| 57 |
+
def intensity_slope_amplifier(inputs):
|
| 58 |
+
rainfall_intensity = inputs[:, 0]
|
| 59 |
+
slope = inputs[:, 1]
|
| 60 |
+
runoff_boost = tf.sigmoid((rainfall_intensity - 75) * 0.08)
|
| 61 |
+
slope_boost = tf.sigmoid((slope - 10) * 0.05)
|
| 62 |
+
return (1.0 + 0.35 * runoff_boost * slope_boost)[:, None]
|
| 63 |
+
|
| 64 |
+
def clip_modulation2(x):
|
| 65 |
+
return tf.clip_by_value(x, 0.7, 1.3)
|
| 66 |
+
|
| 67 |
+
CUSTOM_OBJECTS2 = {
|
| 68 |
+
'drainage_penalty': drainage_penalty2,
|
| 69 |
+
'intensity_slope_amplifier': intensity_slope_amplifier,
|
| 70 |
+
'convergence_suppressor': convergence_suppressor2,
|
| 71 |
+
'clip_modulation': clip_modulation2
|
| 72 |
+
}
|
| 73 |
+
|
| 74 |
CUSTOM_OBJECTS = {
|
| 75 |
'drainage_penalty': drainage_penalty,
|
| 76 |
'convergence_suppressor': convergence_suppressor,
|
|
|
|
| 91 |
PV_FloodTrustNet = hft.load_model("sharktide", "PV-FloodTrustNet", "tf_model.h5", True)
|
| 92 |
PV_FloodScaler = joblib.load("scalers/PV-floodtrust_scaler.pkl")
|
| 93 |
|
| 94 |
+
FlashFloodNet = tf.keras.models.load_model(get_path("sharktide", "FlashFloodNet"), safe_mode=False, custom_objects=CUSTOM_OBJECTS2)
|
| 95 |
FlashFloodTrustNet = hft.load_model("sharktide", "FlashFloodTrustNet", "tf_model.h5", True)
|
| 96 |
FlashFloodScaler = joblib.load("scalers/flashFloodtrustscaler.pkl")
|
| 97 |
|