无法让 pytorch 与 tensorboard 一起工作
Posted
技术标签:
【中文标题】无法让 pytorch 与 tensorboard 一起工作【英文标题】:Can not get pytorch working with tensorboard 【发布时间】:2020-02-29 08:30:48 【问题描述】:我正在阅读本教程以使用 tensorboard https://pytorch.org/tutorials/intermediate/tensorboard_tutorial.html# 设置 pytorch(v1.3.0 到 conda)
但在台阶上
from torch.utils.tensorboard import SummaryWriter
# default `log_dir` is "runs" - we'll be more specific here
writer = SummaryWriter('runs/fashion_mnist_experiment_1')
我不断收到错误
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
C:\ProgramData\Anaconda3\envs\fastai_v1\lib\site-packages\torch\utils\tensorboard\__init__.py in
1 try:
----> 2 from tensorboard.summary.writer.record_writer import RecordWriter # noqa F401
3 except ImportError:
ModuleNotFoundError: No module named 'tensorboard.summary'; 'tensorboard' is not a package
During handling of the above exception, another exception occurred:
ImportError Traceback (most recent call last)
c:\Users\matt\Documents\code\playground\tensorboard.py in
----> 1 from torch.utils.tensorboard import SummaryWriter
2
3 # default `log_dir` is "runs" - we'll be more specific here
4 writer = SummaryWriter('runs/fashion_mnist_experiment_1')
C:\ProgramData\Anaconda3\envs\fastai_v1\lib\site-packages\torch\utils\tensorboard\__init__.py in
2 from tensorboard.summary.writer.record_writer import RecordWriter # noqa F401
3 except ImportError:
----> 4 raise ImportError('TensorBoard logging requires TensorBoard with Python summary writer installed. '
5 'This should be available in 1.14 or above.')
6 from .writer import FileWriter, SummaryWriter # noqa F401
ImportError: TensorBoard logging requires TensorBoard with Python summary writer installed. This should be available in 1.14 or above.
有人有什么建议吗?
【问题讨论】:
你试过conda install -y tensorboard
吗?该解决方案有什么问题?
我得到了同样的错误,我尝试了conda install -y tensorboard
,它仍然得到同样的错误。我觉得它和我的其他包有冲突。
【参考方案1】:
我遇到了同样的错误,我通过以下步骤解决了:
-
从 conda 环境中移除所有 Tensorflow 或 Tensorboard 安装。
然后通过激活相同的 conda 环境,键入“pip install -U tb-nightly”
然后输入“pip install -U future”
完成
【讨论】:
嗨,感谢您的评论。我尝试卸载所有东西,conda remove tensorflow,conda remove tensorboard,pip 卸载 tensorflow,pip 卸载 tensorboard,然后 pip 安装了上面的 2 个包,但仍然出现错误。你有什么建议吗? 没关系,这是我的问题。 github.com/tensorflow/tensorflow/issues/29866 。我还必须做你在上面所做的事情并标记它是正确的 我按照所有步骤操作并收到此错误:TypeError: __new__() got an unexpected keyword argument 'serialized_options' 我正在使用虚拟环境,这对我不起作用。在 pip 卸载 tensorflow 和 tensorboard 之后,我完成了所有步骤。之后,我按照上面答案中的步骤,安装了 tensorflow 和 tensorboard。然后,我在visual studio code中打开了一个notebook,还是一样的错误。【参考方案2】:我认为是版本问题。
运行这个:
pip install tensorboard==1.14.0
(不是 pip install tensorboard==1.14)
或者只安装 tensorboard 1.14.0,其中包含 tensorboard 1.14.0:
pip install tensorflow==1.14.0
这个版本的 tensorflow 在 pytorch 1.2 中为我工作。
【讨论】:
如果它对某人有帮助,1.15.0 版适用于 Pytorch 1.4【参考方案3】:错误日志说,除其他外,
ImportError: TensorBoard logging requires TensorBoard with Python summary writer installed. This should be available in 1.14 or above.
因此,当它尝试导入 TensorBoard 时,它无法这样做,因为它在搜索路径中缺少它。您可以安装最新版本(无需指定任何版本号),如下所示:
$ conda install -c conda-forge tensorboard
除此之外,您可能还需要安装 protobuf:
$ conda install -c conda-forge protobuf
这些安装应该修复ImportError
s。
【讨论】:
【参考方案4】:我已经完成了:
conda install -y tensorboard
之前没有问题,所以我不知道为什么那行不通。这是最简单的。
【讨论】:
【参考方案5】:你试过Aim吗?它是为 PyTorch 构建的。用于记录和比较指标的最简单、最方便的工具(TensorBoard 中没有许多高级比较功能)。
【讨论】:
【参考方案6】:我遇到了同样的错误,而且我的conda当时也没有工作,所以我选择使用tensorboardX
,它和tensorboard
几乎完全一样(也是它的操作)。
只需使用pip install tensorboardX
安装即可
你可以用from tensorboardX import SummaryWriter
导入它
【讨论】:
以上是关于无法让 pytorch 与 tensorboard 一起工作的主要内容,如果未能解决你的问题,请参考以下文章
[十九]深度学习Pytorch-可视化工具TensorBoard
Pytorch Note53 TensorBoard 可视化