Open Eve0028 opened 3 months ago
1) - [x] Early-stopping np. przy niepoprawiniu się wyniku jednej z metryk przez określoną liczbę epok (są wbudowane funkcje).
2) - [ ] System zapisu i ewentualnego wczytywania wag modelu (np. jeśli wyniki określonej metryki na danych walidacyjnych są lepsze niż każde poprzednie -> zapisz wagi); warto nie nadpisywać wcześniej zapisanych wag, aby móc sprawdzać i testować różne koncepcje (ewentualnie nadpisywać gdy różnica pomiędzy epokami jest niewielka).
Można np. stworzyć foldery z nazwami oznaczjącymi z jakimi hyper-parametrami jest trenowany model np. ks64_l10_lr0.001_drop0.5_l20.01_bs5
i w nich zapisywać wagi modelu trenowanego z tymi hyper-parametrami (warto aby nazwy plików z wagami zawierały jaki wynik metryki miał dany zbiór wag oraz na jakiej epoce np. acc0.75_epoch220.ckpt
).
https://www.tensorflow.org/tutorials/keras/save_and_load
Trzeba zobaczyć jak to połączyć z szukaniem hyper-parametrów np. za pomocą NNI czy Optuny
3) - [x] System zapisu danych z metryk oraz innych potrzebnych rzeczy - wykorzystanie TensorBoard: https://www.tensorflow.org/tensorboard/get_started Tutaj podobnie przydałyby się zapisy z podziałem na zbiór metryk, których model używa.
4) - [ ] Opcja zatrzymania treningu np. po zakończeniu epoki lub w jej trakcie.
189c722277bea932b50d59bf8f29183e69cf19ce Dodany TensorBoard
@EEG-PK/model Przeprowadzenie treningu: podział datasetów, praca z modelem.
wybieramy tyle samo pacjentów z każdej klasy z każdego datasetu (można tu potestować czy przy użyciu większej ilości próbek np. chorych osób z jednego datasetu tworzy się bias - czy nasze metody 'referencyjno-generalizująe' działają)?