Srastog commited on
Commit
f5d939c
·
verified ·
1 Parent(s): 4e728f6

Update app/modelling.py

Browse files
Files changed (1) hide show
  1. app/modelling.py +26 -35
app/modelling.py CHANGED
@@ -10,49 +10,40 @@ from sklearn.metrics import f1_score
10
  import argparse
11
  import joblib
12
 
13
- def train(df):
14
- features=["Torque(Nm)","Hydraulic_Pressure(bar)","Cutting(kN)","Coolant_Pressure(bar)","Spindle_Speed(RPM)","Coolant_Temperature","Downtime"]
 
15
 
16
- df=df[features]
17
- df.dropna(inplace=True,ignore_index=True)
18
- X=df.drop("Downtime",axis=1)
19
- y=df["Downtime"]
20
 
21
- X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.20,random_state=42,stratify=y)
22
 
23
- transform=PowerTransformer()
24
- X_train=transform.fit_transform(X_train)
25
- X_test=transform.transform(X_test)
26
 
27
- encoder=LabelEncoder()
28
- y_train=encoder.fit_transform(y_train)
29
- y_test=encoder.transform(y_test)
30
 
31
- model=RandomForestClassifier(random_state=42)
32
- model.fit(X_train,y_train)
33
- predict=model.predict(X_test)
34
 
35
- cwd=os.getcwd()
36
- transform_pth=os.path.join(cwd,"app","transform.pkl")
37
- encoder_pth=os.path.join(cwd,"app","encoder.pkl")
38
- model_pth=os.path.join(cwd,"app","model.pkl")
39
 
40
- joblib.dump(transform,transform_pth)
41
- joblib.dump(encoder,encoder_pth)
42
- joblib.dump(model,model_pth)
43
-
44
- return {"Accuracy":accuracy_score(y_test,predict),
45
- "F1_Score":f1_score(y_test,predict)}
46
-
47
- if __name__=="__main__":
48
- parser=argparse.ArgumentParser()
49
- parser.add_argument("--dataset_pth",default="/home/sudhanshu/manufacturing_defect/Manufacturing_Downtime_Dataset.csv")
50
- args=parser.parse_args()
51
- results=train(args.dataset_pth)
52
-
53
- print(f"Accuracy: {results['Accuracy']}\n")
54
- print(f"F1_Score: {results['F1_Score']}")
55
 
 
 
56
 
57
 
58
 
 
10
  import argparse
11
  import joblib
12
 
13
+ def train(dataset):
14
+ df=dataset.copy()
15
+ features=["Torque(Nm)","Hydraulic_Pressure(bar)","Cutting(kN)","Coolant_Pressure(bar)","Spindle_Speed(RPM)","Coolant_Temperature","Downtime"]
16
 
17
+ df=df[features]
18
+ df.dropna(inplace=True,ignore_index=True)
19
+ X=df.drop("Downtime",axis=1)
20
+ y=df["Downtime"]
21
 
22
+ X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.20,random_state=42,stratify=y)
23
 
24
+ transform=PowerTransformer()
25
+ X_train=transform.fit_transform(X_train)
26
+ X_test=transform.transform(X_test)
27
 
28
+ encoder=LabelEncoder()
29
+ y_train=encoder.fit_transform(y_train)
30
+ y_test=encoder.transform(y_test)
31
 
32
+ model=RandomForestClassifier(random_state=42)
33
+ model.fit(X_train,y_train)
34
+ predict=model.predict(X_test)
35
 
36
+ cwd=os.getcwd()
37
+ transform_pth=os.path.join(cwd,"app","transform.pkl")
38
+ encoder_pth=os.path.join(cwd,"app","encoder.pkl")
39
+ model_pth=os.path.join(cwd,"app","model.pkl")
40
 
41
+ joblib.dump(transform,transform_pth)
42
+ joblib.dump(encoder,encoder_pth)
43
+ joblib.dump(model,model_pth)
 
 
 
 
 
 
 
 
 
 
 
 
44
 
45
+ return {"Accuracy":f"{accuracy_score(y_test,predict):4f}",
46
+ "F1_Score":f"{f1_score(y_test,predict):4f}"}
47
 
48
 
49