scontess commited on
Commit
b123fe6
Β·
1 Parent(s): 8438089
Files changed (1) hide show
  1. src/streamlit_app.py +6 -9
src/streamlit_app.py CHANGED
@@ -50,15 +50,17 @@ X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2, random_st
50
  st.write(f"πŸ“Š **Training:** {X_train.shape[0]} immagini")
51
  st.write(f"πŸ“Š **Validation:** {X_val.shape[0]} immagini")
52
 
53
- # πŸ“Œ Caricamento del modello
 
 
 
54
  history = None # πŸ›  Inizializza history
55
 
56
- if os.path.exists("Silva.h5"):
57
  model = load_model("Silva.h5")
58
  st.write("βœ… Modello `Silva.h5` caricato, nessun nuovo training necessario!")
59
  else:
60
- st.write("πŸš€ Training in corso perchΓ© `Silva.h5` non esiste...")
61
-
62
  base_model = VGG16(weights="imagenet", include_top=False, input_shape=(64, 64, 3))
63
  for layer in base_model.layers:
64
  layer.trainable = False
@@ -71,12 +73,7 @@ else:
71
  model = Model(inputs=base_model.input, outputs=output)
72
  model.compile(optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"])
73
 
74
- # πŸ“Œ Training con monitoraggio validazione
75
  history = model.fit(X_train, y_train, epochs=10, validation_data=(X_val, y_val))
76
-
77
- st.write("βœ… Addestramento completato!")
78
-
79
- # πŸ“Œ Salvare il modello
80
  model.save("Silva.h5")
81
  st.write("βœ… Modello salvato come `Silva.h5`!")
82
 
 
50
  st.write(f"πŸ“Š **Training:** {X_train.shape[0]} immagini")
51
  st.write(f"πŸ“Š **Validation:** {X_val.shape[0]} immagini")
52
 
53
+ # πŸ“Œ Checkbox per decidere se rifare il training
54
+ force_training = st.checkbox("πŸ”„ Rifai il training anche se Silva.h5 esiste")
55
+
56
+ # πŸ“Œ Caricamento o training del modello
57
  history = None # πŸ›  Inizializza history
58
 
59
+ if os.path.exists("Silva.h5") and not force_training:
60
  model = load_model("Silva.h5")
61
  st.write("βœ… Modello `Silva.h5` caricato, nessun nuovo training necessario!")
62
  else:
63
+ st.write("πŸš€ Training in corso...")
 
64
  base_model = VGG16(weights="imagenet", include_top=False, input_shape=(64, 64, 3))
65
  for layer in base_model.layers:
66
  layer.trainable = False
 
73
  model = Model(inputs=base_model.input, outputs=output)
74
  model.compile(optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"])
75
 
 
76
  history = model.fit(X_train, y_train, epochs=10, validation_data=(X_val, y_val))
 
 
 
 
77
  model.save("Silva.h5")
78
  st.write("βœ… Modello salvato come `Silva.h5`!")
79