karthikmn commited on
Commit
4065124
·
verified ·
1 Parent(s): 595cd05

Create ai_models.py

Browse files
Files changed (1) hide show
  1. ai_models.py +35 -0
ai_models.py ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import pandas as pd
2
+ from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier
3
+ from joblib import dump, load
4
+
5
+ def train_models():
6
+ # Synthetic dataset
7
+ data = {
8
+ "Thickness": [10, 15, 20, 25],
9
+ "Hole_Diameter": [5, 10, 15, 20],
10
+ "Force": [5000, 7000, 10000, 12000],
11
+ "Max_Stress": [300, 250, 200, 150],
12
+ "Max_Deformation": [0.5, 0.4, 0.3, 0.2],
13
+ "Pass_Fail": [1, 1, 0, 0]
14
+ }
15
+ df = pd.DataFrame(data)
16
+ X = df[["Thickness", "Hole_Diameter", "Force"]]
17
+
18
+ # Train regression models
19
+ stress_model = RandomForestRegressor().fit(X, df["Max_Stress"])
20
+ deformation_model = RandomForestRegressor().fit(X, df["Max_Deformation"])
21
+
22
+ # Train classification model
23
+ pass_fail_model = RandomForestClassifier().fit(X, df["Pass_Fail"])
24
+
25
+ # Save models
26
+ dump(stress_model, "stress_model.pkl")
27
+ dump(deformation_model, "deformation_model.pkl")
28
+ dump(pass_fail_model, "pass_fail_model.pkl")
29
+
30
+ def load_models():
31
+ return (
32
+ load("stress_model.pkl"),
33
+ load("deformation_model.pkl"),
34
+ load("pass_fail_model.pkl")
35
+ )