Tensorflow安装和Tensorboard的使用

一、Tensorflow安装

Tensorflow安装分源码安装和pip安装两种方式。
1.源码安装
需要安装java8(否则容易出现找不到javac的问题),安装Bazel,下载Tensorflow源码,再编译,不推荐这种方式,会出现无法import tensorflow错误,python 开发环境找不到tensorflow模块的错误。
1.1 java 8的安装

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
如果你因为防火墙或者其他原因,导致installer下载速度很慢,可以中断操作.然后下载好相应jdk的tar.gz 包,放在:
/var/cache/oracle-jdk7-installer (jdk7)
/var/cache/oracle-jdk8-installer (jdk8)
下面,然后安装一次installer. installer 则会默认使用 你下载的tar.gz包
运行测试:
java -version
javac -version
以上参考 http://www.cnblogs.com/a2211009/p/4265225.html

1.2 Bazel的安装

chmod +x bazel-0.5.2-installer-linux-x86_64.sh
./bazel-0.5.2-installer-linux-x86_64.sh –user
以上参考 http://www.cnblogs.com/simplelovecs/p/5150114.html

1.3 Tensorflow的源码编译 (结果是无法import tensorflow)

git clone --recurse-submodules https://github.com/tensorflow/tensorflow.git
sudo apt-get install python-numpy swig python-dev
运行 tensorflow 根目录下的 configure 脚本进行配置:
./configure    主要配置点如下:
python location输入/usr/bin/python2.7 
python lib location直接回车,确认默认位置
google选择n
mpi选择n 
编译源码:
bazel build -c opt --config=cuda --spawn_strategy=standalone //tensorflow/cc:tutorials_example_trainer 
运行测试程序:
bazel-bin/tensorflow/cc/tutorials_example_trainer --use_gpu
以上参考:http://www.cnblogs.com/simplelovecs/p/5150114.html

2.Eclipse+pydev的安装

sudo apt-get purge openjdk*
下载Eclipse(选择合适的版本,我选的Java开发版,有人选择的是C/C++版):
https://www.eclipse.org/downloads/eclipse-packages/
解压到自己定的目录,就可以运行Eclipse了。
在Help菜单中,选择Install New Software···,
选择Add按钮,Name:PyDev(这个随便起),Location:http://pydev.org/updates
选择PyDev下的PyDev for Eclipse,别的都不要选,否则依赖检查那关过不去。
按照提示即可安装成功。

3.pip安装需要安装scipy,再运行pip安装命令。
3.1 pip安装Tensorflow(成功)

由于墙的原因,通过pip在线安装tensorflow会出现无法连接的现象。
所以,从tensorflow github网站 code页面下面installation中下载最新的tensorflow whl安装包,注意根据自己需要选择合适的whl。我选择的linux 64 gpu python2对应的包。
sudo pip install --ignore-installed --upgrade tensorflow_gpu-1.3.0rc2-cp27-none-linux_x86_64.whl
这时会发现scipy安装失败,现象和http://blog.csdn.net/u010551621/article/details/46363853 中相同,需要按照该网站的方法来安装支持包。
成功安装tensorflow后,在python中import tensorflow会出现找不到libcudnn.so.6库文件错误,重新下载安装cudnn 6.0, 成功。

3.2 Ubuntu 14.0.4 pip 安装scipy

 1. sudo pip install numpy
 2. sudo apt-get install liblapack-dev libblas-dev gfortran
 3. sudo pip install nose 
 4. sudo pip install atlas 
 5. sudo pip install scipy

二、Tensorflow实例

网络资源

1) yongyehuang/Tensorflow-Tutorial https://github.com/yongyehuang/Tensorflow-Tutorial
2) lucko515/tesla-stocks-prediction https://github.com/lucko515/tesla-stocks-prediction
3) Stock Price Prediction using LSTM https://github.com/tencia/stocks_rnn
4) 利用LSTM预测股票每日最高价 http://blog.csdn.net/mylove0414/article/details/55805974
对应github https://github.com/LouisScorpio/datamining/tree/master/tensorflow-program/rnn/stock_predict
5) TensorFlow核心使用技巧 http://www.52cs.org/?p=1157
高级应用实例:TFRecords、QueueRunner、Checkpoint、TensorBoard、Inference、GPU支持、分布式训练和多层神经网络模型等特性 https://github.com/tobegit3hub/tensorflow_template_application

