在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)

这个项目难就难在我把它想得太简单了(这话怎么有点废话文学那味)
先叨叨几句:ok一开始接到任务的时候,我心想tensorflow的使用这么普遍,应该不难配置,并且所用的NX在之前已经安装了tensorflow环境(时间有点久了 记不清怎么装上的了),那么应该就是找到例程运行就行了,然后跟着官网的例程,git下了源码,装了bazel,but死活编译不过,所出现的error都找不到解决方法,源码例程也没办法直接运行,在硬刚了一个星期后决定放弃这条路换个思路,兜兜转转找到了tflearn的例程,是它的出现告诉我:你的tensorflow环境没问题(之前bazel编译不过我几乎把环境里能换的东西换了个遍但是毫无作用 呜呜呜太打击人了)

好的回到正题,事情分两步走,第一步tensorflow,第二步pytorch,我可以的!

所使用Jetson Xavier NX配置:Jetpack4.5 CUDA10.2 CUDNN8.0 python3.6

Part 1 Tensorflow环境验证(非虚拟环境)

前面废话讲到走官方例程编译运行这条路走不通,于是我想找找有没有什么可以直接运行的例程,然后就找到了tflearn的官方例程:tflearn-github,将官方例程下载下来之后,我们按照教程进行配置,装一下tflearn

pip install tflearn

搞定了之后我们就可以找一些例程来运行了,友情提示咱们还是从一些basic的例程开始试验,例如tflearn/examples/basics/logical.py这个文件,最后输出训练并测试的结果,计算与或非同或异或这些逻辑运算的对应值,这里贴一下最后异或运算的训练结果
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第1张图片
ok,到这里就是对之前所安装tensorflow环境的验证,在后面part3我将会补充在虚拟环境中安装tensorflow和运行tensorflow官方例程的方法

Part 2 Pytorch安装

有了tensorflow的前车之鉴,这回我已经知道怎么保险安装pytorch了,首先,官方教程就不用看了(是的但我还是看了,还是装不上,官方别出教程了吧都是摆设我看来干嘛)

1.搭建虚拟环境(使用archiconda)

首先,因为python这玩意版本一多就容易有玄乎事,我决定先搭个虚拟环境,于是开开心心打开anaconda官网,事情当然没我想的那么简单啦,arm64默默哭泣~
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第2张图片
ok,问题不大,一定有可以给arm64的conda环境,果不其然我找到了这个https://github.com/Archiconda/build-tools/releases
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第3张图片
其实好像用miniforge也可以的,随便了,我用着都能搭虚拟环境
把sh文件下载后放到主目录/home下,bash安装下就行

bash Archiconda3-0.2.3-Linux-aarch64.sh

安装完还要配置一下环境变量(xxx为用户名)

sudo gedit ~/.bashrc
export PATH="/home/xxx/anaconda3/bin:$PATH"
source ~/.bashrc

然后验证一下是不是成功装上了,终端输入conda -V,没问题的话会显示所安装conda版本
搞定安装之后我们就可以开始创建虚拟环境了(此处xxx为虚拟环境名称)

conda create -n xxx python=3.6

激活进入虚拟环境

conda activate xxx

进入后终端be like

(xxx)name@name:~$

2.安装pytorch

前面也提到了不要想着pytorch官方的教程行得通,靠别人不如靠自己,咱们找到英伟达官方给jetson套件提供的torch安装包,科学上网获取(这里我直接用了最新的1.10版本)
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第4张图片
然后在虚拟环境中进行pip install安装,安装完成后运行python ,然后输入import torch,如果有什么报错就按照报错补充安装一些东西,能够正常import的话就证明你已经装好啦!
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第5张图片

3.使用例程验证所配置pytorch环境是否可用

这里贴两个例程链接:
pytorch官方例程&github上找的其他例程
以第二个链接中的linear_regression例程为例,运行结果be like
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第6张图片
整挺好,能用,环境搭建就先进行到这里。

Part3 Tensorflow安装(conda虚拟环境)

其实到Part2已经完成了对整个环境的搭建和验证了,但我觉得这样还不够,毕竟tensorflow和pytorch没有安装在一个虚拟环境里(强迫症发动),那么接下来我就要把他俩都装在一个虚拟环境里,开干。
然而想象总是美妙的,无所谓了,前面已经很难了,最后一步打不倒我的

1.在已安装pytorch环境中再次尝试安装tensorflow

毫无疑问,失败了,甚至不知道自己怎么把python环境搞崩了,卸载重装也没门,懂了,“只不过是从头再来~”

2.重新搭建conda虚拟环境,安装tensorflow与pytorch

搭建虚拟环境见part2,此处不再重复,搞定就进入虚拟环境
第一步我们要安装tensorflow,同样我们要找到nvidia官方提供给jetson套件的tensorflow安装包。这可难不倒我,我们来这里找找:Jetson下载中心
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第7张图片
不错,右下角资源里确实有tensorflow包,我们只要找到跟自己的版本对应的就行,这里我用的是jp4.5对应的包,版本根据自己的需要选择,注意后面还标明了python版本要求
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第8张图片
下载下来在/home目录存放,虚拟环境中pip install安装即可,还是那句话,缺啥就装啥,根据报错找解决方法
搞定之后在终端运行python,import并查看tensorflow版本

import tensorflow as tf
tf.__version__

能正常import并输出安装版本就搞定啦,例程验证环境见part1
tensorflow装完就装pytorch,步骤同part2,轻轻松松就搞定了这两个东西的安装啦

几天后的补充
今天发现tensorflow官方例程可以跑了,害,真不容易
运行的是label_image.py这个例程,识别图片中所出现的内容
因为我使用的tensorflow版本是2.x的,而例程适配的是tensorflow1.x,需要对例程中的import部分进行修改

#import tensorflow as tf 将原先对tensorflow模块的import注释掉
import tensorflow.compat.v1 as tf
tf.compat.v1.disable_eager_execution()

这个时候我们就可以选择一些图片来测试模型了,我先是选了张水果图(but后面我发现这个模型中没几种水果)
虚拟环境中运行python3 tensorflow/examples/label_image/label_image.py
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第9张图片
emmm,要不我还是换张图吧,咱来个小金鱼
在Jetson Xavier NX上配置tensorflow与pytorch环境并运行例程(conda虚拟环境)_第10张图片
嗯~这回可以了,0.99呢,搞定搞定。

完结撒花~~~~~真不容易啊(抹泪
废话有点多 谢谢各位朋友能看到这里 祝你们也能成功安装好需要的东西!

你可能感兴趣的:(深度学习,tensorflow,pytorch,人工智能,机器学习,深度学习)