如何在Ubuntu 18.04/Debian 9上安装Tensorflow(仅限CPU)
在这篇文章中,我们将在Ubuntu 18.04/Debian上安装Tensorflow机器学习库9.如果我们需要Tensorflow GPU,我们应该在Ubuntu 18.04 - Nvidia,AMD 等上有专用显卡。
安装了Tensorflow GPU的软件是CUDA Toolkit。
在Ubuntu 18.04 LTS/Debian 9上安装Tensorflow(仅限CPU)
要在Ubuntu 18.04上安装Tensorflow(仅限CPU),我们将使用TensorFlow No GPU支持的版本,该版本需要Python 2.7或者Python 3.3+。
通过运行以下命令来安装Python和所需的模块:
sudo apt update sudo apt -y install python python-pip python-setuptools python-dev
然后使用python包管理器安装tensorflow。
pip install --upgrade tensorflow requests
如果我们有启用了CUDA的GPU卡,则可以安装GPU包。
pip install tensorflow-gpu
但不要忘记GPU包需要启用CUDA®的GPU卡。
验证Tensorflow是否正常工作。
python -c "import tensorflow as tf; tf.enable_eager_execution(); print(tf.reduce_sum(tf.random_normal([1000, 1000])))"
2016-12-19 00:53:36.272184: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA tf.Tensor(820.4219, shape=(), dtype=float32)
运行测试模型:
mkdir ~/tensorflow_projects cd ~/tensorflow_projects git clone https://github.com/tensorflow/models.git export PYTHONPATH="$PYTHONPATH:$(pwd)/models" cd models/official/mnist python mnist.py
使用TensorBoard.
Tensorboard是一组可视化工具,使得更容易理解,调试和优化TensorFlow程序。
使用Tensorboard来可视化TensorFlow图表,绘制关于图表执行的定量度量,并显示了像通过它的图像的其他数据。
通过运行启动Tensorboard:
mkdir ~/tensor_logs tensorboard --logdir=~/tensor_logs
在运行时 tensorboard
命令,下面的输出将在屏幕中打印。
TensorBoard 1.12.1 at http://ubuntu-01:6006 (Press CTRL+C to quit)
通过按下,我们可以杀死Tensorboard过程 CTRL+C
并非默认情况下,TensorFlow输出存储在下面 /tmp
目录。
完全配置TensorBoard时,访问URL http://[ServerHostname|IPAddress]:6006
。
仪表板看起来像这样:
在Docker容器中运行tensorflow(仅限CPU)
我们还可以在Docker容器中运行TensorFlow。
如果我们没有在Ubuntu 18.04上安装了Docker引擎,我们的教程应该派上用场。
如何在Ubuntu/debian/fedora/arch/centos上安装Docker CE
TensoRFlow Docker图像已配置为运行TensorFlow。
Docker容器在虚拟环境中运行,是设置GPU支持的最简单方法。
下载Tensorflow Docker图片:
docker pull tensorflow/tensorflow
一旦下载,通过运行启动Jupyter Notebook服务器:
docker run -it -p 8888:8888 tensorflow/tensorflow
如果我们只想运行Tensorflow测试,请使用:
docker run -it --rm tensorflow/tensorflow \ python -c "import tensorflow as tf; tf.enable_eager_execution(); print(tf.reduce_sum(tf.random_normal([1000, 1000])))"