Open Rob174 opened 3 years ago
TODO : revoir chargement des poids ✔️ TODO : importer dans un script le modèle ✔️
Création d'un mode d'installation de package à partir des fichiers :
from distutils.core import setup
setup(name='meme_nom_evocateur', version='1.0.0', packages=['meme_nom_evocateur'])
On a donc la structure suivante
nom_evocateur ├─ nom_evocateur │ ├──fichier.py │ ├──fichier2.py │ └──.... ├─ setup.py └─ init.py
Puis dans l'invité de commande pycharm du projet sur lequel on travaille faire la commande bash suivante
python -m pip install -e /....chemin/projet/nom_evocateur/
⚠️ Bien checker qu'on utilise le même python que pour le projet
Sous linux which python
; sous windows where python
donne la liste des pythons installés (après je ne sais pas pour le moment comment checker lequel est utilisé pour exécuter la commande python
du cmd
après cela dans un script python on peut faire (pour vérifier)
import nom_evocateur
import du modèle ok debug des packages utilisés fini
Pour utiliser le projet faire dans l'ordre :
git clone https://github.com/Rob174/enet-keras.git
dans votre dossier de projet (en dehors du git de PIR). Passer sur la branche adaptation_tensorflow
.
Puis faire la commande python -m pip install -e /....chemin/repo/cloné/enet/
A priori ok pour charger les poids depuis pytorch : faire un make setup
dans le projet d'enet pour créer le fichier de poids préentrainés
Encore mieux pour intégrer des repo en dépendance https://git-scm.com/book/en/v2/Git-Tools-Submodules
cf #15
Note : on remarque que l'output du réseau a été flatten : on retrouve la taille de départ (contrairement au réseau du papier qui l'augmente à 512px en partant de 256px) et on la flatten peut-être pour faciliter le calcul de la loss
Résumé : papier
Révisé et test d'entrainement
Erreur
Attempting to fetch value instead of handling error Internal: failed initializing StreamExecutor for CUDA device ordinal 1: Internal: failed call to cuDevicePrimaryCtxRetain: CUDA_ERROR_OUT_OF_MEMORY: out of memory; total memory reported: 8505131008
Mais fonctionne sur pc perso : fin du summary du modèle
Total params: 371,894
Trainable params: 363,542
Non-trainable params: 8,352
__________________________________________________________________________________________________
None
Donc à priori rien d'insurmontable à créer Peut-être vient du fait que CUDA n'arrive pas à avoir de RAM (simple pas VRAM) pour stocker le modèle (2 entrainements en cours en parallèle)
-> A tester quand entrainements finis
Fonctionne sans autres entrainements : manquait sûrement de ram
Modèle déjà entrainé : https://github.com/TimoSaemann/ENet : en caffee -> pas bonne plateforme