Tensorboard显示图表问题:

运行mnist_with_summaries.py 报Couldn't open CUDA library libcupti.so.8.0. LD_LIBRARY_PATH 
修改LD_LIBRARY_PATH变量,增加路径/usr/local/cuda/extras/CUPTI/lib64/
用tensorboard --logdir= ./mnist_with_summaries/
curl http://127.0.0.1:6006 -o tensorboard.html
在tensorboard运行的控制台报如下错误:
WARNING:tensorflow:path /weblas.map.json not found, sending 404
WARNING:tensorflow:path /web-animations-next-lite.min.js.map not found, sending 404
拷贝tensorboard.html到chrome浏览器,发现可以显示一些页面内容,不是空白。
安装Chrome
    1)安装参考 https://github.com/FZUG/repo/wiki/%E5%AE%89%E8%A3%85-Chrome
    2)sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/
    3)sudo apt-get update
    4)sudo apt-get install google-chrome-stable
检查event文件,tensorboard --inspect --event_file=/home/jqh/jiangqiuhua/Tensorflow/mnist_with_summaries/test/events.out.tfevents.1502444010.jqhgpu
运行 tensorboard --logdir=/home/jqh/jiangqiuhuTensorflow/mnist_with_summaries/
在chrome中输入 localhost:6006既可以看到图表。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: TensorFlow 2.中使用TensorBoard非常简单。首先,您需要在代码中导入TensorBoard和其他必要的库: ``` import tensorflow as tf from tensorflow import keras from tensorflow.keras.callbacks import TensorBoard ``` 然后,您需要创建一个TensorBoard回调对象,并将其传递给模型的fit方法: ``` tensorboard_callback = TensorBoard(log_dir="./logs") model.fit(x_train, y_train, epochs=10, validation_data=(x_test, y_test), callbacks=[tensorboard_callback]) ``` 在这里,log_dir参数指定TensorBoard日志文件的目录。在训练过程中,TensorBoard将在该目录中创建一个名为“logs”的子目录,并将所有日志文件写入该目录。 最后,您可以在终端中运行以下命令来启动TensorBoard: ``` tensorboard --logdir=./logs ``` 这将启动TensorBoard服务器,并在浏览器中打开TensorBoard的Web界面。在此界面中,您可以查看模型的训练和验证指标,以及其他有用的信息,如模型结构和激活直方图。 ### 回答2: TensorFlow是广泛使用的深度学习框架之一,而Tensorboard则是TensorFlow的可视化工具,它可以让我们更好地理解和调试模型,同时也有助于我们对模型进行可视化分析和解释。在TensorFlow 2.0中,Tensorboard也得到了很大的升级和改善,本文将介绍如何使用Tensorboard进行模型可视化和监控。 一、安装TensorBoardTensorFlow 2.0中,TensorBoard已经是默认安装的。如果TensorFlow不是最新的版本,可以通过以下命令进行升级: ``` !pip install --upgrade tensorflow ``` 二、导入TensorBoard使用TensorBoard,我们需要导入TensorFlow的官方API,通过导入“TensorBoard”和“Callback”两个模块,可以使用TensorBoard可视化和监控模型训练的进度和时间。 ``` from tensorflow.keras.callbacks import TensorBoard ``` 三、添加TensorBoard回调函数 接下来,在训练模型时,我们需要使用TensorBoard回调函数。TensorBoard回调函数允许在训练的每个时期记录任何可以用于TensorBoard可视化的指标。 在TensorBoard中显示的指标可以是模型性能指标的实时图表,例如训练和验证损失,准确性等。 回调函数可以在以下位置定义: ``` tensorboard_callback = TensorBoard(log_dir='path/to/logs', histogram_freq=1) ``` 其中,log_dir参数指定了TensorBoard日志的位置,这个目录是存储所有TensorBoard相关数据的文件夹。路径可以是相对路径或绝对路径,histogram_freq 参数表示模型权重直方图可视化的频率(每 n 个时期记录一次)。默认为0,没有直方图可视化。 四、训练模型 接下来,我们需要开始训练模型。我们已经创建了 TensorBoard回调函数,现在需要在拟合模型时将其传递到模型的回调函数列表中: ``` model.fit(x, y, epochs=10, validation_split=0.2, callbacks=[tensorboard_callback]) ``` 五、启动TensorBoard 最后,在终端中输入以下命令以启动TensorBoard: ``` tensorboard --logdir=path/to/logs ``` 在浏览器中输入地址,即可查看模型的各种统计信息。 六、TensorBoard功能丰富 使用 TensorBoard,可以获得模型的各种统计数据,包括: 1. 图形和表示计算图的“graph”视图 2. 训练和验证损失(与时间的关系)的“Scalars”视图 3. 权重和梯度分布的“Histograms”视图 4. 嵌入(用于高维数据降维)的“Embedding”视图 5. 总结数据(可以通过Python API编写自定义总结)的“Events”视图 TensorBoard可以让我们轻松地监控模型的性能,并提供一些有用的工具来帮助我们更好地理解和优化模型。在TensorFlow 2.0中,TensorBoard的易用性和功能都得到了很大的改善和提高,可以帮助我们更好地深入了解和使用深度学习技术。 ### 回答3: Tensorflow是一款非常流行的深度学习框架,也是大家经常使用的一个框架。在Tensorflow2.0中,Tensorboard成为了一个新的特性,能够帮助我们更加直观地理解我们的深度学习模型,我将在以下几点详细介绍Tensorflow2.0如何使用Tensorboard。 1. Tensorboard 简介 Tensorboard是一个Tensorflow内置的可视化工具,我们可以通过Tensorboard监控模型训练时网络的性能,比如模型的损失函数,准确率,梯度变化,以及各类超参数的变化等等,让我们能够更加方便的监测网络的训练情况。Tensorboard提供了非常友好的用户界面,支持很多的交互操作,同时也能够使用在其他浏览器中打开,比如Google Chrome和Mozilla Firefox. 2. Tensorboard安装使用 Tensorflow2.0将Tensorboard集成在了Tensorflow中,所以我们不必单独安装。在Tensorflow训练模型时,可以通过在代码中加入Tensorboard的语句,记录需要监控的变量到Tensorboard日志文件中,然后打开Tensorboard就可以看到监控数据了。首先在代码中定义一个Tensorflow的回调函数,使得我们可以在训练过程中记录各类变量,代码如下: ``` import tensorflow as tf # 定义回调函数,记录模型的变化 callbacks = [ tf.keras.callbacks.TensorBoard(log_dir='./logs') ] # 构建并训练模型 model.fit(x_train, y_train, epochs=10, batch_size=32, callbacks=callbacks) ``` 在上面的代码中,我们通过 `tf.keras.callbacks.TensorBoard`方法构造了一个回调函数,用来记录模型的变化情况。其中 `log_dir`参数是指定了我们的日志记录文件的路径,我们可以将它设置为当前工作目录下的 `logs`目录(这个目录不用事先创建)。接着,我们在模型的 `fit`方法中指定这个回调函数,这样在训练模型过程中就会将各类变量的记录写入日志文件中。 3. Tensorboard的日志记录和可视化 在使用Tensorboard后,我们可以通过 `tensorboard --logdir=./logs`来手动启动Tensorboard,并在浏览器中访问本地的服务器,比如访问 `localhost:6006`,就会看到Tensorboard的web端界面,如下所示: ![](https://s1.ax1x.com/2020/11/24/DmNvLn.md.png) 在上图中,我们可以看到多个选项卡,比如 `Scalars`、`Images`、`Graphs`、`Distributions`等。其中,`Scalars`选项卡中展示了训练过程中所有的标量变量的变化情况,比如训练损失函数、测试准确率等等,如下图所示: ![](https://s1.ax1x.com/2020/11/24/DmNtoc.md.png) 在 `Images`选项卡中,我们可以看到训练过程中模型生成的图像,如下图所示: ![](https://s1.ax1x.com/2020/11/24/DmNS1s.md.png) 在上图中,我们可以看到模型生成的图像都被显示在了 `Images`选项卡中。 在`Graphs`选项卡中,我们可以看到我们构建的Tensorflow计算图,如下所示: ![](https://s1.ax1x.com/2020/11/24/DmNdcV.md.png) 到这里,我们已经介绍了TensorboardTensorflow中的使用方法。感兴趣的读者可以尝试使用Tensorboard来监控深度学习模型的训练,提高模型训练效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值