J'ai essayé d'utiliser Tensorboard avec Pytorch, je l'ai installé, j'ai écrit le code et l'ai exécuté, et j'ai rencontré une erreur, alors j'écrirai une solution de contournement.
Depuis que j'utilise anaconda, je l'ai installé avec la commande suivante.
conda install tensorboard
Importez pour dessiner un graphique dans SummaryWriter.
tensorboard.py
from torch.utils.tensorboard import SummaryWriter
J'ai eu l'erreur d'importation suivante.
ImportError: cannot import name 'SummaryWriter' from 'torch.utils.tensorboard'
During handling of the above exception, another exception occurred:
ImportError: TensorBoard logging requires TensorBoard with Python summary writer installed. This should be available in 1.14 or above.
Je me suis demandé si je ne pouvais pas l'installer correctement, alors je l'ai décoché et je l'ai réinstallé. J'ai eu la même erreur. Je me suis perdu ici et je l'ai installé avec pip. (La confusion entre pip et conda n'est pas très bonne) En fin de compte, j'ai eu la même erreur.
Puisque Tensorboard peut être officiellement utilisé à partir de la v1.2.0 sur Pytorch, j'ai vérifié la version de Pytorch pour le moment.
python
import torch
print(torch.__version__)
C'était *** 1,5,1 ***. Cela ne semble pas être un problème avec Pytorch.
La déclaration d'erreur indique que la version Tensorboard est 1.14 ou supérieure, alors vérifiez-la.
conda list
C'était *** 2.2.1 ***. Cela ne semble pas non plus être un problème Tensorboard.
J'ai vérifié les versions de Pytorch et Tensorboard et ça allait, donc je n'ai plus à le faire. Je ne sais pas ce qui cause l'erreur.
En regardant le nom du fichier, il dit *** tensorboard.py ***. Est-ce parce que le nom de fichier et le module entrent en conflit et ne peuvent pas être importés? J'ai pensé.
Le fichier a été renommé *** tb.py ***. Et quand je l'ai lancé, je n'ai eu aucune erreur! !! !! !!
J'ai essayé d'utiliser Tensorboard avec Pytorch et l'ai installé, mais j'ai eu une erreur d'importation avec le même nom de fichier que le module. Gardez le nom de fichier et le module séparés. Aussi, évitez toute confusion entre conda et pip.