Sanjayraju30 commited on
Commit
6e2fccb
·
verified ·
1 Parent(s): edce0df

Update risk_model.py

Browse files
Files changed (1) hide show
  1. risk_model.py +14 -23
risk_model.py CHANGED
@@ -1,3 +1,4 @@
 
1
  import pandas as pd
2
  from sklearn.ensemble import RandomForestClassifier
3
  from joblib import dump, load
@@ -6,30 +7,20 @@ MODEL_PATH = "heating_model.pkl"
6
  DATA_PATH = "mantle_training.csv"
7
  HISTORY = []
8
 
 
 
 
 
 
 
 
 
 
 
 
9
  def load_model():
 
 
10
  return load(MODEL_PATH)
11
 
12
  model = load_model()
13
-
14
- def predict_risk(temp, duration):
15
- global model
16
- pred = model.predict([[temp, duration]])[0]
17
- score = max(model.predict_proba([[temp, duration]])[0]) * 100
18
- HISTORY.append({"Temperature": temp, "Duration": duration, "Risk": pred, "Confidence": round(score, 2)})
19
- return pred, round(score, 2)
20
-
21
- def retrain_model():
22
- try:
23
- data = pd.read_csv(DATA_PATH)
24
- X = data[["temperature", "duration"]]
25
- y = data["risk_level"]
26
- clf = RandomForestClassifier().fit(X, y)
27
- dump(clf, MODEL_PATH)
28
- global model
29
- model = clf
30
- return "✅ Model retrained successfully"
31
- except Exception as e:
32
- return f"❌ Error: {str(e)}"
33
-
34
- def get_history_df():
35
- return pd.DataFrame(HISTORY)
 
1
+ import os
2
  import pandas as pd
3
  from sklearn.ensemble import RandomForestClassifier
4
  from joblib import dump, load
 
7
  DATA_PATH = "mantle_training.csv"
8
  HISTORY = []
9
 
10
+ # Function to train the model from scratch
11
+ def train_and_save_model():
12
+ data = pd.read_csv(DATA_PATH)
13
+ X = data[["temperature", "duration"]]
14
+ y = data["risk_level"]
15
+ model = RandomForestClassifier()
16
+ model.fit(X, y)
17
+ dump(model, MODEL_PATH)
18
+ return model
19
+
20
+ # Safe model loader
21
  def load_model():
22
+ if not os.path.exists(MODEL_PATH):
23
+ return train_and_save_model()
24
  return load(MODEL_PATH)
25
 
26
  model = load_model()