Tensorboard使用Python 2.7,如何将其更改为Python 3?

Tensorboard使用Python 2.7,如何将其更改为Python 3?

因此,我用 python3 编写了一个 tensorflow 程序,并且可以使用 python3 执行上述脚本,并使用我使用 pip3 安装的模块。但是当使用

tensorboard --logdir="./graphs" --port 6006

它使用的是 Python2.7,并且没有安装 numpy,因为我没有使用 Python 2。当使用 pip(而不是 pip3)安装 numpy 时,它仍然不起作用,因为出现 AttributeErrors。

我如何告诉 tensorboard(和其他程序)使用带有 pip3 模块的 python3,而不是 python2.7?

使用python3 tensorboard --logdir="./graphs" --port 6006不起作用,因为 python3 希望我给它一个脚本文件。

附加信息:已在给定路径中创建了 tensorboard 图形文件,来自此代码

import os
import tensorflow as tf
import numpy as np

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' 
tf.reset_default_graph()

a = tf.constant(2)
b = tf.constant(3)
c = tf.add(a, b)

with tf.Session() as sess:
    writer = tf.summary.FileWriter('./graphs', sess.graph)
    print(sess.run(c))

答案1

扩展@JeToJedno 的答案。

总结: $ python3 /usr/local/bin/tensorboard --logdir ...


解释:

由于/usr/local/bin/tensorboard是一个使用解释器的 bash 脚本/usr/local/bin/python

#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from tensorboard.main import run_main
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(run_main())

您只需使用所需版本的 python 运行即可。

答案2

就我个人而言,我使用米尼康达创建一个我可以控制所使用的 Python(等)版本的环境。还有一个 Python 特定的环境管理器pipenv

如果您创建一个仅具有 python3 且具有您的 tensorflow 和 tensorboard 版本的环境,您可能会发现它更容易,特别是当新的软件版本发布并且您希望能够控制您的环境中的版本时。

答案3

假设您有两个 python 版本,即 python2.x 和 python3.x,并且您想将 tensorboard 用于 python 3.x。转到 python 3.x 目录并转到 tensorboard 目录。您将在那里找到 main.py 文件。从此位置打开终端。输入python3 main.py --logdir path/to/log/directory 就是这样。打开给出的链接并查看您的日志。尽情享受吧!

相关内容