Spaces:
Sleeping
Sleeping
| import os | |
| import pandas as pd | |
| from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier | |
| from joblib import dump, load | |
| # Function to train models | |
| def train_models(): | |
| # Synthetic dataset | |
| data = { | |
| "Thickness": [10, 15, 20, 25], | |
| "Hole_Diameter": [5, 10, 15, 20], | |
| "Force": [5000, 7000, 10000, 12000], | |
| "Max_Stress": [300, 250, 200, 150], | |
| "Max_Deformation": [0.5, 0.4, 0.3, 0.2], | |
| "Pass_Fail": [1, 1, 0, 0] | |
| } | |
| df = pd.DataFrame(data) | |
| X = df[["Thickness", "Hole_Diameter", "Force"]] | |
| # Train regression models | |
| stress_model = RandomForestRegressor().fit(X, df["Max_Stress"]) | |
| deformation_model = RandomForestRegressor().fit(X, df["Max_Deformation"]) | |
| # Train classification model | |
| pass_fail_model = RandomForestClassifier().fit(X, df["Pass_Fail"]) | |
| # Save models | |
| dump(stress_model, "stress_model.pkl") | |
| dump(deformation_model, "deformation_model.pkl") | |
| dump(pass_fail_model, "pass_fail_model.pkl") | |
| print("Models have been trained and saved.") | |
| # Function to load models with error handling | |
| def load_models(): | |
| try: | |
| # Check if model files exist | |
| if not os.path.exists("stress_model.pkl") or not os.path.exists("deformation_model.pkl") or not os.path.exists("pass_fail_model.pkl"): | |
| print("Model files not found. Training models...") | |
| train_models() | |
| # Load models | |
| stress_model = load("stress_model.pkl") | |
| deformation_model = load("deformation_model.pkl") | |
| pass_fail_model = load("pass_fail_model.pkl") | |
| print("Models have been loaded.") | |
| return stress_model, deformation_model, pass_fail_model | |
| except Exception as e: | |
| print(f"Error loading models: {e}") | |
| return None, None, None | |
| # Main program | |
| if __name__ == "__main__": | |
| stress_model, deformation_model, pass_fail_model = load_models() | |
| if stress_model and deformation_model and pass_fail_model: | |
| print("Models are ready to use!") | |
| else: | |
| print("Failed to load models.") | |