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

Create risk_model.py

Browse files
Files changed (1) hide show
  1. risk_model.py +35 -0
risk_model.py ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import pandas as pd
2
+ from sklearn.ensemble import RandomForestClassifier
3
+ from joblib import dump, load
4
+
5
+ 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)